Commit Graph
38 Commits
Author SHA1 Message Date
Nikita Smith 880b8135cc add per-item purging to the hash table 2025-11-07 14:39:46 -08:00
Nikita Smith 6b278e1ccc parallelize image fill 2025-09-22 10:06:21 -07:00
Nikita Smith 56c43ad614 clean up HashTable, removed unused command line switches, added
list wrapper for alt names, added natvis for HashTable, AltNameList,
MergeDirectiveList, and IncludeSymbolList
2025-09-05 15:19:31 -07:00
Nikita Smith 6a3d7e65f3 remove year from the copyright 2025-09-05 15:19:31 -07:00
Nikita Smith 9f6da0ec63 simplify section removal and purging 2025-09-05 15:19:30 -07:00
Nikita Smith 3c4edba465 validate section flags on merge 2025-06-25 10:53:24 -07:00
Nikita Smith cccbbfc74c do not patch debug section symbols and patch replaced COMDATs in separate
pass
2025-06-25 10:53:24 -07:00
Nikita Smith b19be0574c function pad min - final pass over 2025-06-25 10:53:24 -07:00
Nikita Smith a5119e3b51 WIP function pad min 2025-06-25 10:53:24 -07:00
Nikita Smith 5fb0d978b9 WIP function pad min 2025-06-25 10:53:24 -07:00
Nikita Smith 9d93eda3ed simplify section table 2025-06-25 10:53:24 -07:00
Nikita Smith a484906cf9 create section contribution for common block 2025-06-25 10:53:24 -07:00
Nikita Smith 15836572f4 factor out section sort index into contribution chunk and simplify
contribution sorting
2025-06-25 10:53:24 -07:00
Nikita Smith 626d94104d atomic contrib push 2025-06-25 10:53:24 -07:00
Nikita Smith e971db7fdd remove unused layout flag in section struct 2025-06-25 10:53:24 -07:00
Nikita Smith c82b98cd49 assign section index to .reloc 2025-06-25 10:53:23 -07:00
Nikita Smith e911bf5368 move obj writer for PE debug directory to stand-alone file 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 c2b3634e7a guard against circular section merges 2025-06-25 10:53:23 -07:00
Nikita Smith 73fe9d223a handle /ALTERNATENAME directive 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 6fd9ab7388 strip postfix when searching for section 2025-06-25 10:53:22 -07:00
Nikita Smith 69d5010245 WIP switching to creating import table objs 2025-06-25 10:53:22 -07:00
Nikita Smith 2c5fb7e7ef guard against merges with resource and base reloc sections 2025-06-25 10:53:22 -07:00
Nikita Smith 86fe2ddd38 remove arena per section 2025-06-25 10:53:22 -07:00
Nikita Smith 8da56025b3 patch section symbol and test for relocations to discarded memory 2025-06-25 10:53:22 -07:00
Nikita Smith f25dc5cc8d pack export table into obj and input back to the linker 2025-06-25 10:53:22 -07:00
Nikita Smith 7c071e7238 linker checkpoint 2025-06-25 10:53:22 -07:00
Nikita Smith ab05133f8a picked better name convention for the section table 2025-04-04 15:47:56 -07:00
Nikita Smith c090bee2f3 added missing debug comments for chunks 2025-04-04 15:45:51 -07:00
Nikita Smith 1c518bfa07 prefix COFF machine enums with "Type" 2025-03-31 22:53:10 -07:00
Nikita Smith 153bbc7b1d pass over COFF layer
- updated naming convention on structs, enums, and macros to conform with code base style
- moved related structs closer to each other
- moved parser code to separate file
2025-01-20 19:31:52 -08:00
Nikita Smith a1d5837ff3 helpers for matching string literals 2025-01-18 17:39:11 -08:00
Nikita Smith b405ed4873 factored out logic for splitting function chunks into separate pass
over symbol table; associations are now assigned to sub chunks too;
inherit function chunk align from parent chunk
2025-01-16 13:47:13 -08:00
Nikita Smith c037d6ad75 WIP function padding 2024-11-21 01:05:33 -08:00
Nikita Smith b631d431fa create section layout without copying chunk data and perform chunk data
copy in parallel given layout
2024-11-15 16:14:00 -08:00
Nikita Smith e1166abc63 typo in str8 compar name 2024-10-30 15:42:39 -07:00
Nikita Smith 932df7bf68 linker 2024-10-15 17:25:22 -07:00