need_ir=(gte_unneeded[i+1]&0xe00)!=0xe00;
assem_debug("gte unneeded %016llx, need_flags %d, need_ir %d\n",
gte_unneeded[i+1],need_flags,need_ir);
-#ifdef ARMv5_ONLY
- // let's take more risk here
- need_flags=need_flags&>e_reads_flags;
-#endif
+ if(new_dynarec_hacks&NDHACK_GTE_NO_FLAGS)
+ need_flags=0;
int shift = (source[i] >> 19) & 1;
int lm = (source[i] >> 10) & 1;
switch(c2op) {
+#ifndef DRC_DBG
case GTE_MVMVA: {
int v = (source[i] >> 15) & 3;
int cv = (source[i] >> 13) & 3;
c2op_prologue(c2op,reglist);
c2op_call_rgb_func(shift?gteGPL_part_shift:gteGPL_part_noshift,lm,need_ir,need_flags);
break;
-
+#endif
default:
c2op_prologue(c2op,reglist);
- //emit_movimm(source[i],1); // opcode
- //emit_writeword(1,(int)&psxRegs.code);
+#ifdef DRC_DBG
+ emit_movimm(source[i],1); // opcode
+ emit_writeword(1,(int)&psxRegs.code);
+#endif
emit_call((int)(need_flags?gte_handlers[c2op]:gte_handlers_nf[c2op]));
break;
}