diff --git a/src/llvm_backend.cpp b/src/llvm_backend.cpp index 7e9d5bd73..2b139681e 100644 --- a/src/llvm_backend.cpp +++ b/src/llvm_backend.cpp @@ -2137,13 +2137,10 @@ gb_internal void lb_create_global_procedures_and_types(lbGenerator *gen, Checker String name = e->token.string; Scope * scope = e->scope; - if ((scope->flags & ScopeFlag_File) == 0) { + if ((scope->flags & (ScopeFlag_File)) == 0) { continue; } - Scope *package_scope = scope->parent; - GB_ASSERT(package_scope->flags & ScopeFlag_Pkg); - switch (e->kind) { case Entity_Variable: // NOTE(bill): Handled above as it requires a specific load order @@ -2483,6 +2480,7 @@ gb_internal WORKER_TASK_PROC(lb_generate_missing_procedures_to_check_worker_proc for (isize i = 0; i < m->missing_procedures_to_check.count; i++) { lbProcedure *p = m->missing_procedures_to_check[i]; debugf("Generate missing procedure: %.*s module %p\n", LIT(p->name), m); + // gb_printf_err("Generate missing procedure: %.*s module %p\n", LIT(p->name), m); lb_generate_procedure(m, p); } @@ -3531,6 +3529,8 @@ gb_internal bool lb_generate_code(lbGenerator *gen) { return false; } + thread_pool_wait(); + llvm_error = nullptr; defer (LLVMDisposeMessage(llvm_error)); @@ -3616,37 +3616,37 @@ gb_internal bool lb_generate_code(lbGenerator *gen) { // return false; // } - if (true) { - Array timings = {}; - array_init(&timings, heap_allocator(), 0, gen->module_timings.count); - defer (array_free(&timings)); + // if (false) { + // Array timings = {}; + // array_init(&timings, heap_allocator(), 0, gen->module_timings.count); + // defer (array_free(&timings)); - for (lbModuleTiming mt = {}; mpsc_dequeue(&gen->module_timings, &mt); /**/) { - array_add(&timings, mt); - } + // for (lbModuleTiming mt = {}; mpsc_dequeue(&gen->module_timings, &mt); /**/) { + // array_add(&timings, mt); + // } - array_sort(timings, [](void const *a, void const *b) -> int { - lbModuleTiming const *x = cast(lbModuleTiming *)a; - lbModuleTiming const *y = cast(lbModuleTiming *)b; + // array_sort(timings, [](void const *a, void const *b) -> int { + // lbModuleTiming const *x = cast(lbModuleTiming *)a; + // lbModuleTiming const *y = cast(lbModuleTiming *)b; - i64 t_x = cast(i64)(x->end - x->start); - i64 t_y = cast(i64)(y->end - y->start); + // i64 t_x = cast(i64)(x->end - x->start); + // i64 t_y = cast(i64)(y->end - y->start); - if (t_x < t_y) { - return +1; - } else if (t_x > t_y) { - return -1; - } - return 0; - }); + // if (t_x < t_y) { + // return +1; + // } else if (t_x > t_y) { + // return -1; + // } + // return 0; + // }); - for (lbModuleTiming const &mt : timings) { - f64 t = cast(f64)(mt.end - mt.start) / 1.0e3; - gb_printf_err("%s %.3f us - procedures %u\n", mt.m->module_name, t, mt.m->procedures.count); - } + // for (lbModuleTiming const &mt : timings) { + // f64 t = cast(f64)(mt.end - mt.start) / 1.0e3; + // gb_printf_err("%s %.3f us - procedures %u\n", mt.m->module_name, t, mt.m->procedures.count); + // } - return false; - } + // return false; + // } if (build_context.ignore_llvm_build) { diff --git a/src/llvm_backend_general.cpp b/src/llvm_backend_general.cpp index 76d8d2d5e..20059dd04 100644 --- a/src/llvm_backend_general.cpp +++ b/src/llvm_backend_general.cpp @@ -1512,7 +1512,6 @@ gb_internal void lb_clone_struct_type(LLVMTypeRef dst, LLVMTypeRef src) { } gb_internal String lb_get_entity_name(lbModule *m, Entity *e) { - GB_ASSERT(m != nullptr); GB_ASSERT(e != nullptr); if (e->kind == Entity_TypeName && e->TypeName.ir_mangled_name.len != 0) { return e->TypeName.ir_mangled_name;