File tree Expand file tree Collapse file tree 2 files changed +11
-1
lines changed Expand file tree Collapse file tree 2 files changed +11
-1
lines changed Original file line number Diff line number Diff line change @@ -419,6 +419,12 @@ def FeatureGFX9Insts : SubtargetFeature<"gfx9-insts",
419
419
"Additional instructions for GFX9+"
420
420
>;
421
421
422
+ def FeatureRequiresAlignedVGPRs : SubtargetFeature<"vgpr-align2",
423
+ "RequiresAlignVGPR",
424
+ "true",
425
+ "VGPR and AGPR tuple operands require even alignment"
426
+ >;
427
+
422
428
def FeatureGFX90AInsts : SubtargetFeature<"gfx90a-insts",
423
429
"GFX90AInsts",
424
430
"true",
@@ -1721,6 +1727,7 @@ def FeatureISAVersion9_0_9 : FeatureSet<
1721
1727
def FeatureISAVersion9_0_A : FeatureSet<
1722
1728
!listconcat(FeatureISAVersion9_0_MI_Common.Features,
1723
1729
[FeatureGFX90AInsts,
1730
+ FeatureRequiresAlignedVGPRs,
1724
1731
FeatureFmacF64Inst,
1725
1732
FeatureDPALU_DPP,
1726
1733
FeaturePackedFP32Ops,
@@ -1743,6 +1750,7 @@ def FeatureISAVersion9_4_Common : FeatureSet<
1743
1750
[FeatureGFX9,
1744
1751
FeatureGFX90AInsts,
1745
1752
FeatureGFX940Insts,
1753
+ FeatureRequiresAlignedVGPRs,
1746
1754
FeatureFmaMixInsts,
1747
1755
FeatureLDSBankCount32,
1748
1756
FeatureDLInsts,
@@ -2019,6 +2027,7 @@ def FeatureISAVersion12 : FeatureSet<
2019
2027
def FeatureISAVersion12_50 : FeatureSet<
2020
2028
[FeatureGFX12,
2021
2029
FeatureGFX1250Insts,
2030
+ FeatureRequiresAlignedVGPRs,
2022
2031
FeatureCUStores,
2023
2032
FeatureAddressableLocalMemorySize327680,
2024
2033
FeatureCuMode,
Original file line number Diff line number Diff line change @@ -198,6 +198,7 @@ class GCNSubtarget final : public AMDGPUGenSubtargetInfo,
198
198
bool DynamicVGPR = false ;
199
199
bool DynamicVGPRBlockSize32 = false ;
200
200
bool HasVMemToLDSLoad = false ;
201
+ bool RequiresAlignVGPR = false ;
201
202
202
203
// This should not be used directly. 'TargetID' tracks the dynamic settings
203
204
// for SRAMECC.
@@ -1350,7 +1351,7 @@ class GCNSubtarget final : public AMDGPUGenSubtargetInfo,
1350
1351
}
1351
1352
1352
1353
// / Return if operations acting on VGPR tuples require even alignment.
1353
- bool needsAlignedVGPRs () const { return GFX90AInsts || GFX1250Insts ; }
1354
+ bool needsAlignedVGPRs () const { return RequiresAlignVGPR ; }
1354
1355
1355
1356
// / Return true if the target has the S_PACK_HL_B32_B16 instruction.
1356
1357
bool hasSPackHL () const { return GFX11Insts; }
You can’t perform that action at this time.
0 commit comments