[llvm] a3b8695 - [X86] AMD Zen 3 has fast variable per-lane shuffles

Roman Lebedev via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 1 00:52:11 PDT 2021


Author: Roman Lebedev
Date: 2021-06-01T10:46:05+03:00
New Revision: a3b8695bf5927f0a43d295dfdfeafeef4da022ea

URL: https://github.com/llvm/llvm-project/commit/a3b8695bf5927f0a43d295dfdfeafeef4da022ea
DIFF: https://github.com/llvm/llvm-project/commit/a3b8695bf5927f0a43d295dfdfeafeef4da022ea.diff

LOG: [X86] AMD Zen 3 has fast variable per-lane shuffles

... but lane-crossing shuffles are slow.

Added: 
    

Modified: 
    llvm/lib/Target/X86/X86.td

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/X86/X86.td b/llvm/lib/Target/X86/X86.td
index c6dbbf5e961f3..53bbd93798ac4 100644
--- a/llvm/lib/Target/X86/X86.td
+++ b/llvm/lib/Target/X86/X86.td
@@ -1111,7 +1111,9 @@ def ProcessorFeatures {
                                                   FeaturePKU,
                                                   FeatureVAES,
                                                   FeatureVPCLMULQDQ];
-  list<SubtargetFeature> ZN3AdditionalTuning = [FeatureMacroFusion];
+  list<SubtargetFeature> ZN3AdditionalTuning =
+    [FeatureMacroFusion,
+     FeatureFastVariablePerLaneShuffle];
   list<SubtargetFeature> ZN3Tuning =
     !listconcat(ZNTuning, ZN3AdditionalTuning);
   list<SubtargetFeature> ZN3Features =


        


More information about the llvm-commits mailing list