Ryan Fleury
|
f13806b19f
|
another checkpoint in moving previously engine-controlled behavior to frontend, and getting engine completely off d_entities
|
2024-09-12 16:51:48 -07:00 |
|
Ryan Fleury
|
71cb03f3be
|
checkpoint in getting off of d_entities and onto ctrl_entities for frontend paths, including thread selection & df_regs
|
2024-09-12 16:30:26 -07:00 |
|
Ryan Fleury
|
deef05d0d2
|
extend eval space size to allow u128 key for hash store & related cache keys, + some extra metadata determined by user (user-defined kind & extra u64)
|
2024-09-11 17:11:33 -07:00 |
|
Ryan Fleury
|
26fb91d539
|
fix top-level frontend exit logic; eliminate path -> entity code, since we are totally off filesystem entities
|
2024-09-11 16:25:02 -07:00 |
|
Ryan Fleury
|
cc2b5138b0
|
more dead code elimination & simplification & floating from engine -> frontend
|
2024-09-11 15:04:12 -07:00 |
|
Ryan Fleury
|
be6458690f
|
ctrl layer defined handle system, to replace machine-id/demon-handle pairs used everywhere by users
|
2024-09-11 14:01:38 -07:00 |
|
Ryan Fleury
|
6cf0c7ee92
|
promote thread freeze state to ctrl entity tree; communicate via msgs for user -> ctrl, and communicate entity state changes back via events for ctrl -> user
|
2024-09-08 13:09:52 -07:00 |
|
Ryan Fleury
|
fee500578a
|
get trap net generation off of d_entities and onto ctrl entities; decouple debug engine stepping/running from d_entities
|
2024-09-08 10:50:00 -07:00 |
|
Ryan Fleury
|
a204018e94
|
Revert "checkpoint on pass to majorly simplify debug frontend state, and eliminate df entities, and move from cmds -> msgs"
This reverts commit 06a685221a.
|
2024-09-07 14:50:27 -07:00 |
|
Ryan Fleury
|
06a685221a
|
checkpoint on pass to majorly simplify debug frontend state, and eliminate df entities, and move from cmds -> msgs
|
2024-09-03 12:46:30 -07:00 |
|
Ryan Fleury
|
9932a30ef9
|
entity parameter tree equipment; architecture -> arch
|
2024-08-29 13:16:50 -07:00 |
|
Ryan Fleury
|
47462f4789
|
first pass at filesystem evaluation in eval system
|
2024-08-22 16:55:07 -07:00 |
|
Ryan Fleury
|
acd7435553
|
collapse register mode into being a thread space, unify process/thread/debugger read/write paths, keep differences in core eval read/write paths
|
2024-08-22 14:50:27 -07:00 |
|
Ryan Fleury
|
1848acd47e
|
eliminate eval assumption of single architecture; equip each eval module with an architecture; use to correctly specify the debugger process architecture; do initial pass of debugger space evaluation
|
2024-08-21 12:55:50 -07:00 |
|
Ryan Fleury
|
c77d61fb4c
|
ellipses for unfinished arrays/structs in eval single-line visualization
|
2024-08-20 16:33:08 -07:00 |
|
Ryan Fleury
|
8b5be64507
|
fix primary module selection in multi-process scenarios
|
2024-08-15 12:23:08 -07:00 |
|
Ryan Fleury
|
b98a75e056
|
switch eval memory reads -> more generalized space reads; apply to register reads as well
|
2024-08-15 11:55:22 -07:00 |
|
Ryan Fleury
|
59c01a73af
|
pipe through space information through eval compiler/interpreter
|
2024-08-15 11:21:52 -07:00 |
|
Ryan Fleury
|
a0d91862a7
|
bundle per-module info in eval system; use all modules in all processes in ctrl layer evaluations; further sketching out of space info
|
2024-08-15 10:04:52 -07:00 |
|
Ryan Fleury
|
eda3d6f8b5
|
fix incorrect assumption of 0 slot -> primary rdi; fixes mistyped locals
|
2024-08-08 15:56:38 -07:00 |
|
Ryan Fleury
|
5a682e5888
|
split eval systems, to decouple types/exprs/parsing (debug info dependent), from irization (macro map dependent), from interpretation (completely independent of the former two stages & all their dependencies)
|
2024-08-06 13:57:48 -07:00 |
|
Ryan Fleury
|
3e6b8a3c66
|
first pass at converting frontend over to using new eval system
|
2024-08-05 17:05:43 -07:00 |
|
Ryan Fleury
|
1f89d4de9e
|
do not overly-ambitiously hold debug info access scopes in ctrl thread run loop
|
2024-07-25 10:40:35 -07:00 |
|
Martins Mozeiko
|
ce7c8d5244
|
avx512 registers & fixes for getting & setting x64 context
|
2024-07-23 08:43:35 -07:00 |
|
Ryan Fleury
|
1b74fb0760
|
simplification pass over os core layer; simplification pass over base arena; set up build.sh; stub out new spot for linux os core
|
2024-07-15 17:23:01 -07:00 |
|
Ryan Fleury
|
435877824a
|
oh NO... never mind... mystery solved... be VERY CAREFUL ABOUT STATE MACHINES! fixes incorrect non-resets of win32 demon 'exception not handled' state, which was buggily leading to DBG_EXCEPTION_NOT_HANDLED being passed to ContinueDebugEvent
|
2024-06-19 11:56:47 -07:00 |
|
Ryan Fleury
|
3327d73373
|
notes on memory-execution-exception spoof implementation situation, and toggles to switch to old behavior, for later investigation
|
2024-06-19 11:32:44 -07:00 |
|
Ryan Fleury
|
376a7c48a5
|
pass over logging, include a lot of extra info in ctrl thread log; demon abstraction for target-process memory allocation/protection; switch spoofs to being in allocated page, rather than at bogus address
|
2024-06-19 11:12:21 -07:00 |
|
Ryan Fleury
|
f6eec680bc
|
adjust single stepping rule to be robust to non-single-step events; this is still not what the issue is pertaining to the stepping bug...
|
2024-06-18 17:19:17 -07:00 |
|
Ryan Fleury
|
41fd224956
|
log ctrl events on user thread; do not use cached register block reading path for ctrl stepping machine, as it must not prematurely update cache for all readers, since runs are not complete
|
2024-06-18 12:07:46 -07:00 |
|
Ryan Fleury
|
6cc1dfb39a
|
trap net generation logging; log markers
|
2024-06-18 10:14:54 -07:00 |
|
Ryan Fleury
|
749821dd27
|
adjust unwind loop to be robust to noop-unwind-steps that would otherwise result in infinite unwind loops
|
2024-06-17 12:14:10 -07:00 |
|
Ryan Fleury
|
6ad94978ce
|
correctly adjust dbgi timestamp in ctrl entity store, upon debug info changes
|
2024-06-17 10:55:17 -07:00 |
|
Ryan Fleury
|
723c7c5d4d
|
further tightening up of win32 demon run path; take a few fastpaths on x64; speeds up conditional breakpoints
|
2024-06-14 09:50:33 -07:00 |
|
Ryan Fleury
|
fb9824dc24
|
remove unnecessary ctrl log flushes, which seriously bloated the ctrl thread running path
|
2024-06-14 07:57:46 -07:00 |
|
Ryan Fleury
|
fa4d0bc262
|
ctrl: break debug string events apart if needed; enforce size cap on serialized ctrl events
|
2024-06-13 16:24:54 -07:00 |
|
Ryan Fleury
|
084cabad39
|
pass over high level composite rdi parsing helpers
|
2024-06-13 15:18:29 -07:00 |
|
Ryan Fleury
|
10ead2f999
|
rdi: first pass of eliminating remainder of non-top-level sections; simplification/cleanup of rdi parsing layer
|
2024-06-13 15:18:28 -07:00 |
|
Ryan Fleury
|
7e85335f3b
|
move per-source-file line maps to top-level sections, and move source line -> voff maps to separate top-level info table
|
2024-06-13 15:18:28 -07:00 |
|
Ryan Fleury
|
d3adfdeced
|
deduplicate debug string event generation; log ctrl messages
|
2024-05-31 11:17:59 -07:00 |
|
Ryan Fleury
|
15f5894c60
|
choose debug info key timestamps from debug info path, rather than module timestamp; the module should be allowed to be newer
|
2024-05-26 13:25:03 -07:00 |
|
Ryan Fleury
|
489ae56223
|
fix moduleless unwinding and find-threads without debug info
|
2024-05-23 16:17:31 -07:00 |
|
Ryan Fleury
|
f26b4c3b06
|
eliminate path-tree-based keying of debug info on frontend; use dbgi-layer-defined debug info keys, which can be more robust to changes to the same debug info path across time (e.g. during hot reloads
|
2024-05-23 10:30:23 -07:00 |
|
Ryan Fleury
|
7a4e939886
|
fix incorrectly referring to root entity for debug info if missing; fix thread register cache issues; fix new dbgi layer issues
|
2024-05-22 11:13:08 -07:00 |
|
Ryan Fleury
|
a019115b95
|
get ctrl and debug frontend layers onto new pdb-path-based debug info loader layer; sketch out standalone fuzzy search layer, to replace old dbgi searching functionality; shift all debug frontend code from referring to debug info via 'binaries' to referring to debug info via 'dbgis', just file entities at the location of o.g. debug info
|
2024-05-21 10:08:28 -07:00 |
|
Ryan Fleury
|
b9ac104276
|
begin stitching new dbgi layer usage code into ctrl layer; keep track of per-module preferred pdb paths via event-synchronized ctrl entity tree; still need conversion
|
2024-05-20 17:15:11 -07:00 |
|
Ryan Fleury
|
6e41bdf11b
|
first pass at loader portion of new dbgi layer replacement; set up ctrl entity for per-module debug info selection path info
|
2024-05-20 16:28:52 -07:00 |
|
Ryan Fleury
|
fd6befecc3
|
get tls address calculation off of binary parsing path; do based on in-process memory
|
2024-05-20 12:55:20 -07:00 |
|
Ryan Fleury
|
5342fab86b
|
bugfix in new unwinder; applying stack ptr read & unwind when doing epilog unwinds
|
2024-05-20 11:12:29 -07:00 |
|
Ryan Fleury
|
9919ac59bb
|
move module image info parse / cache management to ctrl thread, directly tie to module lifetime as ctrl thread sees it; reduce load from each unwind
|
2024-05-20 10:58:45 -07:00 |
|