Add #no_capture args: ..T to reuse the backing array stack memory

This commit is contained in:
gingerBill
2024-07-14 11:39:05 +01:00
parent f98a7b84df
commit edc793d7c1
12 changed files with 136 additions and 57 deletions
+7
View File
@@ -296,6 +296,11 @@ enum lbProcedureFlag : u32 {
lbProcedureFlag_DebugAllocaCopy = 1<<1,
};
struct lbNoCaptureData {
Type *slice_type;
lbAddr base_array;
};
struct lbProcedure {
u32 flags;
u16 state_flags;
@@ -336,6 +341,8 @@ struct lbProcedure {
bool in_multi_assignment;
Array<LLVMValueRef> raw_input_parameters;
Array<lbNoCaptureData> no_captures;
LLVMValueRef temp_callee_return_struct_memory;
Ast *curr_stmt;