From bd1689ae8986fce29b64498dc6f959ff609d8288 Mon Sep 17 00:00:00 2001 From: Martin Wickham Date: Sun, 11 Jul 2021 19:16:57 -0500 Subject: [PATCH] Remove Stage1AirInst::owner_bb, use zir owner instead. --- src/stage1/all_types.hpp | 1 - src/stage1/ir.cpp | 4 +--- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/src/stage1/all_types.hpp b/src/stage1/all_types.hpp index fa201f6bdf..c673922335 100644 --- a/src/stage1/all_types.hpp +++ b/src/stage1/all_types.hpp @@ -2744,7 +2744,6 @@ struct Stage1AirInst { LLVMValueRef llvm_value; ZigValue *value; - Stage1AirBasicBlock *owner_bb; // Nearly any instruction can have to be stored as a local variable before suspending // and then loaded after resuming, in case there is an expression with a suspend point // in it, such as: x + await y diff --git a/src/stage1/ir.cpp b/src/stage1/ir.cpp index e92512e9ca..1b7f500b6d 100644 --- a/src/stage1/ir.cpp +++ b/src/stage1/ir.cpp @@ -1116,7 +1116,6 @@ static T *ir_create_inst_gen(IrBuilderGen *irb, Scope *scope, AstNode *source_no special_instruction->base.scope = scope; special_instruction->base.source_node = source_node; special_instruction->base.debug_id = exec_next_debug_id_gen(irb->exec); - special_instruction->base.owner_bb = irb->current_basic_block; special_instruction->base.value = irb->codegen->pass1_arena->create(); return special_instruction; } @@ -1128,7 +1127,6 @@ static T *ir_create_inst_noval(IrBuilderGen *irb, Scope *scope, AstNode *source_ special_instruction->base.scope = scope; special_instruction->base.source_node = source_node; special_instruction->base.debug_id = exec_next_debug_id_gen(irb->exec); - special_instruction->base.owner_bb = irb->current_basic_block; return special_instruction; } @@ -14024,7 +14022,7 @@ static Stage1AirInst *ir_analyze_instruction_phi(IrAnalyze *ira, Stage1ZirInstPh instrs_to_move.append(ira->new_irb.current_basic_block->instruction_list.pop()); } if (instrs_to_move.length != 0) { - Stage1AirBasicBlock *predecessor = peer_parent->base.source_instruction->child->owner_bb; + Stage1AirBasicBlock *predecessor = peer_parent->base.source_instruction->owner_bb->child; Stage1AirInst *branch_instruction = predecessor->instruction_list.pop(); src_assert(branch_instruction->value->type->id == ZigTypeIdUnreachable, phi_instruction->base.source_node);