authorgravatar for michael.dusan@gmail.comMichael Dusan <michael.dusan@gmail.com> 2020-04-21 08:22:21-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-04-21 18:07:48-04:00
log73677e178d4377a3e51d4c7e8cba5185fa796b45
treee8e1cc59d3fa64f833841c5e095920a1b80051e6
parent78e2a203e3d80222e7049ddb8ec6ceec7d39a6c9

cleanup: IrBasicBlockGen

remove unused members { parent, index, ref_count }

2 files changed, 1 insertions(+), 24 deletions(-)

src/all_types.hpp-3
......@@ -2590,11 +2590,8 @@ struct IrBasicBlockSrc {
25902590
25912591struct IrBasicBlockGen {
25922592 ZigList<IrInstGen *> instruction_list;
2593 IrBasicBlockSrc *parent;
25942593 Scope *scope;
25952594 const char *name_hint;
2596 uint32_t index; // index into the basic block list
2597 uint32_t ref_count;
25982595 LLVMBasicBlockRef llvm_block;
25992596 LLVMBasicBlockRef llvm_exit_block;
26002597 // The instruction that referenced this basic block and caused us to
src/ir.cpp+1-21
......@@ -997,19 +997,10 @@ static bool instr_is_unreachable(IrInstSrc *instruction) {
997997 return instruction->is_noreturn;
998998}
999999
1000static void ir_link_new_bb(IrBasicBlockGen *new_bb, IrBasicBlockSrc *old_bb) {
1001 new_bb->parent = old_bb;
1002 old_bb->child = new_bb;
1003}
1004
10051000static void ir_ref_bb(IrBasicBlockSrc *bb) {
10061001 bb->ref_count += 1;
10071002}
10081003
1009static void ir_ref_bb_gen(IrBasicBlockGen *bb) {
1010 bb->ref_count += 1;
1011}
1012
10131004static void ir_ref_instruction(IrInstSrc *instruction, IrBasicBlockSrc *cur_bb) {
10141005 assert(instruction->id != IrInstSrcIdInvalid);
10151006 instruction->base.ref_count += 1;
......@@ -1023,8 +1014,6 @@ static void ir_ref_instruction(IrInstSrc *instruction, IrBasicBlockSrc *cur_bb)
10231014static void ir_ref_inst_gen(IrInstGen *instruction, IrBasicBlockGen *cur_bb) {
10241015 assert(instruction->id != IrInstGenIdInvalid);
10251016 instruction->base.ref_count += 1;
1026 if (instruction->owner_bb != cur_bb && !instr_is_comptime(instruction))
1027 ir_ref_bb_gen(instruction->owner_bb);
10281017}
10291018
10301019static void ir_ref_var(ZigVar *var) {
......@@ -1084,13 +1073,12 @@ static IrBasicBlockGen *ir_create_basic_block_gen(IrAnalyze *ira, Scope *scope,
10841073 result->scope = scope;
10851074 result->name_hint = name_hint;
10861075 result->debug_id = exec_next_debug_id_gen(ira->new_irb.exec);
1087 result->index = UINT32_MAX; // set later
10881076 return result;
10891077}
10901078
10911079static IrBasicBlockGen *ir_build_bb_from(IrAnalyze *ira, IrBasicBlockSrc *other_bb) {
10921080 IrBasicBlockGen *new_bb = ir_create_basic_block_gen(ira, other_bb->scope, other_bb->name_hint);
1093 ir_link_new_bb(new_bb, other_bb);
1081 other_bb->child = new_bb;
10941082 return new_bb;
10951083}
10961084
......@@ -2082,8 +2070,6 @@ static IrInstGen *ir_build_cond_br_gen(IrAnalyze *ira, IrInst *source_instr, IrI
20822070 inst->else_block = else_block;
20832071
20842072 ir_ref_inst_gen(condition, ira->new_irb.current_basic_block);
2085 ir_ref_bb_gen(then_block);
2086 ir_ref_bb_gen(else_block);
20872073
20882074 return &inst->base;
20892075}
......@@ -2527,7 +2513,6 @@ static IrInstGen *ir_build_phi_gen(IrAnalyze *ira, IrInst *source_instr, size_t
25272513 phi_instruction->incoming_values = incoming_values;
25282514
25292515 for (size_t i = 0; i < incoming_count; i += 1) {
2530 ir_ref_bb_gen(incoming_blocks[i]);
25312516 ir_ref_inst_gen(incoming_values[i], ira->new_irb.current_basic_block);
25322517 }
25332518
......@@ -2552,8 +2537,6 @@ static IrInstGen *ir_build_br_gen(IrAnalyze *ira, IrInst *source_instr, IrBasicB
25522537 IrInstGenBr *inst = ir_build_inst_noreturn<IrInstGenBr>(&ira->new_irb, source_instr->scope, source_instr->source_node);
25532538 inst->dest_block = dest_block;
25542539
2555 ir_ref_bb_gen(dest_block);
2556
25572540 return &inst->base;
25582541}
25592542
......@@ -3219,11 +3202,9 @@ static IrInstGenSwitchBr *ir_build_switch_br_gen(IrAnalyze *ira, IrInst *source_
32193202 instruction->cases = cases;
32203203
32213204 ir_ref_inst_gen(target_value, ira->new_irb.current_basic_block);
3222 ir_ref_bb_gen(else_block);
32233205
32243206 for (size_t i = 0; i < case_count; i += 1) {
32253207 ir_ref_inst_gen(cases[i].value, ira->new_irb.current_basic_block);
3226 ir_ref_bb_gen(cases[i].block);
32273208 }
32283209
32293210 return instruction;
......@@ -30590,7 +30571,6 @@ ZigType *ir_analyze(CodeGen *codegen, IrExecutableSrc *old_exec, IrExecutableGen
3059030571
3059130572 IrBasicBlockSrc *old_entry_bb = ira->old_irb.exec->basic_block_list.at(0);
3059230573 IrBasicBlockGen *new_entry_bb = ir_get_new_bb(ira, old_entry_bb, nullptr);
30593 ir_ref_bb_gen(new_entry_bb);
3059430574 ira->new_irb.current_basic_block = new_entry_bb;
3059530575 ira->old_bb_index = 0;
3059630576