On 10/14/23 03:01, Paolo Bonzini wrote:
+static void prepare_update1_cc(X86DecodedInsn *decode, DisasContext *s, CCOp op) +{ + decode->cc_dst = s->T0; + set_cc_op(s, op); +}
You must delay the set_cc_op() until the end too, for the same reason. The function call will emit discard opcodes, which will kill cc_foo while still live via the memory exception.
r~