moved async bakers from PDB converter to a stand-alone file to reuse

them in DWARF converter
This commit is contained in:
Nikita Smith
2025-03-03 17:09:01 -08:00
parent 53bff614e6
commit 8b4f97223e
8 changed files with 1280 additions and 1177 deletions
+22
View File
@@ -652,6 +652,28 @@ rdim_unit_chunk_list_concat_in_place(RDIM_UnitChunkList *dst, RDIM_UnitChunkList
////////////////////////////////
//~ rjf: [Building] Type Info Building
RDI_PROC RDIM_Type **
rdim_array_from_type_list(RDIM_Arena *arena, RDIM_TypeList list)
{
RDIM_Type **arr = push_array(arena, RDIM_Type *, list.count);
U64 i = 0;
for(RDIM_TypeNode *n = list.first; n != 0; n = n->next, ++i)
{
arr[i] = n->v;
}
return arr;
}
RDI_PROC RDIM_TypeNode *
rdim_type_list_push(RDIM_Arena *arena, RDIM_TypeList *list, RDIM_Type *v)
{
RDIM_TypeNode *n = push_array(arena, RDIM_TypeNode, 1);
n->v = v;
SLLQueuePush(list->first, list->last, n);
list->count += 1;
return n;
}
RDI_PROC RDIM_Type *
rdim_type_chunk_list_push(RDIM_Arena *arena, RDIM_TypeChunkList *list, RDI_U64 cap)
{
+15
View File
@@ -610,6 +610,21 @@ struct RDIM_Type
struct RDIM_UDT *udt;
};
typedef struct RDIM_TypeNode RDIM_TypeNode;
struct RDIM_TypeNode
{
struct RDIM_TypeNode *next;
RDIM_Type *v;
};
typedef struct RDIM_TypeList RDIM_TypeList;
struct RDIM_TypeList
{
U64 count;
RDIM_TypeNode *first;
RDIM_TypeNode *last;
};
typedef struct RDIM_TypeChunkNode RDIM_TypeChunkNode;
struct RDIM_TypeChunkNode
{