[llvm] [AMDGPU] Remove trivially true predicates from GCNSubtarget. NFC. (PR #172830)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Dec 18 02:28:15 PST 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-backend-amdgpu
Author: Jay Foad (jayfoad)
<details>
<summary>Changes</summary>
---
Full diff: https://github.com/llvm/llvm-project/pull/172830.diff
2 Files Affected:
- (modified) llvm/lib/Target/AMDGPU/GCNSubtarget.h (-28)
- (modified) llvm/lib/Target/AMDGPU/SIISelLowering.cpp (+3-17)
``````````diff
diff --git a/llvm/lib/Target/AMDGPU/GCNSubtarget.h b/llvm/lib/Target/AMDGPU/GCNSubtarget.h
index b1b0d69960ae4..1cd434a9948a4 100644
--- a/llvm/lib/Target/AMDGPU/GCNSubtarget.h
+++ b/llvm/lib/Target/AMDGPU/GCNSubtarget.h
@@ -454,30 +454,6 @@ class GCNSubtarget final : public AMDGPUGenSubtargetInfo,
return getGeneration() == SOUTHERN_ISLANDS;
}
- bool hasBFE() const {
- return true;
- }
-
- bool hasBFI() const {
- return true;
- }
-
- bool hasBFM() const {
- return hasBFE();
- }
-
- bool hasBCNT(unsigned Size) const {
- return true;
- }
-
- bool hasFFBL() const {
- return true;
- }
-
- bool hasFFBH() const {
- return true;
- }
-
bool hasMed3_16() const {
return getGeneration() >= AMDGPUSubtarget::GFX9;
}
@@ -492,10 +468,6 @@ class GCNSubtarget final : public AMDGPUGenSubtargetInfo,
bool hasFmaMixBF16Insts() const { return HasFmaMixBF16Insts; }
- bool hasCARRY() const {
- return true;
- }
-
bool hasFMA() const {
return FMA;
}
diff --git a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
index afdeed658b76e..102ca92856bae 100644
--- a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+++ b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
@@ -512,21 +512,8 @@ SITargetLowering::SITargetLowering(const TargetMachine &TM,
if (Subtarget->hasMadMacF32Insts())
setOperationAction(ISD::FMAD, MVT::f32, Legal);
- if (!Subtarget->hasBFI())
- // fcopysign can be done in a single instruction with BFI.
- setOperationAction(ISD::FCOPYSIGN, {MVT::f32, MVT::f64}, Expand);
-
- if (!Subtarget->hasBCNT(32))
- setOperationAction(ISD::CTPOP, MVT::i32, Expand);
-
- if (!Subtarget->hasBCNT(64))
- setOperationAction(ISD::CTPOP, MVT::i64, Expand);
-
- if (Subtarget->hasFFBH())
- setOperationAction({ISD::CTLZ, ISD::CTLZ_ZERO_UNDEF}, MVT::i32, Custom);
-
- if (Subtarget->hasFFBL())
- setOperationAction({ISD::CTTZ, ISD::CTTZ_ZERO_UNDEF}, MVT::i32, Custom);
+ setOperationAction({ISD::CTLZ, ISD::CTLZ_ZERO_UNDEF}, MVT::i32, Custom);
+ setOperationAction({ISD::CTTZ, ISD::CTTZ_ZERO_UNDEF}, MVT::i32, Custom);
// We only really have 32-bit BFE instructions (and 16-bit on VI).
//
@@ -536,8 +523,7 @@ SITargetLowering::SITargetLowering(const TargetMachine &TM,
// have some pass reduce 64-bit extracts to 32-bit if possible. Extracts that
// span the midpoint are probably relatively rare, so don't worry about them
// for now.
- if (Subtarget->hasBFE())
- setHasExtractBitsInsn(true);
+ setHasExtractBitsInsn(true);
// Clamp modifier on add/sub
if (Subtarget->hasIntClamp())
``````````
</details>
https://github.com/llvm/llvm-project/pull/172830
More information about the llvm-commits
mailing list