summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/X86/aes-schedule.ll
diff options
context:
space:
mode:
authorGadi Haber <gadi.haber@intel.com>2017-12-08 09:48:44 +0000
committerGadi Haber <gadi.haber@intel.com>2017-12-08 09:48:44 +0000
commit2cf601f28f158cdce3c7640186e46a65bf308fc0 (patch)
tree89247772dc39caf970e3be5da7d93b8c2d6bfff8 /llvm/test/CodeGen/X86/aes-schedule.ll
parent76b36d3a7f4237e2b923c532e9c350202a0c78b4 (diff)
downloadbcm5719-llvm-2cf601f28f158cdce3c7640186e46a65bf308fc0.tar.gz
bcm5719-llvm-2cf601f28f158cdce3c7640186e46a65bf308fc0.zip
[X86][Haswell]: Updating the scheduling information for the Haswell subtarget.
Updated the scheduling information for the Haswell subtarget with the following changes: Regrouped the instructions after adding appropriate load + store latencies. Added scheduling for missing instructions such as the GATHER instrs. The changes were made after revisiting the latencies impact of all memory uOps. Reviewers: RKSimon, zvi, craig.topper, apilipenko Differential Revision: https://reviews.llvm.org/D40021 Change-Id: Iaf6c1f5169add1552845a8a566af4e5a359217a7 llvm-svn: 320137
Diffstat (limited to 'llvm/test/CodeGen/X86/aes-schedule.ll')
-rw-r--r--llvm/test/CodeGen/X86/aes-schedule.ll24
1 files changed, 12 insertions, 12 deletions
diff --git a/llvm/test/CodeGen/X86/aes-schedule.ll b/llvm/test/CodeGen/X86/aes-schedule.ll
index a829a774867..e4768eafeaa 100644
--- a/llvm/test/CodeGen/X86/aes-schedule.ll
+++ b/llvm/test/CodeGen/X86/aes-schedule.ll
@@ -32,8 +32,8 @@ define <2 x i64> @test_aesdec(<2 x i64> %a0, <2 x i64> %a1, <2 x i64> *%a2) {
; HASWELL-LABEL: test_aesdec:
; HASWELL: # %bb.0:
; HASWELL-NEXT: vaesdec %xmm1, %xmm0, %xmm0 # sched: [7:1.00]
-; HASWELL-NEXT: vaesdec (%rdi), %xmm0, %xmm0 # sched: [7:1.00]
-; HASWELL-NEXT: retq # sched: [2:1.00]
+; HASWELL-NEXT: vaesdec (%rdi), %xmm0, %xmm0 # sched: [13:1.00]
+; HASWELL-NEXT: retq # sched: [7:1.00]
;
; BROADWELL-LABEL: test_aesdec:
; BROADWELL: # %bb.0:
@@ -87,8 +87,8 @@ define <2 x i64> @test_aesdeclast(<2 x i64> %a0, <2 x i64> %a1, <2 x i64> *%a2)
; HASWELL-LABEL: test_aesdeclast:
; HASWELL: # %bb.0:
; HASWELL-NEXT: vaesdeclast %xmm1, %xmm0, %xmm0 # sched: [7:1.00]
-; HASWELL-NEXT: vaesdeclast (%rdi), %xmm0, %xmm0 # sched: [7:1.00]
-; HASWELL-NEXT: retq # sched: [2:1.00]
+; HASWELL-NEXT: vaesdeclast (%rdi), %xmm0, %xmm0 # sched: [13:1.00]
+; HASWELL-NEXT: retq # sched: [7:1.00]
;
; BROADWELL-LABEL: test_aesdeclast:
; BROADWELL: # %bb.0:
@@ -142,8 +142,8 @@ define <2 x i64> @test_aesenc(<2 x i64> %a0, <2 x i64> %a1, <2 x i64> *%a2) {
; HASWELL-LABEL: test_aesenc:
; HASWELL: # %bb.0:
; HASWELL-NEXT: vaesenc %xmm1, %xmm0, %xmm0 # sched: [7:1.00]
-; HASWELL-NEXT: vaesenc (%rdi), %xmm0, %xmm0 # sched: [7:1.00]
-; HASWELL-NEXT: retq # sched: [2:1.00]
+; HASWELL-NEXT: vaesenc (%rdi), %xmm0, %xmm0 # sched: [13:1.00]
+; HASWELL-NEXT: retq # sched: [7:1.00]
;
; BROADWELL-LABEL: test_aesenc:
; BROADWELL: # %bb.0:
@@ -197,8 +197,8 @@ define <2 x i64> @test_aesenclast(<2 x i64> %a0, <2 x i64> %a1, <2 x i64> *%a2)
; HASWELL-LABEL: test_aesenclast:
; HASWELL: # %bb.0:
; HASWELL-NEXT: vaesenclast %xmm1, %xmm0, %xmm0 # sched: [7:1.00]
-; HASWELL-NEXT: vaesenclast (%rdi), %xmm0, %xmm0 # sched: [7:1.00]
-; HASWELL-NEXT: retq # sched: [2:1.00]
+; HASWELL-NEXT: vaesenclast (%rdi), %xmm0, %xmm0 # sched: [13:1.00]
+; HASWELL-NEXT: retq # sched: [7:1.00]
;
; BROADWELL-LABEL: test_aesenclast:
; BROADWELL: # %bb.0:
@@ -255,9 +255,9 @@ define <2 x i64> @test_aesimc(<2 x i64> %a0, <2 x i64> *%a1) {
; HASWELL-LABEL: test_aesimc:
; HASWELL: # %bb.0:
; HASWELL-NEXT: vaesimc %xmm0, %xmm0 # sched: [14:2.00]
-; HASWELL-NEXT: vaesimc (%rdi), %xmm1 # sched: [14:2.00]
+; HASWELL-NEXT: vaesimc (%rdi), %xmm1 # sched: [20:2.00]
; HASWELL-NEXT: vpor %xmm1, %xmm0, %xmm0 # sched: [1:0.33]
-; HASWELL-NEXT: retq # sched: [2:1.00]
+; HASWELL-NEXT: retq # sched: [7:1.00]
;
; BROADWELL-LABEL: test_aesimc:
; BROADWELL: # %bb.0:
@@ -319,9 +319,9 @@ define <2 x i64> @test_aeskeygenassist(<2 x i64> %a0, <2 x i64> *%a1) {
; HASWELL-LABEL: test_aeskeygenassist:
; HASWELL: # %bb.0:
; HASWELL-NEXT: vaeskeygenassist $7, %xmm0, %xmm0 # sched: [29:7.00]
-; HASWELL-NEXT: vaeskeygenassist $7, (%rdi), %xmm1 # sched: [28:7.00]
+; HASWELL-NEXT: vaeskeygenassist $7, (%rdi), %xmm1 # sched: [34:7.00]
; HASWELL-NEXT: vpor %xmm1, %xmm0, %xmm0 # sched: [1:0.33]
-; HASWELL-NEXT: retq # sched: [2:1.00]
+; HASWELL-NEXT: retq # sched: [7:1.00]
;
; BROADWELL-LABEL: test_aeskeygenassist:
; BROADWELL: # %bb.0:
OpenPOWER on IntegriCloud