Commit Graph

2647 Commits

Author SHA1 Message Date
Nikita Smith 889b1807f2 test for COMDAT Largest selection 2025-06-25 10:53:23 -07:00
Nikita Smith e97d476c7c test for COMDAT ExactMatch selection 2025-06-25 10:53:23 -07:00
Nikita Smith bde11caf11 improve exact match selection 2025-06-25 10:53:23 -07:00
Nikita Smith 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 Smith 9bea163d10 test COMDAT SameSize selection 2025-06-25 10:53:23 -07:00
Nikita Smith aafb980c6b prevent dropping of newly inserted symbol while selecting slot leader 2025-06-25 10:53:23 -07:00
Nikita Smith 3eb7debad5 check COMDAT symlink points to a defined symbol 2025-06-25 10:53:23 -07:00
Nikita Smith 8d324775a2 test COMDAT NoDuplicates selection 2025-06-25 10:53:23 -07:00
Nikita Smith 3978181d02 check symbol type before patching section header 2025-06-25 10:53:23 -07:00
Nikita Smith a6924a22cf by default stop on undefined section symbol 2025-06-25 10:53:23 -07:00
Nikita Smith c907a10365 fixup test for COMDAT Any 2025-06-25 10:53:23 -07:00
Nikita Smith f5504c79e9 test COMDAT any selection 2025-06-25 10:53:23 -07:00
Nikita Smith 4aa6e6d132 store symbol links for COMDAT 2025-06-25 10:53:23 -07:00
Nikita Smith 9b6a15ce66 headers for delay import table columns 2025-06-25 10:53:23 -07:00
Nikita Smith f0a967a15d don't create BIAT and UIAT sections when not requested 2025-06-25 10:53:23 -07:00
Nikita Smith 9c93ee1579 compute correct IAT size 2025-06-25 10:53:23 -07:00
Nikita Smith b1cd2146ac patch export table directory using section contribs 2025-06-25 10:53:23 -07:00
Nikita Smith 0f9321e92a move default linker options to main file 2025-06-25 10:53:23 -07:00
Nikita Smith dcc8bfcf39 test section merges 2025-06-25 10:53:23 -07:00
Nikita Smith c2b3634e7a guard against circular section merges 2025-06-25 10:53:23 -07:00
Nikita Smith 2e531cd70a refactored special case for image base 2025-06-25 10:53:22 -07:00
Nikita Smith d22962af8d warn about exporting entry point symbol 2025-06-25 10:53:22 -07:00
Nikita Smith 90797f363f fix for machine compatibility check 2025-06-25 10:53:22 -07:00
Nikita Smith b709640ddc test for machine compatibility 2025-06-25 10:53:22 -07:00
Nikita Smith b7a06f3f7f sort on section index too 2025-06-25 10:53:22 -07:00
Nikita Smith 422e9449c8 natvis for section contrib types 2025-06-25 10:53:22 -07:00
Nikita Smith b8f45e97c9 test section alignment flags 2025-06-25 10:53:22 -07:00
Nikita Smith 87acc95016 set section align in common block test 2025-06-25 10:53:22 -07:00
Nikita Smith c0613c2a7e section align fixes 2025-06-25 10:53:22 -07:00
Nikita Smith 681c1619fb finish undefined section test 2025-06-25 10:53:22 -07:00
Nikita Smith a3bcfe01e1 fix signedness issue 2025-06-25 10:53:22 -07:00
Nikita Smith 671431cfbd remove unused define 2025-06-25 10:53:22 -07:00
Nikita Smith d5297e01ac workaround for image base address 2025-06-25 10:53:22 -07:00
Nikita Smith 971f6ec368 test virtual offset relocation with __ImageBase 2025-06-25 10:53:22 -07:00
Nikita Smith c98ae0925f error check relocations 2025-06-25 10:53:22 -07:00
Nikita Smith ad069cb854 unknown relocation 2025-06-25 10:53:22 -07:00
Nikita Smith 73fe9d223a handle /ALTERNATENAME directive 2025-06-25 10:53:22 -07:00
Nikita Smith 60d3f25057 test for __ImageBase with relative and address relocations 2025-06-25 10:53:22 -07:00
Nikita Smith 03e4958190 assign layout offsets and sizes to merged sections 2025-06-25 10:53:22 -07:00
Nikita Smith f75cdd23d7 collapse linker input states into one state 2025-06-25 10:53:22 -07:00
Nikita Smith d3c3b672ea image name helper 2025-06-25 10:53:22 -07:00
Nikita Smith 6fd9ab7388 strip postfix when searching for section 2025-06-25 10:53:22 -07:00
Nikita Smith a2bef106a1 handle case where symbol doesn't have obj 2025-06-25 10:53:22 -07:00
Nikita Smith 1cc23e42ff delay import objs 2025-06-25 10:53:22 -07:00
Nikita Smith c209dd730a set ordinal low in export finalize path 2025-06-25 10:53:22 -07:00
Nikita Smith ac261b3eed trim obj paths pulled in from libs 2025-06-25 10:53:22 -07:00
Nikita Smith f2c7e69844 natvis for hash table 2025-06-25 10:53:22 -07:00
Nikita Smith 71596b2f3e collapse make API for imports 2025-06-25 10:53:22 -07:00
Nikita Smith 65944f0444 clean up pass over COFF writer 2025-06-25 10:53:22 -07:00
Nikita Smith 34a87e7828 create member symbol only for imports with name 2025-06-25 10:53:22 -07:00