public void UpdateBranchTarget(int index, BasicBlock block) { // no change, skip update if (branchTargets[index] == block) return; Block.RemoveBranchInstruction(this); branchTargets[index] = block; Block.AddBranchInstruction(this); }