Update LLVM backend to begin work on a generic ABI system

This commit is contained in:
gingerBill
2020-11-12 00:43:49 +00:00
parent 6ee4f51670
commit 70b8b3c7dd
4 changed files with 1322 additions and 176 deletions
+3
View File
@@ -74,6 +74,7 @@ struct lbModule {
gbMutex mutex;
Map<LLVMTypeRef> types; // Key: Type *
i32 internal_type_level;
Map<lbValue> values; // Key: Entity *
StringMap<lbValue> members;
@@ -83,6 +84,7 @@ struct lbModule {
StringMap<LLVMValueRef> const_strings;
Map<lbProcedure *> anonymous_proc_lits; // Key: Ast *
Map<struct lbFunctionType *> function_type_map; // Key: Type *
u32 global_array_index;
u32 global_generated_index;
@@ -199,6 +201,7 @@ struct lbProcedure {
bool is_entry_point;
bool is_startup;
lbFunctionType *abi_function_type;
LLVMValueRef value;
LLVMBuilderRef builder;