diff options
Diffstat (limited to 'lib/Target/AMDGPU/AMDGPU.td')
| -rw-r--r-- | lib/Target/AMDGPU/AMDGPU.td | 20 | 
1 files changed, 16 insertions, 4 deletions
diff --git a/lib/Target/AMDGPU/AMDGPU.td b/lib/Target/AMDGPU/AMDGPU.td index b279bd61e180..e7ebb37a9d62 100644 --- a/lib/Target/AMDGPU/AMDGPU.td +++ b/lib/Target/AMDGPU/AMDGPU.td @@ -425,7 +425,7 @@ def FeatureGFX9 : SubtargetFeatureGeneration<"GFX9",     FeatureGCN3Encoding, FeatureCIInsts, Feature16BitInsts,     FeatureSMemRealTime, FeatureScalarStores, FeatureInv2PiInlineImm,     FeatureApertureRegs, FeatureGFX9Insts, FeatureVOP3P, FeatureVGPRIndexMode, -   FeatureFastFMAF32, FeatureDPP, +   FeatureFastFMAF32, FeatureSDWA, FeatureDPP,     FeatureFlatInstOffsets, FeatureFlatGlobalInsts, FeatureFlatScratchInsts    ]  >; @@ -534,10 +534,12 @@ def AMDGPUAsmVariants {    int VOP3_ID = 1;    string SDWA = "SDWA";    int SDWA_ID = 2; +  string SDWA9 = "SDWA9"; +  int SDWA9_ID = 3;    string DPP = "DPP"; -  int DPP_ID = 3; +  int DPP_ID = 4;    string Disable = "Disable"; -  int Disable_ID = 4; +  int Disable_ID = 5;  }  def DefaultAMDGPUAsmParserVariant : AsmParserVariant { @@ -555,6 +557,12 @@ def SDWAAsmParserVariant : AsmParserVariant {    let Name = AMDGPUAsmVariants.SDWA;  } +def SDWA9AsmParserVariant : AsmParserVariant { +  let Variant = AMDGPUAsmVariants.SDWA9_ID; +  let Name = AMDGPUAsmVariants.SDWA9; +} + +  def DPPAsmParserVariant : AsmParserVariant {    let Variant = AMDGPUAsmVariants.DPP_ID;    let Name = AMDGPUAsmVariants.DPP; @@ -567,6 +575,7 @@ def AMDGPU : Target {    let AssemblyParserVariants = [DefaultAMDGPUAsmParserVariant,                                  VOP3AsmParserVariant,                                  SDWAAsmParserVariant, +                                SDWA9AsmParserVariant,                                  DPPAsmParserVariant];    let AssemblyWriters = [AMDGPUAsmWriter];  } @@ -607,7 +616,10 @@ def HasVOP3PInsts : Predicate<"Subtarget->hasVOP3PInsts()">,    AssemblerPredicate<"FeatureVOP3P">;  def HasSDWA : Predicate<"Subtarget->hasSDWA()">, -  AssemblerPredicate<"FeatureSDWA">; +  AssemblerPredicate<"FeatureSDWA,FeatureVolcanicIslands">; + +def HasSDWA9 : Predicate<"Subtarget->hasSDWA()">, +  AssemblerPredicate<"FeatureSDWA,FeatureGFX9">;  def HasDPP : Predicate<"Subtarget->hasDPP()">,    AssemblerPredicate<"FeatureDPP">;  | 
