target-m68k: Remove incorrect clearing of cc_x

The CF docs certainly doesnt suggest this is true.

Backports commit 18dd87f26bed46f22bb1b9536329c02de500f407 from qemu
This commit is contained in:
Richard Henderson 2018-02-27 09:21:25 -05:00 committed by Lioncash
parent 187c2a9807
commit 61ab9a42cd
No known key found for this signature in database
GPG key ID: 4E3C3CC1031BA9C7

View file

@ -121,19 +121,12 @@ static uint32_t cpu_m68k_flush_flags(CPUM68KState *env, int op)
break; break;
case CC_OP_LOGICB: case CC_OP_LOGICB:
SET_NZ(dest, int8_t); SET_NZ(dest, int8_t);
goto set_x;
break; break;
case CC_OP_LOGICW: case CC_OP_LOGICW:
SET_NZ(dest, int16_t); SET_NZ(dest, int16_t);
goto set_x;
break; break;
case CC_OP_LOGIC: case CC_OP_LOGIC:
SET_NZ(dest, int32_t); SET_NZ(dest, int32_t);
set_x:
if (!m68k_feature(env, M68K_FEATURE_M68000)) {
/* Unlike m68k, coldfire always clears the overflow bit. */
env->cc_x = 0;
}
break; break;
case CC_OP_ADDB: case CC_OP_ADDB:
SET_FLAGS_ADD(int8_t, uint8_t); SET_FLAGS_ADD(int8_t, uint8_t);