diff options
author | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-05-21 13:24:30 +0000 |
---|---|---|
committer | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-05-21 13:24:30 +0000 |
commit | 9d0763c4c0bc7840a3113abf39aae6dd87e9be91 (patch) | |
tree | 498bbaab53ee88ae499d4c475f59cebe6392a234 /target-i386 | |
parent | 0211e5aff995ee55722148923a7fc317796e4114 (diff) |
converted BCD ops to TCG
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4509 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-i386')
-rw-r--r-- | target-i386/op.c | 32 | ||||
-rw-r--r-- | target-i386/translate.c | 12 |
2 files changed, 6 insertions, 38 deletions
diff --git a/target-i386/op.c b/target-i386/op.c index e8f342c813..6ef1474545 100644 --- a/target-i386/op.c +++ b/target-i386/op.c @@ -165,38 +165,6 @@ void OPPROTO op_cmpxchg8b(void) #endif -/* bcd */ - -void OPPROTO op_aam(void) -{ - helper_aam(PARAM1); -} - -void OPPROTO op_aad(void) -{ - helper_aad(PARAM1); -} - -void OPPROTO op_aaa(void) -{ - helper_aaa(); -} - -void OPPROTO op_aas(void) -{ - helper_aas(); -} - -void OPPROTO op_daa(void) -{ - helper_daa(); -} - -void OPPROTO op_das(void) -{ - helper_das(); -} - /* segment handling */ /* faster VM86 version */ diff --git a/target-i386/translate.c b/target-i386/translate.c index c73fac90a2..c7994a1959 100644 --- a/target-i386/translate.c +++ b/target-i386/translate.c @@ -5926,7 +5926,7 @@ static target_ulong disas_insn(DisasContext *s, target_ulong pc_start) goto illegal_op; if (s->cc_op != CC_OP_DYNAMIC) gen_op_set_cc_op(s->cc_op); - gen_op_daa(); + tcg_gen_helper_0_0(helper_daa); s->cc_op = CC_OP_EFLAGS; break; case 0x2f: /* das */ @@ -5934,7 +5934,7 @@ static target_ulong disas_insn(DisasContext *s, target_ulong pc_start) goto illegal_op; if (s->cc_op != CC_OP_DYNAMIC) gen_op_set_cc_op(s->cc_op); - gen_op_das(); + tcg_gen_helper_0_0(helper_das); s->cc_op = CC_OP_EFLAGS; break; case 0x37: /* aaa */ @@ -5942,7 +5942,7 @@ static target_ulong disas_insn(DisasContext *s, target_ulong pc_start) goto illegal_op; if (s->cc_op != CC_OP_DYNAMIC) gen_op_set_cc_op(s->cc_op); - gen_op_aaa(); + tcg_gen_helper_0_0(helper_aaa); s->cc_op = CC_OP_EFLAGS; break; case 0x3f: /* aas */ @@ -5950,7 +5950,7 @@ static target_ulong disas_insn(DisasContext *s, target_ulong pc_start) goto illegal_op; if (s->cc_op != CC_OP_DYNAMIC) gen_op_set_cc_op(s->cc_op); - gen_op_aas(); + tcg_gen_helper_0_0(helper_aas); s->cc_op = CC_OP_EFLAGS; break; case 0xd4: /* aam */ @@ -5960,7 +5960,7 @@ static target_ulong disas_insn(DisasContext *s, target_ulong pc_start) if (val == 0) { gen_exception(s, EXCP00_DIVZ, pc_start - s->cs_base); } else { - gen_op_aam(val); + tcg_gen_helper_0_1(helper_aam, tcg_const_i32(val)); s->cc_op = CC_OP_LOGICB; } break; @@ -5968,7 +5968,7 @@ static target_ulong disas_insn(DisasContext *s, target_ulong pc_start) if (CODE64(s)) goto illegal_op; val = ldub_code(s->pc++); - gen_op_aad(val); + tcg_gen_helper_0_1(helper_aad, tcg_const_i32(val)); s->cc_op = CC_OP_LOGICB; break; /************************/ |