Commit Graph
94 Commits
Author SHA1 Message Date
Nikita Smith e8ca3e0d5c name tag arenas for the memory plots 2026-02-11 15:27:05 -08:00
Nikita Smith 482a61aaf7 obj -> COFF serializer 2026-02-09 23:41:19 -08:00
Nikita Smith 33b1e25295 arch -> COFF machine 2026-02-09 23:40:31 -08:00
Nikita Smith 0c02e21284 WIP tests for ICF 2026-02-05 19:45:34 -08:00
Nikita Smith 8b729d4588 refactored testing utility
- factored out common parts in tests into T_BeginTest and T_EndTest
- separated radlink and DWARF tests
2026-02-05 19:45:34 -08:00
Ryan Fleury 17ec73d752 dwarf cleanup checkpoint 2025-11-10 17:41:01 -08:00
Nikita SmithandRyan Fleury 880b8135cc add per-item purging to the hash table 2025-11-07 14:39:46 -08:00
Nikita SmithandRyan Fleury 3c0c531c53 reloc helper 2025-09-24 12:42:17 -07:00
Nikita SmithandRyan Fleury b646e1cd43 fix compiler errors 2025-09-17 15:21:37 -07:00
Nikita SmithandRyan Fleury 630c3b42a7 do lightweight import gathering while resolving links 2025-09-17 15:21:37 -07:00
Ryan Fleury 937c6c8bce eliminate radcon, eliminate unused string helpers 2025-09-16 10:17:02 -07:00
Nikita SmithandRyan Fleury bbe430cc2f write first linker member header with symbol names grouped by member 2025-09-08 16:07:31 -07:00
Nikita SmithandRyan Fleury ee3832ea3b parallel for lib symbol search 2025-09-08 16:07:31 -07:00
Nikita SmithandRyan Fleury f2ee135439 fix up symbols visibility 2025-09-05 15:19:31 -07:00
Nikita SmithandRyan Fleury 6a3d7e65f3 remove year from the copyright 2025-09-05 15:19:31 -07:00
Nikita SmithandRyan Fleury c397b1dfb1 handle common section case 2025-09-05 15:19:30 -07:00
Nikita Smith 429ba8b080 helper for writing 32-bit address relocation 2025-08-18 19:09:32 -07:00
Nikita SmithandNikita Smith 1ce2fbfd1a helper for setting default symbol 2025-08-18 19:09:32 -07:00
Nikita SmithandNikita Smith 81c68cfdd3 register common and absolute symbols in library's symbol table 2025-08-18 19:09:31 -07:00
Nikita SmithandNikita Smith e27831902e note 2025-08-18 19:09:31 -07:00
Nikita SmithandNikita Smith c53b8d43d0 assign symbol indices before serializing symbols so forward-references
are possible
2025-08-18 19:09:31 -07:00
Nikita Smith 2b02f5cec6 lifetime fixes
- fully serialize the lib because we cannot guarantee that its members
  will have the same lifetime as the serialized lib
- put import stub symbols on the symbol table arena
2025-08-10 21:35:33 -07:00
Nikita Smith 7466da1479 mark referenced symbols as live for unresolved-symbol detection 2025-08-08 15:54:21 -07:00
Nikita SmithandRyan Fleury c1958809eb make use of undocumented anti-dependency search property on weak symbols
to implement alternate name using weak symbols
2025-08-05 08:39:11 -07:00
Nikita SmithandRyan Fleury a6b2cf64ba WIP collect sections associations 2025-07-23 16:09:48 -07:00
Nikita SmithandRyan Fleury d32667546d factor out weak symbol resolution logic and apply it to the symbol table
when building link context
2025-07-23 16:09:48 -07:00
Nikita SmithandRyan Fleury 7769a485ba more merge fixes 2025-06-25 10:53:25 -07:00
Nikita SmithandRyan Fleury a5119e3b51 WIP function pad min 2025-06-25 10:53:24 -07:00
Nikita SmithandRyan Fleury ecdee57c60 move helpers to COFF layer 2025-06-25 10:53:24 -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 2e531cd70a refactored special case for image base 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 671431cfbd remove unused define 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 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 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 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 f37f94a2b9 minor fixes 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 120829095b COFF lib writer 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