Ryan Fleury
|
90c86dc812
|
eval/eval-viz: pull out rules for mapping exprs/irtrees -> lookup/expansion rules; use this path in the single-line value string generator; eliminate old non-view-rulified string generation paths
|
2025-02-04 13:20:25 -08:00 |
|
Ryan Fleury
|
afd113adcc
|
rd: derive schema tree parse on startup rather than recomputing every time
|
2025-02-04 12:16:28 -08:00 |
|
Ryan Fleury
|
b9756d222a
|
eval: sketch out parse/ir cache
|
2025-02-04 10:29:52 -08:00 |
|
Ryan Fleury
|
657b78c4ef
|
eval: separate ir_ctx -> ir_state & ir_ctx; ir_state for implicit thread-local caching mechanisms for eval, ir_ctx for explicitly supplied user info
|
2025-02-04 09:57:13 -08:00 |
|
Ryan Fleury
|
9a405bee20
|
eval: lookup info hook -> just pass irtree, do not recompute; cache for type-key -> auto hook tag exprs; use tags/auto-tags in lookup rule for . operator; fix tag poisoning in ir generation pass; cache for type-key -> unpacked type info; replace all unpacked type info paths with cache usage
|
2025-02-03 13:21:08 -08:00 |
|
Ryan Fleury
|
59fe6c79cb
|
distinguish root block from non-root blocks; in root case, we do not want to do a lookup-range to generate the block's expression (but in all other cases we do)
|
2025-02-03 10:07:20 -08:00 |
|
Ryan Fleury
|
6f4533d8f5
|
rd: new ctrl entity meta evaluation path; ctrl entity meta evaluation cache; eval: auto-view-rules (via 'auto hook map'), + support for 'type patterns', e.g. for templates; ir generation / typechecking hook application + source-tag coloring (to avoid infinite recursion of repeatedly-applied auto view rules
|
2025-02-02 17:08:14 -08:00 |
|
Ryan Fleury
|
eab5c7c971
|
eval_visualization: eliminate expansion-range hook; move expansions & block tree building completely to new eval hooks for lookups
|
2025-02-02 14:39:43 -08:00 |
|
Ryan Fleury
|
07c9268941
|
eval: specify formal way in which tags (view rules) can fit into expression language, both in parsing & in structure; introduce ir-generation hook step in eval pipeline, transfer most of the default non-vbisualization view rule features to that layer
|
2025-02-01 20:50:31 -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
|
5b82fc2339
|
eliminate member-filtering hack for cfg views; eliminate deref-space-ptr hack
|
2025-01-30 15:52:26 -08:00 |
|
Ryan Fleury
|
92e68701d0
|
eval: lookup rule map building; eval: use general 'set' type-kind to specify custom lookup rule; watch: new table <-> stable-point mappings
|
2025-01-30 10:57:29 -08:00 |
|
Ryan Fleury
|
394d35287a
|
fix default lookup rule
|
2025-01-29 17:00:50 -08:00 |
|
Ryan Fleury
|
baa19f3de4
|
begin introducing 'lookup' hook path in eval ir-tree generation, to collapse/universalize all 'access' operations, such that ., ->, and [] operations can be overridden via view rules, for cfg evaluations, and so on
|
2025-01-29 16:41:14 -08:00 |
|
Ryan Fleury
|
136a6a6d80
|
eval visualization: vidx <-> num mappings; helpers to move from logical nums -> rows, feed through windowed row production path
|
2025-01-29 10:38:04 -08:00 |
|
Ryan Fleury
|
2a1ab9b3be
|
fix incorrect bytecode writing for deref-space-ptr
|
2025-01-28 10:42:41 -08:00 |
|
Ryan Fleury
|
4cc5f636fe
|
cfg tree collection evaluation
|
2025-01-27 15:33:35 -08:00 |
|
Ryan Fleury
|
b085acbc32
|
strip out collection type - instead we will implement collections via arrays of exprs which map to meta evals
|
2025-01-27 11:02:49 -08:00 |
|
Ryan Fleury
|
4371d727fb
|
line expressions in eval lang; begin getting off of entities for breakpoints/watch-pins/etc., move -> cfg
|
2025-01-17 13:34:18 -08:00 |
|
Ryan Fleury
|
d9ca51b36f
|
part 2: furthered progress on cfg switch
|
2025-01-10 12:56:53 -08:00 |
|
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 |
|