From 06e895be7c000bc6622d3b37a88a73dae3389c9f Mon Sep 17 00:00:00 2001 From: Nikita Smith Date: Tue, 23 Sep 2025 06:37:39 -0700 Subject: [PATCH] organize task structs --- src/linker/lnk.h | 63 +++++++++++++++++++++--------------------------- 1 file changed, 27 insertions(+), 36 deletions(-) diff --git a/src/linker/lnk.h b/src/linker/lnk.h index 8fb16449..fd96e826 100644 --- a/src/linker/lnk.h +++ b/src/linker/lnk.h @@ -194,6 +194,33 @@ typedef struct LNK_RelocRefsList *reloc_refs; } LNK_OptRefTask; +typedef struct +{ + String8 image_data; + LNK_Obj **objs; + U64 image_base; + COFF_SectionHeader **image_section_table; +} LNK_ObjRelocPatcher; + +typedef struct +{ + U64 page_size; + B32 is_large_addr_aware; + union { + struct { + LNK_Obj **objs; + LNK_BaseRelocPageList *pages; + HashTable **page_ht; + } gather; + struct { + U64 buffer_size; + U8 *buffer; + LNK_BaseRelocPageArray pages; + Rng1U64 *ranges; + } serialize; + }; +} LNK_BaseRelocsTask; + typedef struct LNK_ImageFillNode { U64 base_foff; @@ -241,42 +268,6 @@ typedef struct } u; } LNK_BuildImageTask; -typedef struct -{ - U64 page_size; - Rng1U64 *range_arr; - LNK_BaseRelocPageList *list_arr; - HashTable **page_ht_arr; - B32 is_large_addr_aware; -} LNK_BaseRelocTask; - -typedef struct -{ - U64 page_size; - B32 is_large_addr_aware; - union { - struct { - LNK_Obj **objs; - LNK_BaseRelocPageList *pages; - HashTable **page_ht; - } gather; - struct { - U64 buffer_size; - U8 *buffer; - LNK_BaseRelocPageArray pages; - Rng1U64 *ranges; - } serialize; - }; -} LNK_BaseRelocsTask; - -typedef struct -{ - String8 image_data; - LNK_Obj **objs; - U64 image_base; - COFF_SectionHeader **image_section_table; -} LNK_ObjRelocPatcher; - typedef struct { String8 path;