Commit Graph

72 Commits

Author SHA1 Message Date
Stanislav Shwartsman
f90e5f4f44 Add initial implementation of the CET (Control Flow Enforcement Technology) emulation according to SDM071
Only missing items (to be added soon):
  - Supervisor Shadow Stack EPT Control is not implemented yet
  - SMM placing for SSP
Currently have to be added manually to some CPUID model, for example to ICL-U
To enable configure with --enable-cet
2019-12-20 07:42:07 +00:00
Stanislav Shwartsman
96e2c50bef applying SF patch #545 Speling fixes 2019-12-09 16:29:23 +00:00
Stanislav Shwartsman
2b394c9e9f allow delivery of SMI or NMI from debugger using take command 2019-12-04 19:53:47 +00:00
Stanislav Shwartsman
2a55ba0a39 Merge set of debugger improvements by Doug Gale <doug16k>
Here is his original comment:

I have made several improvements in the debugger.
I have fixed several issues with proper handling of 64-bit addresses, and added support for 64 bit symbols.
I also have added several symbol lookups.
2017-08-22 21:03:58 +00:00
Stanislav Shwartsman
f490b00beb added support for conditional breakpoints in Bochs debugger 2017-08-22 18:47:18 +00:00
Stanislav Shwartsman
38e2562d9c added new debugger cap: conditional continue' 2017-06-03 19:11:52 +00:00
Stanislav Shwartsman
1924780b06 added ability to dump Bochs param tree in XML format 2014-11-15 22:03:52 +00:00
Stanislav Shwartsman
12bee4438f corrently support 'show all' debugger command 2014-08-02 19:43:05 +00:00
Stanislav Shwartsman
baa6498edf improved show debugger command help message 2014-08-02 19:39:26 +00:00
Stanislav Shwartsman
1f299b230f show dbg-all and dbg-none re-anabled with slight syntax change: as dbg_all and dbg_none 2014-08-02 19:30:49 +00:00
Stanislav Shwartsman
09414f2f4b implemented access to opmask AVX-512 registers from debugger, fixed enhdbg buffer overflow with EVEX enabled 2014-02-11 20:51:18 +00:00
Stanislav Shwartsman
8602804086 another fix for commands debugger parser 2013-11-20 18:40:10 +00:00
Stanislav Shwartsman
acbf278346 allow device names with numbers in info device without quotes 2013-11-20 17:21:56 +00:00
Stanislav Shwartsman
ee40564a5f remove unneeded vga keyword from lexer 2013-11-20 16:56:26 +00:00
Stanislav Shwartsman
ab87549b6b Updates to Bochs debugger:
AVX command split into two: YMM command and ZMM command for AVX-256 and AVX-512.
Later new command AVX will be added whch will print complete AVX state according to what is defined currently, including OPMASK registers

info device <name>
and
info device <name> <string>

could be also used now without having to include device name in quotes as "name".
old style "qouted" option also still working

added missing info cpu command to the help
2013-11-19 21:53:55 +00:00
Stanislav Shwartsman
2ec138f96e Apply patch from developers mailing list:
bx_debug: allow expressions instead of numerals, where relevant
by Samium Gromoff

fix code duplication in fma handlers
2013-10-09 20:04:05 +00:00
Stanislav Shwartsman
a8068812df add 'tlb' command to debugger to do TLB lookup 2013-01-14 17:02:07 +00:00
Stanislav Shwartsman
edf4ea4c74 fixed SF bug #1318 dbg: several issues with 'set' command 2012-11-06 20:01:02 +00:00
Volker Ruppert
a11e5713d7 - updated help texts 2012-04-24 17:48:38 +00:00
Stanislav Shwartsman
e1611e717e Implemented feature request:
[3519794] debugger's ability to save physical/linear memory dumps
2012-04-24 11:01:59 +00:00
Volker Ruppert
f65c4e66b8 - debugger command 'info device': implemented support for additional arguments
- ne2k: replaced debugger command 'info ne2k' completely by a new version based
  on 'info device' with additional arguments and removed all of the now obsolete
  stuff (ne2k device stub, macro for print_info())
- pci: added option 'dump=full' for the debugger command 'info device' to show
  the whole PCI config space
- TODO: some other devices could have support for additional options in
  debug_dump()
2012-04-23 17:06:19 +00:00
Volker Ruppert
086266d033 - implemented new debugger command 'info device [string]' that shows the state
of the device specified in 'string'. Added register mechanism and chained
  list to store the device name and pointer. Replace hardcoded debug info
  implementations for pic, pci and vga by the new one.
- TODO #1: improve existing debug_dump() output and add more devices
- TODO #2: add support for additional arguments and replace the NE2k print_info()
2012-03-10 17:14:07 +00:00
Stanislav Shwartsman
56ff41bcd5 removed unused token from internal debugger command line parser 2012-01-24 21:42:04 +00:00
Stanislav Shwartsman
b16d71175d Fixed 'show off' command in internal debugger
Removed not working record/playback obsolete commands from internal debugger
2011-10-09 19:26:30 +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
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
64a30a15fa Adding Id and Rev property to all files 2011-02-25 20:16:02 +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
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
d779842da3 added ability to modify sregs from bochs debugger 2009-12-27 16:38:09 +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
c4b9af631b bugfix - gcc4 warning showed it :( 2009-11-12 21:06:41 +00:00
Stanislav Shwartsman
e6da2ce8e8 updated docs and dbger help 2009-10-31 17:46:12 +00:00
Stanislav Shwartsman
98b51805d5 updates for Bochs debugger 2009-10-29 15:49:50 +00:00
Stanislav Shwartsman
3dbb1da68a remove "dirty" pages tracking - it is too memory consuming and can fit with >4G phy addr space 2009-10-15 20:50:33 +00:00
Stanislav Shwartsman
e912b328c2 enhances to gui debugger and integrated debugger 2009-08-07 08:26:41 +00:00
Stanislav Shwartsman
981c2e595d Improve internal debugger commands parsing.
Now possible to set read/write watchpoits using 'r' and 'w' shortcuts instead of full 'read' and 'write' words
2009-04-03 17:36:24 +00:00
Stanislav Shwartsman
0e66403a25 Change watchpoints to be more flexible - and more similar to 2.3.7 2008-10-08 17:13:35 +00:00
Stanislav Shwartsman
cc17a7006a Allow using of expressions for page command 2008-09-12 21:03:56 +00:00
Stanislav Shwartsman
e19c25a234 Reimplemented watchpoints handling. Up to 16 watchpoints of any kind (but not each kind) is available.
Check 'help watch, help unwatch' in Bochs debugger !
2008-08-07 21:09:30 +00:00
Stanislav Shwartsman
8e3b0ea1af Fixed few typos in debugger command and print 2008-05-03 21:32:02 +00:00
Stanislav Shwartsman
abe5309ab9 Clean 'info registres' command - use only direct aliases.
instead of 'info fpu' - just use 'fpu'
and etc
2008-05-01 19:10:07 +00:00
Stanislav Shwartsman
6c82e707c8 FIxed typo 2008-04-26 18:58:26 +00:00
Stanislav Shwartsman
003c23e7ea Added aliases for some debugger command
fp|fpu - same as info fpu
sse - same as info sse
mmx - same as info mmx
sreg - same as info sreg
2008-04-26 18:50:32 +00:00
Stanislav Shwartsman
bdaef81603 Added debugger memory trace functionality. Enable by 'trace-mem on' command 2008-04-19 13:21:23 +00:00
Stanislav Shwartsman
46e7ca44dc dded patch with symbols support in bochs-debugger 2008-03-29 21:32:18 +00:00
Stanislav Shwartsman
6d7134ef99 Remove dump_cpu debugger function, CPI method and all related structures.
Extended 'info' command in debugger to have all functionality of dump_cpu if needed. Also param tree print always could be used !
2007-10-23 21:51:44 +00:00
Stanislav Shwartsman
e9801ef501 Support for restore cpu (and any other device from bochs root) from debugger 2007-10-14 19:04:51 +00:00