[llvm] r318613 - [X86] Switch cannonlake to use the SkylakeServer scheduling model instead of Haswell.
Craig Topper via llvm-commits
llvm-commits at lists.llvm.org
Sat Nov 18 17:25:30 PST 2017
Author: ctopper
Date: Sat Nov 18 17:25:30 2017
New Revision: 318613
URL: http://llvm.org/viewvc/llvm-project?rev=318613&view=rev
Log:
[X86] Switch cannonlake to use the SkylakeServer scheduling model instead of Haswell.
Cannonlake comes after skylake and supports avx512 so this is probably a closer model for now.
Modified:
llvm/trunk/lib/Target/X86/X86.td
llvm/trunk/test/CodeGen/X86/sha-schedule.ll
Modified: llvm/trunk/lib/Target/X86/X86.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86.td?rev=318613&r1=318612&r2=318613&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86.td (original)
+++ llvm/trunk/lib/Target/X86/X86.td Sat Nov 18 17:25:30 2017
@@ -658,7 +658,7 @@ def CNLFeatures : ProcessorFeatures<SKXF
FeatureSHA
]>;
-class CannonlakeProc<string Name> : ProcModel<Name, HaswellModel,
+class CannonlakeProc<string Name> : ProcModel<Name, SkylakeServerModel,
CNLFeatures.Value, [
ProcIntelCNL
]>;
Modified: llvm/trunk/test/CodeGen/X86/sha-schedule.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/sha-schedule.ll?rev=318613&r1=318612&r2=318613&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/sha-schedule.ll (original)
+++ llvm/trunk/test/CodeGen/X86/sha-schedule.ll Sat Nov 18 17:25:30 2017
@@ -25,7 +25,7 @@ define <4 x i32> @test_sha1msg1(<4 x i32
; CANNONLAKE: # BB#0:
; CANNONLAKE-NEXT: sha1msg1 %xmm1, %xmm0
; CANNONLAKE-NEXT: sha1msg1 (%rdi), %xmm0
-; CANNONLAKE-NEXT: retq # sched: [2:1.00]
+; CANNONLAKE-NEXT: retq # sched: [7:1.00]
;
; ZNVER1-LABEL: test_sha1msg1:
; ZNVER1: # BB#0:
@@ -56,7 +56,7 @@ define <4 x i32> @test_sha1msg2(<4 x i32
; CANNONLAKE: # BB#0:
; CANNONLAKE-NEXT: sha1msg2 %xmm1, %xmm0
; CANNONLAKE-NEXT: sha1msg2 (%rdi), %xmm0
-; CANNONLAKE-NEXT: retq # sched: [2:1.00]
+; CANNONLAKE-NEXT: retq # sched: [7:1.00]
;
; ZNVER1-LABEL: test_sha1msg2:
; ZNVER1: # BB#0:
@@ -87,7 +87,7 @@ define <4 x i32> @test_sha1nexte(<4 x i3
; CANNONLAKE: # BB#0:
; CANNONLAKE-NEXT: sha1nexte %xmm1, %xmm0
; CANNONLAKE-NEXT: sha1nexte (%rdi), %xmm0
-; CANNONLAKE-NEXT: retq # sched: [2:1.00]
+; CANNONLAKE-NEXT: retq # sched: [7:1.00]
;
; ZNVER1-LABEL: test_sha1nexte:
; ZNVER1: # BB#0:
@@ -118,7 +118,7 @@ define <4 x i32> @test_sha1rnds4(<4 x i3
; CANNONLAKE: # BB#0:
; CANNONLAKE-NEXT: sha1rnds4 $3, %xmm1, %xmm0
; CANNONLAKE-NEXT: sha1rnds4 $3, (%rdi), %xmm0
-; CANNONLAKE-NEXT: retq # sched: [2:1.00]
+; CANNONLAKE-NEXT: retq # sched: [7:1.00]
;
; ZNVER1-LABEL: test_sha1rnds4:
; ZNVER1: # BB#0:
@@ -153,7 +153,7 @@ define <4 x i32> @test_sha256msg1(<4 x i
; CANNONLAKE: # BB#0:
; CANNONLAKE-NEXT: sha256msg1 %xmm1, %xmm0
; CANNONLAKE-NEXT: sha256msg1 (%rdi), %xmm0
-; CANNONLAKE-NEXT: retq # sched: [2:1.00]
+; CANNONLAKE-NEXT: retq # sched: [7:1.00]
;
; ZNVER1-LABEL: test_sha256msg1:
; ZNVER1: # BB#0:
@@ -184,7 +184,7 @@ define <4 x i32> @test_sha256msg2(<4 x i
; CANNONLAKE: # BB#0:
; CANNONLAKE-NEXT: sha256msg2 %xmm1, %xmm0
; CANNONLAKE-NEXT: sha256msg2 (%rdi), %xmm0
-; CANNONLAKE-NEXT: retq # sched: [2:1.00]
+; CANNONLAKE-NEXT: retq # sched: [7:1.00]
;
; ZNVER1-LABEL: test_sha256msg2:
; ZNVER1: # BB#0:
@@ -224,7 +224,7 @@ define <4 x i32> @test_sha256rnds2(<4 x
; CANNONLAKE-NEXT: sha256rnds2 %xmm0, %xmm1, %xmm3
; CANNONLAKE-NEXT: sha256rnds2 %xmm0, (%rdi), %xmm3
; CANNONLAKE-NEXT: vmovaps %xmm3, %xmm0 # sched: [1:1.00]
-; CANNONLAKE-NEXT: retq # sched: [2:1.00]
+; CANNONLAKE-NEXT: retq # sched: [7:1.00]
;
; ZNVER1-LABEL: test_sha256rnds2:
; ZNVER1: # BB#0:
More information about the llvm-commits
mailing list