Commit Graph

313 Commits

Author SHA1 Message Date
Stanislav Shwartsman
b5a603c8c7 fixed %d->%u format found by cppcheck (patch by Maxim Derbasov) 2015-01-25 21:24:13 +00:00
Stanislav Shwartsman
055da948a0 fixed problems found by cppcheck tool (patch by Maxim Derbasov) - second round 2015-01-07 16:17:40 +00:00
Volker Ruppert
2ec57b8a6b Fixed some more C++11 warnings. 2014-12-18 17:52:40 +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
29efae3be3 adjust (c) in several files 2014-08-31 20:05:25 +00:00
Stanislav Shwartsman
6db61bedb1 compilation fixes with debugger enabled 2014-08-31 19:29:53 +00:00
Stanislav Shwartsman
b6147d9de8 fixed debugger enabled code 2014-08-31 18:48:04 +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
8fbf673295 fixed compilation errors with FPU off 2014-04-29 18:49:38 +00:00
Stanislav Shwartsman
188dfc2ebe added missing printf arguments 2014-04-20 05:58:11 +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
3798ed66b5 new function for disasm. todo: support it independently of CPU 2014-01-26 20:01:50 +00:00
Stanislav Shwartsman
69c798bf29 fixed compilation warnings from gcc 4.8.1 2013-12-10 21:08:14 +00:00
Stanislav Shwartsman
085161ca49 more debugger fixes 2013-12-05 19:26:40 +00:00
Stanislav Shwartsman
ca2793ac76 Debugger: fixed param tree access to 64-bit variables (need to use get64() instead of get())
Debugger: if AVX-512 if not supported by current configuration do not print high256 of vector registers and zmm15..zmm31 in AVX command
Implement VBROADCASTF64x4, VBROADCASTF32x4, VBROADCASTFI64x4, VBROADCASTI32x4 AVX-512 instructions
Fetchdecode optimizations and bugfixes
2013-12-05 19:17:16 +00:00
Stanislav Shwartsman
79456eb7e1 Implemented VPCMP* AVX512 instructions
Implemented VMOVNTPS/PD/DQ AVX512 instructions
Implemented VMOVNTDQA AVX512 instruction
Bugfixes for AVX-512
2013-12-02 18:05:18 +00:00
Stanislav Shwartsman
4f158aef5f Fixed 8-bit opmask read
Added opmask printout for AVX dump in dbg_main.cc
2013-12-01 20:50:01 +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
59af88ea50 fixed memory bug found by gcc 4.8.1 warning 2013-10-15 17:28:06 +00:00
Stanislav Shwartsman
09254eb474 avx512 implementation fixes and next steps 2013-10-08 18:31:18 +00:00
Stanislav Shwartsman
fd370a4d41 fixes in disasm, added example of using bxInstruction_c disasm into dbg_main.cc (commented out for now) 2013-10-05 19:32:09 +00:00
Stanislav Shwartsman
ba317a4ce1 fixed compilation when --enable-evex is ON 2013-08-24 18:28:09 +00:00
Stanislav Shwartsman
33a7063e60 bug fixes 2013-08-05 15:33:41 +00:00
Stanislav Shwartsman
2dbe81db51 first infrastructure changes to support EVEX prefix and AVX-512 extensions recently published by Intel 2013-07-26 12:50:56 +00:00
Stanislav Shwartsman
fd71b03353 add some definitions introduced in recent Intel SDM extensions document (rev015) 2013-07-23 20:51:52 +00:00
Stanislav Shwartsman
0c570ecb6a clean symbols code a little 2013-06-26 18:07:01 +00:00
Volker Ruppert
ab57c1fb2f found a better solution to fix the power_handler() deadlock
fixed bx_dbg_exit() handling for shutting down second simulation correctly
2013-02-20 18:51:39 +00:00
Volker Ruppert
7eda0feb6f fixed some compiler warnings 2013-02-12 13:31:40 +00:00
Volker Ruppert
de4a5ecd79 fixed segfault when closing debugger gui window while simulation is running 2013-02-10 08:47:17 +00:00
Stanislav Shwartsman
3ab0331307 implemented VMCS shadowing (Intel SDM rev045) 2013-01-21 19:55:00 +00:00
Stanislav Shwartsman
4bed791ccb Added year 2013 to Copyright in all files already modified in new year 2013-01-19 20:45:03 +00:00
Stanislav Shwartsman
a8068812df add 'tlb' command to debugger to do TLB lookup 2013-01-14 17:02:07 +00:00
Stanislav Shwartsman
29d5f4149b correct typo 2012-11-07 04:41:30 +00:00
Stanislav Shwartsman
34b5044e06 added back set for compatibility 2012-11-06 20:10:32 +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
9933ffa3d9 vga refresh framework changes
- renamed trigger_timer() methods to refresh_display()
- new argument 'redraw' added to force a refresh of the entire screen
  (used in snapshot mode)
- siminterface method refresh_vga() now checks if the Bochs gui init is complete
- use SIM->refresh_vga() in some more cases
2012-10-28 08:23:39 +00:00
Stanislav Shwartsman
2ca0c6c677 Move INTR, Local APIC INTR and SVN VINTR into new event interface (hardest part)
Minor speedup (of 1-2%) was observed due to new implementation
Remove obsolete dbg_take_irq function and dbg_force_interrupt function from CPU code, the functions were not working properly anyway
2012-10-03 20:24:29 +00:00
Stanislav Shwartsman
2f3c7ff8e4 implemented SMAP (Supervisor Mode Access Protection) from [Intel Architecture Instruction Set Extensions Programming Reference] rev14
fixed enabling of ADX extensions in generic CPUID when enabled through .bochsrc

Small code cleanups on the way to implementation of APIC Registers Virtualization features disclosed in recent Intel SDM rev043
2012-09-10 15:22:26 +00:00
Stanislav Shwartsman
f1fd44b2cf preparations for apic regs virtualization feature described in SDM rev044 2012-09-06 15:21:08 +00:00
Volker Ruppert
72d3b294d2 - added support for the gui debugger with sdl on Windows (required separate thread)
- enh_dbg: fixed defined-but-not-used warnings
- siminterface: renamed 'wx_debug_gui' to 'bx_debug_gui' and updated comments
- TODO: remove the wx debugger and use the enhanced gui debugger instead
2012-07-01 14:37:13 +00:00
Stanislav Shwartsman
04e46ee9b7 fixed typos caused compilation err 2012-06-28 18:34:28 +00:00
Stanislav Shwartsman
f12396566c added CR8 to control registers print in debugger 2012-06-28 18:27:26 +00:00
Stanislav Shwartsman
42347a26ee fixed dbg print format 2012-06-15 14:17:17 +00:00
Stanislav Shwartsman
720a9b2fb7 fixed 64-bit segment print from internal debugger 2012-06-14 18:56:47 +00:00
Stanislav Shwartsman
5192d09655 fixed some more valgrind issues 2012-06-04 18:46:07 +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
bdfe4ae1bb - added debug_dump() (prints the same as 'info ne2k' without arguments)
- removed FILE parameter from print_info() (unused - since dbg_printf() doesn't
  need it)
- converted tabs to spaces
- TODO: implement 'info device' with optional arguments to get rid of the
  print_info() method
2012-04-18 17:03:00 +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