| 58 | } |
| 59 | |
| 60 | bool SSAPropagator::IsPhiArgExecutable(Instruction* phi, uint32_t i) const { |
| 61 | BasicBlock* phi_bb = ctx_->get_instr_block(phi); |
| 62 | |
| 63 | uint32_t in_label_id = phi->GetSingleWordOperand(i + 1); |
| 64 | Instruction* in_label_instr = get_def_use_mgr()->GetDef(in_label_id); |
| 65 | BasicBlock* in_bb = ctx_->get_instr_block(in_label_instr); |
| 66 | |
| 67 | return IsEdgeExecutable(Edge(in_bb, phi_bb)); |
| 68 | } |
| 69 | |
| 70 | bool SSAPropagator::SetStatus(Instruction* inst, PropStatus status) { |
| 71 | bool has_old_status = false; |
no test coverage detected