[X86][Broadwell] Added the broadwell cpu to the scheduling regression tests.<NFC>
NFC.
Added the Broadwell cpu and the BROADWELL prefix to all the scheduling regression tests, as part of prepartion for a larger commit of adding all Broadwell scheduiling.
Reviewers: RKSimon, zvi, aaboud
Differential Revision: https://reviews.llvm.org/D38994
Change-Id: I54bc9065168844c107b1729fcdc1d311ce3ea0a9
llvm-svn: 315998
diff --git a/llvm/test/CodeGen/X86/sse42-schedule.ll b/llvm/test/CodeGen/X86/sse42-schedule.ll
index 42f73a6..e900234 100644
--- a/llvm/test/CodeGen/X86/sse42-schedule.ll
+++ b/llvm/test/CodeGen/X86/sse42-schedule.ll
@@ -4,6 +4,7 @@
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=sandybridge | FileCheck %s --check-prefix=CHECK --check-prefix=SANDY
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=ivybridge | FileCheck %s --check-prefix=CHECK --check-prefix=SANDY
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=haswell | FileCheck %s --check-prefix=CHECK --check-prefix=HASWELL
+; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=broadwell | FileCheck %s --check-prefix=CHECK --check-prefix=BROADWELL
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=skylake | FileCheck %s --check-prefix=CHECK --check-prefix=SKYLAKE
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=skx | FileCheck %s --check-prefix=CHECK --check-prefix=SKX
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=btver2 | FileCheck %s --check-prefix=CHECK --check-prefix=BTVER2
@@ -38,6 +39,13 @@
; HASWELL-NEXT: movl %edi, %eax # sched: [1:0.25]
; HASWELL-NEXT: retq # sched: [2:1.00]
;
+; BROADWELL-LABEL: crc32_32_8:
+; BROADWELL: # BB#0:
+; BROADWELL-NEXT: crc32b %sil, %edi # sched: [3:1.00]
+; BROADWELL-NEXT: crc32b (%rdx), %edi # sched: [7:1.00]
+; BROADWELL-NEXT: movl %edi, %eax # sched: [1:0.25]
+; BROADWELL-NEXT: retq # sched: [2:1.00]
+;
; SKYLAKE-LABEL: crc32_32_8:
; SKYLAKE: # BB#0:
; SKYLAKE-NEXT: crc32b %sil, %edi # sched: [3:1.00]
@@ -101,6 +109,13 @@
; HASWELL-NEXT: movl %edi, %eax # sched: [1:0.25]
; HASWELL-NEXT: retq # sched: [2:1.00]
;
+; BROADWELL-LABEL: crc32_32_16:
+; BROADWELL: # BB#0:
+; BROADWELL-NEXT: crc32w %si, %edi # sched: [3:1.00]
+; BROADWELL-NEXT: crc32w (%rdx), %edi # sched: [7:1.00]
+; BROADWELL-NEXT: movl %edi, %eax # sched: [1:0.25]
+; BROADWELL-NEXT: retq # sched: [2:1.00]
+;
; SKYLAKE-LABEL: crc32_32_16:
; SKYLAKE: # BB#0:
; SKYLAKE-NEXT: crc32w %si, %edi # sched: [3:1.00]
@@ -164,6 +179,13 @@
; HASWELL-NEXT: movl %edi, %eax # sched: [1:0.25]
; HASWELL-NEXT: retq # sched: [2:1.00]
;
+; BROADWELL-LABEL: crc32_32_32:
+; BROADWELL: # BB#0:
+; BROADWELL-NEXT: crc32l %esi, %edi # sched: [3:1.00]
+; BROADWELL-NEXT: crc32l (%rdx), %edi # sched: [7:1.00]
+; BROADWELL-NEXT: movl %edi, %eax # sched: [1:0.25]
+; BROADWELL-NEXT: retq # sched: [2:1.00]
+;
; SKYLAKE-LABEL: crc32_32_32:
; SKYLAKE: # BB#0:
; SKYLAKE-NEXT: crc32l %esi, %edi # sched: [3:1.00]
@@ -227,6 +249,13 @@
; HASWELL-NEXT: movq %rdi, %rax # sched: [1:0.25]
; HASWELL-NEXT: retq # sched: [2:1.00]
;
+; BROADWELL-LABEL: crc32_64_8:
+; BROADWELL: # BB#0:
+; BROADWELL-NEXT: crc32b %sil, %edi # sched: [3:1.00]
+; BROADWELL-NEXT: crc32b (%rdx), %edi # sched: [7:1.00]
+; BROADWELL-NEXT: movq %rdi, %rax # sched: [1:0.25]
+; BROADWELL-NEXT: retq # sched: [2:1.00]
+;
; SKYLAKE-LABEL: crc32_64_8:
; SKYLAKE: # BB#0:
; SKYLAKE-NEXT: crc32b %sil, %edi # sched: [3:1.00]
@@ -290,6 +319,13 @@
; HASWELL-NEXT: movq %rdi, %rax # sched: [1:0.25]
; HASWELL-NEXT: retq # sched: [2:1.00]
;
+; BROADWELL-LABEL: crc32_64_64:
+; BROADWELL: # BB#0:
+; BROADWELL-NEXT: crc32q %rsi, %rdi # sched: [3:1.00]
+; BROADWELL-NEXT: crc32q (%rdx), %rdi # sched: [7:1.00]
+; BROADWELL-NEXT: movq %rdi, %rax # sched: [1:0.25]
+; BROADWELL-NEXT: retq # sched: [2:1.00]
+;
; SKYLAKE-LABEL: crc32_64_64:
; SKYLAKE: # BB#0:
; SKYLAKE-NEXT: crc32q %rsi, %rdi # sched: [3:1.00]
@@ -377,6 +413,19 @@
; HASWELL-NEXT: leal (%rcx,%rsi), %eax # sched: [1:0.50]
; HASWELL-NEXT: retq # sched: [2:1.00]
;
+; BROADWELL-LABEL: test_pcmpestri:
+; BROADWELL: # BB#0:
+; BROADWELL-NEXT: movl $7, %eax # sched: [1:0.25]
+; BROADWELL-NEXT: movl $7, %edx # sched: [1:0.25]
+; BROADWELL-NEXT: vpcmpestri $7, %xmm1, %xmm0 # sched: [18:4.00]
+; BROADWELL-NEXT: movl %ecx, %esi # sched: [1:0.25]
+; BROADWELL-NEXT: movl $7, %eax # sched: [1:0.25]
+; BROADWELL-NEXT: movl $7, %edx # sched: [1:0.25]
+; BROADWELL-NEXT: vpcmpestri $7, (%rdi), %xmm0 # sched: [18:4.00]
+; BROADWELL-NEXT: # kill: %ECX<def> %ECX<kill> %RCX<def>
+; BROADWELL-NEXT: leal (%rcx,%rsi), %eax # sched: [1:0.50]
+; BROADWELL-NEXT: retq # sched: [2:1.00]
+;
; SKYLAKE-LABEL: test_pcmpestri:
; SKYLAKE: # BB#0:
; SKYLAKE-NEXT: movl $7, %eax # sched: [1:0.25]
@@ -477,6 +526,16 @@
; HASWELL-NEXT: vpcmpestrm $7, (%rdi), %xmm0 # sched: [19:4.00]
; HASWELL-NEXT: retq # sched: [2:1.00]
;
+; BROADWELL-LABEL: test_pcmpestrm:
+; BROADWELL: # BB#0:
+; BROADWELL-NEXT: movl $7, %eax # sched: [1:0.25]
+; BROADWELL-NEXT: movl $7, %edx # sched: [1:0.25]
+; BROADWELL-NEXT: vpcmpestrm $7, %xmm1, %xmm0 # sched: [19:4.00]
+; BROADWELL-NEXT: movl $7, %eax # sched: [1:0.25]
+; BROADWELL-NEXT: movl $7, %edx # sched: [1:0.25]
+; BROADWELL-NEXT: vpcmpestrm $7, (%rdi), %xmm0 # sched: [19:4.00]
+; BROADWELL-NEXT: retq # sched: [2:1.00]
+;
; SKYLAKE-LABEL: test_pcmpestrm:
; SKYLAKE: # BB#0:
; SKYLAKE-NEXT: movl $7, %eax # sched: [1:0.25]
@@ -560,6 +619,15 @@
; HASWELL-NEXT: leal (%rcx,%rax), %eax # sched: [1:0.50]
; HASWELL-NEXT: retq # sched: [2:1.00]
;
+; BROADWELL-LABEL: test_pcmpistri:
+; BROADWELL: # BB#0:
+; BROADWELL-NEXT: vpcmpistri $7, %xmm1, %xmm0 # sched: [11:3.00]
+; BROADWELL-NEXT: movl %ecx, %eax # sched: [1:0.25]
+; BROADWELL-NEXT: vpcmpistri $7, (%rdi), %xmm0 # sched: [11:3.00]
+; BROADWELL-NEXT: # kill: %ECX<def> %ECX<kill> %RCX<def>
+; BROADWELL-NEXT: leal (%rcx,%rax), %eax # sched: [1:0.50]
+; BROADWELL-NEXT: retq # sched: [2:1.00]
+;
; SKYLAKE-LABEL: test_pcmpistri:
; SKYLAKE: # BB#0:
; SKYLAKE-NEXT: vpcmpistri $7, %xmm1, %xmm0 # sched: [10:3.00]
@@ -628,6 +696,12 @@
; HASWELL-NEXT: vpcmpistrm $7, (%rdi), %xmm0 # sched: [11:3.00]
; HASWELL-NEXT: retq # sched: [2:1.00]
;
+; BROADWELL-LABEL: test_pcmpistrm:
+; BROADWELL: # BB#0:
+; BROADWELL-NEXT: vpcmpistrm $7, %xmm1, %xmm0 # sched: [11:3.00]
+; BROADWELL-NEXT: vpcmpistrm $7, (%rdi), %xmm0 # sched: [11:3.00]
+; BROADWELL-NEXT: retq # sched: [2:1.00]
+;
; SKYLAKE-LABEL: test_pcmpistrm:
; SKYLAKE: # BB#0:
; SKYLAKE-NEXT: vpcmpistrm $7, %xmm1, %xmm0 # sched: [10:3.00]
@@ -683,6 +757,12 @@
; HASWELL-NEXT: vpcmpgtq (%rdi), %xmm0, %xmm0 # sched: [5:1.00]
; HASWELL-NEXT: retq # sched: [2:1.00]
;
+; BROADWELL-LABEL: test_pcmpgtq:
+; BROADWELL: # BB#0:
+; BROADWELL-NEXT: vpcmpgtq %xmm1, %xmm0, %xmm0 # sched: [5:1.00]
+; BROADWELL-NEXT: vpcmpgtq (%rdi), %xmm0, %xmm0 # sched: [5:1.00]
+; BROADWELL-NEXT: retq # sched: [2:1.00]
+;
; SKYLAKE-LABEL: test_pcmpgtq:
; SKYLAKE: # BB#0:
; SKYLAKE-NEXT: vpcmpgtq %xmm1, %xmm0, %xmm0 # sched: [3:1.00]
@@ -741,6 +821,12 @@
; HASWELL-NEXT: vpclmulqdq $0, (%rdi), %xmm0, %xmm0 # sched: [11:2.00]
; HASWELL-NEXT: retq # sched: [2:1.00]
;
+; BROADWELL-LABEL: test_pclmulqdq:
+; BROADWELL: # BB#0:
+; BROADWELL-NEXT: vpclmulqdq $0, %xmm1, %xmm0, %xmm0 # sched: [11:2.00]
+; BROADWELL-NEXT: vpclmulqdq $0, (%rdi), %xmm0, %xmm0 # sched: [11:2.00]
+; BROADWELL-NEXT: retq # sched: [2:1.00]
+;
; SKYLAKE-LABEL: test_pclmulqdq:
; SKYLAKE: # BB#0:
; SKYLAKE-NEXT: vpclmulqdq $0, %xmm1, %xmm0, %xmm0 # sched: [6:1.00]