Commit Graph
395 Commits
Author SHA1 Message Date
Nikita Smith 8005c31276 remove x86 register code 2025-12-05 16:39:02 -08:00
Nikita Smith 597ea44337 handle empty hash table case 2025-11-19 11:25:54 -08:00
Nikita Smith 880b8135cc add per-item purging to the hash table 2025-11-07 14:39:46 -08:00
Nikita Smith 3bd89b1fad switch over to new MD5 hash lib 2025-10-10 10:15:22 -07:00
Nikita Smith 9acff9ecd2 use check sum defn from rdi.h 2025-10-02 18:19:42 -07:00
Nikita Smith 81d747b8d7 fix process join 2025-09-29 18:05:11 -07:00
Nikita Smith eb4e6d2883 alloc slots for null 2025-09-26 16:28:46 -07:00
Nikita Smith 647bc4206f minor typo 2025-09-24 12:42:17 -07:00
Nikita Smith 06e895be7c organize task structs 2025-09-24 12:42:17 -07:00
Nikita Smith 20c92e0baf speed up base reloc gather step and serialize pages in parallel 2025-09-24 12:42:17 -07:00
Nikita Smith 0a930be613 use radsort for sorting base reloc pages 2025-09-24 12:42:17 -07:00
Nikita Smith 6b278e1ccc parallelize image fill 2025-09-22 10:06:21 -07:00
Nikita Smith a75a33e6d3 minor fix for UBA detour 2025-09-22 10:06:21 -07:00
Nikita Smith e72512f638 switch over to 64-bit pointer tagging 2025-09-22 10:06:21 -07:00
Nikita Smith 4717701540 update threading API 2025-09-22 10:06:21 -07:00
Nikita Smith 872c387bad let errors from MT to bubble up to linker's stdout and stderr 2025-09-22 10:06:21 -07:00
Nikita Smith 3d7afb58fa speed up symbol patching 2025-09-22 10:06:21 -07:00
Nikita Smith 42999bea63 profile markup obj relocation patching 2025-09-22 10:06:21 -07:00
Nikita Smith 371e52ad42 add /rad_alt_pch_dir for remapping objs in the local folder for pgo builds 2025-09-22 10:06:21 -07:00
Nikita Smith ee75ada087 mark function override meta-data sections with link info flag so
they do not get a section definition
2025-09-22 10:06:20 -07:00
Nikita Smith ce044e7e83 detect removed fixup symbol and propagate correct section number 2025-09-22 10:06:20 -07:00
Nikita Smith a060f581d9 stub /d2 2025-09-22 10:06:20 -07:00
Nikita Smith 17058e71bf remove empty nodes 2025-09-22 10:06:20 -07:00
Nikita Smith e33a95bfe2 do not embed time stamp with /brepro 2025-09-17 15:21:37 -07:00
Nikita Smith 0b154cef46 stub /brepro 2025-09-17 15:21:37 -07:00
Nikita Smith c653410af5 stub /errorreportlevel 2025-09-17 15:21:37 -07:00
Nikita Smith 5a12513306 parallelize section garbage collection
currently we tag pointers to solve ABA problem however if the list
has more than max_U16 items, the tag will overflow and cause serious issues.
To fix this, we need to use 64-bit tags together with 128-bit interlocked
compare-exchange intrinsic
2025-09-17 15:21:37 -07:00
Nikita Smith cc8fdc6c6f order check for COMDATs with any property 2025-09-17 15:21:37 -07:00
Nikita Smith 630c3b42a7 do lightweight import gathering while resolving links 2025-09-17 15:21:37 -07:00
Nikita Smith d4ac5ede77 assign correct removed section type 2025-09-17 15:21:37 -07:00
Nikita Smith 8a46ee0ad2 return full path to the first matched file 2025-09-17 15:21:37 -07:00
Nikita Smith 0b5dd92a87 minor tweaks 2025-09-17 15:21:37 -07:00
Nikita Smith ded932e3ba skip library searches for import stubs 2025-09-17 15:21:37 -07:00
Nikita Smith 98eaf67dd8 while symbol table is being built sort weak and undefined symbols to
separate chunk lists to speed up library search
2025-09-17 15:21:37 -07:00
Nikita Smith 4e1ebe5a6b change import stub symbol characteristic to search alias to skip them
on subsequent searches
2025-09-17 15:21:37 -07:00
Nikita Smith 80967fac12 pre-parse section names and flag debug info sections 2025-09-16 10:31:02 -07:00
Nikita Smith 3224c5e0aa skip linker info sections during relocation patching, also log a message
when encountering an unsupported machine type
2025-09-16 10:31:01 -07:00
Nikita Smith 488849792c change file search to return on first match 2025-09-16 10:31:01 -07:00
Nikita Smith 7095a8cd6e fix bug where new object tracking failed, causing certain objs to be
skipped during the symbol table input step
2025-09-16 10:31:01 -07:00
Nikita Smith 5aff575feb discard empty symbol nodes 2025-09-16 10:31:01 -07:00
Nikita Smith b5a2bbaf54 early-out of default library searches 2025-09-16 10:31:01 -07:00
Nikita Smith d6596efac8 allow weak symbols to resolve to other weak symbols 2025-09-16 10:31:01 -07:00
Nikita Smith c47b35f635 update link symbol set logic to replace import address symbols with jump
thunk symbols
2025-09-16 10:31:01 -07:00
Nikita Smith c7c86cd360 do not report unresolved symbols in debug info sections 2025-09-16 10:31:01 -07:00
Nikita Smith b1609017c5 inline xxhash functions 2025-09-08 16:07:31 -07:00
Nikita Smith 98a05728b3 add check for whether weak symbol is resolved 2025-09-08 16:07:31 -07:00
Nikita Smith 24b427fe72 delete unused blake3 headers 2025-09-08 16:07:31 -07:00
Nikita Smith ee3832ea3b parallel for lib symbol search 2025-09-08 16:07:31 -07:00
Nikita Smith fb46d0bba4 sort symbol names in first member header 2025-09-08 16:07:31 -07:00
Nikita Smith 7193986305 binary search for strings 2025-09-08 16:07:31 -07:00