Commit Graph

152 Commits

Author SHA1 Message Date
Ryan Fleury 709bc2cfab float run/mem/reg generations out of demon, into core; fix issue of demon access synchronization w/ mem gens, causing failure-to-update-stale-parts-of-process-memory-cache 2025-06-28 10:02:51 -07:00
Ryan Fleury ad995374bb cache module requirement disqualifications; reuse within scope of same run (& thus same user bps) 2025-06-20 07:57:16 -07:00
Ryan Fleury bfe90f5906 plug in thin pdb analysis to determine if waiting on a full RDI conversion is necessary - do not wait if RDI is determined to be unnecessary given breakpoints! 2025-06-19 14:48:13 -07:00
Ryan Fleury 4926f6cfc8 programmatic address range annotations; pipe -> ctrl entities; render in memory view 2025-06-08 17:37:55 -07:00
Ryan Fleury 94b969f203 copyright year 2025-06-02 14:13:57 -07:00
Ryan Fleury 56b975a6b1 adjust async call stack querying API to guard against waiting in clearly-invalid cases (trying to wait for call stacks when running, for example); also eliminate logs 2025-05-20 10:36:44 -07:00
Ryan Fleury 7dc4399300 dead ctrl process memory cache elimination 2025-05-19 19:38:27 -07:00
Ryan Fleury b9e3df4cae pass over hash store layer / all users, to switch to explicit 64-bit root alloc/dealloc, and 128-bit ids, for a full 192-bit hs key 2025-05-19 14:52:28 -07:00
Ryan Fleury 7a44cbbd0d adjust high priority call stack timeout threshold 2025-05-17 08:41:51 -07:00
Ryan Fleury a379134ed8 demon tweaks / debugging; adjust call stack cache reading API to account for high-priority path, where we want to try computing the thread's call stack immediately 2025-05-16 21:12:58 -07:00
Ryan Fleury 86eabe0d6d offer priority selection in call stack retrieval; prioritize selected thread & operations which require a result; adjust call stack builder path to be a bit more generous while waiting for memory reads 2025-05-15 21:57:50 -07:00
Ryan Fleury 9a805b8bb5 adjust call stack cachc committing mechanism, to guarantee commits in face of scope touches, and to ensure waiting for new commits in face of cache lookup 2025-05-15 13:27:11 -07:00
Ryan Fleury e5d6a49055 first pass at call stack cache, need a lot of clean up before this is working... 2025-05-14 21:44:09 -07:00
Ryan Fleury a84739e1c4 set up async cached call stack building 2025-05-14 20:15:10 -07:00
Ryan Fleury 1b26c3f180 entity_ctx * entity_store -> entity_ctx, entity_ctx_rw_store, thread-local entity_ctx_lookup_accel 2025-05-14 19:11:02 -07:00
Ryan Fleury 1e6b3ee2e6 split read-only ctrl entity operations from read-write ctrl entity operations, represent in type system via EntityCtx vs. EntityStore 2025-05-14 18:35:25 -07:00
Ryan Fleury 60e47fb821 unwind cache -> callstack cache 2025-05-14 15:28:57 -07:00
Ryan Fleury 81483f5100 eliminate per-callstack-frame 'parent num' - redundant info 2025-05-14 14:41:13 -07:00
Ryan Fleury 99a8108b2a eliminate now-unnecessary debug info references in call stack data structure 2025-05-14 13:53:24 -07:00
Ryan Fleury b49f4559ce get main unwinding path off of requiring entire ctrl entity store 2025-05-14 13:32:32 -07:00
Ryan Fleury f12b66c1ee sketch out asynchronous unwinding stuff 2025-05-14 13:27:10 -07:00
Ryan Fleury e60e0c8555 sketch out unwind cache 2025-05-14 11:43:54 -07:00
Ryan Fleury a3e471897c scroll-to-bottom-on-change setting for text (inc. output) visualizers 2025-05-09 11:31:54 -07:00
Ryan Fleury 8b7e7471f5 markup: thread id based APIs for names/colors; handle names/colors-before-thread, or id-based application, in ctrl layer 2025-05-03 16:45:45 -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 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 cde079a14d checkpoint in moving to new type-based view rule / synthetic structure hooks 2025-04-10 14:29:57 -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 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 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
Ryan Fleury 81c7c7a7c4 per-target option of automatically debugging subprocesses, or not 2024-11-14 14:18:35 -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 dcec3c07d9 pass over pre-emptive debug info conversion heuristic, to be friendlier to ue-style root project directories, with what feels like 1000s and 1000s of sub-directories with DLLs hidden in various folders 2024-11-13 14:40:08 -08:00
Ryan Fleury 31f25d0fe7 eliminate attempts at clever read-only synchronization in file stream & ctrl layer, just fall back to simple locking mechanism 2024-11-10 11:25:55 -08:00
Ryan Fleury 44b8c9e87c eliminate r/w lock promotion concept 2024-11-04 13:30:10 -08:00
Ryan Fleury a40edbba51 dasm, ctrl memstream, & more moving to async layer, rather than per-layer thread pools 2024-11-03 12:11:24 -08:00
Ryan Fleury 4769d0a8d4 narrow scope of name resolution for debugger collections; default launching to not attach to child processes, set up msgs to parameterize this 2024-10-28 15:37:28 -07:00
Ryan Fleury 62659c5161 introduce dedicated kill-all path; fix exit conditions for single-stepping stuck threads to be robust toward unexpected kills; fix exit conditions for kill-single-process path, to be more robust to halts; correctly report stop cause 2024-10-23 13:19:37 -07:00