@@ -788,6 +788,13 @@ def FeatureFlatAtomicFaddF32Inst
788
788
"Has flat_atomic_add_f32 instruction"
789
789
>;
790
790
791
+ def FeatureMemoryAtomicFAddF32DenormalSupport
792
+ : SubtargetFeature<"memory-atomic-fadd-f32-denormal-support",
793
+ "HasMemoryAtomicFaddF32DenormalSupport",
794
+ "true",
795
+ "global/flat/buffer atomic fadd for float supports denormal handling"
796
+ >;
797
+
791
798
def FeatureAgentScopeFineGrainedRemoteMemoryAtomics
792
799
: SubtargetFeature<"agent-scope-fine-grained-remote-memory-atomics",
793
800
"HasAgentScopeFineGrainedRemoteMemoryAtomics",
@@ -1427,7 +1434,8 @@ def FeatureISAVersion9_4_Common : FeatureSet<
1427
1434
FeatureKernargPreload,
1428
1435
FeatureAtomicFMinFMaxF64GlobalInsts,
1429
1436
FeatureAtomicFMinFMaxF64FlatInsts,
1430
- FeatureAgentScopeFineGrainedRemoteMemoryAtomics
1437
+ FeatureAgentScopeFineGrainedRemoteMemoryAtomics,
1438
+ FeatureMemoryAtomicFAddF32DenormalSupport
1431
1439
]>;
1432
1440
1433
1441
def FeatureISAVersion9_4_0 : FeatureSet<
@@ -1539,7 +1547,8 @@ def FeatureISAVersion11_Common : FeatureSet<
1539
1547
FeatureFlatAtomicFaddF32Inst,
1540
1548
FeatureImageInsts,
1541
1549
FeaturePackedTID,
1542
- FeatureVcmpxPermlaneHazard]>;
1550
+ FeatureVcmpxPermlaneHazard,
1551
+ FeatureMemoryAtomicFAddF32DenormalSupport]>;
1543
1552
1544
1553
// There are few workarounds that need to be
1545
1554
// added to all targets. This pessimizes codegen
@@ -1631,7 +1640,9 @@ def FeatureISAVersion12 : FeatureSet<
1631
1640
FeatureScalarDwordx3Loads,
1632
1641
FeatureDPPSrc1SGPR,
1633
1642
FeatureMaxHardClauseLength32,
1634
- Feature1_5xVGPRs]>;
1643
+ Feature1_5xVGPRs,
1644
+ FeatureMemoryAtomicFAddF32DenormalSupport
1645
+ ]>;
1635
1646
1636
1647
def FeatureISAVersion12_Generic: FeatureSet<
1637
1648
!listconcat(FeatureISAVersion12.Features,
0 commit comments