Commit Graph

307 Commits

Author SHA1 Message Date
Stanislav Shwartsman
62d0c8abf7 - Now you could disable x86-64 from .bochsrc so now it is possible to emulate
32-bit CPU using Bochs binary compiled with x86-64 support.

The commit also fixes some init.cc issues with initialization of SYSCALL/SYSRET MSR in AMD hosts and also includes code reorg.
2011-09-25 17:36:20 +00:00
Stanislav Shwartsman
1b9f286945 - New way of CPUs scheduling in SMP mode brings up to 50% speedup to the
SMP emulation. New implementation uses dynamic CPU quantum value and takes
   full advantage of the trace cache. Each emulated processor will execute
   the whole trace before switching to the next processor.
 * It is also safe to use large (up to 16 instructions) quantum values for
   the SMP emulation now and improve performance even further.

The same merge also completely fixes SF bug :
  [3312237] stepN command might be not working properly

Handlers chaining speedups are also supported with SMP emulation now.
2011-09-22 19:38:52 +00:00
Stanislav Shwartsman
b69f728246 Fixed internal debugger part of the bug:
#3312237 stepN command might be not working properly
The problem still can be exists for SMP.
2011-08-17 19:51:32 +00:00
Stanislav Shwartsman
a03e0266fb added yonah CPUID to cpudb. remove bxversion.h from dep files 2011-08-16 19:58:56 +00:00
Stanislav Shwartsman
0bc93fdc59 added pentium mmx to cpudb. for now only can be enabled when cpu-level=5 2011-08-16 19:04:36 +00:00
Stanislav Shwartsman
e4513c727a simplify some bochs internal dbg stuff 2011-08-11 19:40:51 +00:00
Stanislav Shwartsman
432bf97197 was playing with SMP and debugger 2011-07-09 22:17:16 +00:00
Stanislav Shwartsman
b14d962763 remove redundant flag 2011-06-01 20:44:40 +00:00
Stanislav Shwartsman
ee3f9e36cb Implemented Supervisor Mode Execution Protection (SMEP) 2011-05-29 16:28:26 +00:00
Stanislav Shwartsman
2e6d8c09ed update autogenerated files 2011-05-06 08:30:44 +00:00
Stanislav Shwartsman
4a7947f5e3 update autogenerated files 2011-05-06 08:29:23 +00:00
Stanislav Shwartsman
92bb77ef1d Merge patch from SF tracker:
[3298173] Breakpoint on VMEXIT event by Jianan Hao

Patch description:

The patch provides a new command "vmexitbp" to set breakpoint when VM guest exit. The simulation will be stopped before first HOST mode instruction is executed.

Usage:
Type "vmexitbp" in debugger command window to switch it on/off (similar to modebp).


Currently, the patch has no corresponding interface on GUI debugger. Someone may add it if interested.
2011-05-06 08:19:03 +00:00
Stanislav Shwartsman
988ac41389 regen lex files 2011-05-02 17:20:38 +00:00
Volker Ruppert
c78026a9a2 - deleted executable properties from source files 2011-04-03 10:29:19 +00:00
Stanislav Shwartsman
7ced718040 implemented AVX instructions support
many changes - some cleanup will follow
please report ay found bugs !
2011-03-19 20:09:34 +00:00
Stanislav Shwartsman
16021a0ddb rename model_specific.h to be cpuid.h 2011-03-19 17:35:18 +00:00
Stanislav Shwartsman
1aaf596d79 small fixes 2011-03-19 17:19:41 +00:00
Stanislav Shwartsman
ad536dd379 regenerated using latest tools 2011-03-04 20:35:24 +00:00
Stanislav Shwartsman
64a30a15fa Adding Id and Rev property to all files 2011-02-25 20:16:02 +00:00
Stanislav Shwartsman
00981cd7a6 Adding Id and Rev property to all files 2011-02-24 22:05:47 +00:00
Stanislav Shwartsman
b20b08a3a3 better dbg print 2011-02-24 19:50:24 +00:00
Stanislav Shwartsman
b5ebe5865e Fixes for incoming bug report, missed changes in CVS, repository fixups and etc 2011-02-11 09:56:23 +00:00
Volker Ruppert
44ece7cf26 - including vga.h in iodev.h no longer necessary and symbol NO_DEVICE_INCLUDES
is useless then
- updated makefile dependenies
2011-01-24 20:35:51 +00:00
Stanislav Shwartsman
1047acb2cc rename SSE register param - prepare for wide SSE register (AVX) 2010-12-06 21:52:41 +00:00
Stanislav Shwartsman
91ac0df65c implemented GS/FS BASE access instructions published in _319433-007.pdf document 2010-07-22 16:41:59 +00:00
Stanislav Shwartsman
2b1ea37252 verbose page command from debugger 2010-05-04 20:17:26 +00:00
Stanislav Shwartsman
df07dab80f verbose phy mem access tracing 2010-04-13 17:56:50 +00:00
Stanislav Shwartsman
d39d485ece changes variable name to better one 2010-04-03 05:59:07 +00:00
Stanislav Shwartsman
6d01eb5c1f announce (not implement yet) PCID 2010-03-31 14:00:46 +00:00
Stanislav Shwartsman
01cfbdccbc Move MMX to be runtime option 2010-03-01 18:53:53 +00:00
Stanislav Shwartsman
5df864b1f1 Move param_names.h into bochs root folder 2010-02-26 14:18:19 +00:00
Stanislav Shwartsman
84ba84ea9d updates 2010-02-26 12:10:17 +00:00
Stanislav Shwartsman
033a20b3b2 allow to configure CPU features at runtime - implemened on example of SSE/AES/MOVBE/POPCNT 2010-02-25 22:04:31 +00:00
Stanislav Shwartsman
59963e8b4d missed ; 2010-02-24 19:43:40 +00:00
Stanislav Shwartsman
8450728794 cleanup 2010-02-24 19:41:32 +00:00
Stanislav Shwartsman
d493e33659 print-stack fix 2010-01-10 14:11:53 +00:00
Stanislav Shwartsman
7495909597 fixed print-stack with 16-bit stack size (mem buffer overflow) 2010-01-09 20:28:07 +00:00
Stanislav Shwartsman
c67f6eddc7 Applied patch :
[2926072] Indirection operators in expressions by Derek Peschel
2010-01-05 13:59:08 +00:00
Stanislav Shwartsman
1c68cb8243 help dreg cmd fix 2009-12-30 19:20:27 +00:00
Stanislav Shwartsman
e8bf2b7785 regen files 2009-12-28 14:02:48 +00:00
Stanislav Shwartsman
fe687fd1a6 disasm displacements and offsets by default now printed as "relative" signed integers and not as unsigned offsets could toggle it back with disasm command.
help disasm in debugger
2009-12-28 13:52:40 +00:00
Stanislav Shwartsman
069ea6228e disasm displacements and offsets by default now printed as "relative" signed integers and not as unsigned offsets
could toggle it back with disasm command.
help disasm in debugger
2009-12-28 13:44:32 +00:00
Stanislav Shwartsman
e59ff3d779 cleanup 2009-12-28 09:26:22 +00:00
Stanislav Shwartsman
d779842da3 added ability to modify sregs from bochs debugger 2009-12-27 16:38:09 +00:00
Stanislav Shwartsman
bd60e0264c change Copyright to Bochs Project 2009-12-04 16:53:12 +00:00
Stanislav Shwartsman
b71eb23145 remove redundant stuff 2009-11-20 12:15:21 +00:00
Stanislav Shwartsman
27e3f6fda0 implemented range watchpoints - GUI debugger still can only do 1-byte length watches 2009-11-20 12:02:57 +00:00
Stanislav Shwartsman
6601f15c2e first step for range watchpoints - code reorg 2009-11-19 21:28:25 +00:00
Stanislav Shwartsman
c4b9af631b bugfix - gcc4 warning showed it :( 2009-11-12 21:06:41 +00:00
Stanislav Shwartsman
69fd6903c4 Fixed MSVCPP compilation error 2009-11-09 21:26:09 +00:00