From bef8d8f82eedc2b5e54ea771e5ef03f136392f0c Mon Sep 17 00:00:00 2001 From: Craig Topper <craig.topper@gmail.com> Date: Sat, 8 Aug 2015 07:20:04 +0000 Subject: [PATCH] Add SlowBTMem to Sandy Bridge and newer Intel CPUs. Reading through Agner Fog's table suggests there have been no improvements to these processors relative to Westmere for bit test instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@244395 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/X86.td | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/lib/Target/X86/X86.td b/lib/Target/X86/X86.td index 2965cefe3d3..9a09f3e38cf 100644 --- a/lib/Target/X86/X86.td +++ b/lib/Target/X86/X86.td @@ -307,6 +307,7 @@ def : WestmereProc<"westmere">; class SandyBridgeProc<string Name> : ProcessorModel<Name, SandyBridgeModel, [ FeatureAVX, FeatureCMPXCHG16B, + FeatureSlowBTMem, FeatureFastUAMem, FeatureSlowUAMem32, FeaturePOPCNT, @@ -319,6 +320,7 @@ def : SandyBridgeProc<"corei7-avx">; // Legacy alias. class IvyBridgeProc<string Name> : ProcessorModel<Name, SandyBridgeModel, [ FeatureAVX, FeatureCMPXCHG16B, + FeatureSlowBTMem, FeatureFastUAMem, FeatureSlowUAMem32, FeaturePOPCNT, @@ -334,6 +336,7 @@ def : IvyBridgeProc<"core-avx-i">; // Legacy alias. class HaswellProc<string Name> : ProcessorModel<Name, HaswellModel, [ FeatureAVX2, FeatureCMPXCHG16B, + FeatureSlowBTMem, FeatureFastUAMem, FeaturePOPCNT, FeatureAES, @@ -356,6 +359,7 @@ def : HaswellProc<"core-avx2">; // Legacy alias. class BroadwellProc<string Name> : ProcessorModel<Name, HaswellModel, [ FeatureAVX2, FeatureCMPXCHG16B, + FeatureSlowBTMem, FeatureFastUAMem, FeaturePOPCNT, FeatureAES, @@ -390,11 +394,11 @@ def : KnightsLandingProc<"knl">; class SkylakeProc<string Name> : ProcessorModel<Name, HaswellModel, [FeatureAVX512, FeatureCDI, FeatureDQI, FeatureBWI, FeatureVLX, - FeatureCMPXCHG16B, FeatureFastUAMem, FeaturePOPCNT, - FeatureAES, FeaturePCLMUL, FeatureRDRAND, FeatureF16C, - FeatureFSGSBase, FeatureMOVBE, FeatureLZCNT, FeatureBMI, - FeatureBMI2, FeatureFMA, FeatureRTM, FeatureHLE, - FeatureSlowIncDec, FeatureMPX]>; + FeatureCMPXCHG16B, FeatureSlowBTMem, FeatureFastUAMem, + FeaturePOPCNT, FeatureAES, FeaturePCLMUL, FeatureRDRAND, + FeatureF16C, FeatureFSGSBase, FeatureMOVBE, FeatureLZCNT, + FeatureBMI, FeatureBMI2, FeatureFMA, FeatureRTM, + FeatureHLE, FeatureSlowIncDec, FeatureMPX]>; def : SkylakeProc<"skylake">; def : SkylakeProc<"skx">; // Legacy alias. -- 2.34.1