Revert "[BranchRelaxation] Move faulting_op check into callee [nfc]"
authorPhilip Reames <preames@rivosinc.com>
Fri, 27 Jan 2023 19:52:22 +0000 (11:52 -0800)
committerPhilip Reames <listmail@philipreames.com>
Fri, 27 Jan 2023 19:52:22 +0000 (11:52 -0800)
This reverts commit c549da959b81902789a17918c5b95d4449e6fdfa.  Per buildbots, this was not NFC.

llvm/lib/CodeGen/BranchRelaxation.cpp

index 81d1361..016c81d 100644 (file)
@@ -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()) {