[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] target/i386: Fix BLSR and BLSI
From: |
Ricardo Ribalda Delgado |
Subject: |
Re: [Qemu-devel] [PATCH] target/i386: Fix BLSR and BLSI |
Date: |
Wed, 12 Jul 2017 21:25:09 +0200 |
This seems to work fine with the example. But my app still throughs sigsegv :(
diff --git a/target/i386/translate.c b/target/i386/translate.c
index 2c64d2b71ec4..564b9c6057c2 100644
--- a/target/i386/translate.c
+++ b/target/i386/translate.c
@@ -4033,32 +4033,23 @@ static void gen_sse(CPUX86State *env,
DisasContext *s, int b,
switch (reg & 7) {
case 1: /* blsr By,Ey */
- tcg_gen_neg_tl(cpu_T1, cpu_T0);
+ tcg_gen_subi_tl(cpu_T1, cpu_T0, 1);
tcg_gen_and_tl(cpu_T0, cpu_T0, cpu_T1);
gen_op_mov_reg_v(ot, s->vex_v, cpu_T0);
- gen_op_update2_cc();
- set_cc_op(s, CC_OP_BMILGB + ot);
break;
-
case 2: /* blsmsk By,Ey */
- tcg_gen_mov_tl(cpu_cc_src, cpu_T0);
- tcg_gen_subi_tl(cpu_T0, cpu_T0, 1);
- tcg_gen_xor_tl(cpu_T0, cpu_T0, cpu_cc_src);
- tcg_gen_mov_tl(cpu_cc_dst, cpu_T0);
- set_cc_op(s, CC_OP_BMILGB + ot);
+ tcg_gen_subi_tl(cpu_T1, cpu_T0, 1);
+ tcg_gen_xor_tl(cpu_T0, cpu_T0, cpu_T1);
break;
-
case 3: /* blsi By, Ey */
- tcg_gen_mov_tl(cpu_cc_src, cpu_T0);
- tcg_gen_subi_tl(cpu_T0, cpu_T0, 1);
- tcg_gen_and_tl(cpu_T0, cpu_T0, cpu_cc_src);
- tcg_gen_mov_tl(cpu_cc_dst, cpu_T0);
- set_cc_op(s, CC_OP_BMILGB + ot);
+ tcg_gen_neg_tl(cpu_T1, cpu_T0);
+ tcg_gen_and_tl(cpu_T0, cpu_T0, cpu_T1);
break;
-
default:
goto unknown_op;
}
+ gen_op_update2_cc();
+ set_cc_op(s, CC_OP_BMILGB + ot);
break;
default:
On Wed, Jul 12, 2017 at 9:12 PM, Richard Henderson <address@hidden> wrote:
> On 07/12/2017 08:58 AM, Ricardo Ribalda Delgado wrote:
>>
>> Hi Richard
>>
>> Thanks again!, When I apply this patch I get the following error:
>>
>> /tmp/qemu/tcg/tcg.c:2042: tcg fatal error
>
>
> Bah. I misremembered that OR_TMP1 is unusable in this context.
>
>
> r~
--
Ricardo Ribalda
- [Qemu-devel] [PATCH 0/2] target/i386: Implement all TBM instructions, Richard Henderson, 2017/07/11
- [Qemu-devel] [PATCH v2] target/i386: Fix BLSR and BLSI, Richard Henderson, 2017/07/12
- Re: [Qemu-devel] [PATCH v2] target/i386: Fix BLSR and BLSI, Ricardo Ribalda Delgado, 2017/07/13
- Re: [Qemu-devel] [PATCH v2] target/i386: Fix BLSR and BLSI, Ricardo Ribalda Delgado, 2017/07/13
- Re: [Qemu-devel] [PATCH v2] target/i386: Fix BLSR and BLSI, Ricardo Ribalda Delgado, 2017/07/13