diff options
| author | gingerBill <gingerBill@users.noreply.github.com> | 2025-09-19 14:15:25 +0100 |
|---|---|---|
| committer | gingerBill <gingerBill@users.noreply.github.com> | 2025-09-19 14:15:25 +0100 |
| commit | 6bca1475edb8e2aec4bcbe942835bcc54f9e837e (patch) | |
| tree | f3722ed3c238c49b515b67b3723f366a020652f3 /src/llvm_backend.hpp | |
| parent | ee3b10335b09181808fd98ccf46fe9369a11db13 (diff) | |
Convert `procedures_to_generate` to a queue
Diffstat (limited to 'src/llvm_backend.hpp')
| -rw-r--r-- | src/llvm_backend.hpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/llvm_backend.hpp b/src/llvm_backend.hpp index 7fe4651bb..6d94df399 100644 --- a/src/llvm_backend.hpp +++ b/src/llvm_backend.hpp @@ -186,10 +186,13 @@ struct lbModule { StringMap<lbProcedure *> gen_procs; // key is the canonicalized name - Array<lbProcedure *> procedures_to_generate; + MPSCQueue<lbProcedure *> procedures_to_generate; Array<Entity *> global_procedures_to_create; Array<Entity *> global_types_to_create; + BlockingMutex generated_procedures_mutex; + Array<lbProcedure *> generated_procedures; + lbProcedure *curr_procedure; LLVMBuilderRef const_dummy_builder; @@ -238,6 +241,8 @@ struct lbGenerator : LinkerData { PtrMap<LLVMContextRef, lbModule *> modules_through_ctx; lbModule default_module; + lbModule *equal_module; + isize used_module_count; lbProcedure *startup_runtime; |