Ryan Fleury
286589f4de
rdi_from_pdb: exemplar tests
2026-06-21 20:37:52 -07:00
Ryan Fleury
c890b806d5
pull out test input/exemplar path formation helpers to base; fix torture crash
2026-06-21 20:13:44 -07:00
Ryan Fleury
fe2aa4d14c
com shim for launching raddbg in cli mode, for proper console subsystem style usage of packaged bin utilities; checkpoint on eval2
2026-06-19 20:12:20 -07:00
Ryan Fleury
3fd7b40f4d
remove 'global stream' specialities in codeview -> rdi conversion; just have the caller pass all units, and in the case of pdb conversion, we simply make a global unit at that layer.
2026-06-19 20:12:20 -07:00
Ryan Fleury
66bca76edd
delete non-codeview-backed pdb conversion path, switch over to codeview conversion totally
2026-06-18 08:59:51 -07:00
Ryan Fleury
a441a5eef3
plug in codeview-conversion-backed pdb converison
2026-06-18 08:54:41 -07:00
Ryan Fleury
d56cd83cac
sketch out revised pdb conversion path which just uses the codeview conversion pass
2026-06-18 08:24:02 -07:00
Ryan Fleury
cc75260946
checkpoint on eval2; type graph operations, parsing, etc.
2026-06-17 17:38:09 -07:00
Nikita Smith
41e6470d28
fix radbin launch in p2r determinism test
2026-06-12 15:34:29 -07:00
Ryan Fleury
9955c8c1a7
temporarily turn off symbol server stuff - switch off spoof for step-over
2026-06-09 09:27:23 -07:00
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
4dd22c9e51
re-enable p2r determinism tests
2026-06-02 12:11:06 -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
3715021e0e
do not assume nonzero namespace table slots
2026-06-02 12:10:55 -07:00
Nikita Smith
568a77b73c
fix up scratch conflicts
2026-06-02 12:10:50 -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
9a923e9bf9
d2r2: .debug_loclists parsing, DWARF expression -> RDI location info; first pass at baking frame base into var locations to match simpler PDB behavior; fixes to high-pc address evaluation (based on form kind)
2026-04-29 12:40:43 -07:00
Nikita Smith
48f2a931ce
clang build fix
2026-04-22 09:30:45 -07:00
Ryan Fleury
6f2b8540eb
store partially-qualified names in generated RDIs; adjust debugger to do fully-qualified lookups when appropriate
2026-04-21 19:36:38 -07:00
Ryan Fleury
fda0a9751b
equip namespace records with container info
2026-04-20 15:14:01 -07:00
Ryan Fleury
581c102bfd
sort deduplicated namespace map before producing namespaces
2026-04-20 14:43:03 -07:00
Ryan Fleury
5fb1ef4df9
fix global vmap baking determinism - eliminate dupes
2026-04-20 14:15:38 -07:00
Ryan Fleury
16ea060382
fix source of vmap baking determinism issue, + fix use-after-free from cross-lane scratch usage
2026-04-20 14:06:34 -07:00
Ryan Fleury
e8e9ad204a
further pdb namespaces progress; fix compile-only output for /o MSVC deprecation
2026-04-20 13:53:50 -07:00
Ryan Fleury
03d1575c85
non-scope, non-type namespace gathering / gathering from pdb & baking & dumping
2026-04-20 09:57:34 -07:00
Ryan Fleury
881e19c842
get debugger onto new location info & symbol format
2026-04-20 09:57:33 -07:00
Ryan Fleury
7383cdc5ae
fix dumper for new symbols/locations format; produce dummy global unit for global stream pdb info - avoid stomping on 0 unit; fix stomping of location info, from missing lane sync
2026-04-20 09:57:32 -07:00
Ryan Fleury
bec7e630ba
fix duplicate nil local, equip locals with their scopes as symbol containers
2026-04-20 09:57:32 -07:00
Ryan Fleury
2218649801
fix busted section codes
2026-04-20 09:57:31 -07:00
Ryan Fleury
b1e6948576
rdi: extend per-unit info with symbol ranges; build into baker
2026-04-20 09:57:31 -07:00
Ryan Fleury
57e4b69e64
adjust rdi make to keep per-unit info organization - flatten / join in baker, to ensure unit-sorted order
2026-04-20 09:57:31 -07:00
Ryan Fleury
abb0199936
checkpoint on new local baking
2026-04-20 09:57:31 -07:00
Ryan Fleury
cff7a786b3
fold voffs/toffs/constants into location case list, plug into converters
2026-04-20 09:57:30 -07:00
Ryan Fleury
4ea7f86d92
checkpoint on new simplified location info baking. plug in constant data baking, bytecode baking
2026-04-20 09:57:30 -07:00
Ryan Fleury
911e8c135e
new location info baking layout computation - symbol-inlined locations in most cases, + indirected to set elements / bytecode / constant data as needed
2026-04-20 09:57:30 -07:00
Ryan Fleury
eff693244b
sketch out first part of new unified symbol table baking pass, sketch out new simplified sections
2026-04-20 09:57:29 -07:00
Ryan Fleury
8513ef8a4f
pdb -> rdi conversion: be robust to zero itypes in function type parameter lists. was causing, in some cases, local variables to be incorrectly interpreted as parameters, because there was a (nonexistent) parameter to the function recorded in the type info.
2026-04-15 12:28:42 -07:00
Ryan Fleury
5badc7f325
sketch out unified RDI_Variable to replace RDI_GlobalVariable, RDI_ThreadVariable, RDI_Local, and RDI_Constant, & plug into new RDI structured namespaces
2026-03-09 15:15:48 -07:00
Ryan Fleury
408b3af27c
rdi namespace baking; cv parsing rec iterator, deduplicate oob-safe cv record iterating
2026-03-09 14:36:05 -07:00
Ryan Fleury
8db4a09941
eliminate global rdim_shared; just use scratch data
2026-03-09 11:56:43 -07:00
Ryan Fleury
4312ee14fd
first pass at (rdi -> loose rdim) path, used in (rdi * ... * rdi) -> rdi joining in radbin; plug in regular conversion path before voff -> line & breakpad paths in radbin, such that PDBs, DWARFs, RDIs, etc. can be used as input; fix up voff -> line path to plug into regular output systems; remove String8 union thing - three reasons: (a) it was only ever introduced for convenience in Linux layers, so let's just keep zero-terminated Linux nonsense in Linux land, (b) it was just alternate syntax for a cast, so let's just cast, (c) it was misleading - 'cstr' implies null-termination, which String8 of course doesn't guarantee. this led to some misuses, where .cstr was trusted to be zero-terminated, when that was not necessarily true (semaphore opening).
2026-03-03 16:24:54 -08:00
Ryan Fleury
2af3990971
do not rely on lane 0 scratch ptrs for results in p2r - prone to races
2026-03-02 12:17:03 -08:00
Nikita Smith
2fbe45cd47
sync before scratch_end to prevent race in the result fill
2026-02-26 16:41:36 -08:00
Nikita Smith
a2336b9991
ASAN false-positives when threads access foreign stack addresses
2026-02-26 16:22:36 -08:00
Nikita Smith
d1b055c62f
Ignore S_REGREL32 during conversion of optimized procedures.
...
In optimized builds, MSVC emits parameters as both S_LOCAL and S_REGREL32.
Most likely because their debugger relies on S_REGREL32 to format
parameters in the call stack window.
2026-01-20 14:47:03 -08:00
Nikita Smith
a51d3fb752
fix case where return local without a type was converted to a parameter
2026-01-20 14:47:01 -08:00
Nikita Smith
8005c31276
remove x86 register code
2025-12-05 16:39:02 -08:00
Ryan Fleury
f396b2eaa3
start dwarf -> rdi cleanup; eliminate some assertions-as-validation, remove incorrect assumption that line info addresses are vaddrs (they seem to be voffs)
2025-11-10 15:06:52 -08:00