Commit Graph
100 Commits
Author SHA1 Message Date
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
Ryan Fleury 3fd1f9d255 stub out demon/fontprovider so we can build debugger 2025-05-10 14:28:14 -07:00
Ryan Fleury b52e3be5ae fill out more linux os layer coverage 2025-05-10 11:38:43 -07:00
Ryan Fleury b9350c867c egl backend for linux backend of opengl backend of render 2025-05-10 11:04:59 -07:00
Ryan Fleury ab5c47a0fd fix opengl win32 build 2025-05-10 08:36:13 -07:00
Ryan Fleury a1318e6117 sketch out first bit of linux-backend of opengl-backend 2025-05-09 21:51:48 -07:00
Ryan Fleury 5939c3f010 switch 4coder back to defaultly building with d3d11 backend 2025-05-09 19:51:24 -07:00
Ryan Fleury 48b8c41713 opengl render backend 2025-05-09 19:48:41 -07:00
Ryan Fleury 1b7a57914e get linux building again 2025-05-09 13:44:17 -07:00
Ryan Fleury f38da420e9 force hover eval in window on X axis only; store expr strings rather than expr trees in auto hook map 2025-05-09 12:51:02 -07:00
Ryan Fleury 345d5579d2 do not show switch in IPC docs 2025-05-09 12:27:35 -07:00
Ryan Fleury 2c58b81dde parameterize find-code-location by forcing-focus to destination panel; use that in 'switch' command 2025-05-09 12:22:27 -07:00
Ryan Fleury 719e8ce179 crash dump generation from crash dialog, or via --gen_crash_dump for CLI 2025-05-09 12:08:08 -07:00
Ryan Fleury a3e471897c scroll-to-bottom-on-change setting for text (inc. output) visualizers 2025-05-09 11:31:54 -07:00
Ryan Fleury f2bf8ccb2e layer color coverage / usage in thread colors 2025-05-09 11:15:00 -07:00
Ryan Fleury 1c4ad499dc prohibit DefWindowProc from running on syschars, for everything except alt+space 2025-05-09 10:51:03 -07:00
Ryan Fleury 5fce46baaf adjust toggle-switch-dragging path so that keyboard presses still register 2025-05-09 10:43:17 -07:00
Ryan Fleury 3b0064d8cd multi-toggle-switch-toggle-in-single-press 2025-05-09 10:34:00 -07:00
Ryan Fleury 417202c0a0 press in view content -> steal focus from query bar 2025-05-09 10:16:49 -07:00
Ryan Fleury e491a76861 prevent mutating nil trees in irtree generation 2025-05-09 09:58:39 -07:00
Ryan Fleury cb2e9fe27c record last opened user in program data, recall on startup 2025-05-09 09:56:16 -07:00
Ryan Fleury dd3f3366a8 fix bad 0.9.16 version check in config loading; helpers for building version codes, so they can be compared 2025-05-09 09:48:54 -07:00
Ryan Fleury bbdbcead16 correctly allow space keybindings; bind by default to 'accept', along with return; -> allow space for hitting buttons, expansions, etc. 2025-05-09 09:05:51 -07:00
Ryan Fleury f237f6cb24 hack in fix for not automatically escaping user inputs - was preventing backslashes from being used correctly in query inputs 2025-05-08 16:16:53 -07:00
Ryan Fleury 5bfef50915 bump to 0.9.17 2025-05-08 15:24:35 -07:00
Ryan Fleury 802da729b2 further work on view callee helper ui 2025-05-08 15:18:09 -07:00
Ryan Fleury 2a3c5527e0 only decorate debug-info-table-generated expressions with `s when we can detect it is necessary (.s are now allowed); only generate simplified expression extension strings for expressions in watch windows if parent keys are present, otherwise just do the full expression 2025-05-08 14:14:30 -07:00
Ryan Fleury b30e928501 fall back on creating a synthetic symbol name when a chain of leaf-identifier member accesses fail, and produce synthetic leaf-identifier expression to try to resolve it that way. 2025-05-08 14:00:54 -07:00
Ryan Fleury e13de08637 fix process choice in lister-completion-evaluation; do not rely on selected process! fixes 'enter' in listers not functioning when initially launching a process. 2025-05-08 13:34:38 -07:00
Ryan Fleury 4c49daa5a4 reintroduce add function breakpoint fast-path 2025-05-08 13:22:16 -07:00
Ryan Fleury 13324d9073 more progress on view caller helper 2025-05-08 12:25:31 -07:00
Ryan Fleury ef974b8dc0 begin sketching out the callee info helper, as an additional mechanism within the autocompletion system - find the call we're in, evaluate the callee, look up schema, show args/docs 2025-05-08 12:03:12 -07:00
Ryan Fleury a95780f2be provide path for explicit cast operator in eval parser; abort trying c-style casts in non-trivial cases (the parse becomes ambiguous, and it is better for us to prefer the usual non-casting path 2025-05-08 11:04:11 -07:00
Ryan Fleury e0202c5c18 path_pt schema type, which bundles a file path & textual location; use to do path relativization on serialize with breakpoints/watch pins 2025-05-08 10:23:46 -07:00
Ryan Fleury b59e8e5024 absolutify initial user/project paths; need absolute path information in order to relativize/absolutify paths in config 2025-05-08 09:57:17 -07:00
Ryan Fleury a31840fd8c eliminate reload-active command binding - it is no longer a command 2025-05-08 09:20:09 -07:00
Ryan Fleury ead193ee3b move enum value by-name lookup onto cached fastpath 2025-05-07 17:08:28 -07:00
Ryan Fleury 54a0560cef make window-level font size changing more strict wrt modifiers; do not accept ctrl+shift 2025-05-07 17:05:25 -07:00
Ryan Fleury 64e12d0591 fix binary tool builds after usage of path in rdi_from_pdb layer 2025-05-07 16:10:22 -07:00
Ryan Fleury 43c1a5d68b oops, fix bad reset of autocompletion arena! 2025-05-07 16:00:06 -07:00
Ryan Fleury 80f1a8b7ba enum value filtering / lookup cache 2025-05-07 15:46:59 -07:00
Ryan Fleury e7a4f407bb use 'sufficient suffixes' when generating enum expansions 2025-05-07 15:24:23 -07:00
Ryan Fleury 1929bcac0a defer to simple numeric evaluation if we cannot visualize an enum value by name 2025-05-07 15:20:49 -07:00
Ryan Fleury 7ded00af72 pdb -> rdi: correctly convert negative enumerate numerics; move enum value visualization into complex string-iterator visualization path, rather than hacking it into the simply-typed eval path (we want to generate a new task for the numeric value itself); handle negative enums correctly 2025-05-07 15:20:12 -07:00
Ryan Fleury a4367e02f2 pdb -> rdi: more gracefully handle ..s in file paths when building source line maps, normalized file paths, and path tree 2025-05-07 14:58:23 -07:00
Ryan Fleury 4f980c4820 correctly flag deletion editing commands as zeroing delta on selection 2025-05-07 14:36:39 -07:00
Ryan Fleury 9c296cb9b2 fixes for arithmetic with bitfields; bitfield -> numeric value path in irtree generation; fix bad stomping / mutation when generating a synthetic UFCS tree 2025-05-07 14:19:39 -07:00