Bochs/bochs/cpu
Kevin Lawton 402d02974d Moved the EFLAGS.RF check and clearing of inhibit_mask code
in cpu.cc out of the main loop, and into the asynchronous
events handling.  I went through all the code paths, and
there doesn't seem to be any reason for that code to be
in the hot loop.

Added another accessor for getting instruction data, called
modC0().  A lot of instructions test whether the mod field
of mod-nnn-rm is 0xc0 or not, ie., it's a register operation
and not memory.  So I flag this in fetchdecode{,64}.cc.
This added on the order of 1% performance improvement for
a Win95 boot.

Macroized a few leftover calls to Write_RMV_virtual_xyz()
that didn't get modified in the x86-64 merge.  Really, they
just call the real function for now, but I want to have them
available to do direct writes with the guest2host TLB pointers.
2002-09-20 03:52:59 +00:00
..
access.cc - Added an instruction cache. Size is fixed for the moment, 2002-09-19 19:17:20 +00:00
apic.cc More migration/synchronization of cpu/cpu64. 2002-09-13 04:33:42 +00:00
arith8.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
arith16.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
arith32.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
arith64.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
bcd.cc Updated accessing of modrm/sib addressing information to 2002-09-17 22:50:53 +00:00
bit.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
cpu.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
cpu.h Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
ctrl_xfer8.cc Moved more separate fields in the bxInstruction_c into bitfields 2002-09-18 05:36:48 +00:00
ctrl_xfer16.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
ctrl_xfer32.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
ctrl_xfer64.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
ctrl_xfer_pro.cc Moved more separate fields in the bxInstruction_c into bitfields 2002-09-18 05:36:48 +00:00
data_xfer8.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
data_xfer16.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
data_xfer32.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
data_xfer64.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
debugstuff.cc Updated CR4 to use the patented Bryce bitfields accessor method for 2002-09-14 19:21:41 +00:00
exception.cc (cpu64) Merged 4 more files. 2002-09-14 17:29:47 +00:00
extdb.cc Merged the final filed ("paging.cc") from Peter Tattam's x86-64 2002-09-16 20:23:38 +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 Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
fetchdecode.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
flag_ctrl_pro.cc - this revision changes the way eflags are accessed throughout the cpu and 2002-09-12 18:10:46 +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 - check in Stanislav Shwartsman's patch "bochs-mmx.patch-endian-support". 2002-09-09 16:11:25 +00:00
init.cc - Added an instruction cache. Size is fixed for the moment, 2002-09-19 19:17:20 +00:00
io_pro.cc - this revision changes the way eflags are accessed throughout the cpu and 2002-09-12 18:10:46 +00:00
io.cc - Added an instruction cache. Size is fixed for the moment, 2002-09-19 19:17:20 +00:00
lazy_flags.cc (cpu64) Merged lazy_flags.cc. 2002-09-15 00:18:41 +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 Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
logical16.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
logical32.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +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 Merged the final filed ("paging.cc") from Peter Tattam's x86-64 2002-09-16 20:23:38 +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 Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
proc_ctrl.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +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 Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +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 - Added an instruction cache. Size is fixed for the moment, 2002-09-19 19:17:20 +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 Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
shift16.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
shift32.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
shift64.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
soft_int.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
stack16.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
stack32.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
stack64.cc Moved the EFLAGS.RF check and clearing of inhibit_mask code 2002-09-20 03:52:59 +00:00
stack_pro.cc (cpu64) Merged another wad of files. 2002-09-15 01:00:20 +00:00
string.cc - Added an instruction cache. Size is fixed for the moment, 2002-09-19 19:17:20 +00:00
tasking.cc resolve32.cc was redundant, tasking.cc was merged. 2002-09-13 16:23:02 +00:00
vm8086.cc Moved more separate fields in the bxInstruction_c into bitfields 2002-09-18 05:36:48 +00:00