 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 |
|
 Nikita SmithandRyan Fleury
|
86fe2ddd38
|
remove arena per section
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
8da56025b3
|
patch section symbol and test for relocations to discarded memory
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
40fda5335c
|
move default section flags to separate file to use them in torture
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
bd830a6023
|
test case for relocation to undefined section with base relocations
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
f25dc5cc8d
|
pack export table into obj and input back to the linker
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
c5164bd490
|
discard null data nodes
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
3ffd8c19ea
|
helper for querying machine specific relocation for virtual offset relocation
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
c55c60549e
|
export virtual ranges for data directories
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
f37f94a2b9
|
minor fixes
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
4161dd0440
|
check export table entries
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
9bcb227ed9
|
test imports and exports
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
35e6b4a9f9
|
linker directive header fix
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
e7c808ee69
|
test simple lib link
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
3a7afcd80c
|
replace linker lib writer with one from COFF
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
120829095b
|
COFF lib writer
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
ccf204d2f1
|
build target for torture
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
7c071e7238
|
linker checkpoint
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
a60216fa9f
|
minor fixes in hash table
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
0f81aae985
|
extend COFF obj writer with ability to produce linker directive section
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
45ca147579
|
report test stats, and check the exit code
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
b0a652b10b
|
helpers for parsing aux COFF symbols
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
f81bab5a4c
|
remove special sort postfix case
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
63a374cf54
|
simplify COFF reloc apply helper
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
a5b3df7d1b
|
check flags on custom bss section
|
2025-06-25 10:53:22 -07:00 |
|