Ryan Fleury
473f84cbda
flip priority of (handle, id) thread name events; prefer id if it is there, to correctly work with the set-suspended-thread-name-by-ID case
2025-05-03 16:17:10 -07:00
Ryan Fleury
b1d63cd130
unattached process evaluation / lister
2025-04-30 13:34:05 -07:00
Ryan Fleury
81425e8b90
use more stable IDs for ctrl entity evaluations
2025-04-28 10:25:37 -07:00
Ryan Fleury
9bb592786a
eliminate all old evaluation bundled helpers, eliminate old fragmented eval caches; move all to unified evaluation cache
2025-04-24 09:07:29 -07:00
Ryan Fleury
2f7e48e5cf
first pass at unified evaluation cache
2025-04-23 17:29:31 -07:00
Ryan Fleury
ba29350939
parse cache, ir-tree cache
2025-04-23 16:00:23 -07:00
Ryan Fleury
c9a05bc76f
adjust block tree building from being on expr -> being on eval
2025-04-23 14:45:15 -07:00
Ryan Fleury
264dbc8199
deduplication from evaluation ctxs - just have base ctx with deduplicated info, then separate type-state, ir-ctx, and interpretation-ctx
2025-04-23 11:49:44 -07:00
Ryan Fleury
7c668388eb
hook up programmatic breakpoint state to trap list
2025-04-12 19:38:07 -07:00
Ryan Fleury
8a857b2154
use set/unset breakpoint events to build bp entities in ctrl entity tree
2025-04-12 15:32:27 -07:00
Ryan Fleury
7ba027e841
sketch out new markup API for programmatic address/data breakpoints
2025-04-12 15:21:48 -07:00
Ryan Fleury
0f380e9228
transmit user breakpoints hit from demon -> ctrl using ctrl-defined IDs, correllate those IDs to rd-defined IDs, use rd-defined IDs in stop events to count bp hits, rather than re-resolving breakpoints. further fixes & work on first pass of data breakpoints
2025-04-12 14:28:38 -07:00
Ryan Fleury
ecad70ca19
pass through data breakpoint length, more progress on fixes/correctness in first pass
2025-04-11 18:07:00 -07:00
Ryan Fleury
e621d13669
frontend ui/editor & data funnelling for hardware data breakpoints
2025-04-11 17:03:36 -07:00
Ryan Fleury
fbe747a8b4
further work on convergence, dead code elimination, and lens (view rule) calls
2025-04-10 14:29:57 -07:00
Ryan Fleury
cde079a14d
checkpoint in moving to new type-based view rule / synthetic structure hooks
2025-04-10 14:29:57 -07:00
Ryan Fleury
d3f0a9a672
checkpoint in moving from old lookup hooks -> new type hooks; elimination of unnecessary recomputation of ir-trees/evals, just use information in already-computed evals
2025-04-10 14:29:56 -07:00
Ryan Fleury
da69d9e91c
more progress on new eval/view-rule integration; raddbg_entry_point markup feature
2025-04-10 14:29:55 -07:00
Ryan Fleury
33de625373
eval: register, register alias name mapping in new name resolution pass
2025-04-02 14:56:53 -07:00
Ryan Fleury
6113a2e3db
eval: do simplification pass over identifier resolution, shift from parsing stage -> ir generation / typechecking stage; do simplifications over expr tree, eliminate redundant kinds
2025-04-02 14:30:12 -07:00
Nikita Smith
1c518bfa07
prefix COFF machine enums with "Type"
2025-03-31 22:53:10 -07:00
Ryan Fleury
a5d6e8a335
make eval ctxs more robust to missing info, e.g. in the test harness case
2025-03-31 13:48:19 -07:00
Ryan Fleury
3911a66b30
fill out first pass implementations of raddbg_markup features; thread names, thread colors, format-string output-debug-string helper, attachment-checking
2025-03-28 10:56:41 -07:00
Ryan Fleury
03cbbac6d7
source-markup-defined auto-view-rules
2025-03-26 13:45:26 -07:00
Ryan Fleury
a826afd4d6
merge part 2
2025-03-25 16:30:05 -07:00
Ryan Fleury
c4f4b5ff01
merge
2025-03-25 16:21:51 -07:00
Nikita Smith
3eedcb1912
initialize frame base in interp context
2025-03-12 14:49:14 -07:00
Ryan Fleury
8bca57ef7f
improved stability w.r.t. cfgs and ctrl entities expansion across changes
2025-02-21 18:14:02 -08:00
Ryan Fleury
9b636568fd
more convergence
2025-02-21 15:29:54 -08:00
Ryan Fleury
b0486d942e
correctly pipe through exception info, visualize exceptions better
2025-02-21 11:46:28 -08:00
Ryan Fleury
c7da3e8a13
distinguish cfg (breakpoints, watch pins) source-locations from address locations; expand breakpoint addresses to being full expressions, & use this to implement symbol breakpoints (we now support fancier address resolution breakpoints too)
2025-02-21 08:42:33 -08:00
Ryan Fleury
eae15a3d41
work on command queries, distinguish floating vs. embedded
2025-02-20 13:30:28 -08:00
Ryan Fleury
72869bc73b
simplify name alloctors in rd/ctrl layers; port panel-closure path
2025-02-17 12:05:56 -08:00
Ryan Fleury
ecb4e0d282
rich hover for thread-hover editors
2025-02-14 09:43:19 -08:00
Ryan Fleury
3b19334075
tear out old meta evaluation code; robustify filesystem streaming async reads
2025-02-10 14:12:44 -08:00
Ryan Fleury
aac93b5952
move over all expansion view rules to new eval-system lookup hooks; eliminate most of old hooks
2025-02-01 17:37:24 -08:00
Nikita Smith
153bbc7b1d
pass over COFF layer
...
- updated naming convention on structs, enums, and macros to conform with code base style
- moved related structs closer to each other
- moved parser code to separate file
2025-01-20 19:31:52 -08:00
Ryan Fleury
e82041e5df
'ghost exceptions' fix - spoof hit detection needs to occur based on the demon event's reported exception address, rather than wherever the instruction pointer happens to be at the time of the exception
2025-01-07 11:04:34 -08:00
Ryan Fleury
bc44f58a80
fix off-by-one size restriction in string chunk allocation; apply same fixes to ctrl entity string allocator
2025-01-05 22:39:10 -08:00
Ryan Fleury
fbc1f871cf
add comment about previously introduced path heuristic - will need to be careful on linux
2025-01-04 17:07:34 -08:00
Ryan Fleury
47373fbb58
prioritize exe-relative debug paths - treat embedded pdb/rdi paths as relative to the exe first - if they are relative, then relative to the exe is the correct choice, but if they are absolute, then it will simply be an invalid path, and so it will just pick up the full absolute embedded pdb path on the next candidate.
2025-01-04 17:02:46 -08:00
Nikita Smith
b5273d6a00
keep parsing on encountering epilog opcode
2024-12-06 14:00:12 -08:00
Ryan Fleury
751626446a
pending thread names in ctrl entity system, for cases where a thread name is established before the thread is reported as being created, and the id is used to correllate
2024-12-06 12:31:37 -08:00
Nikita Smith
669c03cff1
rename time -> time_stamp
2024-12-06 11:53:16 -08:00
Ryan Fleury
94c4000603
adjust failure cases in conversion; adjust waiting time period in pre-emptive heuristic conversion rule; avoid bp resolution path & waiting on debug info when unnecessary
2024-12-03 11:32:57 -08:00
Ryan Fleury
95fe497056
fix incorrect advance logic on invalid page reads in cached process memory reading path
2024-11-14 13:08:17 -08:00
Ryan Fleury
420f089fda
eliminate incorrect cases of async_push_work, where pushes which could occur on worker threads may try to write to a cache that is currently being held, when the push occurs (when all threads are saturated) - async_push_work must never be called from within a cache locking mechanism
2024-11-14 09:55:03 -08:00
Ryan Fleury
ff45952f07
re-introduce timeout-based re-requests for dbgi & fs layers; further adjust pre-emptive conversion heuristic
2024-11-14 09:29:01 -08:00
Ryan Fleury
fa4f9621b0
adjust pre-emptive conversion heuristics; fix deadlock scenario in match work
2024-11-14 09:10:07 -08:00
Ryan Fleury
4c0ebc851c
async priorities, strip out incorrect ring position calculations
2024-11-13 18:23:18 -08:00