aboutsummaryrefslogtreecommitdiff
path: root/src/llvm_backend.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2022-12-09 12:18:49 +0000
committergingerBill <bill@gingerbill.org>2022-12-09 12:18:49 +0000
commit5c3624eb86d1cad9076a3df198221101d92d8bde (patch)
tree3e4351c01029509a6d041c8b1185c2e159e83e56 /src/llvm_backend.cpp
parent144e357fd2cc85d16c04449730c25b0f1aa2390f (diff)
Fix map looping
Diffstat (limited to 'src/llvm_backend.cpp')
-rw-r--r--src/llvm_backend.cpp18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/llvm_backend.cpp b/src/llvm_backend.cpp
index 2433dc9ba..0a7aec95d 100644
--- a/src/llvm_backend.cpp
+++ b/src/llvm_backend.cpp
@@ -1725,18 +1725,17 @@ void lb_generate_code(lbGenerator *gen) {
break;
}
- for (auto const entry : gen->modules) {
- auto target_machine = LLVMCreateTargetMachine(
+ for (auto const &entry : gen->modules) {
+ LLVMTargetMachineRef target_machine = LLVMCreateTargetMachine(
target, target_triple, llvm_cpu,
llvm_features,
code_gen_level,
reloc_mode,
code_mode);
- array_add(&target_machines, target_machine);
-
lbModule *m = entry.value;
m->target_machine = target_machine;
LLVMSetModuleDataLayout(m->mod, LLVMCreateTargetDataLayout(target_machine));
+ array_add(&target_machines, target_machine);
}
for (auto const &entry : gen->modules) {
@@ -2134,7 +2133,8 @@ void lb_generate_code(lbGenerator *gen) {
TIME_SECTION("LLVM Procedure Generation");
for (auto const &entry : gen->modules) {
lbModule *m = entry.value;
- for (lbProcedure *p : m->procedures_to_generate) {
+ for_array(i, m->procedures_to_generate) {
+ lbProcedure *p = m->procedures_to_generate[i];
lb_generate_procedure(m, p);
}
}
@@ -2146,7 +2146,8 @@ void lb_generate_code(lbGenerator *gen) {
for (auto const &entry : gen->modules) {
lbModule *m = entry.value;
- for (lbProcedure *p : m->missing_procedures_to_check) {
+ for_array(i, m->missing_procedures_to_check) {
+ lbProcedure *p = m->missing_procedures_to_check[i];
debugf("Generate missing procedure: %.*s\n", LIT(p->name));
lb_generate_procedure(m, p);
}
@@ -2177,7 +2178,6 @@ void lb_generate_code(lbGenerator *gen) {
for (auto const &entry : gen->modules) {
lbModule *m = entry.value;
-
lb_run_remove_unused_function_pass(m);
lb_run_remove_unused_globals_pass(m);
@@ -2222,7 +2222,6 @@ void lb_generate_code(lbGenerator *gen) {
for (auto const &entry : gen->modules) {
lbModule *m = entry.value;
-
if (lb_is_module_empty(m)) {
continue;
}
@@ -2246,7 +2245,8 @@ void lb_generate_code(lbGenerator *gen) {
for (auto const &entry : gen->modules) {
lbModule *m = entry.value;
- for (Entity *e : m->info->required_foreign_imports_through_force) {
+ for_array(i, m->info->required_foreign_imports_through_force) {
+ Entity *e = m->info->required_foreign_imports_through_force[i];
lb_add_foreign_library_path(m, e);
}