Vicki Pfau
bfc52cd2f0
All: Fix whitespace errors
2024-09-30 17:24:04 -07:00
Vicki Pfau
e4e455dd5e
ARM: Add framework for coprocessor support
2024-06-02 17:30:17 -07:00
Vicki Pfau
0e441527c8
CMake: Rename USE_DEBUGGERS and USE_GDB_STUB to ENABLE_DEBUGGERS and ENABLE_GDB_STUB
...
ENABLE flags are for optional features, USE flags are for optional dependencies
2024-04-08 03:08:10 -07:00
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
9c673f527d
ARM, SM83: Check for events both before and after single stepping
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
f96ba8c1aa
ARM: Fix warning
2023-08-10 11:58:05 -07:00
Vicki Pfau
00e62f231a
ARM: Fake bpkt instruction should take no cycles ( fixes #2551 )
2023-07-05 22:10:33 -07:00
Vicki Pfau
491879da95
ARM: Remove obsolete force-alignment in `bx pc` ( fixes #2964 )
2023-06-26 16:14:25 -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
5db7d95aa2
ARM: Fix some disassembly
2022-07-17 15:56:56 -07:00
Vicki Pfau
84e60e99f4
All: More warning burndown
2022-06-30 05:55:56 -07:00
Vicki Pfau
0979380c74
Debugger: Shaving recursive yaks takes a lot of work
2022-06-28 18:43:15 -07:00
Vicki Pfau
11837ffc15
ARM: Disassemble Thumb mov pseudo-instruction properly
2022-06-05 20:59:30 -07:00
Vicki Pfau
a7710ed8d5
ARM: Fix warning spew
2022-05-27 00:42:11 -07:00
Vicki Pfau
87738ba8f3
Core: Migrate register access API from debugger into core
2022-05-16 15:58:50 -07:00
Vicki Pfau
53c7f6f50a
ARM Decoder: Fix decoding of lsl r0 ( fixes #2349 )
2021-11-09 15:15:18 -08:00
Vicki Pfau
86fe869087
ARM7: Fix unsigned multiply timing
2021-09-20 15:59:28 -07:00
Vicki Pfau
e17357a50a
ARM Debugger: Fix disassembly alignment ( fixes #2204 )
2021-06-04 21:01:07 -07:00
Vicki Pfau
144a05a66e
ARM: Fix LDM^ with empty rlist ( fixes #2127 )
2021-04-15 19:17:15 -07:00
Vicki Pfau
74fd2c3c0b
ARM: Use mask lookup table for condition codes
2021-03-05 23:38:44 -08:00
Vicki Pfau
49ec1ed702
ARM: Fix long and accumulate multiply timing
2021-02-15 23:40:49 -08: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
fbba3efb34
ARM: Fix long multiply-and-accumulate register write order ( fixes #1956 )
2020-11-28 21:29:00 -08:00
Vicki Pfau
b169e6b0df
ARM: Fix non-debugger build
2020-11-25 20:40:20 -08:00
Vicki Pfau
1a694b0b56
Debugger: Fix change watchpoints ( fixes #1947 )
2020-11-24 01:41:41 -08:00
Vicki Pfau
e9b5190369
ARM: Move shifter call to avoid stack usage
2020-11-01 19:00:49 -08:00
Vicki Pfau
a53b01be00
ARM: Fix Addressing mode 1 shifter on rs == pc ( fixes #1926 )
2020-11-01 02:29:58 -08:00
Vicki Pfau
a2cd8f6cce
ARM Decoder: Fix decoding pre-indexed writeback instructions ( fixes #1915 )
2020-10-24 15:46:11 -07:00
Vicki Pfau
c134c6cae1
ARM: Don't force passed opcodes to be truncated
2020-10-18 01:51:54 -07:00
Vicki Pfau
c7a1475981
ARM Decoder: Only print PC-relative register contents in loads ( fixes #1908 )
2020-10-12 18:08:13 -07:00
Vicki Pfau
67d3eed8fb
ARM Decoder: Revamp load/store interface, readability cleanup
2020-10-12 18:07:11 -07: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
07667955f6
ARM: Expose ARMSelectBank API
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
Vicki Pfau
8cba417141
ARM: Fix warnings
2020-08-03 20:31:15 -07:00
Adam Higerd
8ee4b3c046
Stack traces: add detection for other calling conventions and stack manipulation
2020-07-30 20:20:51 -07:00
Vicki Pfau
c3259da78d
ARM: Fix decoder detection of branches with ALU and LDR instrctions
2020-07-29 17:28:57 -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