simplified exception support
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@146 c046a42c-6fe2-441c-8c8c-71466251a162
diff --git a/op-i386.c b/op-i386.c
index fe1f7eb..dac8700 100644
--- a/op-i386.c
+++ b/op-i386.c
@@ -622,10 +622,11 @@
raise_exception_err(EXCP0D_GPF, intno * 8 + 2);
}
-void OPPROTO op_int3(void)
+void OPPROTO op_raise_exception(void)
{
- EIP = PARAM1;
- raise_exception(EXCP03_INT3);
+ int exception_index;
+ exception_index = PARAM1;
+ raise_exception(exception_index);
}
void OPPROTO op_into(void)
@@ -638,12 +639,6 @@
FORCE_RET();
}
-void OPPROTO op_gpf(void)
-{
- EIP = PARAM1;
- raise_exception(EXCP0D_GPF);
-}
-
void OPPROTO op_cli(void)
{
env->eflags &= ~IF_MASK;
diff --git a/opc-i386.h b/opc-i386.h
index 2e48eb6..de54d9c 100644
--- a/opc-i386.h
+++ b/opc-i386.h
@@ -230,13 +230,10 @@
DEF(jmp_T0, 0)
DEF(jmp_im, 1)
DEF(int_im, 2)
-DEF(int3, 1)
+DEF(raise_exception, 2)
DEF(into, 0)
-DEF(gpf, 1)
DEF(cli, 0)
DEF(sti, 0)
-DEF(cli_vm, 0)
-DEF(sti_vm, 1)
DEF(boundw, 0)
DEF(boundl, 0)
DEF(cmpxchg8b, 0)
@@ -557,11 +554,8 @@
DEF(set_cc_op, 1)
DEF(movl_eflags_T0, 0)
DEF(movw_eflags_T0, 0)
-DEF(movw_eflags_T0_vm, 1)
-DEF(movl_eflags_T0_vm, 1)
DEF(movb_eflags_T0, 0)
DEF(movl_T0_eflags, 0)
-DEF(movl_T0_eflags_vm, 0)
DEF(cld, 0)
DEF(std, 0)
DEF(clc, 0)