Commit Graph
2857 Commits
Author SHA1 Message Date
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 3eb7debad5 check COMDAT symlink points to a defined symbol 2025-06-25 10:53:23 -07:00
Nikita SmithandRyan Fleury 8d324775a2 test COMDAT NoDuplicates selection 2025-06-25 10:53:23 -07:00
Nikita SmithandRyan Fleury 3978181d02 check symbol type before patching section header 2025-06-25 10:53:23 -07:00
Nikita SmithandRyan Fleury a6924a22cf by default stop on undefined section symbol 2025-06-25 10:53:23 -07:00
Nikita SmithandRyan Fleury c907a10365 fixup test for COMDAT Any 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