Vicki Pfau
131b983894
Debugger: Move platform-specific flag lookup to mDebuggerPlatform
2023-09-15 23:36:03 -07:00
Vicki Pfau
d55a13c9ba
Debugger: Initial memory access logger support
2023-09-15 23:36:03 -07:00
Vicki Pfau
7015a104be
Debugger: Clean up layering violation
2023-09-15 22:08:12 -07:00
Vicki Pfau
c1421afccb
Debugger: Support calling into multiple debuggers per watchpoint
2023-05-29 00:53:53 -07:00
Vicki Pfau
7d6a8a86a8
ARM Debugger: Fix unitialized stack variable
2023-05-09 22:13:09 -07:00
Vicki Pfau
8efb3fb5df
Debugger: Make created debug items, e.g. breakpoints, owned by modules
2023-05-09 21:17:46 -07:00
Vicki Pfau
b21a6158f4
Debugger: Break out debugger functionality into modules
2023-05-09 21:17:46 -07:00
bigfarts
42f7876731
Add range watchpoints.
...
These are accessible via the following new CLI debugger commands:
- rw: watchr minAddr maxAddr [cond]
- r: watchr/r minAddr maxAddr [cond]
- w: watchr/w minAddr maxAddr [cond]
- c: watchr/c minAddr maxAddr [cond]
This also makes all watchpoints range watchpoints under the hood.
Preliminary benchmark results:
Time taken to run 10000 frames of Megaman Battle Network 1 (U) with a write watchpoint set at 0x02000000 in milliseconds, 10 runs each:
control (no watchpoint):
[4184, 4185, 4197, 4207, 4220, 4178, 4304, 4226, 4234, 4292]
mean = 4223, stdev = 43.95
old (single address watchpoint):
[4743, 4685, 4679, 4670, 4782, 4704, 4698, 4875, 4746, 4718]
mean = 4730, stdev = 61.67
new (range watchpoint):
[4683, 4691, 4693, 4706, 4782, 4674, 4746, 4768, 4770, 4776]
mean = 4728, stdev = 43.36
2022-10-16 02:10:38 -07:00
Vicki Pfau
368ad24516
Debugger: Fix multiple conditional watchpoints at the same address
2022-08-13 03:41:55 -07:00
Vicki Pfau
0979380c74
Debugger: Shaving recursive yaks takes a lot of work
2022-06-28 18:43:15 -07:00
Vicki Pfau
87738ba8f3
Core: Migrate register access API from debugger into core
2022-05-16 15:58:50 -07:00
Vicki Pfau
e17357a50a
ARM Debugger: Fix disassembly alignment ( fixes #2204 )
2021-06-04 21:01:07 -07:00
Vicki Pfau
70f581162f
ARM Debugger: Only break on exceptions when stack call tracing is on
2020-12-13 00:06:06 -08:00
Vicki Pfau
1a694b0b56
Debugger: Fix change watchpoints ( fixes #1947 )
2020-11-24 01:41:41 -08:00
Vicki Pfau
87ec3f3d4a
ARM Debugger: Disassembler now resolves addresses to symbol names
2020-09-07 15:55:51 -07:00
Adam Higerd
daf2193894
Debugger: parse memory operations correctly
2020-08-10 22:19:54 -07:00
Adam Higerd
e68d3ed00f
Stack traces: fix tracing of indirect jumps and interrupt handlers
2020-08-10 22:19:54 -07:00
Adam Higerd
8ee4b3c046
Stack traces: add detection for other calling conventions and stack manipulation
2020-07-30 20:20:51 -07:00
Adam Higerd
fb267a32ff
Stack trace: coding style cleanup
2020-07-27 22:30:43 -05:00
Adam Higerd
1a9ead1e25
Stack trace: use popcount function instead of inline loop
2020-07-27 22:06:44 -05:00
Adam Higerd
fec10dac32
Stack trace: remove debugging code
2020-07-27 21:42:53 -05:00
Adam Higerd
80f78f1682
Stack trace: finish implementation and debug
2020-07-27 21:26:55 -05:00
Adam Higerd
238c68f080
Stack trace: WIP backtrace implementation
2020-07-27 21:23:34 -05:00
Adam Higerd
d0edc7dc76
Stack trace: add tracing to ARM debugger
2020-07-27 21:23:34 -05:00
Vicki Pfau
7f64f8cf3b
Debugger: Keep track of global cycle count
2020-05-30 18:01:15 -07:00
Vicki Pfau
ff1033b801
ARM Debugger: Clear low bit on breakpoint addresses ( fixes #1764 )
2020-05-25 00:58:40 -07:00
Vicki Pfau
dab12cf5c6
All: Fix several warnings
2020-01-16 19:54:41 -08:00
Vicki Pfau
bb1ce789d2
Debugger: Print break-/watchpoint ID when breaking in CLI
2019-12-21 14:05:22 -08:00
Vicki Pfau
a6fc606a2d
Debugger: Separate aliases from main commands
2019-12-21 13:52:16 -08:00
Vicki Pfau
1deff07aa1
Debugger: Print breakpoint/watchpoint number when inserting
2019-04-28 13:37:51 -07:00
Vicki Pfau
0c9802e4da
Debugger: Revamp breakpoint/watchpoint API, add listing
2019-01-31 22:52:27 -08:00
Vicki Pfau
ff2a0f8519
Debugger: Readability improvements ( fixes #1238 )
2018-11-21 17:30:41 -05:00
Vicki Pfau
4d383b129d
ARM: De-macro-ize ARM/Thumb PC write routines
2018-10-12 21:09:49 -07:00
Vicki Pfau
ee3969ad02
Debugger: Fix long disassemblies
2018-05-12 09:48:04 -07:00
Vicki Pfau
0131a196d1
Debugger: Conditional watchpoints
2017-12-29 16:38:46 -05:00
Vicki Pfau
0383c82b46
Debugger: Conditional breakpoints
2017-12-29 16:11:40 -05:00
Vicki Pfau
f3ea4caf84
All: Support building on PPC Mac
2017-12-23 16:23:51 -08:00
Vicki Pfau
d484c98eba
Debugger: Add get/set register functions
2017-10-13 00:29:38 -07:00
Vicki Pfau
a2447d09e3
Debugger: Redo argument handling
2017-10-13 00:28:35 -07:00
Vicki Pfau
70a6622a5c
Debugger: Execution tracing
2017-06-11 09:26:26 -07:00
Vicki Pfau
9c144266ec
LR35902: Add watchpoints
2017-06-02 19:15:13 -07:00
Vicki Pfau
fcc8b5c805
Debugger: Add segment breakpoints
2017-05-22 22:19:46 -07:00
Vicki Pfau
1e7a62fbb3
Revert "ARM: Overhaul PSR access"
...
This reverts commit 37f5feb713
and fixup commits.
2017-01-31 11:46:24 -08:00
Vicki Pfau
37f5feb713
ARM: Overhaul PSR access
2017-01-28 11:11:59 -08:00
Jeffrey Pfau
fa884d071e
All: Migrate includes to separate directory
2016-12-30 21:25:07 -08:00
Jeffrey Pfau
6d898542c7
Merge branch 'feature/python-bindings'
2016-12-29 01:23:31 -08:00
Jeffrey Pfau
2f1cb61d01
All: Add C++ header guards
2016-12-26 21:01:55 -08:00
Jeffrey Pfau
99a85aaf3a
Debugger: Fix build
2016-12-25 15:22:40 -08:00
Jeffrey Pfau
a0d223eef7
Debugger: Modularize CLI debugger
2016-10-25 21:12:35 -07:00
Jeffrey Pfau
805ef9efdd
ARM Debugger: Fix clearing software breakpoints
2016-09-17 12:41:31 -07:00