[llvm] 7dc7d0e - AMDGPU: Remove subtarget feature hacking in AsmParser (#159227)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 16 20:09:57 PDT 2025
Author: Matt Arsenault
Date: 2025-09-17T12:09:53+09:00
New Revision: 7dc7d0e1294cd29fb13b53aaca3f97c266bcbd3d
URL: https://github.com/llvm/llvm-project/commit/7dc7d0e1294cd29fb13b53aaca3f97c266bcbd3d
DIFF: https://github.com/llvm/llvm-project/commit/7dc7d0e1294cd29fb13b53aaca3f97c266bcbd3d.diff
LOG: AMDGPU: Remove subtarget feature hacking in AsmParser (#159227)
The wavesize hacking part was already done in
createAMDGPUMCSubtargetInfo, and we can move the default
target hack there too.
Added:
Modified:
llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp b/llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
index f4d78d9dedefc..2ced4d6813766 100644
--- a/llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
+++ b/llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
@@ -1442,20 +1442,6 @@ class AMDGPUAsmParser : public MCTargetAsmParser {
: MCTargetAsmParser(Options, STI, MII), Parser(_Parser) {
MCAsmParserExtension::Initialize(Parser);
- if (getFeatureBits().none()) {
- // Set default features.
- copySTI().ToggleFeature("southern-islands");
- }
-
- FeatureBitset FB = getFeatureBits();
- if (!FB[AMDGPU::FeatureWavefrontSize64] &&
- !FB[AMDGPU::FeatureWavefrontSize32]) {
- // If there is no default wave size it must be a generation before gfx10,
- // these have FeatureWavefrontSize64 in their definition already. For
- // gfx10+ set wave32 as a default.
- copySTI().ToggleFeature(AMDGPU::FeatureWavefrontSize32);
- }
-
setAvailableFeatures(ComputeAvailableFeatures(getFeatureBits()));
AMDGPU::IsaVersion ISA = AMDGPU::getIsaVersion(getSTI().getCPU());
diff --git a/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp b/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp
index 90c56f6901460..f2e2d0ed3f8a6 100644
--- a/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp
+++ b/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp
@@ -83,6 +83,9 @@ createAMDGPUMCSubtargetInfo(const Triple &TT, StringRef CPU, StringRef FS) {
createAMDGPUMCSubtargetInfoImpl(TT, CPU, /*TuneCPU*/ CPU, FS);
// FIXME: We should error for the default target.
+ if (STI->getFeatureBits().none())
+ STI->ToggleFeature(AMDGPU::FeatureSouthernIslands);
+
if (!STI->hasFeature(AMDGPU::FeatureWavefrontSize64) &&
!STI->hasFeature(AMDGPU::FeatureWavefrontSize32)) {
// If there is no default wave size it must be a generation before gfx10,
More information about the llvm-commits
mailing list