Commit Graph
345 Commits
Author SHA1 Message Date
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 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 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 bf25b5b249 handle COMDAT Associative 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 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 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 4aa6e6d132 store symbol links for COMDAT 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 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 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 c0613c2a7e section align fixes 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 d5297e01ac workaround for image base address 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 73fe9d223a handle /ALTERNATENAME directive 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 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 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 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 3a7afcd80c replace linker lib writer with one from COFF 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 01c905dbbd reuse import table flags, and parameterize data directory count 2025-06-25 10:53:21 -07:00
Nikita SmithandRyan Fleury c56cfefe09 move rsp unwrapper to config 2025-06-25 10:53:21 -07:00
Nikita SmithandRyan Fleury 3875b057d7 delete string compars form linker layer 2025-06-25 10:53:21 -07:00
Nikita SmithandRyan Fleury 19a7ada1dc make export table with COFF obj writer,
partially converted import table to COFF obj writer
2025-06-25 10:53:21 -07:00