From 42fdd8a3a1eac9849f4f7388c5720baa3b98f8f7 Mon Sep 17 00:00:00 2001 From: Stanislav Shwartsman Date: Sun, 21 Oct 2007 22:07:33 +0000 Subject: [PATCH] During Bochs benchmarking I figured out that hostasm actually slow down the emulation ... so remove this ugly code which also doesn't help :) speedup flags update for some instructions - idea was taken from DT patch by h.johansson --- bochs/Makefile.in | 10 +- bochs/bx_debug/Makefile.in | 6 +- bochs/config.h.in | 1 - bochs/configure | 9 +- bochs/configure.in | 7 +- bochs/cpu/Makefile.in | 142 ++++---- bochs/cpu/arith16.cc | 118 +------ bochs/cpu/arith32.cc | 77 +---- bochs/cpu/arith64.cc | 8 +- bochs/cpu/arith8.cc | 26 +- bochs/cpu/bcd.cc | 38 +-- bochs/cpu/bit.cc | 70 ++-- bochs/cpu/cpu.h | 18 +- bochs/cpu/flag_ctrl.cc | 12 +- bochs/cpu/hostasm.h | 664 ------------------------------------- bochs/cpu/logical16.cc | 84 +---- bochs/cpu/logical32.cc | 74 +---- bochs/cpu/logical8.cc | 83 +---- bochs/cpu/protect_ctrl.cc | 6 +- bochs/cpu/shift16.cc | 32 +- bochs/cpu/shift32.cc | 26 +- bochs/cpu/shift64.cc | 18 +- bochs/cpu/shift8.cc | 26 +- bochs/fpu/Makefile.in | 16 +- bochs/iodev/Makefile.in | 8 +- bochs/main.cc | 3 +- bochs/memory/Makefile.in | 4 +- 27 files changed, 237 insertions(+), 1349 deletions(-) delete mode 100644 bochs/cpu/hostasm.h diff --git a/bochs/Makefile.in b/bochs/Makefile.in index acb86e75a..99daba5b4 100644 --- a/bochs/Makefile.in +++ b/bochs/Makefile.in @@ -250,7 +250,7 @@ $(BX_OBJS): $(BX_INCLUDES) bxversion.h: $(RM) -f bxversion.h echo '/////////////////////////////////////////////////////////////////////////' > bxversion.h - echo '// $$Id: Makefile.in,v 1.185 2007-09-23 08:45:14 vruppert Exp $$' >> bxversion.h + echo '// $$Id: Makefile.in,v 1.186 2007-10-21 22:07:20 sshwarts Exp $$' >> bxversion.h echo '/////////////////////////////////////////////////////////////////////////' >> bxversion.h echo '// This file is generated by "make bxversion.h"' >> bxversion.h echo "#define VER_STRING \"$(VER_STRING)\"" >> bxversion.h @@ -707,7 +707,7 @@ load32bitOShack.o: load32bitOShack.@CPP_SUFFIX@ bochs.h config.h osdep.h \ bx_debug/debug.h ./config.h ./osdep.h bxversion.h gui/siminterface.h \ memory/memory.h pc_system.h plugin.h extplugin.h gui/gui.h \ gui/textconfig.h ./config.h gui/keymap.h instrument/stubs/instrument.h \ - cpu/cpu.h cpu/crregs.h ./cpu/lazy_flags.h ./cpu/hostasm.h ./disasm/disasm.h \ + cpu/cpu.h cpu/crregs.h ./cpu/lazy_flags.h ./disasm/disasm.h \ ./config.h cpu/descriptor.h cpu/icache.h iodev/iodev.h ./bochs.h \ ./iodev/pci.h ./iodev/pci2isa.h ./iodev/pci_ide.h ./iodev/pcivga.h \ ./iodev/vga.h ./iodev/svga_cirrus.h ./iodev/biosdev.h ./iodev/cmos.h \ @@ -720,7 +720,7 @@ logio.o: logio.@CPP_SUFFIX@ bochs.h config.h osdep.h bx_debug/debug.h ./config.h ./osdep.h bxversion.h gui/siminterface.h memory/memory.h pc_system.h \ plugin.h extplugin.h gui/gui.h gui/textconfig.h ./config.h gui/keymap.h \ instrument/stubs/instrument.h cpu/cpu.h cpu/crregs.h ./cpu/lazy_flags.h \ - ./cpu/hostasm.h ./disasm/disasm.h ./config.h cpu/descriptor.h \ + ./disasm/disasm.h ./config.h cpu/descriptor.h \ cpu/icache.h iodev/iodev.h ./bochs.h ./iodev/pci.h ./iodev/pci2isa.h \ ./iodev/pci_ide.h ./iodev/pcivga.h ./iodev/vga.h ./iodev/svga_cirrus.h \ ./iodev/biosdev.h ./iodev/cmos.h ./iodev/dma.h ./iodev/floppy.h \ @@ -733,7 +733,7 @@ main.o: main.@CPP_SUFFIX@ bochs.h config.h osdep.h bx_debug/debug.h ./config.h \ ./osdep.h bxversion.h gui/siminterface.h memory/memory.h pc_system.h \ plugin.h extplugin.h gui/gui.h gui/textconfig.h ./config.h gui/keymap.h \ instrument/stubs/instrument.h cpu/cpu.h cpu/crregs.h ./cpu/lazy_flags.h \ - ./cpu/hostasm.h ./disasm/disasm.h ./config.h cpu/descriptor.h \ + ./disasm/disasm.h ./config.h cpu/descriptor.h \ cpu/icache.h iodev/iodev.h ./bochs.h ./iodev/pci.h ./iodev/pci2isa.h \ ./iodev/pci_ide.h ./iodev/pcivga.h ./iodev/vga.h ./iodev/svga_cirrus.h \ ./iodev/biosdev.h ./iodev/cmos.h ./iodev/dma.h ./iodev/floppy.h \ @@ -750,7 +750,7 @@ pc_system.o: pc_system.@CPP_SUFFIX@ bochs.h config.h osdep.h bx_debug/debug.h \ ./config.h ./osdep.h bxversion.h gui/siminterface.h memory/memory.h \ pc_system.h plugin.h extplugin.h gui/gui.h gui/textconfig.h ./config.h \ gui/keymap.h instrument/stubs/instrument.h cpu/cpu.h cpu/crregs.h ./cpu/lazy_flags.h \ - ./cpu/hostasm.h ./disasm/disasm.h ./config.h cpu/descriptor.h \ + ./disasm/disasm.h ./config.h cpu/descriptor.h \ cpu/icache.h iodev/iodev.h ./bochs.h ./iodev/pci.h ./iodev/pci2isa.h \ ./iodev/pci_ide.h ./iodev/pcivga.h ./iodev/vga.h ./iodev/svga_cirrus.h \ ./iodev/biosdev.h ./iodev/cmos.h ./iodev/dma.h ./iodev/floppy.h \ diff --git a/bochs/bx_debug/Makefile.in b/bochs/bx_debug/Makefile.in index 086ea96a8..71873c107 100644 --- a/bochs/bx_debug/Makefile.in +++ b/bochs/bx_debug/Makefile.in @@ -120,7 +120,7 @@ lexer.o: lexer.c debug.h ../config.h ../osdep.h parser.o: parser.c debug.h ../config.h ../osdep.h dbg_main.o: dbg_main.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../bx_debug/debug.h ../bxversion.h ../gui/siminterface.h ../cpu/cpu.h \ - ../cpu/crregs.h ../cpu/lazy_flags.h ../cpu/hostasm.h ../cpu/icache.h \ + ../cpu/crregs.h ../cpu/lazy_flags.h ../cpu/icache.h \ ../cpu/apic.h ../cpu/i387.h ../fpu/softfloat.h ../fpu/tag_w.h \ ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h ../memory/memory.h \ ../pc_system.h ../plugin.h ../extplugin.h ../ltdl.h ../gui/gui.h \ @@ -135,14 +135,14 @@ dbg_main.o: dbg_main.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../iodev/slowdown_timer.h ../iodev/extfpuirq.h ../iodev/gameport.h linux.o: linux.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ ../bxversion.h ../gui/siminterface.h ../cpu/cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../cpu/icache.h ../cpu/apic.h ../cpu/i387.h ../cpu/crregs.h \ + ../cpu/icache.h ../cpu/apic.h ../cpu/i387.h ../cpu/crregs.h \ ../fpu/softfloat.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../ltdl.h ../gui/gui.h ../gui/textconfig.h \ ../gui/keymap.h ../instrument/stubs/instrument.h symbols.o: symbols.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ ../bxversion.h ../gui/siminterface.h ../cpu/cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../cpu/icache.h ../cpu/apic.h ../cpu/i387.h ../cpu/crregs.h \ + ../cpu/icache.h ../cpu/apic.h ../cpu/i387.h ../cpu/crregs.h \ ../fpu/softfloat.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../ltdl.h ../gui/gui.h ../gui/textconfig.h \ diff --git a/bochs/config.h.in b/bochs/config.h.in index 7cfd418ba..f71e6707b 100644 --- a/bochs/config.h.in +++ b/bochs/config.h.in @@ -737,7 +737,6 @@ typedef #define BX_SupportGuest2HostTLB 0 #define BX_SupportRepeatSpeedups 0 #define BX_SupportHostAsms 0 -#define BX_SupportHostAsmsFpu 0 #define BX_SUPPORT_ICACHE 0 diff --git a/bochs/configure b/bochs/configure index e77203179..9ce399e2f 100755 --- a/bochs/configure +++ b/bochs/configure @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Id: configure.in,v 1.346 2007/10/08 19:46:37 sshwarts Exp . +# From configure.in Id: configure.in,v 1.347 2007/10/11 21:28:57 sshwarts Exp . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.60. # @@ -37992,9 +37992,9 @@ echo "${ECHO_T}no" >&6; } fi else - { echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6; } - speedup_host_specific_asms=1 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } + speedup_host_specific_asms=0 fi @@ -38329,7 +38329,6 @@ if test "$speedups_all" = 1; then speedup_guest2host_tlb=1 speedup_repeat=1 speedup_iCache=1 - speedup_host_specific_asms=1 speedup_fastcall=1 fi diff --git a/bochs/configure.in b/bochs/configure.in index 804db9502..5a6c5b807 100644 --- a/bochs/configure.in +++ b/bochs/configure.in @@ -2,7 +2,7 @@ dnl // Process this file with autoconf to produce a configure script. AC_PREREQ(2.50) AC_INIT(bochs.h) -AC_REVISION([[$Id: configure.in,v 1.347 2007-10-11 21:28:57 sshwarts Exp $]]) +AC_REVISION([[$Id: configure.in,v 1.348 2007-10-21 22:07:31 sshwarts Exp $]]) AC_CONFIG_HEADER(config.h) AC_CONFIG_HEADER(ltdlconf.h) @@ -1049,8 +1049,8 @@ AC_ARG_ENABLE(host-specific-asms, speedup_host_specific_asms=0 fi], [ - AC_MSG_RESULT(yes) - speedup_host_specific_asms=1 + AC_MSG_RESULT(no) + speedup_host_specific_asms=0 ] ) @@ -1259,7 +1259,6 @@ if test "$speedups_all" = 1; then speedup_guest2host_tlb=1 speedup_repeat=1 speedup_iCache=1 - speedup_host_specific_asms=1 speedup_fastcall=1 fi diff --git a/bochs/cpu/Makefile.in b/bochs/cpu/Makefile.in index 8a0521920..87fc45a22 100644 --- a/bochs/cpu/Makefile.in +++ b/bochs/cpu/Makefile.in @@ -160,7 +160,7 @@ dist-clean: clean ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h access.o: access.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ @@ -168,7 +168,7 @@ access.o: access.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debu ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h apic.o: apic.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ @@ -176,7 +176,7 @@ apic.o: apic.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h \ ../iodev/iodev.h ../bochs.h ../iodev/pci.h ../iodev/pci2isa.h \ @@ -193,7 +193,7 @@ arith16.o: arith16.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -202,7 +202,7 @@ arith32.o: arith32.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -211,7 +211,7 @@ arith64.o: arith64.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -220,7 +220,7 @@ arith8.o: arith8.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debu ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h bcd.o: bcd.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ @@ -228,7 +228,7 @@ bcd.o: bcd.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h bit.o: bit.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ @@ -236,7 +236,7 @@ bit.o: bit.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h call_far.o: call_far.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ @@ -244,7 +244,7 @@ call_far.o: call_far.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -253,7 +253,7 @@ cpu.o: cpu.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h \ ../iodev/iodev.h ../bochs.h ../iodev/pci.h ../iodev/pci2isa.h \ @@ -270,7 +270,7 @@ cpuid.o: cpuid.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug. ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h ctrl_xfer16.o: ctrl_xfer16.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ @@ -278,7 +278,7 @@ ctrl_xfer16.o: ctrl_xfer16.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -287,7 +287,7 @@ ctrl_xfer32.o: ctrl_xfer32.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -296,7 +296,7 @@ ctrl_xfer64.o: ctrl_xfer64.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -305,7 +305,7 @@ ctrl_xfer8.o: ctrl_xfer8.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -314,7 +314,7 @@ ctrl_xfer_pro.o: ctrl_xfer_pro.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -323,7 +323,7 @@ data_xfer16.o: data_xfer16.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -332,7 +332,7 @@ data_xfer32.o: data_xfer32.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -341,7 +341,7 @@ data_xfer64.o: data_xfer64.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -350,7 +350,7 @@ data_xfer8.o: data_xfer8.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -359,7 +359,7 @@ debugstuff.o: debugstuff.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -368,7 +368,7 @@ exception.o: exception.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h ../iodev/iodev.h ../bochs.h ../iodev/pci.h \ @@ -385,7 +385,7 @@ fetchdecode.o: fetchdecode.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h fetchdecode.h @@ -394,7 +394,7 @@ fetchdecode64.o: fetchdecode64.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h fetchdecode.h @@ -403,7 +403,7 @@ flag_ctrl.o: flag_ctrl.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -412,7 +412,7 @@ flag_ctrl_pro.o: flag_ctrl_pro.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -421,7 +421,7 @@ fpu_emu.o: fpu_emu.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -430,7 +430,7 @@ init.o: init.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h io.o: io.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ @@ -438,7 +438,7 @@ io.o: io.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h \ ../iodev/iodev.h ../bochs.h ../iodev/pci.h ../iodev/pci2isa.h \ @@ -455,7 +455,7 @@ io_pro.o: io_pro.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debu ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h \ ../iodev/iodev.h ../bochs.h ../iodev/pci.h ../iodev/pci2isa.h \ @@ -472,7 +472,7 @@ iret.o: iret.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h jmp_far.o: jmp_far.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ @@ -480,7 +480,7 @@ jmp_far.o: jmp_far.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -489,7 +489,7 @@ lazy_flags.o: lazy_flags.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -498,7 +498,7 @@ logical16.o: logical16.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -507,7 +507,7 @@ logical32.o: logical32.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -516,7 +516,7 @@ logical64.o: logical64.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -525,7 +525,7 @@ logical8.o: logical8.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -534,7 +534,7 @@ mmx.o: mmx.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h mult16.o: mult16.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ @@ -542,7 +542,7 @@ mult16.o: mult16.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debu ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h mult32.o: mult32.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ @@ -550,7 +550,7 @@ mult32.o: mult32.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debu ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h mult64.o: mult64.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ @@ -558,7 +558,7 @@ mult64.o: mult64.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debu ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h mult8.o: mult8.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ @@ -566,7 +566,7 @@ mult8.o: mult8.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug. ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h paging.o: paging.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ @@ -574,7 +574,7 @@ paging.o: paging.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debu ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h proc_ctrl.o: proc_ctrl.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ @@ -582,7 +582,7 @@ proc_ctrl.o: proc_ctrl.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -591,7 +591,7 @@ protect_ctrl.o: protect_ctrl.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -600,7 +600,7 @@ resolve16.o: resolve16.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -609,7 +609,7 @@ resolve32.o: resolve32.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -618,7 +618,7 @@ resolve64.o: resolve64.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -627,7 +627,7 @@ ret_far.o: ret_far.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -636,7 +636,7 @@ segment_ctrl.o: segment_ctrl.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -645,7 +645,7 @@ segment_ctrl_pro.o: segment_ctrl_pro.@CPP_SUFFIX@ ../bochs.h ../config.h ../osde ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -654,7 +654,7 @@ shift16.o: shift16.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -663,7 +663,7 @@ shift32.o: shift32.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -672,7 +672,7 @@ shift64.o: shift64.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -681,7 +681,7 @@ shift8.o: shift8.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debu ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h smm.o: smm.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ @@ -689,7 +689,7 @@ smm.o: smm.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h smm.h soft_int.o: soft_int.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ @@ -697,7 +697,7 @@ soft_int.o: soft_int.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -706,7 +706,7 @@ sse.o: sse.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h sse_move.o: sse_move.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ @@ -714,7 +714,7 @@ sse_move.o: sse_move.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -723,7 +723,7 @@ sse_pfp.o: sse_pfp.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h ../fpu/softfloat-specialize.h ../fpu/softfloat.h @@ -732,7 +732,7 @@ sse_rcp.o: sse_rcp.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h ../fpu/softfloat-specialize.h ../fpu/softfloat.h @@ -741,7 +741,7 @@ sse_string.o: sse_string.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h ../fpu/softfloat-specialize.h ../fpu/softfloat.h @@ -750,7 +750,7 @@ stack16.o: stack16.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -759,7 +759,7 @@ stack32.o: stack32.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -768,7 +768,7 @@ stack64.o: stack64.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -777,7 +777,7 @@ stack_pro.o: stack_pro.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -786,7 +786,7 @@ string.o: string.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debu ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h tasking.o: tasking.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ @@ -794,7 +794,7 @@ tasking.o: tasking.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ crregs.h descriptor.h icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h \ ../config.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h @@ -803,7 +803,7 @@ vm8086.o: vm8086.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debu ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h extdb.o: extdb.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ @@ -811,7 +811,7 @@ extdb.o: extdb.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug. ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h crregs.h descriptor.h \ + ../disasm/disasm.h ../config.h crregs.h descriptor.h \ icache.h apic.h ../cpu/i387.h ../fpu/softfloat.h ../config.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h \ ../iodev/iodev.h ../bochs.h ../iodev/pci.h ../iodev/pci2isa.h \ diff --git a/bochs/cpu/arith16.cc b/bochs/cpu/arith16.cc index f6f5a0673..016eb2d1f 100644 --- a/bochs/cpu/arith16.cc +++ b/bochs/cpu/arith16.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: arith16.cc,v 1.44 2007-01-26 22:12:05 sshwarts Exp $ +// $Id: arith16.cc,v 1.45 2007-10-21 22:07:32 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -33,26 +33,14 @@ void BX_CPU_C::INC_RX(bxInstruction_c *i) { -#if defined(BX_HostAsm_Inc16) - Bit32u flags32; - asmInc16(BX_CPU_THIS_PTR gen_reg[i->opcodeReg()].word.rx, flags32); - setEFlagsOSZAP(flags32); -#else Bit16u rx = ++ BX_CPU_THIS_PTR gen_reg[i->opcodeReg()].word.rx; SET_FLAGS_OSZAP_RESULT_16(rx, BX_INSTR_INC16); -#endif } void BX_CPU_C::DEC_RX(bxInstruction_c *i) { -#if defined(BX_HostAsm_Dec16) - Bit32u flags32; - asmDec16(BX_CPU_THIS_PTR gen_reg[i->opcodeReg()].word.rx, flags32); - setEFlagsOSZAP(flags32); -#else Bit16u rx = -- BX_CPU_THIS_PTR gen_reg[i->opcodeReg()].word.rx; SET_FLAGS_OSZAP_RESULT_16(rx, BX_INSTR_DEC16); -#endif } void BX_CPU_C::ADD_EwGw(bxInstruction_c *i) @@ -84,14 +72,8 @@ void BX_CPU_C::ADD_GwEEw(bxInstruction_c *i) read_virtual_word(i->seg(), RMAddr(i), &op2_16); -#if defined(BX_HostAsm_Add16) - Bit32u flags32; - asmAdd16(sum_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else sum_16 = op1_16 + op2_16; SET_FLAGS_OSZAPC_16(op1_16, op2_16, sum_16, BX_INSTR_ADD16); -#endif BX_WRITE_16BIT_REG(nnn, sum_16); } @@ -104,14 +86,8 @@ void BX_CPU_C::ADD_GwEGw(bxInstruction_c *i) op1_16 = BX_READ_16BIT_REG(nnn); op2_16 = BX_READ_16BIT_REG(i->rm()); -#if defined(BX_HostAsm_Add16) - Bit32u flags32; - asmAdd16(sum_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else sum_16 = op1_16 + op2_16; SET_FLAGS_OSZAPC_16(op1_16, op2_16, sum_16, BX_INSTR_ADD16); -#endif BX_WRITE_16BIT_REG(nnn, sum_16); } @@ -271,30 +247,16 @@ void BX_CPU_C::SUB_EwGw(bxInstruction_c *i) if (i->modC0()) { op1_16 = BX_READ_16BIT_REG(i->rm()); -#if defined(BX_HostAsm_Sub16) - Bit32u flags32; - asmSub16(diff_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else diff_16 = op1_16 - op2_16; -#endif BX_WRITE_16BIT_REG(i->rm(), diff_16); } else { read_RMW_virtual_word(i->seg(), RMAddr(i), &op1_16); -#if defined(BX_HostAsm_Sub16) - Bit32u flags32; - asmSub16(diff_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else diff_16 = op1_16 - op2_16; -#endif write_RMW_virtual_word(diff_16); } -#if !defined(BX_HostAsm_Sub16) SET_FLAGS_OSZAPC_16(op1_16, op2_16, diff_16, BX_INSTR_SUB16); -#endif } void BX_CPU_C::SUB_GwEw(bxInstruction_c *i) @@ -311,14 +273,8 @@ void BX_CPU_C::SUB_GwEw(bxInstruction_c *i) read_virtual_word(i->seg(), RMAddr(i), &op2_16); } -#if defined(BX_HostAsm_Sub16) - Bit32u flags32; - asmSub16(diff_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else diff_16 = op1_16 - op2_16; SET_FLAGS_OSZAPC_16(op1_16, op2_16, diff_16, BX_INSTR_SUB16); -#endif BX_WRITE_16BIT_REG(nnn, diff_16); } @@ -330,14 +286,8 @@ void BX_CPU_C::SUB_AXIw(bxInstruction_c *i) op1_16 = AX; op2_16 = i->Iw(); -#if defined(BX_HostAsm_Sub16) - Bit32u flags32; - asmSub16(diff_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else diff_16 = op1_16 - op2_16; SET_FLAGS_OSZAPC_16(op1_16, op2_16, diff_16, BX_INSTR_SUB16); -#endif AX = diff_16; } @@ -355,14 +305,8 @@ void BX_CPU_C::CMP_EwGw(bxInstruction_c *i) read_virtual_word(i->seg(), RMAddr(i), &op1_16); } -#if defined(BX_HostAsm_Cmp16) - Bit32u flags32; - asmCmp16(op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else Bit16u diff_16 = op1_16 - op2_16; SET_FLAGS_OSZAPC_16(op1_16, op2_16, diff_16, BX_INSTR_COMPARE16); -#endif } void BX_CPU_C::CMP_GwEw(bxInstruction_c *i) @@ -378,14 +322,8 @@ void BX_CPU_C::CMP_GwEw(bxInstruction_c *i) read_virtual_word(i->seg(), RMAddr(i), &op2_16); } -#if defined(BX_HostAsm_Cmp16) - Bit32u flags32; - asmCmp16(op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else Bit16u diff_16 = op1_16 - op2_16; SET_FLAGS_OSZAPC_16(op1_16, op2_16, diff_16, BX_INSTR_COMPARE16); -#endif } void BX_CPU_C::CMP_AXIw(bxInstruction_c *i) @@ -395,14 +333,8 @@ void BX_CPU_C::CMP_AXIw(bxInstruction_c *i) op1_16 = AX; op2_16 = i->Iw(); -#if defined(BX_HostAsm_Cmp16) - Bit32u flags32; - asmCmp16(op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else Bit16u diff_16 = op1_16 - op2_16; SET_FLAGS_OSZAPC_16(op1_16, op2_16, diff_16, BX_INSTR_COMPARE16); -#endif } void BX_CPU_C::CBW(bxInstruction_c *i) @@ -468,14 +400,8 @@ void BX_CPU_C::ADD_EEwIw(bxInstruction_c *i) read_RMW_virtual_word(i->seg(), RMAddr(i), &op1_16); -#if defined(BX_HostAsm_Add16) - Bit32u flags32; - asmAdd16(sum_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else sum_16 = op1_16 + op2_16; SET_FLAGS_OSZAPC_16(op1_16, op2_16, sum_16, BX_INSTR_ADD16); -#endif write_RMW_virtual_word(sum_16); } @@ -488,14 +414,8 @@ void BX_CPU_C::ADD_EGwIw(bxInstruction_c *i) op1_16 = BX_READ_16BIT_REG(i->rm()); -#if defined(BX_HostAsm_Add16) - Bit32u flags32; - asmAdd16(sum_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else sum_16 = op1_16 + op2_16; SET_FLAGS_OSZAPC_16(op1_16, op2_16, sum_16, BX_INSTR_ADD16); -#endif BX_WRITE_16BIT_REG(i->rm(), sum_16); } @@ -529,30 +449,16 @@ void BX_CPU_C::SUB_EwIw(bxInstruction_c *i) if (i->modC0()) { op1_16 = BX_READ_16BIT_REG(i->rm()); -#if defined(BX_HostAsm_Sub16) - Bit32u flags32; - asmSub16(diff_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else diff_16 = op1_16 - op2_16; -#endif BX_WRITE_16BIT_REG(i->rm(), diff_16); } else { read_RMW_virtual_word(i->seg(), RMAddr(i), &op1_16); -#if defined(BX_HostAsm_Sub16) - Bit32u flags32; - asmSub16(diff_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else diff_16 = op1_16 - op2_16; -#endif write_RMW_virtual_word(diff_16); } -#if !defined(BX_HostAsm_Sub16) SET_FLAGS_OSZAPC_16(op1_16, op2_16, diff_16, BX_INSTR_SUB16); -#endif } void BX_CPU_C::CMP_EwIw(bxInstruction_c *i) @@ -568,14 +474,8 @@ void BX_CPU_C::CMP_EwIw(bxInstruction_c *i) read_virtual_word(i->seg(), RMAddr(i), &op1_16); } -#if defined(BX_HostAsm_Cmp16) - Bit32u flags32; - asmCmp16(op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else Bit16u diff_16 = op1_16 - op2_16; SET_FLAGS_OSZAPC_16(op1_16, op2_16, diff_16, BX_INSTR_COMPARE16); -#endif } void BX_CPU_C::NEG_Ew(bxInstruction_c *i) @@ -619,31 +519,17 @@ void BX_CPU_C::DEC_Ew(bxInstruction_c *i) Bit16u op1_16; if (i->modC0()) { -#if defined(BX_HostAsm_Dec16) - Bit32u flags32; - asmDec16(BX_CPU_THIS_PTR gen_reg[i->rm()].word.rx, flags32); - setEFlagsOSZAP(flags32); -#else op1_16 = BX_READ_16BIT_REG(i->rm()); op1_16--; BX_WRITE_16BIT_REG(i->rm(), op1_16); -#endif } else { read_RMW_virtual_word(i->seg(), RMAddr(i), &op1_16); -#if defined(BX_HostAsm_Dec16) - Bit32u flags32; - asmDec16(op1_16, flags32); - setEFlagsOSZAP(flags32); -#else op1_16--; -#endif write_RMW_virtual_word(op1_16); } -#if !defined(BX_HostAsm_Dec16) SET_FLAGS_OSZAP_RESULT_16(op1_16, BX_INSTR_DEC16); -#endif } void BX_CPU_C::CMPXCHG_EwGw(bxInstruction_c *i) @@ -678,7 +564,7 @@ void BX_CPU_C::CMPXCHG_EwGw(bxInstruction_c *i) AX = op1_16; } #else - BX_INFO(("CMPXCHG_EwGw: not supported for cpulevel <= 3")); + BX_INFO(("CMPXCHG_EwGw: not supported for cpu-level <= 3")); UndefinedOpcode(i); #endif } diff --git a/bochs/cpu/arith32.cc b/bochs/cpu/arith32.cc index 48663990e..83ea28ac1 100644 --- a/bochs/cpu/arith32.cc +++ b/bochs/cpu/arith32.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: arith32.cc,v 1.50 2007-01-26 22:12:05 sshwarts Exp $ +// $Id: arith32.cc,v 1.51 2007-10-21 22:07:32 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -43,14 +43,8 @@ void BX_CPU_C::INC_ERX(bxInstruction_c *i) { unsigned opcodeReg = i->opcodeReg(); -#if defined(BX_HostAsm_Inc32) - Bit32u flags32; - asmInc32(BX_CPU_THIS_PTR gen_reg[opcodeReg].dword.erx, flags32); - setEFlagsOSZAP(flags32); -#else Bit32u erx = ++ BX_CPU_THIS_PTR gen_reg[opcodeReg].dword.erx; SET_FLAGS_OSZAP_RESULT_32(erx, BX_INSTR_INC32); -#endif BX_CLEAR_64BIT_HIGH(opcodeReg); } @@ -59,14 +53,8 @@ void BX_CPU_C::DEC_ERX(bxInstruction_c *i) { unsigned opcodeReg = i->opcodeReg(); -#if defined(BX_HostAsm_Dec32) - Bit32u flags32; - asmDec32(BX_CPU_THIS_PTR gen_reg[opcodeReg].dword.erx, flags32); - setEFlagsOSZAP(flags32); -#else Bit32u erx = -- BX_CPU_THIS_PTR gen_reg[opcodeReg].dword.erx; SET_FLAGS_OSZAP_RESULT_32(erx, BX_INSTR_DEC32); -#endif BX_CLEAR_64BIT_HIGH(opcodeReg); } @@ -100,14 +88,8 @@ void BX_CPU_C::ADD_GdEEd(bxInstruction_c *i) read_virtual_dword(i->seg(), RMAddr(i), &op2_32); -#if defined(BX_HostAsm_Add32) - Bit32u flags32; - asmAdd32(sum_32, op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else sum_32 = op1_32 + op2_32; SET_FLAGS_OSZAPC_32(op1_32, op2_32, sum_32, BX_INSTR_ADD32); -#endif BX_WRITE_32BIT_REGZ(nnn, sum_32); } @@ -120,14 +102,8 @@ void BX_CPU_C::ADD_GdEGd(bxInstruction_c *i) op1_32 = BX_READ_32BIT_REG(nnn); op2_32 = BX_READ_32BIT_REG(i->rm()); -#if defined(BX_HostAsm_Add32) - Bit32u flags32; - asmAdd32(sum_32, op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else sum_32 = op1_32 + op2_32; SET_FLAGS_OSZAPC_32(op1_32, op2_32, sum_32, BX_INSTR_ADD32); -#endif BX_WRITE_32BIT_REGZ(nnn, sum_32); } @@ -319,14 +295,8 @@ void BX_CPU_C::SUB_GdEd(bxInstruction_c *i) read_virtual_dword(i->seg(), RMAddr(i), &op2_32); } -#if defined(BX_HostAsm_Sub32) - Bit32u flags32; - asmSub32(diff_32, op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else diff_32 = op1_32 - op2_32; SET_FLAGS_OSZAPC_32(op1_32, op2_32, diff_32, BX_INSTR_SUB32); -#endif BX_WRITE_32BIT_REGZ(nnn, diff_32); } @@ -357,14 +327,8 @@ void BX_CPU_C::CMP_EdGd(bxInstruction_c *i) read_virtual_dword(i->seg(), RMAddr(i), &op1_32); } -#if defined(BX_HostAsm_Cmp32) - Bit32u flags32; - asmCmp32(op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else Bit32u diff_32 = op1_32 - op2_32; SET_FLAGS_OSZAPC_32(op1_32, op2_32, diff_32, BX_INSTR_COMPARE32); -#endif } void BX_CPU_C::CMP_GdEd(bxInstruction_c *i) @@ -380,14 +344,8 @@ void BX_CPU_C::CMP_GdEd(bxInstruction_c *i) read_virtual_dword(i->seg(), RMAddr(i), &op2_32); } -#if defined(BX_HostAsm_Cmp32) - Bit32u flags32; - asmCmp32(op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else Bit32u diff_32 = op1_32 - op2_32; SET_FLAGS_OSZAPC_32(op1_32, op2_32, diff_32, BX_INSTR_COMPARE32); -#endif } void BX_CPU_C::CMP_EAXId(bxInstruction_c *i) @@ -397,14 +355,8 @@ void BX_CPU_C::CMP_EAXId(bxInstruction_c *i) op1_32 = EAX; op2_32 = i->Id(); -#if defined(BX_HostAsm_Cmp32) - Bit32u flags32; - asmCmp32(op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else Bit32u diff_32 = op1_32 - op2_32; SET_FLAGS_OSZAPC_32(op1_32, op2_32, diff_32, BX_INSTR_COMPARE32); -#endif } void BX_CPU_C::CWDE(bxInstruction_c *i) @@ -497,14 +449,8 @@ void BX_CPU_C::ADD_EEdId(bxInstruction_c *i) read_RMW_virtual_dword(i->seg(), RMAddr(i), &op1_32); -#if defined(BX_HostAsm_Add32) - Bit32u flags32; - asmAdd32(sum_32, op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else sum_32 = op1_32 + op2_32; SET_FLAGS_OSZAPC_32(op1_32, op2_32, sum_32, BX_INSTR_ADD32); -#endif write_RMW_virtual_dword(sum_32); } @@ -516,14 +462,8 @@ void BX_CPU_C::ADD_EGdId(bxInstruction_c *i) op2_32 = i->Id(); op1_32 = BX_READ_32BIT_REG(i->rm()); -#if defined(BX_HostAsm_Add32) - Bit32u flags32; - asmAdd32(sum_32, op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else sum_32 = op1_32 + op2_32; SET_FLAGS_OSZAPC_32(op1_32, op2_32, sum_32, BX_INSTR_ADD32); -#endif BX_WRITE_32BIT_REGZ(i->rm(), sum_32); } @@ -583,15 +523,8 @@ void BX_CPU_C::CMP_EdId(bxInstruction_c *i) read_virtual_dword(i->seg(), RMAddr(i), &op1_32); } -#if defined(BX_HostAsm_Cmp32) - Bit32u flags32; - asmCmp32(op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else - Bit32u diff_32; - diff_32 = op1_32 - op2_32; + Bit32u diff_32 = op1_32 - op2_32; SET_FLAGS_OSZAPC_32(op1_32, op2_32, diff_32, BX_INSTR_COMPARE32); -#endif } void BX_CPU_C::NEG_Ed(bxInstruction_c *i) @@ -702,15 +635,13 @@ void BX_CPU_C::CMPXCHG8B(bxInstruction_c *i) diff |= EDX - op1_64_hi; if (diff == 0) { // if accumulator == dest - // ZF = 1 - set_ZF(1); + assert_ZF(); // dest <-- src write_RMW_virtual_dword(ECX); write_virtual_dword(i->seg(), RMAddr(i), &EBX); } else { - // ZF = 0 - set_ZF(0); + clear_ZF(); // accumulator <-- dest RAX = op1_64_lo; RDX = op1_64_hi; diff --git a/bochs/cpu/arith64.cc b/bochs/cpu/arith64.cc index 172f7afc2..1cecdbb74 100644 --- a/bochs/cpu/arith64.cc +++ b/bochs/cpu/arith64.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: arith64.cc,v 1.30 2006-06-09 22:29:06 sshwarts Exp $ +// $Id: arith64.cc,v 1.31 2007-10-21 22:07:32 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -638,15 +638,13 @@ void BX_CPU_C::CMPXCHG16B(bxInstruction_c *i) diff |= RDX - op1_64_hi; if (diff == 0) { // if accumulator == dest - // ZF = 1 - set_ZF(1); + assert_ZF(); // dest <-- src write_RMW_virtual_qword(RCX); write_virtual_qword(i->seg(), RMAddr(i), &RBX); } else { - // ZF = 0 - set_ZF(0); + clear_ZF(); // accumulator <-- dest RAX = op1_64_lo; RDX = op1_64_hi; diff --git a/bochs/cpu/arith8.cc b/bochs/cpu/arith8.cc index a79ae3f6d..6320883aa 100644 --- a/bochs/cpu/arith8.cc +++ b/bochs/cpu/arith8.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: arith8.cc,v 1.39 2006-03-26 18:58:00 sshwarts Exp $ +// $Id: arith8.cc,v 1.40 2007-10-21 22:07:32 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -279,14 +279,8 @@ void BX_CPU_C::CMP_EbGb(bxInstruction_c *i) read_virtual_byte(i->seg(), RMAddr(i), &op1_8); } -#if defined(BX_HostAsm_Cmp8) - Bit32u flags32; - asmCmp8(op1_8, op2_8, flags32); - setEFlagsOSZAPC(flags32); -#else Bit8u diff_8 = op1_8 - op2_8; SET_FLAGS_OSZAPC_8(op1_8, op2_8, diff_8, BX_INSTR_COMPARE8); -#endif } void BX_CPU_C::CMP_GbEb(bxInstruction_c *i) @@ -302,14 +296,8 @@ void BX_CPU_C::CMP_GbEb(bxInstruction_c *i) read_virtual_byte(i->seg(), RMAddr(i), &op2_8); } -#if defined(BX_HostAsm_Cmp8) - Bit32u flags32; - asmCmp8(op1_8, op2_8, flags32); - setEFlagsOSZAPC(flags32); -#else Bit8u diff_8 = op1_8 - op2_8; SET_FLAGS_OSZAPC_8(op1_8, op2_8, diff_8, BX_INSTR_COMPARE8); -#endif } void BX_CPU_C::CMP_ALIb(bxInstruction_c *i) @@ -317,14 +305,8 @@ void BX_CPU_C::CMP_ALIb(bxInstruction_c *i) Bit8u op1_8 = AL; Bit8u op2_8 = i->Ib(); -#if defined(BX_HostAsm_Cmp8) - Bit32u flags32; - asmCmp8(op1_8, op2_8, flags32); - setEFlagsOSZAPC(flags32); -#else Bit8u diff_8 = op1_8 - op2_8; SET_FLAGS_OSZAPC_8(op1_8, op2_8, diff_8, BX_INSTR_COMPARE8); -#endif } void BX_CPU_C::XADD_EbGb(bxInstruction_c *i) @@ -439,14 +421,8 @@ void BX_CPU_C::CMP_EbIb(bxInstruction_c *i) read_virtual_byte(i->seg(), RMAddr(i), &op1_8); } -#if defined(BX_HostAsm_Cmp8) - Bit32u flags32; - asmCmp8(op1_8, op2_8, flags32); - setEFlagsOSZAPC(flags32); -#else Bit8u diff_8 = op1_8 - op2_8; SET_FLAGS_OSZAPC_8(op1_8, op2_8, diff_8, BX_INSTR_COMPARE8); -#endif } void BX_CPU_C::NEG_Eb(bxInstruction_c *i) diff --git a/bochs/cpu/bcd.cc b/bochs/cpu/bcd.cc index 3c8fbd485..162bef43a 100644 --- a/bochs/cpu/bcd.cc +++ b/bochs/cpu/bcd.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: bcd.cc,v 1.17 2006-03-06 22:02:51 sshwarts Exp $ +// $Id: bcd.cc,v 1.18 2007-10-21 22:07:32 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2002 MandrakeSoft S.A. @@ -58,12 +58,12 @@ void BX_CPU_C::AAA(bxInstruction_c *) if ( ((AL & 0x0f) > 9) || get_AF() ) { AX = AX + 0x106; - set_AF(1); - set_CF(1); + assert_AF(); + assert_CF(); } else { - set_AF(0); - set_CF(0); + clear_AF(); + clear_CF(); } AL = AL & 0x0f; @@ -73,8 +73,8 @@ void BX_CPU_C::AAA(bxInstruction_c *) /* The following behaviour seems to match the P6 and its derived processors. */ - set_OF(0); - set_SF(0); /* sign is always 0 because bits 4-7 of AL are zeroed */ + clear_OF(); + clear_SF(); /* sign is always 0 because bits 4-7 of AL are zeroed */ set_ZF(AL == 0); set_PF_base(AL); } @@ -86,12 +86,12 @@ void BX_CPU_C::AAS(bxInstruction_c *) if ( ((AL & 0x0F) > 0x09) || get_AF() ) { AX = AX - 0x106; - set_AF(1); - set_CF(1); + assert_AF(); + assert_CF(); } else { - set_CF(0); - set_AF(0); + clear_CF(); + clear_AF(); } AL = AL & 0x0f; @@ -101,8 +101,8 @@ void BX_CPU_C::AAS(bxInstruction_c *) /* The following behaviour seems to match the P6 and its derived processors. */ - set_OF(0); - set_SF(0); /* sign is always 0 because bits 4-7 of AL are zeroed */ + clear_OF(); + clear_SF(); /* sign is always 0 because bits 4-7 of AL are zeroed */ set_ZF(AL == 0); set_PF_base(AL); } @@ -171,10 +171,10 @@ void BX_CPU_C::DAA(bxInstruction_c *) { tmpCF = ((AL > 0xF9) || get_CF()); AL = AL + 0x06; - set_AF(1); + assert_AF(); } else - set_AF(0); + clear_AF(); if ((tmpAL > 0x99) || get_CF()) { @@ -184,7 +184,7 @@ void BX_CPU_C::DAA(bxInstruction_c *) else tmpCF = 0; - set_OF(0); /* undocumented flag modification */ + clear_OF(); /* undocumented flag modification */ set_SF(AL >= 0x80); set_ZF(AL==0); set_PF_base(AL); @@ -210,10 +210,10 @@ void BX_CPU_C::DAS(bxInstruction_c *) { tmpCF = (AL < 0x06) || get_CF(); AL = AL - 0x06; - set_AF(1); + assert_AF(); } else - set_AF(0); + clear_AF(); if ((tmpAL > 0x99) || get_CF()) { @@ -221,7 +221,7 @@ void BX_CPU_C::DAS(bxInstruction_c *) tmpCF = 1; } - set_OF(0); /* undocumented flag modification */ + clear_OF(); /* undocumented flag modification */ set_SF(AL >= 0x80); set_ZF(AL==0); set_PF_base(AL); diff --git a/bochs/cpu/bit.cc b/bochs/cpu/bit.cc index 9254865ae..19eba85dc 100644 --- a/bochs/cpu/bit.cc +++ b/bochs/cpu/bit.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: bit.cc,v 1.33 2007-10-01 19:59:35 sshwarts Exp $ +// $Id: bit.cc,v 1.34 2007-10-21 22:07:32 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -565,7 +565,7 @@ void BX_CPU_C::BT_EwGw(bxInstruction_c *i) if (i->modC0()) { op1_16 = BX_READ_16BIT_REG(i->rm()); op2_16 &= 0x0f; - set_CF((op1_16 >> op2_16) & 0x01); + setB_CF((op1_16 >> op2_16) & 0x01); return; } @@ -576,7 +576,7 @@ void BX_CPU_C::BT_EwGw(bxInstruction_c *i) /* pointer, segment address pair */ read_virtual_word(i->seg(), op1_addr, &op1_16); - set_CF((op1_16 >> index) & 0x01); + setB_CF((op1_16 >> index) & 0x01); } void BX_CPU_C::BT_EdGd(bxInstruction_c *i) @@ -591,7 +591,7 @@ void BX_CPU_C::BT_EdGd(bxInstruction_c *i) if (i->modC0()) { op1_32 = BX_READ_32BIT_REG(i->rm()); op2_32 &= 0x1f; - set_CF((op1_32 >> op2_32) & 0x01); + setB_CF((op1_32 >> op2_32) & 0x01); return; } @@ -602,7 +602,7 @@ void BX_CPU_C::BT_EdGd(bxInstruction_c *i) /* pointer, segment address pair */ read_virtual_dword(i->seg(), op1_addr, &op1_32); - set_CF((op1_32 >> index) & 0x01); + setB_CF((op1_32 >> index) & 0x01); } #if BX_SUPPORT_X86_64 @@ -619,7 +619,7 @@ void BX_CPU_C::BT_EqGq(bxInstruction_c *i) if (i->modC0()) { op1_64 = BX_READ_64BIT_REG(i->rm()); op2_64 &= 0x3f; - set_CF((op1_64 >> op2_64) & 0x01); + setB_CF((op1_64 >> op2_64) & 0x01); return; } @@ -630,7 +630,7 @@ void BX_CPU_C::BT_EqGq(bxInstruction_c *i) /* pointer, segment address pair */ read_virtual_qword(i->seg(), op1_addr, &op1_64); - set_CF((op1_64 >> index) & 0x01); + setB_CF((op1_64 >> index) & 0x01); } #endif @@ -646,7 +646,7 @@ void BX_CPU_C::BTS_EwGw(bxInstruction_c *i) if (i->modC0()) { op1_16 = BX_READ_16BIT_REG(i->rm()); op2_16 &= 0x0f; - set_CF((op1_16 >> op2_16) & 0x01); + setB_CF((op1_16 >> op2_16) & 0x01); op1_16 |= (((Bit16u) 1) << op2_16); /* now write diff back to destination */ @@ -666,7 +666,7 @@ void BX_CPU_C::BTS_EwGw(bxInstruction_c *i) write_RMW_virtual_word(op1_16); - set_CF(bit_i); + setB_CF(bit_i); } void BX_CPU_C::BTS_EdGd(bxInstruction_c *i) @@ -681,7 +681,7 @@ void BX_CPU_C::BTS_EdGd(bxInstruction_c *i) if (i->modC0()) { op1_32 = BX_READ_32BIT_REG(i->rm()); op2_32 &= 0x1f; - set_CF((op1_32 >> op2_32) & 0x01); + setB_CF((op1_32 >> op2_32) & 0x01); op1_32 |= (((Bit32u) 1) << op2_32); /* now write diff back to destination */ @@ -701,7 +701,7 @@ void BX_CPU_C::BTS_EdGd(bxInstruction_c *i) write_RMW_virtual_dword(op1_32); - set_CF(bit_i); + setB_CF(bit_i); } #if BX_SUPPORT_X86_64 @@ -718,7 +718,7 @@ void BX_CPU_C::BTS_EqGq(bxInstruction_c *i) if (i->modC0()) { op1_64 = BX_READ_64BIT_REG(i->rm()); op2_64 &= 0x3f; - set_CF((op1_64 >> op2_64) & 0x01); + setB_CF((op1_64 >> op2_64) & 0x01); op1_64 |= (((Bit64u) 1) << op2_64); /* now write diff back to destination */ @@ -738,7 +738,7 @@ void BX_CPU_C::BTS_EqGq(bxInstruction_c *i) write_RMW_virtual_qword(op1_64); - set_CF(bit_i); + setB_CF(bit_i); } #endif @@ -754,7 +754,7 @@ void BX_CPU_C::BTR_EwGw(bxInstruction_c *i) if (i->modC0()) { op1_16 = BX_READ_16BIT_REG(i->rm()); op2_16 &= 0x0f; - set_CF((op1_16 >> op2_16) & 0x01); + setB_CF((op1_16 >> op2_16) & 0x01); op1_16 &= ~(((Bit16u) 1) << op2_16); /* now write diff back to destination */ @@ -775,7 +775,7 @@ void BX_CPU_C::BTR_EwGw(bxInstruction_c *i) /* now write back to destination */ write_RMW_virtual_word(op1_16); - set_CF(temp_cf); + setB_CF(temp_cf); } void BX_CPU_C::BTR_EdGd(bxInstruction_c *i) @@ -790,7 +790,7 @@ void BX_CPU_C::BTR_EdGd(bxInstruction_c *i) if (i->modC0()) { op1_32 = BX_READ_32BIT_REG(i->rm()); op2_32 &= 0x1f; - set_CF((op1_32 >> op2_32) & 0x01); + setB_CF((op1_32 >> op2_32) & 0x01); op1_32 &= ~(((Bit32u) 1) << op2_32); /* now write diff back to destination */ @@ -811,7 +811,7 @@ void BX_CPU_C::BTR_EdGd(bxInstruction_c *i) /* now write back to destination */ write_RMW_virtual_dword(op1_32); - set_CF(temp_cf); + setB_CF(temp_cf); } #if BX_SUPPORT_X86_64 @@ -827,7 +827,7 @@ void BX_CPU_C::BTR_EqGq(bxInstruction_c *i) if (i->modC0()) { op1_64 = BX_READ_64BIT_REG(i->rm()); op2_64 &= 0x3f; - set_CF((op1_64 >> op2_64) & 0x01); + setB_CF((op1_64 >> op2_64) & 0x01); op1_64 &= ~(((Bit64u) 1) << op2_64); /* now write diff back to destination */ @@ -848,7 +848,7 @@ void BX_CPU_C::BTR_EqGq(bxInstruction_c *i) /* now write back to destination */ write_RMW_virtual_qword(op1_64); - set_CF(temp_cf); + setB_CF(temp_cf); } #endif @@ -874,7 +874,7 @@ void BX_CPU_C::BTC_EwGw(bxInstruction_c *i) bx_bool temp_CF = (op1_16 >> index_16) & 0x01; op1_16 ^= (((Bit16u) 1) << index_16); /* toggle bit */ - set_CF(temp_CF); + setB_CF(temp_CF); /* now write diff back to destination */ if (i->modC0()) { @@ -884,7 +884,7 @@ void BX_CPU_C::BTC_EwGw(bxInstruction_c *i) write_RMW_virtual_word(op1_16); } - set_CF(temp_CF); + setB_CF(temp_CF); } void BX_CPU_C::BTC_EdGd(bxInstruction_c *i) @@ -909,7 +909,7 @@ void BX_CPU_C::BTC_EdGd(bxInstruction_c *i) bx_bool temp_CF = (op1_32 >> index_32) & 0x01; op1_32 ^= (((Bit32u) 1) << index_32); /* toggle bit */ - set_CF(temp_CF); + setB_CF(temp_CF); /* now write diff back to destination */ if (i->modC0()) { @@ -944,7 +944,7 @@ void BX_CPU_C::BTC_EqGq(bxInstruction_c *i) bx_bool temp_CF = (op1_64 >> index) & 0x01; op1_64 ^= (((Bit64u) 1) << index); /* toggle bit */ - set_CF(temp_CF); + setB_CF(temp_CF); /* now write diff back to destination */ if (i->modC0()) { @@ -971,7 +971,7 @@ void BX_CPU_C::BT_EwIb(bxInstruction_c *i) read_virtual_word(i->seg(), RMAddr(i), &op1_16); } - set_CF((op1_16 >> op2_8) & 0x01); + setB_CF((op1_16 >> op2_8) & 0x01); } void BX_CPU_C::BT_EdIb(bxInstruction_c *i) @@ -989,7 +989,7 @@ void BX_CPU_C::BT_EdIb(bxInstruction_c *i) read_virtual_dword(i->seg(), RMAddr(i), &op1_32); } - set_CF((op1_32 >> op2_8) & 0x01); + setB_CF((op1_32 >> op2_8) & 0x01); } #if BX_SUPPORT_X86_64 @@ -1008,7 +1008,7 @@ void BX_CPU_C::BT_EqIb(bxInstruction_c *i) read_virtual_qword(i->seg(), RMAddr(i), &op1_64); } - set_CF((op1_64 >> op2_8) & 0x01); + setB_CF((op1_64 >> op2_8) & 0x01); } #endif @@ -1038,7 +1038,7 @@ void BX_CPU_C::BTS_EwIb(bxInstruction_c *i) write_RMW_virtual_word(op1_16); } - set_CF(temp_CF); + setB_CF(temp_CF); } void BX_CPU_C::BTS_EdIb(bxInstruction_c *i) @@ -1067,7 +1067,7 @@ void BX_CPU_C::BTS_EdIb(bxInstruction_c *i) write_RMW_virtual_dword(op1_32); } - set_CF(temp_CF); + setB_CF(temp_CF); } #if BX_SUPPORT_X86_64 @@ -1097,7 +1097,7 @@ void BX_CPU_C::BTS_EqIb(bxInstruction_c *i) write_RMW_virtual_qword(op1_64); } - set_CF(temp_CF); + setB_CF(temp_CF); } #endif @@ -1118,7 +1118,7 @@ void BX_CPU_C::BTC_EwIb(bxInstruction_c *i) bx_bool temp_CF = (op1_16 >> op2_8) & 0x01; op1_16 ^= (((Bit16u) 1) << op2_8); /* toggle bit */ - set_CF(temp_CF); + setB_CF(temp_CF); /* now write diff back to destination */ if (i->modC0()) { @@ -1146,7 +1146,7 @@ void BX_CPU_C::BTC_EdIb(bxInstruction_c *i) bx_bool temp_CF = (op1_32 >> op2_8) & 0x01; op1_32 ^= (((Bit32u) 1) << op2_8); /* toggle bit */ - set_CF(temp_CF); + setB_CF(temp_CF); /* now write diff back to destination */ if (i->modC0()) { @@ -1175,7 +1175,7 @@ void BX_CPU_C::BTC_EqIb(bxInstruction_c *i) bx_bool temp_CF = (op1_64 >> op2_8) & 0x01; op1_64 ^= (((Bit64u) 1) << op2_8); /* toggle bit */ - set_CF(temp_CF); + setB_CF(temp_CF); /* now write diff back to destination */ if (i->modC0()) { @@ -1213,7 +1213,7 @@ void BX_CPU_C::BTR_EwIb(bxInstruction_c *i) write_RMW_virtual_word(op1_16); } - set_CF(temp_CF); + setB_CF(temp_CF); } void BX_CPU_C::BTR_EdIb(bxInstruction_c *i) @@ -1242,7 +1242,7 @@ void BX_CPU_C::BTR_EdIb(bxInstruction_c *i) write_RMW_virtual_dword(op1_32); } - set_CF(temp_CF); + setB_CF(temp_CF); } #if BX_SUPPORT_X86_64 @@ -1272,7 +1272,7 @@ void BX_CPU_C::BTR_EqIb(bxInstruction_c *i) write_RMW_virtual_qword(op1_64); } - set_CF(temp_CF); + setB_CF(temp_CF); } #endif diff --git a/bochs/cpu/cpu.h b/bochs/cpu/cpu.h index 1d387457b..2a035b73a 100644 --- a/bochs/cpu/cpu.h +++ b/bochs/cpu/cpu.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: cpu.h,v 1.339 2007-10-20 17:03:33 sshwarts Exp $ +// $Id: cpu.h,v 1.340 2007-10-21 22:07:32 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -32,7 +32,6 @@ #include #include "cpu/lazy_flags.h" -#include "cpu/hostasm.h" #if BX_DISASM # include "disasm/disasm.h" @@ -421,13 +420,15 @@ typedef struct { Bit32u VM_cached; // accessors for all eflags in bx_flags_reg_t - // The macro is used once for each flag bit. + // The macro is used once for each flag bit + // Do not use for arithmetic flags ! #define DECLARE_EFLAG_ACCESSOR(name,bitnum) \ BX_CPP_INLINE void assert_##name (); \ BX_CPP_INLINE void clear_##name (); \ BX_CPP_INLINE Bit32u get_##name (); \ BX_CPP_INLINE bx_bool getB_##name (); \ - BX_CPP_INLINE void set_##name (Bit8u val); + BX_CPP_INLINE void set_##name (Bit8u val); \ + BX_CPP_INLINE void setB_##name (Bit8u val); #define IMPLEMENT_EFLAG_ACCESSOR(name,bitnum) \ BX_CPP_INLINE void BX_CPU_C::assert_##name () { \ @@ -445,6 +446,10 @@ typedef struct { BX_CPP_INLINE void BX_CPU_C::set_##name (Bit8u val) { \ BX_CPU_THIS_PTR eflags.val32 = \ (BX_CPU_THIS_PTR eflags.val32&~(1<> 7); - set_ZF((AH & 0x40) >> 6); - set_AF((AH & 0x10) >> 4); - set_CF(AH & 0x01); - set_PF((AH & 0x04) >> 2); + setB_SF((AH & 0x80) >> 7); + setB_ZF((AH & 0x40) >> 6); + setB_AF((AH & 0x10) >> 4); + setB_CF (AH & 0x01); + setB_PF((AH & 0x04) >> 2); } void BX_CPU_C::LAHF(bxInstruction_c *i) diff --git a/bochs/cpu/hostasm.h b/bochs/cpu/hostasm.h deleted file mode 100644 index 2588e228a..000000000 --- a/bochs/cpu/hostasm.h +++ /dev/null @@ -1,664 +0,0 @@ -///////////////////////////////////////////////////////////////////////// -// $Id: hostasm.h,v 1.1 2004-02-15 17:57:44 cbothamy Exp $ -///////////////////////////////////////////////////////////////////////// -// -// Copyright (C) 2001 MandrakeSoft S.A. -// -// MandrakeSoft S.A. -// 43, rue d'Aboukir -// 75002 Paris - France -// http://www.linux-mandrake.com/ -// http://www.mandrakesoft.com/ -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2 of the License, or (at your option) any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - -#ifndef BX_HOSTASM_H -# define BX_HOSTASM_H 1 - -// This file defines some convience inline functions which do the -// dirty work of asm() statements for arithmetic instructions on x86 hosts. -// Essentially these speed up eflags processing since the value of the -// eflags register can be read directly on x86 hosts, after the -// arithmetic operations. - -// gcc on i386 -#if (defined(__i386__) && defined(__GNUC__) && BX_SupportHostAsms) - -#define BX_HostAsm_Add16 - static inline void -asmAdd16(Bit16u &sum_16, Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -{ - asm ( - "addw %3, %1 \n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=r" (sum_16) - : "1" (op1_16), "g" (op2_16) - : "cc" - ); -} - -#define BX_HostAsm_Add32 - static inline void -asmAdd32(Bit32u &sum_32, Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -{ - asm ( - "addl %3, %1 \n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=r" (sum_32) - : "1" (op1_32), "g" (op2_32) - : "cc" - ); -} - -#define BX_HostAsm_Sub16 - static inline void -asmSub16(Bit16u &diff_16, Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -{ - asm ( - "subw %3, %1\n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=r" (diff_16) - : "1" (op1_16), "g" (op2_16) - : "cc" - ); -} - -#define BX_HostAsm_Sub32 - static inline void -asmSub32(Bit32u &diff_32, Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -{ - asm ( - "subl %3, %1\n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=r" (diff_32) - : "1" (op1_32), "g" (op2_32) - : "cc" - ); -} - -#define BX_HostAsm_Cmp8 - static inline void -asmCmp8(Bit8u op1_8, Bit8u op2_8, Bit32u &flags32) -{ - asm ( - "cmpb %2, %1\n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32) - : "q" (op1_8), "mq" (op2_8) - : "cc" - ); -} - -#define BX_HostAsm_Cmp16 - static inline void -asmCmp16(Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -{ - asm ( - "cmpw %2, %1\n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32) - : "r" (op1_16), "g" (op2_16) - : "cc" - ); -} - -#define BX_HostAsm_Cmp32 - static inline void -asmCmp32(Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -{ - asm ( - "cmpl %2, %1\n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32) - : "r" (op1_32), "g" (op2_32) - : "cc" - ); -} - -#define BX_HostAsm_Inc16 - static inline void -asmInc16(Bit16u &op1_16, Bit32u &flags32) -{ - asm ( - "incw %1 \n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=g" (op1_16) - : "1" (op1_16) - : "cc" - ); -} - -#define BX_HostAsm_Inc32 - static inline void -asmInc32(Bit32u &op1_32, Bit32u &flags32) -{ - asm ( - "incl %1 \n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=g" (op1_32) - : "1" (op1_32) - : "cc" - ); -} - -#define BX_HostAsm_Dec16 - static inline void -asmDec16(Bit16u &op1_16, Bit32u &flags32) -{ - asm ( - "decw %1 \n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=g" (op1_16) - : "1" (op1_16) - : "cc" - ); -} - -#define BX_HostAsm_Dec32 - static inline void -asmDec32(Bit32u &op1_32, Bit32u &flags32) -{ - asm ( - "decl %1 \n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=g" (op1_32) - : "1" (op1_32) - : "cc" - ); -} - -#define BX_HostAsm_Xor16 - static inline void -asmXor16(Bit16u &result_16, Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -{ - asm ( - "xorw %3, %1 \n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=r" (result_16) - : "1" (op1_16), "g" (op2_16) - : "cc" - ); -} - -#define BX_HostAsm_Xor32 - static inline void -asmXor32(Bit32u &result_32, Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -{ - asm ( - "xorl %3, %1 \n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=r" (result_32) - : "1" (op1_32), "g" (op2_32) - : "cc" - ); -} - -#define BX_HostAsm_Or8 - static inline void -asmOr8(Bit8u &result_8, Bit8u op1_8, Bit8u op2_8, Bit32u &flags32) -{ - asm ( - "orb %3, %1 \n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=q" (result_8) - : "1" (op1_8), "mq" (op2_8) - : "cc" - ); -} - -#define BX_HostAsm_Or16 - static inline void -asmOr16(Bit16u &result_16, Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -{ - asm ( - "orw %3, %1 \n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=r" (result_16) - : "1" (op1_16), "g" (op2_16) - : "cc" - ); -} - -#define BX_HostAsm_Or32 - static inline void -asmOr32(Bit32u &result_32, Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -{ - asm ( - "orl %3, %1 \n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=r" (result_32) - : "1" (op1_32), "g" (op2_32) - : "cc" - ); -} - -#define BX_HostAsm_And8 - static inline void -asmAnd8(Bit8u &result_8, Bit8u op1_8, Bit8u op2_8, Bit32u &flags32) -{ - asm ( - "andb %3, %1\n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=q" (result_8) - : "1" (op1_8), "mq" (op2_8) - : "cc" - ); -} - -#define BX_HostAsm_And16 - static inline void -asmAnd16(Bit16u &result_16, Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -{ - asm ( - "andw %3, %1 \n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=r" (result_16) - : "1" (op1_16), "g" (op2_16) - : "cc" - ); -} - -#define BX_HostAsm_And32 - static inline void -asmAnd32(Bit32u &result_32, Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -{ - asm ( - "andl %3, %1 \n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=r" (result_32) - : "1" (op1_32), "g" (op2_32) - : "cc" - ); -} - -#define BX_HostAsm_Test8 - static inline void -asmTest8(Bit8u op1_8, Bit8u op2_8, Bit32u &flags32) -{ - asm ( - "testb %2, %1\n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32) - : "q" (op1_8), "mq" (op2_8) - : "cc" - ); -} - -#define BX_HostAsm_Test16 - static inline void -asmTest16(Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -{ - asm ( - "testw %2, %1\n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32) - : "r" (op1_16), "g" (op2_16) - : "cc" - ); -} - -#define BX_HostAsm_Test32 - static inline void -asmTest32(Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -{ - asm ( - "testl %2, %1\n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32) - : "r" (op1_32), "g" (op2_32) - : "cc" - ); -} - -#define BX_HostAsm_Shr16 - static inline void -asmShr16(Bit16u &result_16, Bit16u op1_16, unsigned count, Bit32u &flags32) -{ - asm ( - "shrw %%cl, %1\n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=g" (result_16) - : "1" (op1_16), "c" (count) - : "cc" - ); -} - -#define BX_HostAsm_Shr32 - static inline void -asmShr32(Bit32u &result_32, Bit32u op1_32, unsigned count, Bit32u &flags32) -{ - asm ( - "shrl %%cl, %1\n\t" - "pushfl \n\t" - "popl %0" - : "=g" (flags32), "=g" (result_32) - : "1" (op1_32), "c" (count) - : "cc" - ); -} - -#endif // (defined(__i386__) && defined(__GNUC__) && BX_SupportHostAsms) - - -// msvc++ on i386 -#if (defined(_M_IX86) && defined(_MSC_VER) && BX_SupportHostAsms) - -#define BX_HostAsm_Add16 -// asmAdd16(Bit16u &sum_16, Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -#define asmAdd16(sum_16,op1_16,op2_16,flags32) \ - __asm { \ - __asm mov ax,op1_16 \ - __asm add ax,op2_16 \ - __asm pushfd \ - __asm pop edx \ - __asm mov sum_16,ax \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Add32 -// asmAdd32(Bit32u &sum_32, Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -#define asmAdd32(sum_32,op1_32,op2_32,flags32) \ - __asm { \ - __asm mov eax,op1_32 \ - __asm add eax,op2_32 \ - __asm pushfd \ - __asm pop edx \ - __asm mov sum_32,eax \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Sub16 -// asmSub16(Bit16u &diff_16, Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -#define asmSub16(diff_16,op1_16,op2_16,flags32) \ - __asm { \ - __asm mov ax,op1_16 \ - __asm sub ax,op2_16 \ - __asm pushfd \ - __asm pop edx \ - __asm mov diff_16,ax \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Sub32 -// asmSub32(Bit32u &diff_32, Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -#define asmSub32(diff_32,op1_32,op2_32,flags32) \ - __asm { \ - __asm mov eax,op1_32 \ - __asm sub eax,op2_32 \ - __asm pushfd \ - __asm pop edx \ - __asm mov diff_32,eax \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Cmp8 -// asmCmp8(Bit8u op1_8, Bit8u op2_8, Bit32u &flags32) -#define asmCmp8(op1_8,op2_8,flags32) \ - __asm { \ - __asm mov al,op1_8 \ - __asm cmp al,op2_8 \ - __asm pushfd \ - __asm pop edx \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Cmp16 -// asmCmp16(Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -#define asmCmp16(op1_16,op2_16,flags32) \ - __asm { \ - __asm mov ax,op1_16 \ - __asm cmp ax,op2_16 \ - __asm pushfd \ - __asm pop edx \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Cmp32 -// asmCmp32(Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -#define asmCmp32(op1_32,op2_32,flags32) \ - __asm { \ - __asm mov eax,op1_32 \ - __asm cmp eax,op2_32 \ - __asm pushfd \ - __asm pop edx \ - __asm mov flags32,edx \ - } - -// FIXME: cannot compile arith16.cc because of 'union'. -//#define BX_HostAsm_Inc16 -// asmInc16(Bit16u &op1_16, Bit32u &flags32) -#define asmInc16(op1_16,flags32) \ - __asm { \ - __asm inc word ptr op1_16 \ - __asm pushfd \ - __asm pop edx \ - __asm mov flags32,edx \ - } - -// FIXME: cannot compile arith32.cc because of 'union'. -//#define BX_HostAsm_Inc32 -// asmInc32(Bit32u &op1_32, Bit32u &flags32) -#define asmInc32(op1_32,flags32) \ - __asm { \ - __asm inc dword ptr op1_32 \ - __asm pushfd \ - __asm pop edx \ - __asm mov flags32,edx \ - } - -// FIXME: cannot compile arith16.cc because of 'union'. -//#define BX_HostAsm_Dec16 -// asmDec16(Bit16u &op1_16, Bit32u &flags32) -#define asmDec16(op1_16,flags32) \ - __asm { \ - __asm dec word ptr op1_16 \ - __asm pushfd \ - __asm pop edx \ - __asm mov flags32,edx \ - } - -// FIXME: cannot compile arith32.cc because of 'union'. -//#define BX_HostAsm_Dec32 -// asmDec32(Bit32u &op1_32, Bit32u &flags32) -#define asmDec32(op1_32,flags32) \ - __asm { \ - __asm dec dword ptr op1_32 \ - __asm pushfd \ - __asm pop edx \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Xor16 -// asmXor16(Bit16u &result_16, Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -#define asmXor16(result_16,op1_16,op2_16,flags32) \ - __asm { \ - __asm mov ax,op1_16 \ - __asm xor ax,op2_16 \ - __asm pushfd \ - __asm pop edx \ - __asm mov result_16,ax \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Xor32 -// asmXor32(Bit32u &result_32, Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -#define asmXor32(result_32,op1_32,op2_32,flags32) \ - __asm { \ - __asm mov eax,op1_32 \ - __asm xor eax,op2_32 \ - __asm pushfd \ - __asm pop edx \ - __asm mov result_32,eax \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Or8 -// asmOr8(Bit8u &result_8, Bit8u op1_8, Bit8u op2_8, Bit32u &flags32) -#define asmOr8(result_8,op1_8,op2_8,flags32) \ - __asm { \ - __asm mov al,op1_8 \ - __asm or al,op2_8 \ - __asm pushfd \ - __asm pop edx \ - __asm mov result_8,al \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Or16 -// asmOr16(Bit16u &result_16, Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -#define asmOr16(result_16,op1_16,op2_16,flags32) \ - __asm { \ - __asm mov ax,op1_16 \ - __asm or ax,op2_16 \ - __asm pushfd \ - __asm pop edx \ - __asm mov result_16,ax \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Or32 -// asmOr32(Bit32u &result_32, Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -#define asmOr32(result_32,op1_32,op2_32,flags32) \ - __asm { \ - __asm mov eax,op1_32 \ - __asm or eax,op2_32 \ - __asm pushfd \ - __asm pop edx \ - __asm mov result_32,eax \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_And8 -// asmAnd8(Bit8u &result_8, Bit8u op1_8, Bit8u op2_8, Bit32u &flags32) -#define asmAnd8(result_8,op1_8,op2_8,flags32) \ - __asm { \ - __asm mov al,op1_8 \ - __asm and al,op2_8 \ - __asm pushfd \ - __asm pop edx \ - __asm mov result_8,al \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_And16 -// asmAnd16(Bit16u &result_16, Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -#define asmAnd16(result_16,op1_16,op2_16,flags32) \ - __asm { \ - __asm mov ax,op1_16 \ - __asm and ax,op2_16 \ - __asm pushfd \ - __asm pop edx \ - __asm mov result_16,ax \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_And32 -// asmAnd32(Bit32u &result_32, Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -#define asmAnd32(result_32,op1_32,op2_32,flags32) \ - __asm { \ - __asm mov eax,op1_32 \ - __asm and eax,op2_32 \ - __asm pushfd \ - __asm pop edx \ - __asm mov result_32,eax \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Test8 -// asmTest8(Bit8u op1_8, Bit8u op2_8, Bit32u &flags32) -#define asmTest8(op1_8,op2_8,flags32) \ - __asm { \ - __asm mov al,op1_8 \ - __asm test al,op2_8 \ - __asm pushfd \ - __asm pop edx \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Test16 -// asmTest16(Bit16u op1_16, Bit16u op2_16, Bit32u &flags32) -#define asmTest16(op1_16,op2_16,flags32) \ - __asm { \ - __asm mov ax,op1_16 \ - __asm test ax,op2_16 \ - __asm pushfd \ - __asm pop edx \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Test32 -// asmTest32(Bit32u op1_32, Bit32u op2_32, Bit32u &flags32) -#define asmTest32(op1_32,op2_32,flags32) \ - __asm { \ - __asm mov eax,op1_32 \ - __asm test eax,op2_32 \ - __asm pushfd \ - __asm pop edx \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Shr16 -// asmShr16(Bit16u &result_16, Bit16u op1_16, unsigned count, Bit32u &flags32) -#define asmShr16(result_16,op1_16,count,flags32) \ - __asm { \ - __asm mov ax,op1_16 \ - __asm mov cl,byte ptr count \ - __asm shr ax,cl \ - __asm pushfd \ - __asm pop edx \ - __asm mov result_16,ax \ - __asm mov flags32,edx \ - } - -#define BX_HostAsm_Shr32 -// asmShr32(Bit32u &result_32, Bit32u op1_32, unsigned count, Bit32u &flags32) -#define asmShr32(result_32,op1_32,count,flags32) \ - __asm { \ - __asm mov eax,op1_32 \ - __asm mov cl,byte ptr count \ - __asm shr eax,cl \ - __asm pushfd \ - __asm pop edx \ - __asm mov result_32,eax \ - __asm mov flags32,edx \ - } - -#endif // (defined(_M_IX86) && defined(_MSC_VER) && BX_SupportHostAsms) - -#endif // BX_HOSTASM_H diff --git a/bochs/cpu/logical16.cc b/bochs/cpu/logical16.cc index 485f1fcf0..edce2c393 100644 --- a/bochs/cpu/logical16.cc +++ b/bochs/cpu/logical16.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: logical16.cc,v 1.26 2007-04-17 21:38:51 sshwarts Exp $ +// $Id: logical16.cc,v 1.27 2007-10-21 22:07:33 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -40,30 +40,16 @@ void BX_CPU_C::XOR_EwGw(bxInstruction_c *i) if (i->modC0()) { op1_16 = BX_READ_16BIT_REG(i->rm()); -#if defined(BX_HostAsm_Xor16) - Bit32u flags32; - asmXor16(result_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else result_16 = op1_16 ^ op2_16; -#endif BX_WRITE_16BIT_REG(i->rm(), result_16); } else { read_RMW_virtual_word(i->seg(), RMAddr(i), &op1_16); -#if defined(BX_HostAsm_Xor16) - Bit32u flags32; - asmXor16(result_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else result_16 = op1_16 ^ op2_16; -#endif write_RMW_virtual_word(result_16); } -#if !defined(BX_HostAsm_Xor16) SET_FLAGS_OSZAPC_RESULT_16(result_16, BX_INSTR_LOGIC16); -#endif } void BX_CPU_C::XOR_GwEw(bxInstruction_c *i) @@ -188,14 +174,8 @@ void BX_CPU_C::OR_GwEw(bxInstruction_c *i) read_virtual_word(i->seg(), RMAddr(i), &op2_16); } -#if defined(BX_HostAsm_Or16) - Bit32u flags32; - asmOr16(result_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else result_16 = op1_16 | op2_16; SET_FLAGS_OSZAPC_RESULT_16(result_16, BX_INSTR_LOGIC16); -#endif BX_WRITE_16BIT_REG(i->nnn(), result_16); } @@ -220,34 +200,16 @@ void BX_CPU_C::AND_EwGw(bxInstruction_c *i) if (i->modC0()) { op1_16 = BX_READ_16BIT_REG(i->rm()); - -#if defined(BX_HostAsm_And16) - Bit32u flags32; - asmAnd16(result_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else result_16 = op1_16 & op2_16; -#endif - BX_WRITE_16BIT_REG(i->rm(), result_16); } else { read_RMW_virtual_word(i->seg(), RMAddr(i), &op1_16); - -#if defined(BX_HostAsm_And16) - Bit32u flags32; - asmAnd16(result_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else result_16 = op1_16 & op2_16; -#endif - write_RMW_virtual_word(result_16); } -#if !defined(BX_HostAsm_And16) SET_FLAGS_OSZAPC_RESULT_16(result_16, BX_INSTR_LOGIC16); -#endif } void BX_CPU_C::AND_GwEw(bxInstruction_c *i) @@ -263,14 +225,8 @@ void BX_CPU_C::AND_GwEw(bxInstruction_c *i) read_virtual_word(i->seg(), RMAddr(i), &op2_16); } -#if defined(BX_HostAsm_And16) - Bit32u flags32; - asmAnd16(result_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else result_16 = op1_16 & op2_16; SET_FLAGS_OSZAPC_RESULT_16(result_16, BX_INSTR_LOGIC16); -#endif BX_WRITE_16BIT_REG(i->nnn(), result_16); } @@ -282,14 +238,8 @@ void BX_CPU_C::AND_AXIw(bxInstruction_c *i) op1_16 = AX; op2_16 = i->Iw(); -#if defined(BX_HostAsm_And16) - Bit32u flags32; - asmAnd16(result_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else result_16 = op1_16 & op2_16; SET_FLAGS_OSZAPC_RESULT_16(result_16, BX_INSTR_LOGIC16); -#endif AX = result_16; } @@ -303,33 +253,19 @@ void BX_CPU_C::AND_EwIw(bxInstruction_c *i) if (i->modC0()) { op1_16 = BX_READ_16BIT_REG(i->rm()); -#if defined(BX_HostAsm_And16) - Bit32u flags32; - asmAnd16(result_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else result_16 = op1_16 & op2_16; -#endif BX_WRITE_16BIT_REG(i->rm(), result_16); } else { read_RMW_virtual_word(i->seg(), RMAddr(i), &op1_16); -#if defined(BX_HostAsm_And16) - Bit32u flags32; - asmAnd16(result_16, op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else result_16 = op1_16 & op2_16; -#endif write_RMW_virtual_word(result_16); } -#if !defined(BX_HostAsm_And16) SET_FLAGS_OSZAPC_RESULT_16(result_16, BX_INSTR_LOGIC16); -#endif } void BX_CPU_C::TEST_EwGw(bxInstruction_c *i) @@ -345,14 +281,8 @@ void BX_CPU_C::TEST_EwGw(bxInstruction_c *i) read_virtual_word(i->seg(), RMAddr(i), &op1_16); } -#if defined(BX_HostAsm_Test16) - Bit32u flags32; - asmTest16(op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else Bit16u result_16 = op1_16 & op2_16; SET_FLAGS_OSZAPC_RESULT_16(result_16, BX_INSTR_LOGIC16); -#endif } void BX_CPU_C::TEST_AXIw(bxInstruction_c *i) @@ -362,14 +292,8 @@ void BX_CPU_C::TEST_AXIw(bxInstruction_c *i) op1_16 = AX; op2_16 = i->Iw(); -#if defined(BX_HostAsm_Test16) - Bit32u flags32; - asmTest16(op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else Bit16u result_16 = op1_16 & op2_16; SET_FLAGS_OSZAPC_RESULT_16(result_16, BX_INSTR_LOGIC16); -#endif } void BX_CPU_C::TEST_EwIw(bxInstruction_c *i) @@ -385,12 +309,6 @@ void BX_CPU_C::TEST_EwIw(bxInstruction_c *i) read_virtual_word(i->seg(), RMAddr(i), &op1_16); } -#if defined(BX_HostAsm_Test16) - Bit32u flags32; - asmTest16(op1_16, op2_16, flags32); - setEFlagsOSZAPC(flags32); -#else Bit16u result_16 = op1_16 & op2_16; SET_FLAGS_OSZAPC_RESULT_16(result_16, BX_INSTR_LOGIC16); -#endif } diff --git a/bochs/cpu/logical32.cc b/bochs/cpu/logical32.cc index 190e4e641..466dd5319 100644 --- a/bochs/cpu/logical32.cc +++ b/bochs/cpu/logical32.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: logical32.cc,v 1.27 2007-04-17 21:38:51 sshwarts Exp $ +// $Id: logical32.cc,v 1.28 2007-10-21 22:07:33 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -178,14 +178,8 @@ void BX_CPU_C::OR_GdEd(bxInstruction_c *i) read_virtual_dword(i->seg(), RMAddr(i), &op2_32); } -#if defined(BX_HostAsm_Or32) - Bit32u flags32; - asmOr32(result_32, op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else result_32 = op1_32 | op2_32; SET_FLAGS_OSZAPC_RESULT_32(result_32, BX_INSTR_LOGIC32); -#endif BX_WRITE_32BIT_REGZ(i->nnn(), result_32); } @@ -211,34 +205,16 @@ void BX_CPU_C::AND_EdGd(bxInstruction_c *i) if (i->modC0()) { op1_32 = BX_READ_32BIT_REG(i->rm()); - -#if defined(BX_HostAsm_And32) - Bit32u flags32; - asmAnd32(result_32, op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else result_32 = op1_32 & op2_32; -#endif - BX_WRITE_32BIT_REGZ(i->rm(), result_32); } else { read_RMW_virtual_dword(i->seg(), RMAddr(i), &op1_32); - -#if defined(BX_HostAsm_And32) - Bit32u flags32; - asmAnd32(result_32, op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else result_32 = op1_32 & op2_32; -#endif - write_RMW_virtual_dword(result_32); } -#if !defined(BX_HostAsm_And32) SET_FLAGS_OSZAPC_RESULT_32(result_32, BX_INSTR_LOGIC32); -#endif } void BX_CPU_C::AND_GdEd(bxInstruction_c *i) @@ -254,14 +230,8 @@ void BX_CPU_C::AND_GdEd(bxInstruction_c *i) read_virtual_dword(i->seg(), RMAddr(i), &op2_32); } -#if defined(BX_HostAsm_And32) - Bit32u flags32; - asmAnd32(result_32, op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else result_32 = op1_32 & op2_32; SET_FLAGS_OSZAPC_RESULT_32(result_32, BX_INSTR_LOGIC32); -#endif BX_WRITE_32BIT_REGZ(i->nnn(), result_32); } @@ -273,14 +243,8 @@ void BX_CPU_C::AND_EAXId(bxInstruction_c *i) op1_32 = EAX; op2_32 = i->Id(); -#if defined(BX_HostAsm_And32) - Bit32u flags32; - asmAnd32(result_32, op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else result_32 = op1_32 & op2_32; SET_FLAGS_OSZAPC_RESULT_32(result_32, BX_INSTR_LOGIC32); -#endif RAX = result_32; } @@ -293,34 +257,16 @@ void BX_CPU_C::AND_EdId(bxInstruction_c *i) if (i->modC0()) { op1_32 = BX_READ_32BIT_REG(i->rm()); - -#if defined(BX_HostAsm_And32) - Bit32u flags32; - asmAnd32(result_32, op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else result_32 = op1_32 & op2_32; -#endif - BX_WRITE_32BIT_REGZ(i->rm(), result_32); } else { read_RMW_virtual_dword(i->seg(), RMAddr(i), &op1_32); - -#if defined(BX_HostAsm_And32) - Bit32u flags32; - asmAnd32(result_32, op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else result_32 = op1_32 & op2_32; -#endif - write_RMW_virtual_dword(result_32); } -#if !defined(BX_HostAsm_And32) SET_FLAGS_OSZAPC_RESULT_32(result_32, BX_INSTR_LOGIC32); -#endif } void BX_CPU_C::TEST_EdGd(bxInstruction_c *i) @@ -336,14 +282,8 @@ void BX_CPU_C::TEST_EdGd(bxInstruction_c *i) read_virtual_dword(i->seg(), RMAddr(i), &op1_32); } -#if defined(BX_HostAsm_Test32) - Bit32u flags32; - asmTest32(op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else Bit32u result_32 = op1_32 & op2_32; SET_FLAGS_OSZAPC_RESULT_32(result_32, BX_INSTR_LOGIC32); -#endif } void BX_CPU_C::TEST_EAXId(bxInstruction_c *i) @@ -353,14 +293,8 @@ void BX_CPU_C::TEST_EAXId(bxInstruction_c *i) op1_32 = EAX; op2_32 = i->Id(); -#if defined(BX_HostAsm_Test32) - Bit32u flags32; - asmTest32(op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else Bit32u result_32 = op1_32 & op2_32; SET_FLAGS_OSZAPC_RESULT_32(result_32, BX_INSTR_LOGIC32); -#endif } void BX_CPU_C::TEST_EdId(bxInstruction_c *i) @@ -376,12 +310,6 @@ void BX_CPU_C::TEST_EdId(bxInstruction_c *i) read_virtual_dword(i->seg(), RMAddr(i), &op1_32); } -#if defined(BX_HostAsm_Test32) - Bit32u flags32; - asmTest32(op1_32, op2_32, flags32); - setEFlagsOSZAPC(flags32); -#else Bit32u result_32 = op1_32 & op2_32; SET_FLAGS_OSZAPC_RESULT_32(result_32, BX_INSTR_LOGIC32); -#endif } diff --git a/bochs/cpu/logical8.cc b/bochs/cpu/logical8.cc index a1c62c443..01460828a 100644 --- a/bochs/cpu/logical8.cc +++ b/bochs/cpu/logical8.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: logical8.cc,v 1.29 2007-04-17 21:38:51 sshwarts Exp $ +// $Id: logical8.cc,v 1.30 2007-10-21 22:07:33 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -172,14 +172,8 @@ void BX_CPU_C::OR_GbEb(bxInstruction_c *i) read_virtual_byte(i->seg(), RMAddr(i), &op2); } -#if defined(BX_HostAsm_Or8) - Bit32u flags32; - asmOr8(result, op1, op2, flags32); - setEFlagsOSZAPC(flags32); -#else result = op1 | op2; SET_FLAGS_OSZAPC_RESULT_8(result, BX_INSTR_LOGIC8); -#endif BX_WRITE_8BIT_REGx(i->nnn(), i->extend8bitL(), result); } @@ -191,14 +185,8 @@ void BX_CPU_C::OR_ALIb(bxInstruction_c *i) op1 = AL; op2 = i->Ib(); -#if defined(BX_HostAsm_Or8) - Bit32u flags32; - asmOr8(result, op1, op2, flags32); - setEFlagsOSZAPC(flags32); -#else result = op1 | op2; SET_FLAGS_OSZAPC_RESULT_8(result, BX_INSTR_LOGIC8); -#endif AL = result; } @@ -211,34 +199,16 @@ void BX_CPU_C::AND_EbGb(bxInstruction_c *i) if (i->modC0()) { op1 = BX_READ_8BIT_REGx(i->rm(),i->extend8bitL()); - -#if defined(BX_HostAsm_And8) - Bit32u flags32; - asmAnd8(result, op1, op2, flags32); - setEFlagsOSZAPC(flags32); -#else result = op1 & op2; -#endif - BX_WRITE_8BIT_REGx(i->rm(), i->extend8bitL(), result); } else { read_RMW_virtual_byte(i->seg(), RMAddr(i), &op1); - -#if defined(BX_HostAsm_And8) - Bit32u flags32; - asmAnd8(result, op1, op2, flags32); - setEFlagsOSZAPC(flags32); -#else result = op1 & op2; -#endif - write_RMW_virtual_byte(result); } -#if !defined(BX_HostAsm_And8) SET_FLAGS_OSZAPC_RESULT_8(result, BX_INSTR_LOGIC8); -#endif } void BX_CPU_C::AND_GbEb(bxInstruction_c *i) @@ -254,14 +224,8 @@ void BX_CPU_C::AND_GbEb(bxInstruction_c *i) read_virtual_byte(i->seg(), RMAddr(i), &op2); } -#if defined(BX_HostAsm_And8) - Bit32u flags32; - asmAnd8(result, op1, op2, flags32); - setEFlagsOSZAPC(flags32); -#else result = op1 & op2; SET_FLAGS_OSZAPC_RESULT_8(result, BX_INSTR_LOGIC8); -#endif BX_WRITE_8BIT_REGx(i->nnn(), i->extend8bitL(), result); } @@ -273,14 +237,8 @@ void BX_CPU_C::AND_ALIb(bxInstruction_c *i) op1 = AL; op2 = i->Ib(); -#if defined(BX_HostAsm_And8) - Bit32u flags32; - asmAnd8(result, op1, op2, flags32); - setEFlagsOSZAPC(flags32); -#else result = op1 & op2; SET_FLAGS_OSZAPC_RESULT_8(result, BX_INSTR_LOGIC8); -#endif AL = result; } @@ -293,34 +251,16 @@ void BX_CPU_C::AND_EbIb(bxInstruction_c *i) if (i->modC0()) { op1 = BX_READ_8BIT_REGx(i->rm(),i->extend8bitL()); - -#if defined(BX_HostAsm_And8) - Bit32u flags32; - asmAnd8(result, op1, op2, flags32); - setEFlagsOSZAPC(flags32); -#else result = op1 & op2; -#endif - BX_WRITE_8BIT_REGx(i->rm(), i->extend8bitL(), result); } else { read_RMW_virtual_byte(i->seg(), RMAddr(i), &op1); - -#if defined(BX_HostAsm_And8) - Bit32u flags32; - asmAnd8(result, op1, op2, flags32); - setEFlagsOSZAPC(flags32); -#else result = op1 & op2; -#endif - write_RMW_virtual_byte(result); } -#if !defined(BX_HostAsm_And8) SET_FLAGS_OSZAPC_RESULT_8(result, BX_INSTR_LOGIC8); -#endif } void BX_CPU_C::TEST_EbGb(bxInstruction_c *i) @@ -336,14 +276,8 @@ void BX_CPU_C::TEST_EbGb(bxInstruction_c *i) read_virtual_byte(i->seg(), RMAddr(i), &op1); } -#if defined(BX_HostAsm_Test8) - Bit32u flags32; - asmTest8(op1, op2, flags32); - setEFlagsOSZAPC(flags32); -#else Bit8u result = op1 & op2; SET_FLAGS_OSZAPC_RESULT_8(result, BX_INSTR_LOGIC8); -#endif } void BX_CPU_C::TEST_ALIb(bxInstruction_c *i) @@ -351,19 +285,13 @@ void BX_CPU_C::TEST_ALIb(bxInstruction_c *i) Bit8u op1 = AL; Bit8u op2 = i->Ib(); -#if defined(BX_HostAsm_Test8) - Bit32u flags32; - asmTest8(op1, op2, flags32); - setEFlagsOSZAPC(flags32); -#else Bit8u result = op1 & op2; SET_FLAGS_OSZAPC_RESULT_8(result, BX_INSTR_LOGIC8); -#endif } void BX_CPU_C::TEST_EbIb(bxInstruction_c *i) { - Bit8u op2, op1; + Bit8u op2, op1, result; op2 = i->Ib(); @@ -374,13 +302,6 @@ void BX_CPU_C::TEST_EbIb(bxInstruction_c *i) read_virtual_byte(i->seg(), RMAddr(i), &op1); } -#if defined(BX_HostAsm_Test8) - Bit32u flags32; - asmTest8(op1, op2, flags32); - setEFlagsOSZAPC(flags32); -#else - Bit8u result; result = op1 & op2; SET_FLAGS_OSZAPC_RESULT_8(result, BX_INSTR_LOGIC8); -#endif } diff --git a/bochs/cpu/protect_ctrl.cc b/bochs/cpu/protect_ctrl.cc index c24ed080e..29ac5e51f 100644 --- a/bochs/cpu/protect_ctrl.cc +++ b/bochs/cpu/protect_ctrl.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: protect_ctrl.cc,v 1.62 2007-10-12 19:45:12 sshwarts Exp $ +// $Id: protect_ctrl.cc,v 1.63 2007-10-21 22:07:33 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -59,10 +59,10 @@ void BX_CPU_C::ARPL_EwGw(bxInstruction_c *i) else { write_RMW_virtual_word(op1_16); } - set_ZF(1); + assert_ZF(); } else { - set_ZF(0); + clear_ZF(); } } diff --git a/bochs/cpu/shift16.cc b/bochs/cpu/shift16.cc index d1063d331..4f5e92c54 100644 --- a/bochs/cpu/shift16.cc +++ b/bochs/cpu/shift16.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: shift16.cc,v 1.32 2006-03-26 18:58:01 sshwarts Exp $ +// $Id: shift16.cc,v 1.33 2007-10-21 22:07:33 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -160,8 +160,8 @@ void BX_CPU_C::ROL_Ew(bxInstruction_c *i) if ( (count & 0x0f) == 0 ) { if ( count & 0x10 ) { unsigned bit0 = op1_16 & 1; - set_CF(bit0); - set_OF(bit0 ^ (op1_16 >> 15)); + setB_CF(bit0); + setB_OF(bit0 ^ (op1_16 >> 15)); } return; } @@ -182,8 +182,8 @@ void BX_CPU_C::ROL_Ew(bxInstruction_c *i) */ bx_bool temp_CF = (result_16 & 0x01); - set_CF(temp_CF); - set_OF(temp_CF ^ (result_16 >> 15)); + setB_CF(temp_CF); + setB_OF(temp_CF ^ (result_16 >> 15)); } void BX_CPU_C::ROR_Ew(bxInstruction_c *i) @@ -211,8 +211,8 @@ void BX_CPU_C::ROR_Ew(bxInstruction_c *i) if ( count & 0x10 ) { unsigned bit14 = (op1_16 >> 14) & 1; unsigned bit15 = (op1_16 >> 15); - set_CF(bit15); - set_OF(bit15 ^ bit14); + setB_CF(bit15); + setB_OF(bit15 ^ bit14); } return; } @@ -234,8 +234,8 @@ void BX_CPU_C::ROR_Ew(bxInstruction_c *i) bx_bool result_b15 = (result_16 & 0x8000) != 0; bx_bool result_b14 = (result_16 & 0x4000) != 0; - set_CF(result_b15); - set_OF(result_b15 ^ result_b14); + setB_CF(result_b15); + setB_OF(result_b15 ^ result_b14); } void BX_CPU_C::RCL_Ew(bxInstruction_c *i) @@ -287,8 +287,8 @@ void BX_CPU_C::RCL_Ew(bxInstruction_c *i) */ bx_bool temp_CF = (op1_16 >> (16 - count)) & 0x01; - set_CF(temp_CF); - set_OF(temp_CF ^ (result_16 >> 15)); + setB_CF(temp_CF); + setB_OF(temp_CF ^ (result_16 >> 15)); } void BX_CPU_C::RCR_Ew(bxInstruction_c *i) @@ -332,8 +332,8 @@ void BX_CPU_C::RCR_Ew(bxInstruction_c *i) * RCR count affects the following flags: C, O */ - set_CF((op1_16 >> (count - 1)) & 0x01); - set_OF((((result_16 << 1) ^ result_16) & 0x8000) > 0); + setB_CF((op1_16 >> (count - 1)) & 0x01); + setB_OF((((result_16 << 1) ^ result_16) & 0x8000) > 0); } void BX_CPU_C::SHL_Ew(bxInstruction_c *i) @@ -399,14 +399,8 @@ void BX_CPU_C::SHR_Ew(bxInstruction_c *i) if (!count) return; -#if defined(BX_HostAsm_Shr16) - Bit32u flags32; - asmShr16(result_16, op1_16, count, flags32); - setEFlagsOSZAPC(flags32); -#else result_16 = (op1_16 >> count); SET_FLAGS_OSZAPC_16(op1_16, count, result_16, BX_INSTR_SHR16); -#endif /* now write result back to destination */ if (i->modC0()) { diff --git a/bochs/cpu/shift32.cc b/bochs/cpu/shift32.cc index a245e5657..e0488c678 100644 --- a/bochs/cpu/shift32.cc +++ b/bochs/cpu/shift32.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: shift32.cc,v 1.31 2006-03-26 18:58:01 sshwarts Exp $ +// $Id: shift32.cc,v 1.32 2007-10-21 22:07:33 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -149,8 +149,8 @@ void BX_CPU_C::ROL_Ed(bxInstruction_c *i) */ bx_bool temp_CF = (result_32 & 0x01); - set_CF(temp_CF); - set_OF(temp_CF ^ (result_32 >> 31)); + setB_CF(temp_CF); + setB_OF(temp_CF ^ (result_32 >> 31)); } void BX_CPU_C::ROR_Ed(bxInstruction_c *i) @@ -192,8 +192,8 @@ void BX_CPU_C::ROR_Ed(bxInstruction_c *i) bx_bool result_b31 = (result_32 & 0x80000000) != 0; bx_bool result_b30 = (result_32 & 0x40000000) != 0; - set_CF(result_b31); - set_OF(result_b31 ^ result_b30); + setB_CF(result_b31); + setB_OF(result_b31 ^ result_b30); } void BX_CPU_C::RCL_Ed(bxInstruction_c *i) @@ -240,8 +240,8 @@ void BX_CPU_C::RCL_Ed(bxInstruction_c *i) */ bx_bool temp_CF = (op1_32 >> (32 - count)) & 0x01; - set_CF(temp_CF); - set_OF(temp_CF ^ (result_32 >> 31)); + setB_CF(temp_CF); + setB_OF(temp_CF ^ (result_32 >> 31)); } void BX_CPU_C::RCR_Ed(bxInstruction_c *i) @@ -287,8 +287,8 @@ void BX_CPU_C::RCR_Ed(bxInstruction_c *i) * RCR count affects the following flags: C, O */ - set_CF((op1_32 >> (count - 1)) & 0x01); - set_OF((((result_32 << 1) ^ result_32) & 0x80000000) > 0); + setB_CF((op1_32 >> (count - 1)) & 0x01); + setB_OF((((result_32 << 1) ^ result_32) & 0x80000000) > 0); } void BX_CPU_C::SHL_Ed(bxInstruction_c *i) @@ -348,16 +348,10 @@ void BX_CPU_C::SHR_Ed(bxInstruction_c *i) read_RMW_virtual_dword(i->seg(), RMAddr(i), &op1_32); } - if (!count) return; + if (!count) return; -#if defined(BX_HostAsm_Shr32) - Bit32u flags32; - asmShr32(result_32, op1_32, count, flags32); - setEFlagsOSZAPC(flags32); -#else result_32 = (op1_32 >> count); SET_FLAGS_OSZAPC_32(op1_32, count, result_32, BX_INSTR_SHR32); -#endif /* now write result back to destination */ if (i->modC0()) { diff --git a/bochs/cpu/shift64.cc b/bochs/cpu/shift64.cc index cc3cf4500..c4c38208e 100644 --- a/bochs/cpu/shift64.cc +++ b/bochs/cpu/shift64.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: shift64.cc,v 1.20 2006-03-26 18:58:01 sshwarts Exp $ +// $Id: shift64.cc,v 1.21 2007-10-21 22:07:33 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -151,8 +151,8 @@ void BX_CPU_C::ROL_Eq(bxInstruction_c *i) */ bx_bool temp_CF = (result_64 & 0x01); - set_CF(temp_CF); - set_OF(temp_CF ^ (result_64 >> 63)); + setB_CF(temp_CF); + setB_OF(temp_CF ^ (result_64 >> 63)); } void BX_CPU_C::ROR_Eq(bxInstruction_c *i) @@ -194,8 +194,8 @@ void BX_CPU_C::ROR_Eq(bxInstruction_c *i) bx_bool result_b63 = (result_64 & BX_CONST64(0x8000000000000000)) != 0; bx_bool result_b62 = (result_64 & BX_CONST64(0x4000000000000000)) != 0; - set_CF(result_b63); - set_OF(result_b63 ^ result_b62); + setB_CF(result_b63); + setB_OF(result_b63 ^ result_b62); } void BX_CPU_C::RCL_Eq(bxInstruction_c *i) @@ -242,8 +242,8 @@ void BX_CPU_C::RCL_Eq(bxInstruction_c *i) */ bx_bool temp_CF = (op1_64 >> (64 - count)) & 0x01; - set_CF(temp_CF); - set_OF(temp_CF ^ (result_64 >> 63)); + setB_CF(temp_CF); + setB_OF(temp_CF ^ (result_64 >> 63)); } void BX_CPU_C::RCR_Eq(bxInstruction_c *i) @@ -289,8 +289,8 @@ void BX_CPU_C::RCR_Eq(bxInstruction_c *i) * RCR count affects the following flags: C, O */ - set_CF((op1_64 >> (count - 1)) & 0x01); - set_OF((((result_64 << 1) ^ result_64) & BX_CONST64(0x8000000000000000)) > 0); + setB_CF((op1_64 >> (count - 1)) & 0x01); + setB_OF((((result_64 << 1) ^ result_64) & BX_CONST64(0x8000000000000000)) > 0); } void BX_CPU_C::SHL_Eq(bxInstruction_c *i) diff --git a/bochs/cpu/shift8.cc b/bochs/cpu/shift8.cc index 546044729..55982820d 100644 --- a/bochs/cpu/shift8.cc +++ b/bochs/cpu/shift8.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: shift8.cc,v 1.24 2006-03-26 18:58:01 sshwarts Exp $ +// $Id: shift8.cc,v 1.25 2007-10-21 22:07:33 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -55,8 +55,8 @@ void BX_CPU_C::ROL_Eb(bxInstruction_c *i) if ( (count & 0x07) == 0 ) { if ( count & 0x18 ) { unsigned bit0 = op1_8 & 1; - set_CF(bit0); - set_OF(bit0 ^ (op1_8 >> 7)); + setB_CF(bit0); + setB_OF(bit0 ^ (op1_8 >> 7)); } return; } @@ -77,8 +77,8 @@ void BX_CPU_C::ROL_Eb(bxInstruction_c *i) */ bx_bool temp_CF = (result_8 & 0x01); - set_CF(temp_CF); - set_OF(temp_CF ^ (result_8 >> 7)); + setB_CF(temp_CF); + setB_OF(temp_CF ^ (result_8 >> 7)); } void BX_CPU_C::ROR_Eb(bxInstruction_c *i) @@ -106,8 +106,8 @@ void BX_CPU_C::ROR_Eb(bxInstruction_c *i) if ( count & 0x18 ) { unsigned bit6 = (op1_8 >> 6) & 1; unsigned bit7 = (op1_8 >> 7); - set_CF(bit7); - set_OF(bit7 ^ bit6); + setB_CF(bit7); + setB_OF(bit7 ^ bit6); } return; } @@ -129,8 +129,8 @@ void BX_CPU_C::ROR_Eb(bxInstruction_c *i) bx_bool result_b7 = (result_8 & 0x80) != 0; bx_bool result_b6 = (result_8 & 0x40) != 0; - set_CF(result_b7); - set_OF(result_b7 ^ result_b6); + setB_CF(result_b7); + setB_OF(result_b7 ^ result_b6); } void BX_CPU_C::RCL_Eb(bxInstruction_c *i) @@ -179,8 +179,8 @@ void BX_CPU_C::RCL_Eb(bxInstruction_c *i) */ bx_bool temp_CF = (op1_8 >> (8 - count)) & 0x01; - set_CF(temp_CF); - set_OF(temp_CF ^ (result_8 >> 7)); + setB_CF(temp_CF); + setB_OF(temp_CF ^ (result_8 >> 7)); } void BX_CPU_C::RCR_Eb(bxInstruction_c *i) @@ -223,8 +223,8 @@ void BX_CPU_C::RCR_Eb(bxInstruction_c *i) * RCR count affects the following flags: C, O */ - set_CF((op1_8 >> (count - 1)) & 0x01); - set_OF((((result_8 << 1) ^ result_8) & 0x80) > 0); + setB_CF((op1_8 >> (count - 1)) & 0x01); + setB_OF((((result_8 << 1) ^ result_8) & 0x80) > 0); } void BX_CPU_C::SHL_Eb(bxInstruction_c *i) diff --git a/bochs/fpu/Makefile.in b/bochs/fpu/Makefile.in index 0f8a0e438..520abdeac 100644 --- a/bochs/fpu/Makefile.in +++ b/bochs/fpu/Makefile.in @@ -85,7 +85,7 @@ ferr.o: ferr.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h ../cpu/cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h ../cpu/crregs.h \ + ../disasm/disasm.h ../config.h ../cpu/crregs.h \ ../cpu/descriptor.h ../cpu/icache.h ../cpu/apic.h ../cpu/i387.h \ ../fpu/softfloat.h ../config.h ../fpu/tag_w.h ../fpu/status_w.h \ ../fpu/control_w.h ../cpu/xmm.h softfloat-specialize.h softfloat.h @@ -99,7 +99,7 @@ fpu.o: fpu.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h \ ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h ../cpu/cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h ../cpu/crregs.h \ + ../disasm/disasm.h ../config.h ../cpu/crregs.h \ ../cpu/descriptor.h ../cpu/icache.h ../cpu/apic.h ../cpu/i387.h \ ../fpu/softfloat.h ../config.h ../fpu/tag_w.h ../fpu/status_w.h \ ../fpu/control_w.h ../cpu/xmm.h ../iodev/iodev.h ../bochs.h \ @@ -116,7 +116,7 @@ fpu_arith.o: fpu_arith.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h ../cpu/cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ ../cpu/crregs.h ../cpu/descriptor.h ../cpu/icache.h ../cpu/apic.h \ ../cpu/i387.h ../fpu/softfloat.h ../config.h ../fpu/tag_w.h \ ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h @@ -125,7 +125,7 @@ fpu_compare.o: fpu_compare.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h ../cpu/cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ ../cpu/crregs.h ../cpu/descriptor.h ../cpu/icache.h ../cpu/apic.h \ ../cpu/i387.h ../fpu/softfloat.h ../config.h ../fpu/tag_w.h \ ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h softfloatx80.h \ @@ -135,7 +135,7 @@ fpu_const.o: fpu_const.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h ../cpu/cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ ../cpu/crregs.h ../cpu/descriptor.h ../cpu/icache.h ../cpu/apic.h \ ../cpu/i387.h ../fpu/softfloat.h ../config.h ../fpu/tag_w.h \ ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h softfloatx80.h \ @@ -145,7 +145,7 @@ fpu_load_store.o: fpu_load_store.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h ../cpu/cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ ../cpu/crregs.h ../cpu/descriptor.h ../cpu/icache.h ../cpu/apic.h \ ../cpu/i387.h ../fpu/softfloat.h ../config.h ../fpu/tag_w.h \ ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h softfloatx80.h \ @@ -155,7 +155,7 @@ fpu_misc.o: fpu_misc.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h ../cpu/cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ ../cpu/crregs.h ../cpu/descriptor.h ../cpu/icache.h ../cpu/apic.h \ ../cpu/i387.h ../fpu/softfloat.h ../config.h ../fpu/tag_w.h \ ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h softfloatx80.h \ @@ -168,7 +168,7 @@ fpu_trans.o: fpu_trans.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h ../cpu/cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ ../cpu/crregs.h ../cpu/descriptor.h ../cpu/icache.h ../cpu/apic.h \ ../cpu/i387.h ../fpu/softfloat.h ../config.h ../fpu/tag_w.h \ ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h softfloatx80.h \ diff --git a/bochs/iodev/Makefile.in b/bochs/iodev/Makefile.in index 85a7cae35..66c19850a 100644 --- a/bochs/iodev/Makefile.in +++ b/bochs/iodev/Makefile.in @@ -223,7 +223,7 @@ acpi.o: acpi.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h ../bxversion.h ../gui/siminterface.h ../memory/memory.h ../pc_system.h \ ../plugin.h ../extplugin.h ../ltdl.h ../gui/gui.h ../gui/textconfig.h \ ../gui/keymap.h ../instrument/stubs/instrument.h ../cpu/cpu.h ../cpu/crregs.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h \ ../cpu/descriptor.h ../cpu/icache.h ../cpu/apic.h ../cpu/i387.h \ ../fpu/softfloat.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h iodev.h ../iodev/pci.h ../iodev/pci2isa.h \ @@ -464,7 +464,7 @@ iodebug.o: iodebug.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h ../ltdl.h \ ../gui/gui.h ../gui/textconfig.h ../gui/keymap.h \ ../instrument/stubs/instrument.h ../cpu/cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../cpu/descriptor.h ../cpu/icache.h \ + ../disasm/disasm.h ../cpu/descriptor.h ../cpu/icache.h \ ../cpu/apic.h ../cpu/i387.h ../cpu/crregs.h ../fpu/softfloat.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h iodev.h \ ../iodev/pci.h ../iodev/pci2isa.h ../iodev/pci_ide.h ../iodev/acpi.h \ @@ -786,7 +786,7 @@ acpi.lo: acpi.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debug.h ../bxversion.h ../gui/siminterface.h ../memory/memory.h ../pc_system.h \ ../plugin.h ../extplugin.h ../ltdl.h ../gui/gui.h ../gui/textconfig.h \ ../gui/keymap.h ../instrument/stubs/instrument.h ../cpu/cpu.h ../cpu/crregs.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h \ ../cpu/descriptor.h ../cpu/icache.h ../cpu/apic.h ../cpu/i387.h \ ../fpu/softfloat.h ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h \ ../cpu/xmm.h iodev.h ../iodev/pci.h ../iodev/pci2isa.h \ @@ -1027,7 +1027,7 @@ iodebug.lo: iodebug.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h ../ltdl.h \ ../gui/gui.h ../gui/textconfig.h ../gui/keymap.h \ ../instrument/stubs/instrument.h ../cpu/cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../cpu/descriptor.h ../cpu/icache.h \ + ../disasm/disasm.h ../cpu/descriptor.h ../cpu/icache.h \ ../cpu/apic.h ../cpu/i387.h ../cpu/crregs.h ../fpu/softfloat.h \ ../fpu/tag_w.h ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h iodev.h \ ../iodev/pci.h ../iodev/pci2isa.h ../iodev/pci_ide.h ../iodev/acpi.h \ diff --git a/bochs/main.cc b/bochs/main.cc index 81a3a8c57..5149786b8 100644 --- a/bochs/main.cc +++ b/bochs/main.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: main.cc,v 1.359 2007-10-16 16:17:48 sshwarts Exp $ +// $Id: main.cc,v 1.360 2007-10-21 22:07:31 sshwarts Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2002 MandrakeSoft S.A. @@ -999,7 +999,6 @@ void bx_init_hardware() BX_INFO((" Guest2HostTLB support: %s",BX_SupportGuest2HostTLB?"yes":"no")); BX_INFO((" RepeatSpeedups support: %s",BX_SupportRepeatSpeedups?"yes":"no")); BX_INFO((" Icache support: %s",BX_SUPPORT_ICACHE?"yes":"no")); - BX_INFO((" Host Asm support: %s",BX_SupportHostAsms?"yes":"no")); BX_INFO((" Fast function calls: %s",BX_FAST_FUNC_CALL?"yes":"no")); BX_INFO(("Devices configuration")); BX_INFO((" ACPI support: %s",BX_SUPPORT_ACPI?"yes":"no")); diff --git a/bochs/memory/Makefile.in b/bochs/memory/Makefile.in index 9472cb1e9..23deb338e 100644 --- a/bochs/memory/Makefile.in +++ b/bochs/memory/Makefile.in @@ -78,7 +78,7 @@ memory.o: memory.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h ../bx_debug/debu ../memory/memory.h ../pc_system.h ../plugin.h ../extplugin.h \ ../gui/gui.h ../gui/textconfig.h ../config.h ../gui/keymap.h \ ../instrument/stubs/instrument.h ../cpu/cpu.h ../cpu/lazy_flags.h \ - ../cpu/hostasm.h ../disasm/disasm.h ../config.h ../cpu/crregs.h \ + ../disasm/disasm.h ../config.h ../cpu/crregs.h \ ../cpu/descriptor.h ../cpu/icache.h ../cpu/apic.h ../cpu/i387.h \ ../fpu/softfloat.h ../config.h ../fpu/tag_w.h ../fpu/status_w.h \ ../fpu/control_w.h ../cpu/xmm.h ../iodev/iodev.h ../bochs.h \ @@ -95,7 +95,7 @@ misc_mem.o: misc_mem.@CPP_SUFFIX@ ../bochs.h ../config.h ../osdep.h \ ../gui/siminterface.h ../memory/memory.h ../pc_system.h ../plugin.h \ ../extplugin.h ../gui/gui.h ../gui/textconfig.h ../config.h \ ../gui/keymap.h ../instrument/stubs/instrument.h ../cpu/cpu.h \ - ../cpu/lazy_flags.h ../cpu/hostasm.h ../disasm/disasm.h ../config.h \ + ../cpu/lazy_flags.h ../disasm/disasm.h ../config.h \ ../cpu/crregs.h ../cpu/descriptor.h ../cpu/icache.h ../cpu/apic.h \ ../cpu/i387.h ../fpu/softfloat.h ../config.h ../fpu/tag_w.h \ ../fpu/status_w.h ../fpu/control_w.h ../cpu/xmm.h ../iodev/iodev.h \