Bochs/bochs/cpu
Kevin Lawton 67721c48f4 The convience functions protected_mode(), v8086_mode() and real_mode()
now simply return a cached value which is set upon mode changes.
  The biggest problem was protected_mode() which did something like:

    return CR0.PM && ! EFLAGS.VM

  This adds up when it was being executed many times in branch functions
  etc.  Now, cached values are set and sampled instead.
2002-09-29 22:38:18 +00:00
..
access.cc Committed patches/patch-bochs-instrumentation from Stanislav. 2002-09-28 00:54:05 +00:00
apic.cc - fix compile warning about checking that an unsigned int was >= 0 2002-09-25 01:50:14 +00:00
arith8.cc Committed [english] patches from Jas Sandys-Lumsdaine. These 2002-09-28 01:16:09 +00:00
arith16.cc Split out reg-reg and reg-memory cases for a few other high-profile 2002-09-29 19:21:38 +00:00
arith32.cc Split out reg-reg and reg-memory cases for a few other high-profile 2002-09-29 19:21:38 +00:00
arith64.cc I updated code that was using !!get_CF() (or other arithmetic flag) to 2002-09-24 18:33:38 +00:00
bcd.cc Updated accessing of modrm/sib addressing information to 2002-09-17 22:50:53 +00:00
bit.cc Changed eflags accessors for get_?F() to use (val32 & (1<<N)) instead 2002-09-22 18:22:24 +00:00
cpu.cc The convience functions protected_mode(), v8086_mode() and real_mode() 2002-09-29 22:38:18 +00:00
cpu.h The convience functions protected_mode(), v8086_mode() and real_mode() 2002-09-29 22:38:18 +00:00
ctrl_xfer8.cc Fixed number of problems with instrumentation merge cause to instrumentation fail the compilation 2002-09-29 15:06:58 +00:00
ctrl_xfer16.cc Fixed number of problems with instrumentation merge cause to instrumentation fail the compilation 2002-09-29 15:06:58 +00:00
ctrl_xfer32.cc Fixed number of problems with instrumentation merge cause to instrumentation fail the compilation 2002-09-29 15:06:58 +00:00
ctrl_xfer64.cc Fixed number of problems with instrumentation merge cause to instrumentation fail the compilation 2002-09-29 15:06:58 +00:00
ctrl_xfer_pro.cc Got rid of INIT_64_DESCRIPTOR in all places. Added/replaced it with 2002-09-24 16:35:44 +00:00
data_xfer8.cc Split out reg-reg and reg-memory cases for a few other high-profile 2002-09-29 19:21:38 +00:00
data_xfer16.cc Split out reg-reg and reg-memory cases for a few other high-profile 2002-09-29 19:21:38 +00:00
data_xfer32.cc Split out reg-reg and reg-memory cases for a few other high-profile 2002-09-29 19:21:38 +00:00
data_xfer64.cc Changed eflags accessors for get_?F() to use (val32 & (1<<N)) instead 2002-09-22 18:22:24 +00:00
debugstuff.cc Initial work on updating bochs disassembler 2002-09-28 06:29:55 +00:00
exception.cc Committed patches/patch-bochs-instrumentation from Stanislav. 2002-09-28 00:54:05 +00:00
extdb.cc Oops, I had #ifdef 0'd the code in here to do a test compile, 2002-09-22 02:07:46 +00:00
extdb.h I merged the cpu/cpu.h and cpu64/cpu.h files as well as the 2002-09-13 00:15:23 +00:00
fetchdecode64.cc Split out reg-reg and reg-memory cases for a few other high-profile 2002-09-29 19:21:38 +00:00
fetchdecode.cc Split out reg-reg and reg-memory cases for a few other high-profile 2002-09-29 19:21:38 +00:00
flag_ctrl_pro.cc Changed eflags accessors for get_?F() to use (val32 & (1<<N)) instead 2002-09-22 18:22:24 +00:00
flag_ctrl.cc Moved more separate fields in the bxInstruction_c into bitfields 2002-09-18 05:36:48 +00:00
i387.h - add sanity checks 2002-09-22 16:11:12 +00:00
init.cc The convience functions protected_mode(), v8086_mode() and real_mode() 2002-09-29 22:38:18 +00:00
io_pro.cc I updated code that was using !!get_CF() (or other arithmetic flag) to 2002-09-24 18:33:38 +00:00
io.cc Fixed/updated/cleaned repeat IO & memcpy speedups for Long mode. 2002-09-24 04:43:59 +00:00
lazy_flags.cc Changed eflags accessors for get_?F() to use (val32 & (1<<N)) instead 2002-09-22 18:22:24 +00:00
lazy_flags.h I merged the cpu/cpu.h and cpu64/cpu.h files as well as the 2002-09-13 00:15:23 +00:00
logical8.cc Integrated patches/patch.logicalxx_asm from Jas Sandys-Lumsdaine. 2002-09-28 01:48:18 +00:00
logical16.cc Integrated patches/patch.logicalxx_asm from Jas Sandys-Lumsdaine. 2002-09-28 01:48:18 +00:00
logical32.cc Integrated patches/patch.logicalxx_asm from Jas Sandys-Lumsdaine. 2002-09-28 01:48:18 +00:00
logical64.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
Makefile.in - fixed "macro expands to nothing" by renaming the macro 2002-09-22 07:23:26 +00:00
mmx.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
mult8.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
mult16.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
mult32.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
mult64.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
paging.cc Committed patches/patch-bochs-instrumentation from Stanislav. 2002-09-28 00:54:05 +00:00
proc_ctrl.cc The convience functions protected_mode(), v8086_mode() and real_mode() 2002-09-29 22:38:18 +00:00
protect_ctrl_pro.cc - add RCS Id to header of every file. This makes it easier to know what's 2001-10-03 13:10:38 +00:00
protect_ctrl.cc Implemented SWAPGS instruction. 2002-09-25 14:09:08 +00:00
resolve16.cc - Added an instruction cache. Size is fixed for the moment, 2002-09-19 19:17:20 +00:00
resolve32.cc - Added an instruction cache. Size is fixed for the moment, 2002-09-19 19:17:20 +00:00
resolve64.cc Converted all the remaining available separate fields in bxInstruction_c 2002-09-18 08:00:43 +00:00
segment_ctrl_pro.cc Got rid of INIT_64_DESCRIPTOR in all places. Added/replaced it with 2002-09-24 16:35:44 +00:00
segment_ctrl.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
shift8.cc Changed eflags accessors for get_?F() to use (val32 & (1<<N)) instead 2002-09-22 18:22:24 +00:00
shift16.cc Changed eflags accessors for get_?F() to use (val32 & (1<<N)) instead 2002-09-22 18:22:24 +00:00
shift32.cc Changed eflags accessors for get_?F() to use (val32 & (1<<N)) instead 2002-09-22 18:22:24 +00:00
shift64.cc Changed eflags accessors for get_?F() to use (val32 & (1<<N)) instead 2002-09-22 18:22:24 +00:00
soft_int.cc Committed patches/patch-bochs-instrumentation from Stanislav. 2002-09-28 00:54:05 +00:00
stack16.cc Modified the way that the register field (low 3 bits of a few opcodes 2002-09-20 23:17:51 +00:00
stack32.cc I integrated my hacks to get Linux/x86-64 booting. To keep 2002-09-24 00:44:56 +00:00
stack64.cc Modified the way that the register field (low 3 bits of a few opcodes 2002-09-20 23:17:51 +00:00
stack_pro.cc These changes are from Peter Tattam 2002-09-24 08:29:06 +00:00
string.cc Fixed/updated/cleaned repeat IO & memcpy speedups for Long mode. 2002-09-24 04:43:59 +00:00
tasking.cc Committed patches/patch-bochs-instrumentation from Stanislav. 2002-09-28 00:54:05 +00:00
vm8086.cc Moved more separate fields in the bxInstruction_c into bitfields 2002-09-18 05:36:48 +00:00