Message ID | 1368121227-10885-1-git-send-email-aurelien@aurel32.net |
---|---|
State | New |
Headers | show |
On 05/09/2013 10:40 AM, Aurelien Jarno wrote: > Fix EFLAGS corruption by ROR r8/r16 imm instruction located at the end > of the TB, similarly to commit 089305ac for the non-immediate case. > > Reported-by: Hervé Poussineau <hpoussin@reactos.org> > Cc: Richard Henderson <rth@twiddle.net> > Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> > --- > target-i386/translate.c | 1 + > 1 file changed, 1 insertion(+) Reviewed-by: Richard Henderson <rth@twiddle.net> r~
diff --git a/target-i386/translate.c b/target-i386/translate.c index 524a0b4..0aeccdb 100644 --- a/target-i386/translate.c +++ b/target-i386/translate.c @@ -1871,6 +1871,7 @@ static void gen_rot_rm_im(DisasContext *s, int ot, int op1, int op2, if (is_right) { tcg_gen_shri_tl(cpu_cc_src2, cpu_T[0], mask - 1); tcg_gen_shri_tl(cpu_cc_dst, cpu_T[0], mask); + tcg_gen_andi_tl(cpu_cc_dst, cpu_cc_dst, 1); } else { tcg_gen_shri_tl(cpu_cc_src2, cpu_T[0], mask); tcg_gen_andi_tl(cpu_cc_dst, cpu_T[0], 1);
Fix EFLAGS corruption by ROR r8/r16 imm instruction located at the end of the TB, similarly to commit 089305ac for the non-immediate case. Reported-by: Hervé Poussineau <hpoussin@reactos.org> Cc: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> --- target-i386/translate.c | 1 + 1 file changed, 1 insertion(+)