Nikita Smith
13352751ec
moved DWARF parser to use str8_deserial-style API, added to the parser
...
layer functionality for interpreting different types of attributes,
added support for location lists, and API to enable parsing tags with
abstract origin.
2025-03-17 10:40:59 -07:00
Nikita Smith
57208909f1
updated DWARF expression printer, added ELF preamble,
...
transitioned debug info and debug line printers to new parser
2025-03-17 10:28:56 -07:00
Nikita Smith
f1e88b5667
pass over PDB converter
...
- moved incomplete type resolution from the converter to RDI make helper
layer so we don't need to duplicate code in DWARF converter
- changed code for building basic types to handle various data models
2025-03-13 23:04:40 -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
Nikita Smith
d9874e8f2f
bugfix resource compar
2025-02-02 00:06:07 -08:00
Nikita Smith
76b83794b2
added printer for .res files
2025-02-01 23:50:30 -08:00
Nikita Smith
0a0742aa0e
remove unused enum fields
2025-01-29 16:28:02 -08:00
Nikita Smith
e114ea7fdb
hook RDI printers to the dumper
2025-01-29 16:27:15 -08:00
Nikita Smith
5c1e219901
minor prof fix
2025-01-29 16:26:02 -08:00
Nikita Smith
497f0e45d6
WIP merging RDI dump into RAD Dumper
2025-01-29 10:47:18 -08:00
Nikita Smith
bd5d38ef0c
handle null write
2025-01-28 16:56:12 -08:00
Nikita Smith
5e3b500119
put ranges on arena
2025-01-28 16:46:50 -08:00
Nikita Smith
409905c983
yank out shared mutex impl
...
Initially shared mutex was needed to lock cores so thread pool
executes one parallel for at a time but on machine with high core count
we cant saturate processor all the time so we switched to shared semaphore
and block thread when all cores are busy.
2025-01-25 11:46:25 -08:00
Nikita Smith
0ca9d97750
error out on /LIB and /DUMP switches
2025-01-24 14:40:27 -08:00
Nikita Smith
f2f18b9798
replaced /RAD_IDLE_WORKERS with /RAD_SHARED_THREAD_POOL_MAX_WORKERS
2025-01-24 12:49:30 -08:00
Nikita Smith
8196ef0a6e
tweaks and fixed in thread pool
...
- created a separate entry point for shared workers
- fixed race condition in tp_run_tasks where worker would read
modified task count and cause unpredictable behavior
2025-01-24 10:33:42 -08:00
Nikita Smith
b18060ef0d
on crash CRT randomly wont flush stdout
2025-01-23 20:45:25 -08:00
Nikita Smith
b463c8087d
copy alternate name strings
2025-01-23 20:44:14 -08:00
Nikita Smith
71b0dfa150
bugfix for uninited memory
2025-01-23 20:39:06 -08:00
Nikita Smith
b007e4c0e5
printer for S_LABEL
2025-01-23 20:38:43 -08:00
Nikita Smith
53db7ee712
fix symbol table printer for big objs
2025-01-21 11:29:28 -08:00
Nikita Smith
aa4ec903a6
update LF_STRUCT2 printer
2025-01-21 11:29:12 -08:00
Nikita Smith
c6d28b97b7
more details for LF_STRUCT2
2025-01-21 11:14:12 -08:00
Nikita Smith
61307aefbc
reworked thread pool to share workers via semaphore
2025-01-21 01:55:13 -08:00