Commit Graph
449 Commits
Author SHA1 Message Date
Nikita Smith 129f0326f7 use thread broadcasts to simplify global symbol mover 2026-04-06 12:04:32 -07:00
Nikita Smith e9ac0abdf9 thread broadcast 2026-04-06 12:04:32 -07:00
Nikita Smith ef712a36e7 minor bugfix 2026-04-06 12:04:32 -07:00
Nikita Smith 99335959b0 ignore invalid type index errors in release 2026-04-06 12:04:32 -07:00
Nikita Smith b5f0862a91 fixup file checksums in the MSF streams 2026-04-06 12:04:32 -07:00
Nikita Smith 30e21a84ea arena helper for dealing with buffer preallocation for workers 2026-04-06 12:04:32 -07:00
Nikita Smith 46243548f3 fixup symbol tree offsets in module stream 2026-04-06 12:04:32 -07:00
Nikita Smith d7cfd5f55a WIP rework GSI and PSI symbol writer 2026-04-06 12:04:32 -07:00
Nikita Smith 883935d44e WIP simplifying module stream layout step 2026-04-06 12:04:32 -07:00
Nikita Smith f7ac6767cf WIP symbol plumbing 2026-04-06 12:04:32 -07:00
Nikita Smith e0c6df710f WIP change symbol extraction approach 2026-04-06 12:04:31 -07:00
Nikita Smith 91b50bab00 no need to validate signature in S_OBJ; discard debug info if PCH
is missing instead of exiting
2026-04-06 12:04:31 -07:00
Nikita Smith 44a0efd207 test mismatched PCH signatures and presence of .debug$P and .debug$T in
same obj
2026-04-06 12:04:31 -07:00
Nikita Smith 8a1203ed35 add mutex around fprintf to linearize log 2026-04-06 12:04:31 -07:00
Nikita Smith d1594f796d fix type source for PCH type indices 2026-04-06 12:04:31 -07:00
Nikita Smith c0418b736d WIP: internal and external type servers are functioning except for the
PCH indirection
2026-04-06 12:04:31 -07:00
Nikita Smith 401ba47ac2 telemetry mark up 2026-04-06 12:04:31 -07:00
Nikita Smith 1c6baf18f2 msf_parsed_from_data now always returns non-null result 2026-03-04 11:41:51 -08: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
Nikita Smith eb8fd11b20 input for hashing external leaves was assuming different array layout 2026-02-23 13:55:04 -08:00
Nikita Smith e942dd0380 checkpoint 2026-02-23 12:04:32 -08:00
Nikita Smith 03ab203fb4 warnings 2026-02-23 11:57:05 -08:00
Nikita Smith cfe3cde396 checkpoint: basic line emission 2026-02-20 11:17:12 -08:00
Nikita Smith 516365e97b rename CodeView leaf/symbol/debug_s helpers for consistent naming 2026-02-17 03:04:14 -08:00
Nikita Smith 2083c1ed87 serialize symbols directly into MSF streams 2026-02-16 20:32:44 -08:00
Nikita Smith 442f41b51a inline byte hashing around type indices 2026-02-16 13:39:49 -08:00
Nikita Smith 4e4a806b33 pass over the aligner 2026-02-15 23:17:59 -08:00
Nikita Smith 76213ec5cd switch to using 32-bit offsets for leaf records over the pointers 2026-02-15 23:11:51 -08:00
Nikita Smith 09e37a6a2e report unknown ignore codes only in debug builds 2026-02-13 22:10:42 -08:00
Nikita Smith 1f51c6f25b ubsan cleanup 2026-02-13 20:59:26 -08:00
Nikita Smith fbc3cbd6eb polish help in radlink 2026-02-13 19:17:53 -08:00
Nikita Smith 519bc154ec disable async for radlink 2026-02-13 17:33:18 -08:00
Nikita Smith d7a87b7765 share arena between type deduper and MSF 2026-02-13 16:06:54 -08:00
Nikita Smith f5fc3c66b7 reduce leaf hash table bucket size to 8 bytes 2026-02-13 15:03:51 -08:00
Nikita Smith 7720ba096e switch to 64-bit type hashes; 128-bits is unnecessary, CodeView can't
have more than 2^32 types
2026-02-12 13:11:36 -08:00
Nikita Smith 1e6df05d9f sort resource pointers 2026-02-11 17:20:38 -08:00
Nikita Smith aa25570904 improve memory usage when reporting unresolved symbols 2026-02-11 15:28:13 -08:00
Nikita Smith e8ca3e0d5c name tag arenas for the memory plots 2026-02-11 15:27:05 -08:00
Nikita Smith 2a76188570 allocate a minimum cap hash table for the lib member infos 2026-02-11 13:53:37 -08:00
Nikita Smith 5aea3527c1 use-after-poison fix 2026-02-11 13:52:33 -08:00
Nikita Smith 988b0f5541 header guard typo 2026-02-09 23:42:09 -08:00
Nikita Smith 71a46985b6 use string table extension for long section names 2026-02-05 19:45:35 -08:00
Nikita Smith 0015e52d3c add /FAILIFMISMATCH 2026-02-05 19:45:34 -08:00
Nikita Smith 15831c704f lock free hash trie 2026-02-05 17:46:10 -08:00
Nikita Smith 7627ccf84e move str8 list pop to the base layer 2026-01-22 13:29:45 -08:00
Nikita Smith 1c0e9030fa move lib member queue state to the link step and release it after link step is done 2026-01-20 15:27:31 -08:00
Nikita Smith 0c4009c328 bugfix import member queue detection 2026-01-16 18:53:03 -08:00
Nikita Smith 8f47ce7616 filter out duplicate page entries before computing the buffer size 2026-01-16 18:52:55 -08:00
Nikita Smith 4ab89cd120 set default values for unload and nobind 2026-01-16 18:41:15 -08:00
Nikita Smith 0168448924 by default commit a page for heap and stack 2026-01-16 18:40:32 -08:00