aboutsummaryrefslogtreecommitdiff
path: root/src/llvm_backend_proc.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2022-09-17 12:56:03 +0100
committergingerBill <bill@gingerbill.org>2022-09-17 12:56:03 +0100
commit0ebc2add030d224d59c0b8961dfa75a1f9d13b91 (patch)
tree626dd50254168b0f3d98d8bc3f79f5a680512aa4 /src/llvm_backend_proc.cpp
parent7840c1b89f3e6a7b3d962e6f5e96aab77a3ddc3b (diff)
Use a cache when generating the map header to minimize stack wastage
Diffstat (limited to 'src/llvm_backend_proc.cpp')
-rw-r--r--src/llvm_backend_proc.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/llvm_backend_proc.cpp b/src/llvm_backend_proc.cpp
index 8bbbb0c56..9e8158a88 100644
--- a/src/llvm_backend_proc.cpp
+++ b/src/llvm_backend_proc.cpp
@@ -121,8 +121,9 @@ lbProcedure *lb_create_procedure(lbModule *m, Entity *entity, bool ignore_body)
p->branch_blocks.allocator = a;
p->context_stack.allocator = a;
p->scope_stack.allocator = a;
- map_init(&p->selector_values, a, 0);
- map_init(&p->selector_addr, a, 0);
+ map_init(&p->selector_values, a, 0);
+ map_init(&p->selector_addr, a, 0);
+ map_init(&p->map_header_cache, a, 0);
if (p->is_foreign) {
lb_add_foreign_library_path(p->module, entity->Procedure.foreign_library);