Ryan Fleury
|
b22f9f2d8b
|
checkpoint on symbol server
|
2026-06-08 17:32:07 -07:00 |
|
Ryan Fleury
|
536ca53d18
|
rdi_from_pdb: sketch out paths for LF_ALIAS
|
2026-06-08 11:26:17 -07:00 |
|
Ryan Fleury
|
2d6260fc68
|
remove dummy test file
|
2026-06-08 11:13:07 -07:00 |
|
Ryan Fleury
|
5c664261a3
|
symbol server abstraction layer; http layer; fix to 'prefer_disasm' rule when no disassembly tabs are open; small fixes / cleanup
|
2026-06-08 11:10:14 -07:00 |
|
Ryan Fleury
|
1ef94cb759
|
fix find-code-location snap rule when src/disasm occupy same panel & they are found by different rules; conflicting panels must be checked across *all* cases
|
2026-06-06 15:37:24 -07:00 |
|
Ryan Fleury
|
dc613f3a08
|
correctly handle voff evaluations in generalized watch window completion path (offline evaluation in everything palette case)
|
2026-06-03 14:43:50 -07:00 |
|
Ryan Fleury
|
09f78fdae4
|
small parameterization to query watches
|
2026-06-03 14:28:06 -07:00 |
|
Ryan Fleury
|
015ae9c62c
|
set up for memory right clicks
|
2026-06-03 12:49:39 -07:00 |
|
Ryan Fleury
|
d7b59e4a39
|
break when value changes
|
2026-06-03 12:37:28 -07:00 |
|
Ryan Fleury
|
3a04a96e03
|
eval right-click; start with go-to-memory command
|
2026-06-03 12:16:42 -07:00 |
|
Ryan Fleury
|
6b88ad1ea3
|
fix incorrect temp pop
|
2026-06-03 10:34:01 -07:00 |
|
Ryan Fleury
|
0df1b34580
|
fix spacing
|
2026-06-03 10:31:45 -07:00 |
|
Ryan Fleury
|
737ceb1313
|
tweaks / improvements to watch windows & lister ui - display controls, appearance, remove redundant visual info
|
2026-06-03 10:28:47 -07:00 |
|
Ryan Fleury
|
e7153e8910
|
auto load project only when project is not specified; fix alt menu weirdness on alt+tab
|
2026-06-03 09:10:53 -07:00 |
|
Ryan Fleury
|
4d1d362ac1
|
adjust find-code-location path to absolutify relativized paths based on current thread/module; also respect module-relative / debug-info-relative paths in src -> voff & voff -> src mapping
|
2026-06-03 09:01:51 -07:00 |
|
Ryan Fleury
|
fd1ee1c265
|
radbin: absolutify relative external-file-paths (debug link, pdb-in-exe), to avoid clashing with working-directory files of the same name
|
2026-06-02 14:41:43 -07:00 |
|
Ryan Fleury
|
e958814b07
|
use fully-qualified names in eval viz address resolved symbol strings, used in call stack / etc.
|
2026-06-02 12:16:16 -07:00 |
|
Ryan Fleury
|
5a819f8094
|
setting for auto-loading of recent projects
|
2026-06-02 12:11:17 -07:00 |
|
Ryan Fleury
|
1673fa5606
|
enable lfs on github actions
|
2026-06-02 12:11:16 -07:00 |
|
Ryan Fleury
|
6a2e2eb798
|
d2r2 -> d2r
|
2026-06-02 12:11:16 -07:00 |
|
Ryan Fleury
|
6ed6d3f16d
|
rdi_from_dwarf [1] -> obsolete; promote 2 -> 1
|
2026-06-02 12:11:15 -07:00 |
|
Ryan Fleury
|
b75b9b45cc
|
fix radbin
|
2026-06-02 12:11:15 -07:00 |
|
Ryan Fleury
|
a2700de35d
|
dwarf parse/expr/unwind/dump 2 -> 1; move old stuff to obsolete
|
2026-06-02 12:11:14 -07:00 |
|
Ryan Fleury
|
ef5fc82e9c
|
dead code elimination
|
2026-06-02 12:11:14 -07:00 |
|
Ryan Fleury
|
d73ce364b9
|
major clean-up pass over unwinding/module-info abstraction, + usage in the debug engine. simplified / cleaned up DWARF helpers for unwind info & expressions. decoupling unwinding / DWARF evaluation from memory read callbacks. light module info now prepared by demon layer - debug engine no longer duplicates per-backend parsing. unwind abstraction layer now does thin abstraction over unwinding backends, debug engine only calls abstraction. clean up demon to have fewer ad-hoc 'queries' on handles, and prefer sending info over debug events when possible / when it fits the usage pattern. move DWARF enum specifications to metacode, generate enums/xlists/tables/etc. decouple raddbg/radbin completely from old parsing helpers. replace portion of DWARF dumping; pull out some new parsing helpers from converter / dumper.
|
2026-06-02 12:11:13 -07:00 |
|
Ryan Fleury
|
9cc2afc659
|
eliminate backend-specific module parsing from debug engine ctrl thread; just pass that info back via the demon event
|
2026-06-02 12:11:10 -07:00 |
|
Ryan Fleury
|
d98d6b56d9
|
check in test input binaries, adjust torture test data path
|
2026-06-02 12:11:09 -07:00 |
|
Ryan Fleury
|
1c1fef0f97
|
lfs tracking for exes/pdbs/rdis/elfs
|
2026-06-02 12:11:08 -07:00 |
|
Ryan Fleury
|
2dee864547
|
fix fn pointer mismatch on clang builds
|
2026-06-02 12:11:08 -07:00 |
|
Ryan Fleury
|
f72d7bbe61
|
run -> run_tests
|
2026-06-02 12:11:07 -07:00 |
|
Ryan Fleury
|
c746fadcaa
|
run -> run_tests
|
2026-06-02 12:11:07 -07:00 |
|
Ryan Fleury
|
4dd22c9e51
|
re-enable p2r determinism tests
|
2026-06-02 12:11:06 -07:00 |
|
Ryan Fleury
|
d909f187d5
|
be robust to any line endings in exemplar data
|
2026-06-02 12:11:06 -07:00 |
|
Ryan Fleury
|
1ea8c48867
|
raddbg exemplar tests -> use specific hash version, name exemplars by their platform, skip if test data unavailable
|
2026-06-02 12:11:05 -07:00 |
|
Ryan Fleury
|
dc61f20e3b
|
sketch out stepping/eval exemplar testing; step-to-exit first pass
|
2026-06-02 12:11:04 -07:00 |
|
Ryan Fleury
|
a0bf825169
|
run-to-name, use to 'seed' test binary cases'
|
2026-06-02 12:11:03 -07:00 |
|
Ryan Fleury
|
8564884d76
|
raddbg: stepping regression tests
|
2026-06-02 12:11:02 -07:00 |
|
Ryan Fleury
|
685c408a13
|
migrate from torture-defined testing markup -> base
|
2026-06-02 12:11:02 -07:00 |
|
Ryan Fleury
|
4e72553006
|
promote test-definition concepts from torture to base layer; reorganize tests to be nested in their respective layer; eliminate 't_group', just use containing layer
|
2026-06-02 12:11:01 -07:00 |
|
Ryan Fleury
|
769bda0ed8
|
restore torture mdesk tests
|
2026-06-02 12:10:57 -07:00 |
|
Ryan Fleury
|
96c1ca549c
|
Revert "export line and column numbers from MD"
This reverts commit 29becc3bfa6037a1ba5c5657f891a65a819b0997.
|
2026-06-02 12:10:56 -07:00 |
|
Ryan Fleury
|
3715021e0e
|
do not assume nonzero namespace table slots
|
2026-06-02 12:10:55 -07:00 |
|
Ryan Fleury
|
c723584bfa
|
send acks always
|
2026-06-02 12:10:53 -07:00 |
|
Ryan Fleury
|
5f851ad1b0
|
simplify testing ipc driving stuff in raddbg layer; put in formal eval/line-from-vaddr commands
|
2026-06-02 12:10:52 -07:00 |
|
Ryan Fleury
|
4bbed83eab
|
only send ack on catch-all path for external driver cmds
|
2026-06-02 12:10:51 -07:00 |
|
Ryan Fleury
|
4e44a3c271
|
get default symbol path as part of process info; sketch out windows-style path for local symbol server cache
|
2026-06-02 12:10:48 -07:00 |
|
Ryan Fleury
|
e1782d08cf
|
show line info on visualizing function evaluations
|
2026-06-02 12:10:48 -07:00 |
|
Ryan Fleury
|
1c29112e9c
|
first pass at per-target output log labels
|
2026-06-02 12:10:47 -07:00 |
|
Ryan Fleury
|
56ee3bbf7b
|
eval: use resolution qualifiers to express disambiguating debug info, or module, or unit, and use in debug info resolution matching path; automatically prefer selected thread voff's unit
|
2026-06-02 12:10:43 -07:00 |
|
Ryan Fleury
|
a72d284058
|
more aggressively use scratch & limit temporary allocations in rdi baker
|
2026-06-02 12:10:43 -07:00 |
|
Ryan Fleury
|
0b5651eecd
|
project files
|
2026-06-02 12:10:41 -07:00 |
|
Ryan Fleury
|
58e6430955
|
p2r: more carefully choose symbol chunk sizes - we were spending dramatically more memory than needed in cases where there were many translation units, with very few symbols, because of our overly-aggressive chunk sizes (e.g. chrome.dll.pdb). also, since we just parse the msf by forming contiguous streams, let's just always map input files in radbin by default, so that we don't pay twice for the memory.
|
2026-05-20 14:02:08 -07:00 |
|
Ryan Fleury
|
1912774377
|
pass over default theme
|
2026-05-20 11:37:53 -07:00 |
|
Ryan Fleury
|
bc22adc440
|
bump to 27
|
2026-05-19 14:42:28 -07:00 |
|
Ryan Fleury
|
95f4ade10d
|
lift wait-for-process-memory-cache-update out of d_process_write, since that path runs on control thread now too as the general 'process handle write' abstraction - just move into the rd_eval_space_write path, since that wait was only for UI benefit anyways
|
2026-05-19 14:35:29 -07:00 |
|
Ryan Fleury
|
7a5ae846e9
|
annotate changelog notes with issue numbers
|
2026-05-19 12:34:37 -07:00 |
|
Ryan Fleury
|
17cdf458d3
|
on ambiguous debug info matches, inside primary debug info -> try building a fully qualified name from context, and replacing initial debug info match if it hits
|
2026-05-19 12:08:26 -07:00 |
|
Ryan Fleury
|
161663016f
|
project.raddbg
|
2026-05-19 11:56:08 -07:00 |
|
Ryan Fleury
|
82f47e3436
|
changelog notes
|
2026-05-19 11:55:27 -07:00 |
|
Ryan Fleury
|
3360d97e37
|
fix eval space creation for nil entities
|
2026-05-19 11:14:19 -07:00 |
|
Ryan Fleury
|
1a48155116
|
checkpoint on dump file parsing / cache construction; temporarily turn off crash dump command, since still wip
|
2026-05-19 09:56:01 -07:00 |
|
Ryan Fleury
|
fe4de192e4
|
linux -> prefix user raddbg data with ., so we get ~/.raddbg normally - on windows keep normal style
|
2026-05-18 20:18:53 -07:00 |
|
Ryan Fleury
|
a75cb2c32d
|
display folder in title fstr generation for file evaluations, but only if not inside a folder context
|
2026-05-18 20:06:05 -07:00 |
|
Ryan Fleury
|
40885a3f59
|
fix unmapped address visualization when reading is impossible + stop it from terminating rest of useful visualization
|
2026-05-18 20:01:15 -07:00 |
|
Ryan Fleury
|
80d68b7f95
|
dbg_engine: minidump memory64 parsing; rename switch -> better thing for what it is
|
2026-05-18 19:40:47 -07:00 |
|
Ryan Fleury
|
4840b46b84
|
dbg_engine: shift thread register reads / process memory reads -> abstraction layer, rather than directly calling into demon; cache crash dump info, like thread info & memory ranges; implement thread reg reads & memory reads for dumps by using this acceleration structure when we have a dump handle, instead of regular demon reads.
|
2026-05-18 14:51:17 -07:00 |
|
Ryan Fleury
|
463a4f8565
|
eliminate redundant focus tab automatic commands
|
2026-05-17 20:24:27 -07:00 |
|
Ryan Fleury
|
6d6cd7033d
|
minidumps: initial gather / events for process/modules/threads
|
2026-05-16 20:53:46 -07:00 |
|
Ryan Fleury
|
fddf353ea0
|
minidump format types; open crash dump command, stub out opening path in control thread; expand d_handles to support machine id, entity id, *and* 'controller kind', which can be either a dump file or a demon - this properly separates the true process control abstraction (demon) from opening a regular dump file on any machine, which will let us trivially support any kind of dump file on any platform; also fix bad cfg tree state leak
|
2026-05-16 18:26:23 -07:00 |
|
Ryan Fleury
|
c90cbb80aa
|
fix label rendering in cfg title fstr build
|
2026-05-14 15:00:07 -07:00 |
|
Ryan Fleury
|
cb8f2749d9
|
source/disassembly inline auto expressions
|
2026-05-14 14:34:17 -07:00 |
|
Ryan Fleury
|
a60502d765
|
sketch out first pass of autos evaluation
|
2026-05-14 13:50:34 -07:00 |
|
Ryan Fleury
|
54fc7deafa
|
fix incorrect per-unit line table data offset doubly adding base offset of unit - was breaking non-zero-offset line tables
|
2026-05-14 08:54:38 -07:00 |
|
Ryan Fleury
|
14390c01f7
|
respect path style in picking file replacements
|
2026-05-13 18:54:23 -07:00 |
|
Ryan Fleury
|
5977cb400d
|
only do pointer value visualization with valid pointer spaces; otherwise it is just a value
|
2026-05-13 18:41:43 -07:00 |
|
Ryan Fleury
|
ab4a084c9c
|
fix filtered-tab selection adjustments on project load
|
2026-05-13 16:01:00 -07:00 |
|
Ryan Fleury
|
d207398934
|
display project names in recent project list; fix 0s for address-disabled string viz
|
2026-05-13 15:50:59 -07:00 |
|
Ryan Fleury
|
fbe7b20aee
|
finish addresses-before-content single-line eval visualization path
|
2026-05-13 15:22:56 -07:00 |
|
Ryan Fleury
|
58caf0d3d5
|
upgrade eval space reads with staleness/bad/change info, to expand process memory cache reading abilities to all evaluation spaces; unmapped address visualization (both memory view & single line eval)
|
2026-05-13 14:48:00 -07:00 |
|
Ryan Fleury
|
e6d83f7450
|
visualize unmapped addresses in memory view more correctly (not as 0s) - annotate explicitly with unmapped address annotation
|
2026-05-13 14:09:21 -07:00 |
|
Ryan Fleury
|
16b1e728ba
|
breakpoints -> project-tagged user config
|
2026-05-13 13:38:04 -07:00 |
|
Ryan Fleury
|
cfbda8bc4d
|
clear last-focused-external-window on new session
|
2026-05-13 11:57:03 -07:00 |
|
Ryan Fleury
|
9eecffad78
|
fix mouse-hover-in-source-evaluation (off -> range) rules, to correctly enclose more expressions
|
2026-05-13 11:55:52 -07:00 |
|
Ryan Fleury
|
a1778421c9
|
eval extended opcode for setting base offset - used for correct cross-module evaluations, fixes go-to-definition when thread is not in module of resolved identifier's symbol
|
2026-05-13 11:23:48 -07:00 |
|
Ryan Fleury
|
0563cd3b80
|
fix incorrect lifetime of calculated implicit user/project arguments
|
2026-05-13 10:43:43 -07:00 |
|
Ryan Fleury
|
1e0bcf0504
|
treat relative implicit project args correctly
|
2026-05-13 10:30:54 -07:00 |
|
Ryan Fleury
|
2231228ffb
|
store loaded debug infos as user config, but project-tagged; eliminate 'recent files' from project file (they are almost entirely duplicative of debug info source files); adjust 'last_user' remembering semantics - do not automatically change last_user when setting user explicitly from command line
|
2026-05-13 10:18:06 -07:00 |
|
Ryan Fleury
|
1774a76cdb
|
scope ending annotations
|
2026-05-13 08:58:46 -07:00 |
|
Ryan Fleury
|
264abe57aa
|
allow missing debug info in case of 'step out' - we still want to support traditional behavior especially in e.g. disassembly and so on
|
2026-05-13 08:40:14 -07:00 |
|
Ryan Fleury
|
b198f0b421
|
just move metagen onto regular base layer - in theory this causes cycles (metagen w/ bug -> generates busted base layer code -> can't build metagen!) but we do not currently generate anything in base, and we also can just revert in that case.
|
2026-05-12 20:02:35 -07:00 |
|
Ryan Fleury
|
a0ace3561f
|
eliminate d2r usage (1) from radbin
|
2026-05-12 19:58:15 -07:00 |
|
Ryan Fleury
|
fa5af4fa9f
|
notes
|
2026-05-12 19:57:01 -07:00 |
|
Ryan Fleury
|
b4f15d3111
|
adjust project/user saving/loading rules to be less idiosyncratic with other applications. user settings persist, to keep the user from needing to specify things like windows/colors/bindings every time, but projects must always be manually specified, e.g. like usual files in other programs. you can do this either via the ui, or via command line still. also, new user/project no longer require a path - they just clear the existing path, then to set the path you just explicitly save. this makes things much more natural & familiar.
|
2026-05-12 19:34:42 -07:00 |
|
Ryan Fleury
|
dcc78314ab
|
fix dbg_info loader treatment of nil keys, avoid bad usage of blank '.rdi' files; os_lnx_* -> lnx_*
|
2026-05-12 14:42:29 -07:00 |
|
Ryan Fleury
|
50a68b9d8c
|
adjust internal definition of sync barrier type to match windows
|
2026-05-12 13:52:25 -07:00 |
|
Ryan Fleury
|
d4623a7ddf
|
slow & highly contentious implementation of barriers using more basic sync primitives; fall back if sync barriers not present in win32 version
|
2026-05-12 13:48:57 -07:00 |
|
Ryan Fleury
|
641a7c8b30
|
on new debug session: close all loaded debug infos, assume none need to stick around
|
2026-05-12 09:38:06 -07:00 |
|
Ryan Fleury
|
15a2d5658f
|
fix auto-thread-selection rules
|
2026-05-11 20:04:36 -07:00 |
|
Ryan Fleury
|
d45090a8cc
|
adjust kerning to be rounded, rather than floor'd; adjust step-out desc
|
2026-05-11 19:53:54 -07:00 |
|
Ryan Fleury
|
9eaff99bbb
|
fix build
|
2026-05-11 19:44:26 -07:00 |
|