aboutsummaryrefslogtreecommitdiff
path: root/src/ir.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ir.cpp')
-rw-r--r--src/ir.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/ir.cpp b/src/ir.cpp
index 35b6b4cef4..a12bd054a7 100644
--- a/src/ir.cpp
+++ b/src/ir.cpp
@@ -246,6 +246,8 @@ static void ir_ref_bb(IrBasicBlock *bb) {
static void ir_ref_instruction(IrInstruction *instruction, IrBasicBlock *cur_bb) {
assert(instruction->id != IrInstructionIdInvalid);
instruction->ref_count += 1;
+ if (instruction->owner_bb != cur_bb && !instr_is_comptime(instruction))
+ ir_ref_bb(instruction->owner_bb);
}
static void ir_ref_var(VariableTableEntry *var) {