[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 31/31] linux-user/vm86.c: LOG_VM86 macro
From: |
Eduardo Habkost |
Subject: |
[Qemu-devel] [PATCH 31/31] linux-user/vm86.c: LOG_VM86 macro |
Date: |
Fri, 12 Dec 2008 13:09:10 -0200 |
Create a LOG_VM86 macro and use it instead of #ifdef DEBUG_VM86.
Signed-off-by: Eduardo Habkost <address@hidden>
---
linux-user/vm86.c | 39 +++++++++++++++++----------------------
1 files changed, 17 insertions(+), 22 deletions(-)
diff --git a/linux-user/vm86.c b/linux-user/vm86.c
index d87174b..99bbb88 100644
--- a/linux-user/vm86.c
+++ b/linux-user/vm86.c
@@ -28,6 +28,13 @@
//#define DEBUG_VM86
+#ifdef DEBUG_VM86
+# define LOG_VM86(...) fprintf(logfile, ## __VA_ARGS__);
+#else
+# define LOG_VM86(...) do { } while (0)
+#endif
+
+
#define set_flags(X,new,mask) \
((X) = ((X) & ~(mask)) | ((new) & (mask)))
@@ -91,10 +98,8 @@ void save_v86_state(CPUX86State *env)
set_flags(env->eflags, ts->v86flags, VIF_MASK | ts->v86mask);
target_v86->regs.eflags = tswap32(env->eflags);
unlock_user_struct(target_v86, ts->target_v86, 1);
-#ifdef DEBUG_VM86
- fprintf(logfile, "save_v86_state: eflags=%08x cs:ip=%04x:%04x\n",
- env->eflags, env->segs[R_CS].selector, env->eip);
-#endif
+ LOG_VM86("save_v86_state: eflags=%08x cs:ip=%04x:%04x\n",
+ env->eflags, env->segs[R_CS].selector, env->eip);
/* restore 32 bit registers */
env->regs[R_EAX] = ts->vm86_saved_regs.eax;
@@ -120,9 +125,7 @@ void save_v86_state(CPUX86State *env)
'retval' */
static inline void return_to_32bit(CPUX86State *env, int retval)
{
-#ifdef DEBUG_VM86
- fprintf(logfile, "return_to_32bit: ret=0x%x\n", retval);
-#endif
+ LOG_VM86("return_to_32bit: ret=0x%x\n", retval);
save_v86_state(env);
env->regs[R_EAX] = retval;
}
@@ -215,10 +218,8 @@ static void do_int(CPUX86State *env, int intno)
segoffs = ldl(int_addr);
if ((segoffs >> 16) == TARGET_BIOSSEG)
goto cannot_handle;
-#if defined(DEBUG_VM86)
- fprintf(logfile, "VM86: emulating int 0x%x. CS:IP=%04x:%04x\n",
- intno, segoffs >> 16, segoffs & 0xffff);
-#endif
+ LOG_VM86("VM86: emulating int 0x%x. CS:IP=%04x:%04x\n",
+ intno, segoffs >> 16, segoffs & 0xffff);
/* save old state */
ssp = env->segs[R_SS].selector << 4;
sp = env->regs[R_ESP] & 0xffff;
@@ -234,9 +235,7 @@ static void do_int(CPUX86State *env, int intno)
clear_AC(env);
return;
cannot_handle:
-#if defined(DEBUG_VM86)
- fprintf(logfile, "VM86: return to 32 bits int 0x%x\n", intno);
-#endif
+ LOG_VM86("VM86: return to 32 bits int 0x%x\n", intno);
return_to_32bit(env, TARGET_VM86_INTx | (intno << 8));
}
@@ -273,10 +272,8 @@ void handle_vm86_fault(CPUX86State *env)
ssp = env->segs[R_SS].selector << 4;
sp = env->regs[R_ESP] & 0xffff;
-#if defined(DEBUG_VM86)
- fprintf(logfile, "VM86 exception %04x:%08x\n",
- env->segs[R_CS].selector, env->eip);
-#endif
+ LOG_VM86("VM86 exception %04x:%08x\n",
+ env->segs[R_CS].selector, env->eip);
data32 = 0;
pref_done = 0;
@@ -477,10 +474,8 @@ int do_vm86(CPUX86State *env, long subfunction, abi_ulong
vm86_addr)
target_v86->vm86plus.vm86dbg_intxxtab, 32);
unlock_user_struct(target_v86, vm86_addr, 0);
-#ifdef DEBUG_VM86
- fprintf(logfile, "do_vm86: cs:ip=%04x:%04x\n",
- env->segs[R_CS].selector, env->eip);
-#endif
+ LOG_VM86("do_vm86: cs:ip=%04x:%04x\n",
+ env->segs[R_CS].selector, env->eip);
/* now the virtual CPU is ready for vm86 execution ! */
out:
return ret;
--
1.5.5.GIT
- [Qemu-devel] [PATCH 04/31] hw/ppc.c: use LOG_TB instead of #ifdefs, (continued)
- [Qemu-devel] [PATCH 04/31] hw/ppc.c: use LOG_TB instead of #ifdefs, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 30/31] target-alpha/translate.c: LOG_DISAS macro, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 23/31] target-ppc/helper.c: LOG_SLB macro, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 16/31] target-cris/translate.c: LOG_DIS macro, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 19/31] target-ppc/helper.c: LOG_MMU macro, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 14/31] target-i386/op_helper.c: use LOG_PCALL instead of #ifdefs, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 08/31] kqemu.c: use LOG_INT instead of #ifdefs, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 06/31] vl.c: use LOG_IOPORT instead of #ifdefs, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 02/31] hw/ppc.c: use LOG_IRQ instead of #ifdefs, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 31/31] linux-user/vm86.c: LOG_VM86 macro,
Eduardo Habkost <=
- [Qemu-devel] [PATCH 22/31] target-ppc/helper.c: LOG_BATS macro, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 28/31] target-ppc/translate.c: LOG_DISAS macro, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 24/31] target-ppc/helper.c: LOG_EXCP macro, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 07/31] kqemu.c: LOG_INT macro, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 09/31] kqemu.c: LOG_INT_STATE macro, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 10/31] kqemu.c: use LOG_INT_STATE instead of #ifdefs, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 12/31] target-i386/op_helper.c: LOG_PCALL macro, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 15/31] target-i386/op_helper.c: use LOG_PCALL/LOG_PCALL_STATE, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 29/31] hw/ppc4xx_devs.c: LOG_UIC macro, Eduardo Habkost, 2008/12/12
- [Qemu-devel] [PATCH 18/31] target-mips/translate.c: LOG_DISAS macro, Eduardo Habkost, 2008/12/12