Commit Graph

133 Commits

Author SHA1 Message Date
Ryan Fleury 94f0ae660f fix bytecode size calculation bug 2024-12-29 16:02:54 -08:00
Ryan Fleury 090c555d68 fix default space assumption in full eval path, if not inferred from the expression itself 2024-12-16 12:09:50 -08:00
Ryan Fleury c42e7837ac fix 64-bit bitfield type value evaluation mask/shift 2024-11-15 11:44:51 -08:00
Ryan Fleury 5232ba298d cache cons type byte size, and more generally, do not require full type calculation in order to calculate byte sizes 2024-11-08 15:02:52 -08:00
Ryan Fleury 6d55d21643 fix clang builds 2024-11-01 15:22:26 -07: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 d0915ec9a7 eval expressions: unary +, correctly lex exponentiated numerics 2024-10-21 09:23:31 -07:00
Ryan Fleury 1865c33704 specify collection qualifier for collection tabs; do not resolve to anything else 2024-10-18 13:32:29 -07:00
Ryan Fleury 23ad094a68 allow escaped-identifier lookup for type names 2024-10-17 10:46:14 -07:00
Ryan Fleury 94fb5056c2 resolve ptr-addition integer to value 2024-10-15 10:07:10 -07:00
Ryan Fleury d87704c91f decay arrays to pointers when doing pointer-array comparisons; begin gathering recent file history into project state; prefer larger src/disasm panels when finding a new location; do not over-ambitiously hold top-level frame scopes for dbgi/fzy - stop before per-frame sleep 2024-10-14 10:20:27 -07:00
Ryan Fleury ba0e4ea0c5 fix cross-module global evaluation with new multi-module-capable eval system 2024-10-13 19:25:42 -07:00
Ryan Fleury 5933708bdb fix cacheline boundary visualization & other various fixes in eval / eval viz 2024-10-10 08:13:58 -07:00
Ryan Fleury 9c5d9caa32 pass over help menu; typeof in eval 2024-10-10 07:44:26 -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 32ce2e110b auto-resolution of derived class ptrs 2024-10-07 17:06:40 -07:00
Ryan Fleury 58114b72f4 move member lookup paths to using eval type member cache 2024-10-07 16:26:43 -07:00
Ryan Fleury 3f19c45dd3 fix enums not working for simple integer operations in eval 2024-10-07 16:04:03 -07:00
Ryan Fleury 23ed5c8f5f allow 'only' view rule to determine sort-order of members in constructed type info 2024-10-07 14:50:41 -07:00
Ryan Fleury 911f9ef97b make meta & eval type system a bit richer to express plain text vs. code text vs. path text 2024-10-01 12:04:40 -07:00
Ryan Fleury 685cb4a3b8 further work on expanding main watch path to support various string styling/visualizing mechanisms, used ad-hoc before; more work on scheduler 2024-10-01 11:43:57 -07:00
Ryan Fleury 57d01355a1 create pre-filtered types for meta evals; all of the same underlying data transforms are on a single meta-eval data bundle, but now each type of meta eval entity is exposed via a tighter type to the ui & eval system 2024-09-30 16:03:55 -07:00
Ryan Fleury 2e13b221ac do not attempt to form implicit member lookup expressions if initial map failed 2024-09-27 17:03:18 -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 9c3d2cd5ab eval visualization: first pass of new tree-ified block building, which preserves the hierarchy of the eval visualization path, as well as relies on only a single view rule hook; first pass of windowed row list production, given that block tree build; also still just uses the single hook 2024-09-25 12:23:50 -07:00
Ryan Fleury c976154284 eval: add cache for type data member gathering & member lookup; eval_visualization: sketch out new hook organization which has single hook for both view rule expansion info, + expansion expr production, in a single combined path (the two often require the same information so it is maybe a good idea to combine them - if not, it will be easy to separate into two stages (expand + expr-child production), but basically just trying to get view rules out of 'block production', and more into just providing the information that actually varies per view rule 2024-09-25 09:34:23 -07:00
Ryan Fleury fbfaf1c747 strip out root buttons idea; fix up pretty member names 2024-09-24 11:06:31 -07:00
Ryan Fleury 5690a9e19b further enriching of codebase type info & eval type info to encode code-contents of pointers, pretty names for members; further progress on improving watch views to support all needed features for replacing all table uis 2024-09-23 16:45:18 -07:00
Ryan Fleury f728614e0b eliminate watch view fill kind; extend rtti & eval type system with 'external' pointers, for e.g. meta-space vaddr u64s pointing into an address space; begin sketching out paths for mutational rows in watch collections, use to add 'add target' fastpath in targets collection evaluations 2024-09-23 10:57:43 -07:00
Ryan Fleury 066f5f6cf2 add correct inheritance rules for oct, hex, dec, bin, only, omit view rules 2024-09-20 16:24:09 -07:00
Ryan Fleury c98db01b63 replace watch view fill kind with top-level expression & view rule; collection macro for watches; reintroduce only/omit, with new expr-macro-based eval visualization system; remove root-expression-generation from expansion block generation, since it makes things a bit more complicated 2024-09-20 16:15:29 -07:00
Ryan Fleury a1debd9219 targets, breakpoints, watch pins, etc. collections; fix . access on enum types; add more information to meta evaluations 2024-09-20 13:49:27 -07:00
Ryan Fleury 432e70caf6 begin sketching out 'collections', which are the formal mechanism in the eval/eval-viz systems for visualizing synthetic structures/arrays/trees produced by the debugger, rather than ad-hocing / hardwiring the correct ev-block production for each kind of view - the views can still stay, but this is an important feature for other cases 2024-09-20 12:04:13 -07:00
Ryan Fleury bbd86449d8 fix ghost auto-view-rule text visualization to calculate auto view rule from raw type expression rather than post-view-rule-applied one 2024-09-19 16:07:14 -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 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 84f685803d fix set-space ir extension instruction; expand ctrlbits to u16, so that it can encode modern register sized decodes 2024-09-16 11:59:06 -07:00
Ryan Fleury 7cd1d175de deduplicate string escaping paths in eval/cfg/etc 2024-09-13 12:08:22 -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 30766f93ae Revert "checkpoint"
This reverts commit 3631de648b.
2024-09-07 14:48:21 -07:00
Ryan Fleury 3631de648b checkpoint 2024-09-07 13:37:35 -07:00
Ryan Fleury 9932a30ef9 entity parameter tree equipment; architecture -> arch 2024-08-29 13:16:50 -07:00
Ryan Fleury 0c2502c89f partway through fixing regressions of color view rule 2024-08-27 16:35:15 -07:00
Ryan Fleury 90273e7a2e bswap view rule 2024-08-27 11:37:27 -07:00
Ryan Fleury cf7b664ab2 bswap expression & ir 2024-08-27 11:35:45 -07:00
Ryan Fleury 5b29f0db47 new expr resolution eval visualization stage; use to implement array & slice view rules 2024-08-27 11:04:22 -07:00
Ryan Fleury 567aea2b15 new view serialized/deserialized params storage 2024-08-26 15:55:12 -07:00
Ryan Fleury 14f617db85 begin eliminating separate hook system for view rule uis; shift over to regular views, so there is just one codepath for all visualizers; move ui to event pump system, with permissions stack, so that callers of sub-ui-codepaths can mask off event consumption as needed 2024-08-26 09:56:47 -07:00
Ryan Fleury 729a4aa1f9 first step to collapsing separate view parameterization path, and just having views be parameterized by evaluation strings 2024-08-23 16:17:19 -07:00