Commit Graph

2106 Commits

Author SHA1 Message Date
Ryan Fleury c331133388 adjust hash store - first, don't keep strong refcounts for key history past the 2nd hash - this is prohibitively expensive. but, keep 'downstream' refcounts - this is a mechanism which downstream caches (e.g. text visualization info parsing etc.) can use to ensure a hash stays held in the hash store, given some other data's dependence on it - this stops the storing of unnecessary OutputDebugString log copies 2025-03-13 14:02:06 -07:00
Ryan Fleury d10547d2c0 don't assume offset evaluation mode in array dereferences; could apply to type info too, thus null mode; fix visualizer drag/drop causing close of hover eval, invalidating the dragged view too early; fix close-window not exiting if last window 2025-03-13 08:30:16 -07:00
Nikita Smith 631106b0a8 natvis for RDI Make types 2025-03-12 14:52:09 -07:00
Nikita Smith 3eedcb1912 initialize frame base in interp context 2025-03-12 14:49:14 -07:00
Nikita Smith 44249f35fc pass over the make RDI library
- Handle type layout in the library so converts simply
  define type graph and let the library handle DAG layout.
- Changed location baking. For now the library waits for scope, procs,
  global vars, and thread vars steps to serially finish because
  of common dependency on location sections, we need to parallel for each step.
- Changed encoded offset size for RDI_EvalOp_FrameOff to 8 bytes
  (1 byte is not enough to cover all cases)
- Added frame base location to RDI_Procedure (WASM encodes frame base
  as an index into a global array and so we have to resolve the base
  at runtime).
2025-03-10 16:49:54 -07:00
Nikita Smith 5717d6c54c export restrict modifier 2025-03-04 13:26:24 -08:00
Nikita Smith 4e775d5b6c hash table helper 2025-03-04 11:39:26 -08:00
Nikita Smith dfd6950ff3 deleted obsolete DWARF parser files 2025-03-03 17:20:22 -08:00
Nikita Smith 2ba1a0d502 pass over DWARF header
- added new types
- renamed mode -> format
- fixed section naming
- added helper for picking array lower bound
2025-03-03 17:14:22 -08:00
Nikita Smith ed897979ca added fields for user defined ELF types 2025-03-03 17:11:52 -08:00
Nikita Smith 6c425aa9dc misc NATVIS types 2025-03-03 17:10:44 -08:00
Nikita Smith 35ed8d6a1e bugfixed zero-length block decomp and fixed 64-bit casts 2025-03-03 17:10:06 -08:00
Nikita Smith 8b4f97223e moved async bakers from PDB converter to a stand-alone file to reuse
them in DWARF converter
2025-03-03 17:09:01 -08:00
Nikita Smith 53bff614e6 moved LEB helpers to DWARF layer 2025-03-03 17:06:58 -08:00
Nikita Smith d5811b7748 binary search for U64 and Rng1U64 arrays 2025-03-03 17:04:07 -08:00
Nikita Smith a06f576161 detect and error out on PDB linked with /DEBUG:FASTLINK 2025-02-25 14:42:10 -08:00
Nikita Smith 6c5d2a05cb moved platform depended code from OS layer to linkers IO 2025-02-25 14:41:34 -08:00
Nikita Smith d5ab121183 pre-allocate file size before write 2025-02-25 14:41:34 -08:00
Nikita Smith bbce89eada added /RAD_WRITE_TEMP_FILES
When enabled linker writes image and debug info to temporary files
and renames them after all writes are done.
2025-02-25 14:41:34 -08:00
Nikita Smith 8a8a8bcc8d resource id compar typo 2025-02-25 14:41:34 -08:00
Nikita Smith 1d441bac30 minor fixes and renames in DWARF enums 2025-02-25 14:41:16 -08:00
Nikita Smith 90c05d56b5 added zlib decompressor for DWARF extraction 2025-02-25 14:41:16 -08:00
Nikita Smith b74c304f39 added ELF header and parser 2025-02-25 14:41:15 -08:00
Nikita Smith 87ae363292 print file path in DW_Attrib_DeclFile 2025-02-25 14:41:15 -08:00
Nikita Smith ea6a84ca57 helper for extracting DWARF sections in COFF files 2025-02-25 14:41:15 -08:00
Nikita Smith 8d9f85bfcc move magic check to PE layer 2025-02-25 14:41:15 -08:00
Ryan Fleury 33326a8fa6 fix breakpad converter build 2025-02-23 14:18:12 -08:00
Ryan Fleury 9e6e65d3c6 eliminate cfg testing from this build; fix bad recursion artifacts, causing bad state when types tab visible; put in temporary fix for memory view truncation 2025-02-23 14:06:11 -08:00
Ryan Fleury 225445a204 bump version 2025-02-23 13:21:06 -08:00
Ryan Fleury 74ce085adc start on new 'pull/pop out' button for visualizers 2025-02-21 19:59:26 -08:00
Ryan Fleury f753e9bd18 small fix 2025-02-21 19:20:09 -08:00
Ryan Fleury a3062dfeb1 watch-window-defined/driven query lister completion 2025-02-21 19:15:26 -08:00
Ryan Fleury 8bca57ef7f improved stability w.r.t. cfgs and ctrl entities expansion across changes 2025-02-21 18:14:02 -08:00
Ryan Fleury 1b4a5e529f more convergence / fixes relating to searching/queries/filters 2025-02-21 16:33:57 -08:00
Ryan Fleury 9b636568fd more convergence 2025-02-21 15:29:54 -08:00
Ryan Fleury e76da7892a fix bad debug info scope search usage 2025-02-21 13:57:54 -08:00
Ryan Fleury 3c8f58cb38 add tracking to dbgi scopes 2025-02-21 13:23:12 -08:00
Ryan Fleury 03337a7280 more convergence on lister/queries 2025-02-21 13:01:28 -08:00
Ryan Fleury b0486d942e correctly pipe through exception info, visualize exceptions better 2025-02-21 11:46:28 -08:00
Ryan Fleury 96fbcc848e double clicking cfgs with location info -> snap 2025-02-21 11:30:45 -08:00
Ryan Fleury 4f99a76ace commit window placement/etc. to cfg tree, pass through all monitor/pos/size/fullscreen/maximize info to initialization 2025-02-21 10:57:32 -08:00
Ryan Fleury 9e0fe942e6 allow base/opl style slices in slice view rule 2025-02-21 10:20:11 -08:00
Ryan Fleury 4f1e0dedb2 start plugging tab-opening back in 2025-02-21 09:52:50 -08:00
Ryan Fleury 2f2bb0d797 plug rebindings back in 2025-02-21 09:25:26 -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 f3c6ee6f1f fix statically-disqualifiable breakpoint evaluations from being sent to the control thread as actual control thread conditions 2025-02-20 19:52:17 -08:00
Ryan Fleury 0a588d4058 fix keyboard input delegation between meta-interfaces (query lister line edit) and watch window controls; always accept single-visible-button presses, if multiline logic does not consume an event 2025-02-20 19:46:41 -08:00
Ryan Fleury 04c40e8359 expand eval to collecting irtree/type/lookup-rule, base all value string generation on entire root_eval rather than just root_expr; fixes wrong inheritance of tags in single-line visualization 2025-02-20 19:16:27 -08:00
Ryan Fleury 92df402ad1 member filtering 2025-02-20 18:46:22 -08:00
Ryan Fleury 2373af25ce watch expr drag/drop -> watch pin creation 2025-02-20 18:11:25 -08:00