summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/X86/sse2-schedule.ll
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2017-08-01 16:47:48 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2017-08-01 16:47:48 +0000
commit3f24ff61300afb16d04dcf6403cbe10826aab67e (patch)
treeb6d363ba51e48ca3587bbcb514761b6f1b4baf49 /llvm/test/CodeGen/X86/sse2-schedule.ll
parente2cc5892832436d0307cea4ab4dcde26211354a4 (diff)
downloadbcm5719-llvm-3f24ff61300afb16d04dcf6403cbe10826aab67e.tar.gz
bcm5719-llvm-3f24ff61300afb16d04dcf6403cbe10826aab67e.zip
[X86][SSE] Added missing PACKSS/PACKUS intrinsic schedules
Improves atom scheduler test coverage (to make it easier to upgrade them for PR32431). Checked on Agner that these actually match the UNPACK schedules, but better to include a separate class llvm-svn: 309701
Diffstat (limited to 'llvm/test/CodeGen/X86/sse2-schedule.ll')
-rw-r--r--llvm/test/CodeGen/X86/sse2-schedule.ll24
1 files changed, 6 insertions, 18 deletions
diff --git a/llvm/test/CodeGen/X86/sse2-schedule.ll b/llvm/test/CodeGen/X86/sse2-schedule.ll
index fbc21390d2d..1fa1b6e4f10 100644
--- a/llvm/test/CodeGen/X86/sse2-schedule.ll
+++ b/llvm/test/CodeGen/X86/sse2-schedule.ll
@@ -2816,12 +2816,8 @@ define <8 x i16> @test_packssdw(<4 x i32> %a0, <4 x i32> %a1, <4 x i32> *%a2) {
;
; ATOM-LABEL: test_packssdw:
; ATOM: # BB#0:
-; ATOM-NEXT: packssdw %xmm1, %xmm0
-; ATOM-NEXT: packssdw (%rdi), %xmm0
-; ATOM-NEXT: nop # sched: [1:0.50]
-; ATOM-NEXT: nop # sched: [1:0.50]
-; ATOM-NEXT: nop # sched: [1:0.50]
-; ATOM-NEXT: nop # sched: [1:0.50]
+; ATOM-NEXT: packssdw %xmm1, %xmm0 # sched: [1:1.00]
+; ATOM-NEXT: packssdw (%rdi), %xmm0 # sched: [1:1.00]
; ATOM-NEXT: nop # sched: [1:0.50]
; ATOM-NEXT: nop # sched: [1:0.50]
; ATOM-NEXT: nop # sched: [1:0.50]
@@ -2874,12 +2870,8 @@ define <16 x i8> @test_packsswb(<8 x i16> %a0, <8 x i16> %a1, <8 x i16> *%a2) {
;
; ATOM-LABEL: test_packsswb:
; ATOM: # BB#0:
-; ATOM-NEXT: packsswb %xmm1, %xmm0
-; ATOM-NEXT: packsswb (%rdi), %xmm0
-; ATOM-NEXT: nop # sched: [1:0.50]
-; ATOM-NEXT: nop # sched: [1:0.50]
-; ATOM-NEXT: nop # sched: [1:0.50]
-; ATOM-NEXT: nop # sched: [1:0.50]
+; ATOM-NEXT: packsswb %xmm1, %xmm0 # sched: [1:1.00]
+; ATOM-NEXT: packsswb (%rdi), %xmm0 # sched: [1:1.00]
; ATOM-NEXT: nop # sched: [1:0.50]
; ATOM-NEXT: nop # sched: [1:0.50]
; ATOM-NEXT: nop # sched: [1:0.50]
@@ -2932,12 +2924,8 @@ define <16 x i8> @test_packuswb(<8 x i16> %a0, <8 x i16> %a1, <8 x i16> *%a2) {
;
; ATOM-LABEL: test_packuswb:
; ATOM: # BB#0:
-; ATOM-NEXT: packuswb %xmm1, %xmm0
-; ATOM-NEXT: packuswb (%rdi), %xmm0
-; ATOM-NEXT: nop # sched: [1:0.50]
-; ATOM-NEXT: nop # sched: [1:0.50]
-; ATOM-NEXT: nop # sched: [1:0.50]
-; ATOM-NEXT: nop # sched: [1:0.50]
+; ATOM-NEXT: packuswb %xmm1, %xmm0 # sched: [1:1.00]
+; ATOM-NEXT: packuswb (%rdi), %xmm0 # sched: [1:1.00]
; ATOM-NEXT: nop # sched: [1:0.50]
; ATOM-NEXT: nop # sched: [1:0.50]
; ATOM-NEXT: nop # sched: [1:0.50]
OpenPOWER on IntegriCloud