Commit Graph

159 Commits

Author SHA1 Message Date
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
Ryan Fleury 1ecabff7b6 prefer usage of pdbs in dbgi layer, if rdi path is not baked in, but pdb path *is* - otherwise the dbgi layer can simply choose a stale rdi file with no way to generate a new one. 2024-10-23 11:49:47 -07:00
Nikita Smith c8a5fc4806 Changed debug directory parser to handle multiple entries. Added
parser for RDI debug info entry. Changed debug info lookup order so
debugger tries to load path specified in exe first and if debug info
is missing then debugger will do heuristic searches.
2024-10-17 18:51:35 -07:00
Ryan Fleury b02c67bfa6 close stdout/stderr/stdin handles 2024-10-17 12:20:03 -07:00
Ryan Fleury e376ad8113 stdout/stderr/stdin file path overrides for targets 2024-10-17 11:25:47 -07:00
Ryan Fleury 7724c7f7d3 begin setting up view rules for scheduler tree 2024-10-11 16:01:40 -07:00
Ryan Fleury 193d6726c6 adjust control thread single-step path to be a bit more robust to malformed requests 2024-10-11 15:09:08 -07:00
Ryan Fleury 4091f5e0c0 rich unwind -> callstack, defined by ctrl layer, so we can begin floating meta evaluation cache to ctrl layer 2024-10-11 11:46:25 -07:00
Ryan Fleury 1758292074 pipe breakpoint-condition-touched meta-evaluations to control thread; allow evaluation of meta-evaluations in conditional breakpoints 2024-10-09 15:07:54 -07:00
Ryan Fleury 8e5ebc2d75 memory view fixups for new visualization systems; breakpoint editing work 2024-10-09 13:58:41 -07:00
Ryan Fleury 870df1191b jank reduction & flow fix pass, after all of the last month's changes 2024-10-08 15:32:34 -07:00
Ryan Fleury dae0d602f9 modules view pass 2024-10-01 10:42:31 -07:00
Ryan Fleury fcedcab57c begin work on scheduler view requirements 2024-09-30 15:08:05 -07:00
Ryan Fleury 64e5d60f38 eliminate adjusted frame base check, which was causing incorrect unwinds in some cases 2024-09-27 16:57:23 -07:00
Ryan Fleury fe59fab3da progress on callstack view replacement 2024-09-27 15:48:36 -07:00
Ryan Fleury a1ceb5fa3b on second thought... merging both view rule expansion *header* info generation, and windowed range queries into an expanded block, into the same hook, is really limiting & wrong - so split back to two hooks, one stage is just informing the expansion space, the next provides per-row information within an expanded block with range-based queries 2024-09-25 15:17:39 -07:00
Ryan Fleury 714c736530 eliminate old manual serialization code for meta evals in ctrl msgs 2024-09-18 17:01:59 -07:00
Ryan Fleury 7c41fc11e0 fix up issues with user <-> ctrl thread communication 2024-09-18 16:21:22 -07:00
Ryan Fleury 546e6e695f eliminate ad-hoc meta eval info type tables; switch to base layer meta type info; do first pass of shifting serialization of meta evals to meta type info driven system 2024-09-18 15:57:01 -07:00
Ryan Fleury 9ae3b2eb92 base layer defined type info tables experiment - can ideally be used as a more whole solution for the ctrl meta eval info stuff 2024-09-17 17:52:23 -07:00
Ryan Fleury 85a07be1ac generate meta tables for meta evaluations; use to table-drive ctrl msg serialization, deserialization, meta eval type info generation, and info <-> serialized eval path 2024-09-17 15:43:39 -07:00
Ryan Fleury a7ca8dd0a0 sketch out thread color events & client-driven thread color state, plug thread colors back into ui 2024-09-16 17:37:50 -07:00
Ryan Fleury 9899efe93c merge view rules & view specs entirely; simplify graphical view rules down to single hook 2024-09-16 14:44:28 -07:00
Ryan Fleury c00fede4f1 fill out meta eval info system in frontend; get eval back up and running 2024-09-16 11:51:55 -07:00
Ryan Fleury adc9e0e512 begin sketching out meta eval info, to allow for debugger meta evaluations on both ctrl thread & on ui thread - e.g. breakpoint hit count evaluation in conditional bps 2024-09-16 10:36:22 -07:00
Ryan Fleury 2dfa3dae42 snap-to-thread if none selected in frontend; fix soft halt logic to match old logic; fix ctrl entity store alloc gen on release 2024-09-12 17:10:39 -07:00
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