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