 Nikita SmithandRyan Fleury
|
3fb5e21d73
|
profiler markup
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
439fd0324d
|
typos
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
75d02f1c1e
|
check symbol presence using stable name pointer
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
5fd06f4466
|
do not push section contribs for sections without bytes
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
af00acd0f5
|
add missing symbol replacement logic
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
205723f8d6
|
parallelize symbol tables patching
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
d604456def
|
align sizeofs
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
32a22779da
|
fix run
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
7d77210a5f
|
run test after build
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
25710d39b7
|
test optional header fields
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
fe967a3d36
|
more validity checks in simple_link_test
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
c4a36f73dc
|
redirect stdout and stderr to a file
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
1c08db2705
|
move image, import lib, and debug info builders outside of the state machine
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
e971db7fdd
|
remove unused layout flag in section struct
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
47ef37ed8e
|
fix section order
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
881050addf
|
add default merges and section removes
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
a4b2d40d15
|
fix sizeof section headers
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
578a7ebdee
|
factor out pdata code to PE layer
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
f055267e59
|
remove double init and equip of thread contexts
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
aae3874521
|
disable TLS merge for now
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
c82b98cd49
|
assign section index to .reloc
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
e1278a6545
|
null terminate static imports
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
e65d1536b6
|
dynamic loader crashes if the import data is not in a stand-alone section
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
54e7f9aafc
|
appease ASAN
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
1c656979d2
|
move MSVC lib symbols to CRT layer
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
47e123221a
|
minor fixes
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
86556c68ed
|
point TLS directory to TLS header
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
3d2b1e19e3
|
handle communal var vs regular non-comdat symbol
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
42bed0e5c6
|
merge delayed data section with .data
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
f2394b6cf7
|
off-by-one
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
e911bf5368
|
move obj writer for PE debug directory to stand-alone file
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
7f6d8004a9
|
fix import dll debug symbols
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
89e2ea15ad
|
add /RAD_REMOVE_SECTION switch and special case debug sections
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
9c59cfd4e7
|
pointless check, in .debug relocations point to __ImageBase
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
d51fe49bab
|
delay import fix
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
dcc4f38709
|
clean up pass over obj file
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
64415e21f0
|
special case bss section contribs and fix off by one in range array bsearch
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
37689b2e4a
|
section collector
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
382204a4ea
|
WIP test delay user32 import
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
8fb0aaf2b3
|
test kernel32 import
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
fb0e8d7579
|
fix crash on COMDAT folding communal variable
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
9060004827
|
test for communal variable
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
40efbeb512
|
test for /INCLUDE
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
8d7bd6f9fe
|
minor fixes
- copy alt name to config arena
- promote alternate name conflict error to stop run
- remove unused error code
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
da0e7e5f69
|
test for /ALTERNATENAME
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
ea81d18223
|
test for out of bounds section number on external symbol
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
ef476bf1f0
|
tests for COMDAT Associative selection
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
bf25b5b249
|
handle COMDAT Associative selection
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
69d4e31b15
|
helper for parsing COFF symbols
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
8fad6da751
|
add support for associative COMDAT symbols
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
889b1807f2
|
test for COMDAT Largest selection
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
e97d476c7c
|
test for COMDAT ExactMatch selection
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
bde11caf11
|
improve exact match selection
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
4b8c9db8f5
|
add dependency to COMDAT symbol so we do not need to link with /OPT:NOREF
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
9bea163d10
|
test COMDAT SameSize selection
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
aafb980c6b
|
prevent dropping of newly inserted symbol while selecting slot leader
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
f5504c79e9
|
test COMDAT any selection
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
4aa6e6d132
|
store symbol links for COMDAT
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
9b6a15ce66
|
headers for delay import table columns
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
f0a967a15d
|
don't create BIAT and UIAT sections when not requested
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
9c93ee1579
|
compute correct IAT size
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
b1cd2146ac
|
patch export table directory using section contribs
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
0f9321e92a
|
move default linker options to main file
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
dcc8bfcf39
|
test section merges
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
c2b3634e7a
|
guard against circular section merges
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
2e531cd70a
|
refactored special case for image base
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
d22962af8d
|
warn about exporting entry point symbol
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
90797f363f
|
fix for machine compatibility check
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
b709640ddc
|
test for machine compatibility
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
b7a06f3f7f
|
sort on section index too
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
422e9449c8
|
natvis for section contrib types
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
b8f45e97c9
|
test section alignment flags
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
87acc95016
|
set section align in common block test
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
c0613c2a7e
|
section align fixes
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
681c1619fb
|
finish undefined section test
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
a3bcfe01e1
|
fix signedness issue
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
671431cfbd
|
remove unused define
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
d5297e01ac
|
workaround for image base address
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
971f6ec368
|
test virtual offset relocation with __ImageBase
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
c98ae0925f
|
error check relocations
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
ad069cb854
|
unknown relocation
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
73fe9d223a
|
handle /ALTERNATENAME directive
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
60d3f25057
|
test for __ImageBase with relative and address relocations
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
03e4958190
|
assign layout offsets and sizes to merged sections
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
f75cdd23d7
|
collapse linker input states into one state
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
d3c3b672ea
|
image name helper
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
6fd9ab7388
|
strip postfix when searching for section
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
a2bef106a1
|
handle case where symbol doesn't have obj
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
1cc23e42ff
|
delay import objs
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
c209dd730a
|
set ordinal low in export finalize path
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
ac261b3eed
|
trim obj paths pulled in from libs
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
f2c7e69844
|
natvis for hash table
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
71596b2f3e
|
collapse make API for imports
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
65944f0444
|
clean up pass over COFF writer
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
34a87e7828
|
create member symbol only for imports with name
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
89239fc744
|
test reloc for section symbol with merged section
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
f467ff8822
|
WIP move export and import table make code to appropriate layers
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
69d5010245
|
WIP switching to creating import table objs
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
1b21d0709f
|
return symbol for pushed lib member
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
2c5fb7e7ef
|
guard against merges with resource and base reloc sections
|
2025-06-25 10:53:22 -07:00 |
|