From: Philip Reames Date: Fri, 27 Jan 2023 19:52:22 +0000 (-0800) Subject: Revert "[BranchRelaxation] Move faulting_op check into callee [nfc]" X-Git-Tag: upstream/17.0.6~19376 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=36244914b42e9ec6b9f01d95efe17c693ae950bc;p=platform%2Fupstream%2Fllvm.git Revert "[BranchRelaxation] Move faulting_op check into callee [nfc]" This reverts commit c549da959b81902789a17918c5b95d4449e6fdfa. Per buildbots, this was not NFC. --- diff --git a/llvm/lib/CodeGen/BranchRelaxation.cpp b/llvm/lib/CodeGen/BranchRelaxation.cpp index 81d1361..016c81d 100644 --- a/llvm/lib/CodeGen/BranchRelaxation.cpp +++ b/llvm/lib/CodeGen/BranchRelaxation.cpp @@ -284,12 +284,6 @@ MachineBasicBlock *BranchRelaxation::splitBlockBeforeInstr(MachineInstr &MI, /// specific BB can fit in MI's displacement field. bool BranchRelaxation::isBlockInRange( const MachineInstr &MI, const MachineBasicBlock &DestBB) const { - - // FAULTING_OP's destination is not encoded in the instruction stream - // and thus always in range. - if (MI.getOpcode() == TargetOpcode::FAULTING_OP) - return true; - int64_t BrOffset = getInstrOffset(MI); int64_t DestOffset = BlockInfo[DestBB.getNumber()].Offset; @@ -564,6 +558,11 @@ bool BranchRelaxation::relaxBranchInstructions() { if (!MI.isConditionalBranch()) continue; + if (MI.getOpcode() == TargetOpcode::FAULTING_OP) + // FAULTING_OP's destination is not encoded in the instruction stream + // and thus never needs relaxed. + continue; + MachineBasicBlock *DestBB = TII->getBranchDestBlock(MI); if (!isBlockInRange(MI, *DestBB)) { if (Next != MBB.end() && Next->isConditionalBranch()) {