Commit Graph
100 Commits
Author SHA1 Message Date
Ryan Fleury 4aeadc12b7 adjust memory reading fail conditions in trap net generation; fix early-aborting of retry loop in process memory cache lookup 2025-05-22 12:15:31 -07:00
Ryan Fleury 02611de6af broadcast wakeup event on ctrl cache commits 2025-05-22 11:39:08 -07:00
Ryan Fleury c41d67120f fix incorrect bounds check in new per-line fstrs building path 2025-05-22 11:13:18 -07:00
Ryan Fleury 25813e62ea adjust spall usage code - still not generating multi-thread events correctly... 2025-05-22 09:58:09 -07:00
Ryan Fleury 3fcdb85ebf use tid/pid-specifying spall functions 2025-05-22 09:34:47 -07:00
Ryan Fleury d254d8edb4 switch singular frame scopes to stack of frame scopes; always ensure scopes are closed before breaks in frames. 2025-05-22 09:28:13 -07:00
Ryan Fleury 895a965f70 defer call stack scope touches until retry loop exit 2025-05-21 17:33:30 -07:00
Ryan Fleury b0fb102813 sketch out spall integration 2025-05-21 12:01:43 -07:00
Ryan Fleury 8bed56adde step-into-line trap nets: omit stopping at non-final call destinations with no line info 2025-05-20 16:15:03 -07:00
Ryan Fleury 25dda717ad setting to prefer os native file dialog uis (off by default because they are slow and bad) 2025-05-20 15:59:49 -07:00
Ryan Fleury 2d5bf9efc2 last-hit-breakpoint visualization 2025-05-20 15:41:16 -07:00
Ryan Fleury 16fd72ef4f more granular watch window fresh/bad visualization, since each cell can be an arbitrary evaluation now; also reintroduce failed-memory-read visualization 2025-05-20 15:31:37 -07:00
Ryan Fleury e6f53a39bb old windows dpi awareness paths 2025-05-20 15:13:23 -07:00
Ryan Fleury 0eb37c527c fix incorrect abort-on-0-rip condition in unwinder path; we can still have nonzero rsps and find valid frames. 2025-05-20 15:09:35 -07:00
Ryan Fleury f7df65678f fix incorrect bounds check in regrel32 frameproc grab 2025-05-20 15:05:05 -07:00
Ryan Fleury 206ec346cf fix 2-byte utf decoding issues, fix utf8 lexing issues 2025-05-20 14:46:46 -07:00
Ryan Fleury 2f5082fb61 fix treatment of octal strings in try_u64/s64_from_str8_c_rules 2025-05-20 14:10:34 -07:00
Ryan Fleury 95dbba1144 debugging notes of programmatic data breakpoints 2025-05-20 13:18:15 -07:00
Ryan Fleury a55c5b49aa similarly adjust call stack cache timeout periods 2025-05-20 13:06:16 -07:00
Ryan Fleury 15459edc75 adjust wait timeout properties of ctrl process memory cache grab; don't wait forever to submit, don't wait if work was completed even if results bad, etc. 2025-05-20 13:03:58 -07:00
Ryan Fleury d709724128 fix ctrl scope mal-usage 2025-05-20 11:15:55 -07:00
Ryan Fleury 7fc39a3d97 eliminate old debug engine unwind cache 2025-05-20 11:13:04 -07:00
Ryan Fleury 41ee0c83d4 notes; skip relativization path for stdout/stderr/stdin paths 2025-05-20 11:00:18 -07:00
Ryan Fleury 34df269c58 eliminate extra root id list placement in key nodes 2025-05-20 10:53:02 -07:00
Ryan Fleury 56b975a6b1 adjust async call stack querying API to guard against waiting in clearly-invalid cases (trying to wait for call stacks when running, for example); also eliminate logs 2025-05-20 10:36:44 -07:00
Ryan Fleury b94535b20b fix array-indexing in type evaluation mode 2025-05-19 22:22:47 -07:00
Ryan Fleury 7d274dd2f6 fix incorrect lens application condition in eval viz string iter 2025-05-19 22:09:52 -07:00
Ryan Fleury 7dc4399300 dead ctrl process memory cache elimination 2025-05-19 19:38:27 -07:00
Ryan Fleury 9ae0ee9a46 correctly use tab width px in new code slice fstrs measuring path 2025-05-19 19:21:06 -07:00
Ryan Fleury 54325828b2 absolutify target stdout/stderr/stdin paths based on working directory 2025-05-19 18:56:13 -07:00
Ryan Fleury 862e0ef882 fix lens expansions being treated like set expansions in eval viz string iter 2025-05-19 18:47:52 -07:00
Ryan Fleury 47d658daed ensure rd frame depth is always computed correctly; eliminate incorrect frame scope (ctrl/di) usage - fix weird deadlocks! 2025-05-19 16:21:38 -07:00
Ryan Fleury b9e3df4cae pass over hash store layer / all users, to switch to explicit 64-bit root alloc/dealloc, and 128-bit ids, for a full 192-bit hs key 2025-05-19 14:52:28 -07:00
Ryan Fleury 8b4e2a099f hash store root allocation/deallocation 2025-05-18 16:00:18 -07:00
Ryan Fleury cb2f8aa766 sketch out 'root cache' in hash store 2025-05-18 15:46:50 -07:00
Ryan Fleury 90955ac2a8 fix incorrect lock type in hs key closing path 2025-05-18 15:24:56 -07:00
Ryan Fleury 342627ae3b dead code deletion 2025-05-18 13:16:51 -07:00
Ryan Fleury 0a51de094d switch to stripe-cv-based waiting mechanism on nonzero scope touches 2025-05-18 12:58:44 -07:00
Ryan Fleury f99dd2a477 clean up search data commit on scope-hold mechanism 2025-05-17 13:33:43 -07:00
Ryan Fleury 5cb2a7bbde fix usage of [] operator on pointer values; fix incorrect interpretation of []s as assembly style derefs in chained cases 2025-05-17 13:05:07 -07:00
Ryan Fleury 5712c2ac07 fix ternary expr tree stringification 2025-05-17 12:56:49 -07:00
Ryan Fleury ea5dcafd1e hash store key closing path 2025-05-17 12:41:47 -07:00
Ryan Fleury 66fdfc84fc further pass over call stack cache lookup path 2025-05-17 10:16:49 -07:00
Ryan Fleury 7a44cbbd0d adjust high priority call stack timeout threshold 2025-05-17 08:41:51 -07:00
Ryan Fleury a379134ed8 demon tweaks / debugging; adjust call stack cache reading API to account for high-priority path, where we want to try computing the thread's call stack immediately 2025-05-16 21:12:58 -07:00
Ryan Fleury 86eabe0d6d offer priority selection in call stack retrieval; prioritize selected thread & operations which require a result; adjust call stack builder path to be a bit more generous while waiting for memory reads 2025-05-15 21:57:50 -07:00
Ryan Fleury 965f5f4896 0.9.18 notes 2025-05-15 14:37:37 -07:00
Ryan Fleury ed9866e9e2 retry call stack commits a bit more aggressively 2025-05-15 14:17:17 -07:00
Ryan Fleury 6ff66b0fef adjust static breakpoint disqualification to not assume invalid eval -> statically disqualfiied 2025-05-15 14:05:14 -07:00
Ryan Fleury 95032147e8 lock ctrl thread entity ctx for much less long when doing unwinds; only copy the minimal entity tree needed into a mini entity ctx, then use that to do the unwind 2025-05-15 13:47:55 -07:00
Ryan Fleury 9a805b8bb5 adjust call stack cachc committing mechanism, to guarantee commits in face of scope touches, and to ensure waiting for new commits in face of cache lookup 2025-05-15 13:27:11 -07:00
Ryan Fleury e5d6a49055 first pass at call stack cache, need a lot of clean up before this is working... 2025-05-14 21:44:09 -07:00
Ryan Fleury a84739e1c4 set up async cached call stack building 2025-05-14 20:15:10 -07:00
Ryan Fleury 981dd2e02c tighten up usage of ctrl entity ctx vs. r/w ctx store vs. accel 2025-05-14 19:16:06 -07:00
Ryan Fleury 1b26c3f180 entity_ctx * entity_store -> entity_ctx, entity_ctx_rw_store, thread-local entity_ctx_lookup_accel 2025-05-14 19:11:02 -07:00
Ryan Fleury 1e6b3ee2e6 split read-only ctrl entity operations from read-write ctrl entity operations, represent in type system via EntityCtx vs. EntityStore 2025-05-14 18:35:25 -07:00
Ryan Fleury e513af5361 ditto 2025-05-14 15:30:49 -07:00
Ryan Fleury 60e47fb821 unwind cache -> callstack cache 2025-05-14 15:28:57 -07:00
Ryan Fleury 81483f5100 eliminate per-callstack-frame 'parent num' - redundant info 2025-05-14 14:41:13 -07:00
Ryan Fleury 1e53ac29ef still protect against infinite unwinds, but require that both rsp/rip remain unchanged, rather than just rip 2025-05-14 13:55:16 -07:00
Ryan Fleury 99a8108b2a eliminate now-unnecessary debug info references in call stack data structure 2025-05-14 13:53:24 -07:00
Ryan Fleury a7b6e6f02a eliminate usage of old overcomplicated call stack data structure, which required actively holding debug info references... we want to eliminate this so that we can trivially cache call stacks / unwinds 2025-05-14 13:51:59 -07:00
Ryan Fleury b49f4559ce get main unwinding path off of requiring entire ctrl entity store 2025-05-14 13:32:32 -07:00
Ryan Fleury f12b66c1ee sketch out asynchronous unwinding stuff 2025-05-14 13:27:10 -07:00
Ryan Fleury e60e0c8555 sketch out unwind cache 2025-05-14 11:43:54 -07:00
Ryan Fleury a67f326f78 eliminate redundant recomputation of ir extensions 2025-05-14 10:27:01 -07:00
Ryan Fleury 10c4dcecd1 do not prohibit same-rips from stopping unwinds 2025-05-14 10:15:42 -07:00
Ryan Fleury 2e2eb4a6f2 bump to 18 2025-05-14 09:53:50 -07:00
Ryan Fleury 70ae35cbd7 do not use worker thread arenas from main thread in rdi baker... 2025-05-14 09:51:46 -07:00
Ryan Fleury 141b96c17e do not skip 0 with texture formats 2025-05-14 08:21:54 -07:00
Ryan Fleury a371374d6c require file existence before calling into dwrite 2025-05-14 08:19:30 -07:00
Ryan Fleury ad714e9baa dwrite: do not try to create font face if font file creation fails 2025-05-14 08:11:13 -07:00
Ryan Fleury 271e8e4523 deduplicate new file path maps on-add 2025-05-13 16:29:23 -07:00
Ryan Fleury 5532aa6903 rdi_from_pdb: when relative paths are supplied by line info, build them as being relative to OBJ; this is not necessarily correct but it is the best thing we can do given the available information. the user needs to remap this once in the debugger, but then it will work. 2025-05-13 16:23:31 -07:00
Ryan Fleury 258b45a837 eliminate a bit of duplicate font cache lookups in code view build, + eliminate unnecessary per-box color lookups 2025-05-13 15:11:41 -07:00
Ryan Fleury e10f0489da record which irtree-and-type generations were produced via auto-hooks; skip those when doing typeofs 2025-05-13 14:19:30 -07:00
Ryan Fleury 89e93459d7 fix ufcs-style 'raw' lens application 2025-05-13 13:51:56 -07:00
Ryan Fleury 8b8c88f310 preserve whole chain of parent irtrees, do not simply apply only to autohook overrides; straighten out some event consumption weirdness in interaction between autocompletion floating view & query floating view; ensure we mark the cfg space as dirty when modifying strings 2025-05-13 13:44:14 -07:00
Ryan Fleury 97c58e3747 start sketching out pieces for flattened expansions in rows(...) 2025-05-13 11:55:06 -07:00
Ryan Fleury 34304280c9 fix old usage of table in mule_main; resolve to value in (sequence) 2025-05-13 10:55:39 -07:00
Ryan Fleury 11c1b5277e only -> rows; table -> columns 2025-05-13 10:44:06 -07:00
Ryan Fleury 73c91ae2bc eval: adjust array expansion, use parent key of pointer argument, rather than key of pointer argument, to scope count expression evaluation; fix up a few edge cases with $. and implicit $ member accesses; make omit much more powerful, by allowing list of arguments to control all expansion expressions, rather than assuming only member names 2025-05-13 10:19:47 -07:00
Ryan Fleury 86dcec4334 Merge branch 'dev' of https://github.com/EpicGames/raddebugger 2025-05-12 21:39:46 -07:00
Ryan Fleury bc75635a65 os/gfx/linux: window focus querying 2025-05-12 21:22:03 -07:00
Ryan Fleury 4c1585444c be less ambitious about occupying basic type names in debugger; can conflict with common purposes in codebases, and really we should defer to debug info when possible 2025-05-12 17:33:57 -07:00
Ryan Fleury 533136875e eliminate dummy window egl setup 2025-05-12 17:20:46 -07:00
Ryan Fleury d564184d31 chip away more unneeded path processing, impeding proper support for relative paths; we want to mostly preserve paths as we see them, and then we should find a different story for mapping the paths in very few places 2025-05-12 17:09:13 -07:00
Ryan Fleury a5b227a1c6 egl/glx work; eliminate unneeded path normalization paths; do not assume os current path when normalizing paths; gl synchronous debug strings 2025-05-12 16:03:36 -07:00
Ryan Fleury fe3cac7ac3 parameterize irtree generation path with identifier resolution rules; in most cases, we want the usual order: implicit accesses -> locals -> registers -> globals/tlocals/types/procedures -> macros; but if we are specifically evaluating a call expression tree, we want to prefer callables - in this case, macros should be prioritized. 2025-05-12 11:56:57 -07:00
Ryan Fleury 8688322a43 more of the same 2025-05-11 21:47:24 -07:00
Ryan Fleury 2307d44506 forward declare XLookupString ourselves, since it is apparently missing in libx11-dev 2025-05-11 21:26:39 -07:00
Ryan Fleury cc319190c6 render/opengl: flushed instance buffers 2025-05-11 15:26:05 -07:00
Ryan Fleury 1896ec2a85 more os/gfx linux coverage 2025-05-11 15:19:40 -07:00
Ryan Fleury 684402efac x11 event coverage 2025-05-11 14:14:12 -07:00
Ryan Fleury 9de203e2cd adjust smooth-unhinted dwrite raster params 2025-05-11 13:48:05 -07:00
Ryan Fleury 8b3f07c7b5 eliminate font fudge factors; fix size units in freetype backend; fix directory iteration lack-of-robustness-to-failed-dir-open 2025-05-11 13:27:59 -07:00
Ryan Fleury 6df96b7eef preserve mouse coordinates from xlib button events 2025-05-10 17:08:40 -07:00
Ryan Fleury 0a3869981f correctly calculate shortened hash w/ dirty marker in build.sh 2025-05-10 16:01:56 -07:00
Ryan Fleury 219e5bd211 first pass at standing up freetype font provider backend 2025-05-10 15:59:44 -07:00
Ryan Fleury 868f2d0660 be a bit more robust to failures in window creation, IPC thread launching, & semaphore non-implemented parts 2025-05-10 14:39:32 -07:00