[llvm] 43503c4 - [NFC][AArch64] isPureCmp is a duplicate of canAdjustCmp, so remove the duplicate (#183568)

via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 3 07:17:58 PST 2026


Author: SiliconA-Z
Date: 2026-03-03T15:17:52Z
New Revision: 43503c44c8d0d9ec6948c21e5ff79e2ec7babad1

URL: https://github.com/llvm/llvm-project/commit/43503c44c8d0d9ec6948c21e5ff79e2ec7babad1
DIFF: https://github.com/llvm/llvm-project/commit/43503c44c8d0d9ec6948c21e5ff79e2ec7babad1.diff

LOG: [NFC][AArch64] isPureCmp is a duplicate of canAdjustCmp, so remove the duplicate (#183568)

Just delete the duplicate function.

Added: 
    

Modified: 
    llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp b/llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
index 2e8e3a1a8e845..15e3657e8f549 100644
--- a/llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
+++ b/llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
@@ -123,7 +123,6 @@ class AArch64ConditionOptimizer : public MachineFunctionPass {
   void modifyCmp(MachineInstr *CmpMI, const CmpInfo &Info);
   bool adjustTo(MachineInstr *CmpMI, AArch64CC::CondCode Cmp, MachineInstr *To,
                 int ToImm);
-  bool isPureCmp(MachineInstr &CmpMI);
   bool optimizeIntraBlock(MachineBasicBlock &MBB);
   bool optimizeCrossBlock(MachineBasicBlock &HBB);
   bool runOnMachineFunction(MachineFunction &MF) override;
@@ -396,23 +395,6 @@ bool AArch64ConditionOptimizer::adjustTo(MachineInstr *CmpMI,
   return false;
 }
 
-bool AArch64ConditionOptimizer::isPureCmp(MachineInstr &CmpMI) {
-  unsigned ShiftAmt = AArch64_AM::getShiftValue(CmpMI.getOperand(3).getImm());
-  if (!CmpMI.getOperand(2).isImm()) {
-    LLVM_DEBUG(dbgs() << "Immediate of cmp is symbolic, " << CmpMI << '\n');
-    return false;
-  } else if (CmpMI.getOperand(2).getImm() << ShiftAmt >= 0xfff) {
-    LLVM_DEBUG(dbgs() << "Immediate of cmp may be out of range, " << CmpMI
-                      << '\n');
-    return false;
-  } else if (!MRI->use_nodbg_empty(CmpMI.getOperand(0).getReg())) {
-    LLVM_DEBUG(dbgs() << "Destination of cmp is not dead, " << CmpMI << '\n');
-    return false;
-  }
-
-  return true;
-}
-
 static bool isGreaterThan(AArch64CC::CondCode Cmp) {
   return Cmp == AArch64CC::GT || Cmp == AArch64CC::HI;
 }
@@ -480,7 +462,7 @@ bool AArch64ConditionOptimizer::optimizeIntraBlock(MachineBasicBlock &MBB) {
   if (!registersMatch(FirstCmp, SecondCmp))
     return false;
 
-  if (!isPureCmp(*FirstCmp) || !isPureCmp(*SecondCmp)) {
+  if (!canAdjustCmp(*FirstCmp) || !canAdjustCmp(*SecondCmp)) {
     LLVM_DEBUG(dbgs() << "One or both CMPs are not pure\n");
     return false;
   }


        


More information about the llvm-commits mailing list