mirror of https://gitee.com/openkylin/qemu.git
converted BCD ops to TCG
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4509 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
0211e5aff9
commit
9d0763c4c0
|
@ -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 */
|
||||
|
|
|
@ -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;
|
||||
/************************/
|
||||
|
|
Loading…
Reference in New Issue