@@ -984,6 +984,12 @@ def FeatureGWS : SubtargetFeature<"gws",
984984 "Has Global Wave Sync"
985985>;
986986
987+ def FeatureRequiresCOV6 : SubtargetFeature<"requires-cov6",
988+ "RequiresCOV6",
989+ "true",
990+ "Target Requires Code Object V6"
991+ >;
992+
987993// Dummy feature used to disable assembler instructions.
988994def FeatureDisable : SubtargetFeature<"",
989995 "FeatureDisable","true",
@@ -1193,6 +1199,17 @@ def FeatureISAVersion9_0_Common : FeatureSet<
11931199 FeatureImageInsts,
11941200 FeatureMadMacF32Insts]>;
11951201
1202+ def FeatureISAVersion9_0_Consumer_Common : FeatureSet<
1203+ !listconcat(FeatureISAVersion9_0_Common.Features,
1204+ [FeatureImageGather4D16Bug,
1205+ FeatureDsSrc2Insts,
1206+ FeatureExtendedImageInsts,
1207+ FeatureGDS])>;
1208+
1209+ def FeatureISAVersion9_Generic : FeatureSet<
1210+ !listconcat(FeatureISAVersion9_0_Consumer_Common.Features,
1211+ [FeatureRequiresCOV6])>;
1212+
11961213def FeatureISAVersion9_0_MI_Common : FeatureSet<
11971214 !listconcat(FeatureISAVersion9_0_Common.Features,
11981215 [FeatureFmaMixInsts,
@@ -1211,43 +1228,27 @@ def FeatureISAVersion9_0_MI_Common : FeatureSet<
12111228 FeatureSupportsSRAMECC])>;
12121229
12131230def FeatureISAVersion9_0_0 : FeatureSet<
1214- !listconcat(FeatureISAVersion9_0_Common.Features,
1215- [FeatureGDS,
1216- FeatureMadMixInsts,
1217- FeatureDsSrc2Insts,
1218- FeatureExtendedImageInsts,
1219- FeatureImageGather4D16Bug])>;
1231+ !listconcat(FeatureISAVersion9_0_Consumer_Common.Features,
1232+ [FeatureMadMixInsts])>;
12201233
12211234def FeatureISAVersion9_0_2 : FeatureSet<
1222- !listconcat(FeatureISAVersion9_0_Common.Features,
1223- [FeatureGDS,
1224- FeatureMadMixInsts,
1225- FeatureDsSrc2Insts,
1226- FeatureExtendedImageInsts,
1227- FeatureImageGather4D16Bug])>;
1235+ !listconcat(FeatureISAVersion9_0_Consumer_Common.Features,
1236+ [FeatureMadMixInsts])>;
12281237
12291238def FeatureISAVersion9_0_4 : FeatureSet<
1230- !listconcat(FeatureISAVersion9_0_Common.Features,
1231- [FeatureGDS,
1232- FeatureDsSrc2Insts,
1233- FeatureExtendedImageInsts,
1234- FeatureFmaMixInsts,
1235- FeatureImageGather4D16Bug])>;
1239+ !listconcat(FeatureISAVersion9_0_Consumer_Common.Features,
1240+ [FeatureFmaMixInsts])>;
12361241
12371242def FeatureISAVersion9_0_6 : FeatureSet<
1238- !listconcat(FeatureISAVersion9_0_Common.Features,
1239- [FeatureGDS,
1240- HalfRate64Ops,
1243+ !listconcat(FeatureISAVersion9_0_Consumer_Common.Features,
1244+ [HalfRate64Ops,
12411245 FeatureFmaMixInsts,
1242- FeatureDsSrc2Insts,
1243- FeatureExtendedImageInsts,
12441246 FeatureDLInsts,
12451247 FeatureDot1Insts,
12461248 FeatureDot2Insts,
12471249 FeatureDot7Insts,
12481250 FeatureDot10Insts,
1249- FeatureSupportsSRAMECC,
1250- FeatureImageGather4D16Bug])>;
1251+ FeatureSupportsSRAMECC])>;
12511252
12521253def FeatureISAVersion9_0_8 : FeatureSet<
12531254 !listconcat(FeatureISAVersion9_0_MI_Common.Features,
@@ -1260,13 +1261,9 @@ def FeatureISAVersion9_0_8 : FeatureSet<
12601261 FeatureImageGather4D16Bug])>;
12611262
12621263def FeatureISAVersion9_0_9 : FeatureSet<
1263- !listconcat(FeatureISAVersion9_0_Common.Features,
1264- [FeatureGDS,
1265- FeatureMadMixInsts,
1266- FeatureDsSrc2Insts,
1267- FeatureExtendedImageInsts,
1268- FeatureImageInsts,
1269- FeatureImageGather4D16Bug])>;
1264+ !listconcat(FeatureISAVersion9_0_Consumer_Common.Features,
1265+ [FeatureMadMixInsts,
1266+ FeatureImageInsts])>;
12701267
12711268def FeatureISAVersion9_0_A : FeatureSet<
12721269 !listconcat(FeatureISAVersion9_0_MI_Common.Features,
@@ -1282,12 +1279,8 @@ def FeatureISAVersion9_0_A : FeatureSet<
12821279 FeatureKernargPreload])>;
12831280
12841281def FeatureISAVersion9_0_C : FeatureSet<
1285- !listconcat(FeatureISAVersion9_0_Common.Features,
1286- [FeatureGDS,
1287- FeatureMadMixInsts,
1288- FeatureDsSrc2Insts,
1289- FeatureExtendedImageInsts,
1290- FeatureImageGather4D16Bug])>;
1282+ !listconcat(FeatureISAVersion9_0_Consumer_Common.Features,
1283+ [FeatureMadMixInsts])>;
12911284
12921285def FeatureISAVersion9_4_Common : FeatureSet<
12931286 [FeatureGFX9,
@@ -1367,6 +1360,10 @@ def FeatureISAVersion10_1_Common : FeatureSet<
13671360 FeatureFlatSegmentOffsetBug,
13681361 FeatureNegativeUnalignedScratchOffsetBug])>;
13691362
1363+ def FeatureISAVersion10_1_Generic : FeatureSet<
1364+ !listconcat(FeatureISAVersion10_1_Common.Features,
1365+ [FeatureRequiresCOV6])>;
1366+
13701367def FeatureISAVersion10_1_0 : FeatureSet<
13711368 !listconcat(FeatureISAVersion10_1_Common.Features,
13721369 [])>;
@@ -1406,6 +1403,10 @@ def FeatureISAVersion10_3_0 : FeatureSet<
14061403 FeatureDot10Insts,
14071404 FeatureShaderCyclesRegister])>;
14081405
1406+ def FeatureISAVersion10_3_Generic: FeatureSet<
1407+ !listconcat(FeatureISAVersion10_3_0.Features,
1408+ [FeatureRequiresCOV6])>;
1409+
14091410def FeatureISAVersion11_Common : FeatureSet<
14101411 [FeatureGFX11,
14111412 FeatureLDSBankCount32,
@@ -1428,6 +1429,10 @@ def FeatureISAVersion11_Common : FeatureSet<
14281429 FeatureVcmpxPermlaneHazard,
14291430 FeatureMADIntraFwdBug]>;
14301431
1432+ def FeatureISAVersion11_Generic: FeatureSet<
1433+ !listconcat(FeatureISAVersion11_Common.Features,
1434+ [FeatureRequiresCOV6])>;
1435+
14311436def FeatureISAVersion11_0_Common : FeatureSet<
14321437 !listconcat(FeatureISAVersion11_Common.Features,
14331438 [FeatureMSAALoadDstSelBug,
0 commit comments