Skip to content

Commit 01dd4ea

Browse files
committed
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.
llvm-svn: 244395
1 parent 9592df7 commit 01dd4ea

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

llvm/lib/Target/X86/X86.td

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -307,6 +307,7 @@ def : WestmereProc<"westmere">;
307307
class SandyBridgeProc<string Name> : ProcessorModel<Name, SandyBridgeModel, [
308308
FeatureAVX,
309309
FeatureCMPXCHG16B,
310+
FeatureSlowBTMem,
310311
FeatureFastUAMem,
311312
FeatureSlowUAMem32,
312313
FeaturePOPCNT,
@@ -319,6 +320,7 @@ def : SandyBridgeProc<"corei7-avx">; // Legacy alias.
319320
class IvyBridgeProc<string Name> : ProcessorModel<Name, SandyBridgeModel, [
320321
FeatureAVX,
321322
FeatureCMPXCHG16B,
323+
FeatureSlowBTMem,
322324
FeatureFastUAMem,
323325
FeatureSlowUAMem32,
324326
FeaturePOPCNT,
@@ -334,6 +336,7 @@ def : IvyBridgeProc<"core-avx-i">; // Legacy alias.
334336
class HaswellProc<string Name> : ProcessorModel<Name, HaswellModel, [
335337
FeatureAVX2,
336338
FeatureCMPXCHG16B,
339+
FeatureSlowBTMem,
337340
FeatureFastUAMem,
338341
FeaturePOPCNT,
339342
FeatureAES,
@@ -356,6 +359,7 @@ def : HaswellProc<"core-avx2">; // Legacy alias.
356359
class BroadwellProc<string Name> : ProcessorModel<Name, HaswellModel, [
357360
FeatureAVX2,
358361
FeatureCMPXCHG16B,
362+
FeatureSlowBTMem,
359363
FeatureFastUAMem,
360364
FeaturePOPCNT,
361365
FeatureAES,
@@ -390,11 +394,11 @@ def : KnightsLandingProc<"knl">;
390394
class SkylakeProc<string Name> : ProcessorModel<Name, HaswellModel,
391395
[FeatureAVX512, FeatureCDI,
392396
FeatureDQI, FeatureBWI, FeatureVLX,
393-
FeatureCMPXCHG16B, FeatureFastUAMem, FeaturePOPCNT,
394-
FeatureAES, FeaturePCLMUL, FeatureRDRAND, FeatureF16C,
395-
FeatureFSGSBase, FeatureMOVBE, FeatureLZCNT, FeatureBMI,
396-
FeatureBMI2, FeatureFMA, FeatureRTM, FeatureHLE,
397-
FeatureSlowIncDec, FeatureMPX]>;
397+
FeatureCMPXCHG16B, FeatureSlowBTMem, FeatureFastUAMem,
398+
FeaturePOPCNT, FeatureAES, FeaturePCLMUL, FeatureRDRAND,
399+
FeatureF16C, FeatureFSGSBase, FeatureMOVBE, FeatureLZCNT,
400+
FeatureBMI, FeatureBMI2, FeatureFMA, FeatureRTM,
401+
FeatureHLE, FeatureSlowIncDec, FeatureMPX]>;
398402
def : SkylakeProc<"skylake">;
399403
def : SkylakeProc<"skx">; // Legacy alias.
400404

0 commit comments

Comments
 (0)