Skip to content

Commit dc7c018

Browse files
committed
[X86] Promote VAES, SHA512, SM4 implied feature to AVX2
Reviewed By: skan Differential Revision: https://reviews.llvm.org/D155662
1 parent 5fd5f80 commit dc7c018

File tree

2 files changed

+6
-6
lines changed

2 files changed

+6
-6
lines changed

llvm/lib/Target/X86/X86.td

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,7 @@ def FeatureAES : SubtargetFeature<"aes", "HasAES", "true",
218218
[FeatureSSE2]>;
219219
def FeatureVAES : SubtargetFeature<"vaes", "HasVAES", "true",
220220
"Promote selected AES instructions to AVX512/AVX registers",
221-
[FeatureAVX, FeatureAES]>;
221+
[FeatureAVX2, FeatureAES]>;
222222
def FeatureTBM : SubtargetFeature<"tbm", "HasTBM", "true",
223223
"Enable TBM instructions">;
224224
def FeatureLWP : SubtargetFeature<"lwp", "HasLWP", "true",
@@ -244,7 +244,7 @@ def FeatureSHA : SubtargetFeature<"sha", "HasSHA", "true",
244244
[FeatureSSE2]>;
245245
def FeatureSHA512 : SubtargetFeature<"sha512", "HasSHA512", "true",
246246
"Support SHA512 instructions",
247-
[FeatureAVX]>;
247+
[FeatureAVX2]>;
248248
// Processor supports CET SHSTK - Control-Flow Enforcement Technology
249249
// using Shadow Stack
250250
def FeatureSHSTK : SubtargetFeature<"shstk", "HasSHSTK", "true",
@@ -254,7 +254,7 @@ def FeatureSM3 : SubtargetFeature<"sm3", "HasSM3", "true",
254254
[FeatureAVX]>;
255255
def FeatureSM4 : SubtargetFeature<"sm4", "HasSM4", "true",
256256
"Support SM4 instructions",
257-
[FeatureAVX]>;
257+
[FeatureAVX2]>;
258258
def FeaturePRFCHW : SubtargetFeature<"prfchw", "HasPRFCHW", "true",
259259
"Support PRFCHW instructions">;
260260
def FeatureRDSEED : SubtargetFeature<"rdseed", "HasRDSEED", "true",

llvm/lib/TargetParser/X86TargetParser.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -621,10 +621,10 @@ constexpr FeatureBitset ImpliedFeaturesFMA = FeatureAVX;
621621
constexpr FeatureBitset ImpliedFeaturesGFNI = FeatureSSE2;
622622
constexpr FeatureBitset ImpliedFeaturesPCLMUL = FeatureSSE2;
623623
constexpr FeatureBitset ImpliedFeaturesSHA = FeatureSSE2;
624-
constexpr FeatureBitset ImpliedFeaturesVAES = FeatureAES | FeatureAVX;
624+
constexpr FeatureBitset ImpliedFeaturesVAES = FeatureAES | FeatureAVX2;
625625
constexpr FeatureBitset ImpliedFeaturesVPCLMULQDQ = FeatureAVX | FeaturePCLMUL;
626626
constexpr FeatureBitset ImpliedFeaturesSM3 = FeatureAVX;
627-
constexpr FeatureBitset ImpliedFeaturesSM4 = FeatureAVX;
627+
constexpr FeatureBitset ImpliedFeaturesSM4 = FeatureAVX2;
628628

629629
// AVX512 features.
630630
constexpr FeatureBitset ImpliedFeaturesAVX512CD = FeatureAVX512F;
@@ -668,7 +668,7 @@ constexpr FeatureBitset ImpliedFeaturesAVXVNNIINT16 = FeatureAVX2;
668668
constexpr FeatureBitset ImpliedFeaturesAVXVNNIINT8 = FeatureAVX2;
669669
constexpr FeatureBitset ImpliedFeaturesAVXIFMA = FeatureAVX2;
670670
constexpr FeatureBitset ImpliedFeaturesAVXNECONVERT = FeatureAVX2;
671-
constexpr FeatureBitset ImpliedFeaturesSHA512 = FeatureAVX;
671+
constexpr FeatureBitset ImpliedFeaturesSHA512 = FeatureAVX2;
672672
constexpr FeatureBitset ImpliedFeaturesAVX512FP16 =
673673
FeatureAVX512BW | FeatureAVX512DQ | FeatureAVX512VL;
674674
// Key Locker Features

0 commit comments

Comments
 (0)