Unknown W. Brackets
29d93c56c7
Debugger: Initial breakpoint APIs.
2018-06-08 06:59:18 -07:00
Unknown W. Brackets
18dcea4cdc
Debugger: Disasm search API.
2018-06-08 06:59:18 -07:00
Unknown W. Brackets
6cf24b34fc
Debugger: Add thread safety to breakpoints.
2018-06-08 06:59:18 -07:00
Unknown W. Brackets
5b132c904a
Debugger: Fix resume not skipping breakpoints.
2018-06-08 06:59:18 -07:00
Unknown W. Brackets
65feb5f09c
Debugger: Include assembler API.
2018-06-08 06:59:18 -07:00
Unknown W. Brackets
2f3b6c19d0
Debugger: Poll frequently after stepping.
...
This will make us listen for events slightly less often, so we don't want
to sustain it.
2018-06-08 06:59:17 -07:00
Unknown W. Brackets
fc8ad3b47b
json: Optimize writing a bit.
...
This improves the responsiveness of certain APIs.
2018-06-08 06:59:17 -07:00
Unknown W. Brackets
ccea863f00
Debugger: Use fragments for long chunks.
...
Gets it on the wire faster. More importantly, this allows us to usually
avoid rampant memory allocation even for large responses.
2018-06-08 06:59:17 -07:00
Unknown W. Brackets
e746a2d106
Debugger: Add stepping to WebSocket API.
2018-06-08 06:59:17 -07:00
Unknown W. Brackets
f66738eac7
Debugger: Add cpu.evaluate method.
...
Probably useful for a bunch of things, really.
2018-06-08 06:59:17 -07:00
Unknown W. Brackets
8a0e02e223
Debugger: Prevent crazy disasm range.
...
Also add some documentation.
2018-06-08 06:59:17 -07:00
Unknown W. Brackets
1c107308cd
Debugger: Add additional encoding/symbol info.
2018-06-08 06:59:17 -07:00
Unknown W. Brackets
944948a5f4
Debugger: Initial disasm API.
2018-06-08 06:59:17 -07:00
Unknown W. Brackets
4da97b3f9e
Debugger: Lock during startup/shutdown.
...
Otherwise things can get freed while we're trying to inspect them.
2018-06-08 06:59:17 -07:00
Unknown W. Brackets
b756d92139
Debugger: Add version event for future proofing.
...
Game isn't precisely right, but it's close enough.
2018-06-08 06:59:17 -07:00
Unknown W. Brackets
05c560b52d
Debugger: Include PC and ticks in stepping events.
2018-06-08 06:59:17 -07:00
Unknown W. Brackets
3dac5f2103
Debugger: Add current game info.
2018-06-08 06:59:17 -07:00
Unknown W. Brackets
77131e737b
Log: Use a separate field for the timestamp.
...
Better than parsing it since we already have the header separate. Simpler
too.
2018-06-08 06:59:17 -07:00
Unknown W. Brackets
6bec3db3fb
Debugger: Disconnect on shutdown/disable.
...
Although, it could be made safe to keep them up when restarting with
debugging still enabled.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
f02bd4daff
Debugger: Use a counter when entering stepping.
...
This allows us to poll coreState and know if a new stepping needs to be
sent. This is useful to allow e.g. regs to show changes per step.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
d67a1d4a3a
Debugger: Allow pinging current status.
...
Helps especially when reconnecting.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
c44d8dbe2d
Debugger: Name the WebSocket debugger thread.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
a341994622
Debugger: Add cpu.stepping and cpu.resume.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
a4044fd6a0
Debugger: Reorganize state handling.
...
Looking like this will be needed for disasm caches, etc.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
0a21063525
Debugger: Cleanup, add initial API docs.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
3c458310ed
Debugger: Allow setting regs to inf/nan.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
be3b50dd74
Debugger: Improve JSON number parsing.
...
With gason, this becomes doable without overflow issues.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
1f987bf1c1
Debugger: Initial register get/set APIs.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
123723286d
Debugger: Synchronize error events using tickets.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
b37d59e8fa
Debugger: Organize WebSocket event handling.
...
Just a starting point to organize it. Trying to keep it simple.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
c2b9b5a9e8
Debugger: Serve a simple log listener WebSocket.
...
Planning to add more functionality to it, and sharing the reporting port
is possibly not ideal - although it would make discovery easier.
2018-06-08 06:59:16 -07:00
Unknown W. Brackets
eb4b59b530
arm64jit: Enable breakpoints.
...
Memory breakpoints not yet really tested.
2018-06-06 17:31:56 -07:00
Unknown W. Brackets
3c8cc5ab64
Debugger: Fix initialization issues.
...
Sometimes temp breakpoints had log set by accident.
2018-06-06 17:31:56 -07:00
Unknown W. Brackets
0f84c2e995
Debugger: Consistently handle invalid addresses.
2018-06-06 05:58:49 -07:00
Unknown W. Brackets
0b8359fd77
Debugger: Add mutexing to disassembly manager.
...
It was crashing when accessing from another thread.
If in the future we go down to only the remote debugger, we could
potentially remove this.
2018-06-06 05:58:49 -07:00
Unknown W. Brackets
89f89ec749
Debugger: Defer active symbol updates.
...
This makes it faster when loading many modules/functions/etc., for example
when using the freeze debug feature.
2017-12-26 18:11:22 -08:00
Henrik Rydgård
21fe73c8e7
Switch strncpy to truncate_cpy in a bunch of places.
2017-05-26 19:04:08 +02:00
Unknown W. Brackets
7613fd97aa
Windows: Fix minor leak in disassembly UI.
2017-04-27 20:02:49 -07:00
Henrik Rydgard
26a2d42731
Big mutex overhaul - remove our custom ones, make them non-recursive where possible
2017-02-28 11:40:29 +01:00
Henrik Rydgard
03dab0fdbd
More UWP prep
2017-02-25 09:57:22 +01:00
Henrik Rydgård
635b2ada43
Remove a function that didn't make a lot of sense.
2017-01-26 09:50:16 +01:00
latot
7047ad2271
fix sscanf types
2016-12-02 22:46:52 -03:00
Unknown W. Brackets
747a6ec524
Debugger: Add custom log expressions.
...
Similar to Visual Studio, just use {a1} to log the value of register a1.
Supports anything the expression parser supports.
2016-08-04 13:29:22 -07:00
Unknown W. Brackets
e4ca124b0e
Debugger: Add custom breakpoint log message.
2016-08-04 13:07:56 -07:00
Unknown W. Brackets
9972e5b10a
Debugger: Allow logging on CPU breakpoints.
2016-08-04 12:39:29 -07:00
Unknown W. Brackets
a9ad0cd471
Debugger: Make breakpoint actions more generic.
2016-08-04 12:02:44 -07:00
Unknown W. Brackets
4578c3cb54
jit-ir: Implement memory breakpoints.
...
These generally work, but likely delay slots will make downcount slightly
off, and won't resume when you hit run again without manually stepping
through them.
2016-07-02 16:38:30 -07:00
Henrik Rydgard
8b450c8034
Merge NativeJit.cpp/h with JitCommon.cpp/h
2016-05-01 11:39:59 +02:00
Henrik Rydgard
a5be0976bd
Remove preprocessor hacks to choose JIT implementation.
...
Opens up for having multiple JIT implementations available at runtime,
which could be use for experimenting with new JIT compiler types or for
unit testing one JIT on another architecture.
Very few of the newly virtual calls are on any sort of critical path so
hopefully there will not be a performance loss.
2016-05-01 11:39:53 +02:00
Henrik Rydgard
3ba911bf07
Replace some calls to fopen with File::OpenCFile (utf8).
2016-01-17 15:59:20 +01:00