Ryan Fleury
|
8a8f1e4fc2
|
work on new hover eval ui, built using the new cfg data structure, immediate-mode view states, etc.; all watch window features -> hover eval
|
2025-02-05 10:34:47 -08:00 |
|
Ryan Fleury
|
50f8732e63
|
fix num/idx/vidx/vnum coordinates to correctly apply to root row in watch windows
|
2025-02-04 19:38:57 -08:00 |
|
Ryan Fleury
|
a003a11425
|
progress on mixing control (command, insertion) rows in cfg-list evaluation, for watch windows; e.g. empty row in watch window, add-new buttons in targets/breakpoints/watchpins/etc.
|
2025-02-04 16:44:04 -08:00 |
|
Ryan Fleury
|
de16c9cdef
|
keep active tab view states hot, even if their ui is not built on any given frame (because they are not selected)
|
2025-02-04 14:13:01 -08:00 |
|
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
|
5bbd9f1c7e
|
eliminate expr resolution hook in eval visualization layer; now succeeded by irgen hook
|
2025-02-02 12:46:59 -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
|
b1829af8c6
|
eliminate old per-frame cfg group cache
|
2025-01-30 16:52:15 -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
|
68966ba55f
|
eval: more progress on 'sets', plug primary watch group into it; rd: more progress on watch ui based on new sets/lookups
|
2025-01-30 15:43:41 -08:00 |
|
Ryan Fleury
|
12784d9ae9
|
partial transition to new flexible watch table structure; more work on 'set' types; checkpoint before replacement of old view-rule-hacks with proper-eval-system support for sets/collections/etc.
|
2025-01-30 14:11:01 -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
|
84d55c8939
|
make some progress on watch window refinement for various row topologies
|
2025-01-28 18:31:34 -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
|
c0f23c3807
|
further tweaks to support meta cfg eval
|
2025-01-27 09:22:34 -08:00 |
|
Ryan Fleury
|
730e8a4720
|
commit cfg changes to eval blob cache immediately
|
2025-01-24 15:55:08 -08:00 |
|
Ryan Fleury
|
aa03955a45
|
first pass at meta-cfg-space writes, for cfg editing
|
2025-01-24 13:22:14 -08:00 |
|
Ryan Fleury
|
04e6eae49d
|
progress on meta-evaluation of cfg trees & plugging into watch/eval system
|
2025-01-24 12:28:52 -08:00 |
|
Ryan Fleury
|
50000c0d6b
|
adjust metagen to support correctly-escaped multiline string generations; sketch out setting schemas; eliminate old settings hack, move to using cfg tree & settings schema
|
2025-01-23 11:39:55 -08:00 |
|
Ryan Fleury
|
45f02b7a41
|
sketch out top-level schema for cfg tree
|
2025-01-22 15:42:21 -08:00 |
|
Ryan Fleury
|
9a54ae50c1
|
old config code elimination
|
2025-01-22 14:23:39 -08:00 |
|
Ryan Fleury
|
443fee10ec
|
more entity code deletion
|
2025-01-22 09:57:40 -08:00 |
|
Ryan Fleury
|
7443f33069
|
sketch out schemas for configuration trees
|
2025-01-22 09:40:57 -08:00 |
|
Ryan Fleury
|
16a717d684
|
further elimination of entity-based code; more simplification/moving to cfg; begin sketching out expanded eval-viz block tree, such that each block can have its own table topology (will be useful to collapse/simplify/expand the capabilities of watch views)
|
2025-01-22 09:22:06 -08:00 |
|
Ryan Fleury
|
84fd1e9d3f
|
big batch of work in moving from entity -> cfg; work on new universal lister system for cfg right-click menus, system processes, file system, autocompletion, procedures, etc.
|
2025-01-21 16:41:59 -08:00 |
|
Ryan Fleury
|
5cbef8f10d
|
more entity -> cfg work
|
2025-01-17 15:16:23 -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
|
069084c108
|
fix view parameter storage hook to not repeatedly duplicate key values
|
2025-01-17 10:35:04 -08:00 |
|
Ryan Fleury
|
e6d0afb026
|
stateful query lister stack & immediate-mode autocompletion lister, via same codepath; begin hooking up views
|
2025-01-17 08:11:01 -08:00 |
|
Ryan Fleury
|
4ae032efff
|
begin sketching out stuff for stateful listers being collapsed with immediate-mode autocomplete lister
|
2025-01-15 17:18:58 -08:00 |
|
Ryan Fleury
|
62894c098a
|
further progress on unified lister interface
|
2025-01-15 15:25:49 -08:00 |
|
Ryan Fleury
|
6fe9a14778
|
eliminate stateful keybindings data structure - move to on-the-fly cfg tree usage
|
2025-01-14 17:30:07 -08:00 |
|
Ryan Fleury
|
b98ebc8da4
|
lister applicability work - applies to commands, icons, descriptions, etc.
|
2025-01-14 15:16:55 -08:00 |
|
Ryan Fleury
|
ace7db492b
|
fix nil-cases of cfg insertion; fix incorrect root setting in cfg deep copy
|
2025-01-14 13:06:26 -08:00 |
|
Ryan Fleury
|
1b52100361
|
part 5: begin shifting autocompletion lister box to being unified lister/ctx-menu replacement
|
2025-01-13 14:18:34 -08:00 |
|
Ryan Fleury
|
e9a10bbbd2
|
part 4: fix panel/tab ui key stability for new cfg-based panels/tabs; eliminate query views & begin pluggin in autocompletion lister to query input
|
2025-01-13 11:12:59 -08:00 |
|
Ryan Fleury
|
6ff2693823
|
part 3: more progress on entity -> cfg frontend pass
|
2025-01-10 15:53:40 -08:00 |
|
Ryan Fleury
|
d9ca51b36f
|
part 2: furthered progress on cfg switch
|
2025-01-10 12:56:53 -08:00 |
|
Ryan Fleury
|
6ce8046029
|
part 1: new cfg data structure & caches to replace rd_entity, rd_window, rd_panel, rd_view, etc.
|
2025-01-09 17:31:02 -08:00 |
|
Ryan Fleury
|
5b7c366234
|
cfg data structure first pass, serialization/deserialization, & building, to prep for all rd_entity code deletion
|
2025-01-08 14:54:11 -08:00 |
|
Ryan Fleury
|
41d4bcfe11
|
notes
|
2025-01-07 16:10:28 -08:00 |
|
Ryan Fleury
|
1bf66afef9
|
more entity code deletion
|
2025-01-07 15:53:22 -08:00 |
|
Ryan Fleury
|
ee181c685b
|
more old entity code deletion
|
2025-01-07 14:05:58 -08:00 |
|
Ryan Fleury
|
7fea55348f
|
fix hack to stop busted animation when minimized - just bounds check the content rectangle
|
2025-01-07 13:30:53 -08:00 |
|
Ryan Fleury
|
6682613a1a
|
entity, d -> rd convergence
|
2025-01-07 13:21:23 -08:00 |
|
Ryan Fleury
|
ee9961cce4
|
rd: eliminate old entity code pertaining to mirroring ctrl entities - we just use ctrl entities directly now, and rd entities are just used for frontend debugger state
|
2025-01-07 11:49:13 -08:00 |
|
Ryan Fleury
|
64aa06895e
|
eliminate code view dependence on txt/hs
|
2025-01-07 11:42:18 -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
|
c1a2023b15
|
move remaining parts of frontend to xxhash, eliminate blake2; sketch out test program for debug string performance testing
|
2025-01-07 10:40:55 -08:00 |
|
Ryan Fleury
|
812cea7e73
|
actually, bad idea - turn that off for now...
|
2025-01-05 22:47:06 -08:00 |
|
Ryan Fleury
|
fb1fb6b014
|
fix incorrect restriction of value committing in watch views; only commit value if initial value of edited text was unchanged
|
2025-01-05 22:46:08 -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
|
d70ce6465a
|
fix incorrect initialization of catchall chunks in name allocator free list
|
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 |
|
Ryan Fleury
|
4cb6e889ef
|
hack to avoid minimization causing bad panel animation state - will investigate this more fully later...
|
2024-12-30 10:09:29 -08:00 |
|
Ryan Fleury
|
94f0ae660f
|
fix bytecode size calculation bug
|
2024-12-29 16:02:54 -08:00 |
|
Ryan Fleury
|
be45100964
|
if regrel32 is marked as being outside the procedure frame, and if it has no type info, it seems that compilers generate that case to encode return variables which exist outside a procedure's frame, in which case we can make up the difference by grabbing the return type from the containing procedure type. this does not break existing valid cases, but may not be the fully correct rule.
|
2024-12-29 13:46:44 -08:00 |
|
Ryan Fleury
|
aa42d12d0f
|
zerofiy range dim, if max > min; fixes incorrect range intersection & read, in eval path
|
2024-12-20 09:00:17 -08:00 |
|
Ryan Fleury
|
49d11ea35b
|
plug min-digits view rule into f32/f64 value string visualization path; also expand default precision of f32/f64 string visualization, but truncate redundant zeroes
|
2024-12-17 16:04:09 -08:00 |
|
Ryan Fleury
|
e9ac6ccf7e
|
remove heuristic of array view rule implicitly disabling string visualization; prefer explicit no_string view rule
|
2024-12-17 09:45:54 -08:00 |
|
Ryan Fleury
|
3023269a9c
|
correctly use array sizes in value string string literal visualization; slices / array lengths now correctly apply to string visualization
|
2024-12-17 09:39:57 -08:00 |
|
Ryan Fleury
|
78309209ae
|
clear completed task log
|
2024-12-16 13:02:37 -08:00 |
|
Ryan Fleury
|
5f1d0b4d1c
|
adjust compact vs. default panel layout pick heuristic
|
2024-12-16 12:52:46 -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
|
8f91ec4f88
|
fix __va_args__ nonsense in rdi_from_dwarf; fix incorrect mask check in linux os_file_open
|
2024-12-16 11:41:23 -08:00 |
|
Ryan Fleury
|
c66d705791
|
toggle-press for theme colors in settings view, not click-to-open
|
2024-12-16 11:33:26 -08:00 |
|
Ryan Fleury
|
97241e73f9
|
more aggressively commit changes to meta-entity edits in watch windows; undo if cancelling
|
2024-12-16 11:26:08 -08:00 |
|
Ryan Fleury
|
ac54281062
|
fix nccalcsize in fullscreen mode
|
2024-12-16 10:59:35 -08:00 |
|
Ryan Fleury
|
274b710329
|
notes
|
2024-12-09 08:35:01 -08:00 |
|
Ryan Fleury
|
edfbcb9c85
|
fix incorrect line textual coordinates when triple-dragging code slices
|
2024-12-06 16:32:43 -08:00 |
|
Ryan Fleury
|
bca1325d9a
|
eliminate machine/file entities in frontend layer
|
2024-12-06 13:53:25 -08:00 |
|
Ryan Fleury
|
87a1dd84ec
|
delete raddbg layer duplicative ctrl entity kinds / related code; we are now fully moved onto the ctrl system for ctrl entities
|
2024-12-06 12:31:37 -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 |
|
Ryan Fleury
|
59e2d7de61
|
eliminate old universal entity ui; eliminate old stop explanation string generation path
|
2024-12-06 12:31:37 -08:00 |
|
Ryan Fleury
|
cd64657746
|
adjust disasm snapping rules, to not open disasm in cases where we can infer user doesn't have/want it open, and also to snap correctly if we can infer that the user is actively viewing/using disasm
|
2024-12-06 10:27:37 -08:00 |
|
Ryan Fleury
|
347ce2281d
|
clear breakpoint hit counts on restart command
|
2024-12-04 13:40:20 -08:00 |
|
Ryan Fleury
|
09cf0fb348
|
introduce manual clearing path in font cache layer; use to prevent permanent accumulation of font glyphs even after font resizes etc.
|
2024-12-04 13:34:00 -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
|
aee2d510d4
|
fix blur
|
2024-12-02 15:19:29 -08:00 |
|
Ryan Fleury
|
74004321aa
|
adjust auto-focus-on-stop rules; only do it given stops caused by threads
|
2024-12-02 10:01:58 -08:00 |
|
Ryan Fleury
|
a827c74501
|
adjust thread-selection-on-stop & thread-snapping rules, to prevent useless disasm snaps & incorrect thread selections in some edge cases
|
2024-12-02 09:44:50 -08:00 |
|
Ryan Fleury
|
d8279c1ff3
|
clean up per-build natvis integration into build.bat
|
2024-11-20 19:41:27 -08:00 |
|
Ryan Fleury
|
f15a4f17d1
|
worker thread parameterization; sketch out wide-conversion scratch program; fix one common crash case in some pdb conversions
|
2024-11-20 15:36:13 -08:00 |
|
Ryan Fleury
|
adbd7fbc97
|
fix is-zoomed behavior in nccalcsize
|
2024-11-20 10:44:54 -08:00 |
|
Ryan Fleury
|
cb4232469e
|
adjust nccalcsize window message; we just need to coax windows into doing the copy in order to avoid resize artifacts. still not perfect, can get into a weird state, and we may need to do more full size calculation in some cases
|
2024-11-19 16:59:20 -08:00 |
|
Ryan Fleury
|
a40c26a0eb
|
fix incorrect singly-linked-list/doubly-linked-list mismatch in dbgi search cache
|
2024-11-19 10:41:22 -08:00 |
|