summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/X86/bmi-schedule.ll
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/CodeGen/X86/bmi-schedule.ll')
-rw-r--r--llvm/test/CodeGen/X86/bmi-schedule.ll72
1 files changed, 36 insertions, 36 deletions
diff --git a/llvm/test/CodeGen/X86/bmi-schedule.ll b/llvm/test/CodeGen/X86/bmi-schedule.ll
index 87051150756..dd332fcef8a 100644
--- a/llvm/test/CodeGen/X86/bmi-schedule.ll
+++ b/llvm/test/CodeGen/X86/bmi-schedule.ll
@@ -1,5 +1,5 @@
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
-; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mattr=+bmi | FileCheck %s --check-prefix=CHECK --check-prefix=GENERIC
+; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=x86-64 -mattr=+bmi | FileCheck %s --check-prefix=CHECK --check-prefix=GENERIC
; 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=skylake | FileCheck %s --check-prefix=CHECK --check-prefix=HASWELL
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=knl | FileCheck %s --check-prefix=CHECK --check-prefix=HASWELL
@@ -9,12 +9,12 @@
define i16 @test_andn_i16(i16 zeroext %a0, i16 zeroext %a1, i16 *%a2) {
; GENERIC-LABEL: test_andn_i16:
; GENERIC: # BB#0:
-; GENERIC-NEXT: andnl %esi, %edi, %eax
-; GENERIC-NEXT: notl %edi
-; GENERIC-NEXT: andw (%rdx), %di
-; GENERIC-NEXT: addl %edi, %eax
+; GENERIC-NEXT: andnl %esi, %edi, %eax # sched: [1:0.33]
+; GENERIC-NEXT: notl %edi # sched: [1:0.33]
+; GENERIC-NEXT: andw (%rdx), %di # sched: [5:0.50]
+; GENERIC-NEXT: addl %edi, %eax # sched: [1:0.33]
; GENERIC-NEXT: # kill: %AX<def> %AX<kill> %EAX<kill>
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_andn_i16:
; HASWELL: # BB#0:
@@ -53,10 +53,10 @@ define i16 @test_andn_i16(i16 zeroext %a0, i16 zeroext %a1, i16 *%a2) {
define i32 @test_andn_i32(i32 %a0, i32 %a1, i32 *%a2) {
; GENERIC-LABEL: test_andn_i32:
; GENERIC: # BB#0:
-; GENERIC-NEXT: andnl %esi, %edi, %ecx
-; GENERIC-NEXT: andnl (%rdx), %edi, %eax
-; GENERIC-NEXT: addl %ecx, %eax
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: andnl %esi, %edi, %ecx # sched: [1:0.33]
+; GENERIC-NEXT: andnl (%rdx), %edi, %eax # sched: [5:0.50]
+; GENERIC-NEXT: addl %ecx, %eax # sched: [1:0.33]
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_andn_i32:
; HASWELL: # BB#0:
@@ -89,10 +89,10 @@ define i32 @test_andn_i32(i32 %a0, i32 %a1, i32 *%a2) {
define i64 @test_andn_i64(i64 %a0, i64 %a1, i64 *%a2) {
; GENERIC-LABEL: test_andn_i64:
; GENERIC: # BB#0:
-; GENERIC-NEXT: andnq %rsi, %rdi, %rcx
-; GENERIC-NEXT: andnq (%rdx), %rdi, %rax
-; GENERIC-NEXT: addq %rcx, %rax
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: andnq %rsi, %rdi, %rcx # sched: [1:0.33]
+; GENERIC-NEXT: andnq (%rdx), %rdi, %rax # sched: [5:0.50]
+; GENERIC-NEXT: addq %rcx, %rax # sched: [1:0.33]
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_andn_i64:
; HASWELL: # BB#0:
@@ -127,8 +127,8 @@ define i32 @test_bextr_i32(i32 %a0, i32 %a1, i32 *%a2) {
; GENERIC: # BB#0:
; GENERIC-NEXT: bextrl %edi, (%rdx), %ecx
; GENERIC-NEXT: bextrl %edi, %esi, %eax
-; GENERIC-NEXT: addl %ecx, %eax
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: addl %ecx, %eax # sched: [1:0.33]
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_bextr_i32:
; HASWELL: # BB#0:
@@ -163,8 +163,8 @@ define i64 @test_bextr_i64(i64 %a0, i64 %a1, i64 *%a2) {
; GENERIC: # BB#0:
; GENERIC-NEXT: bextrq %rdi, (%rdx), %rcx
; GENERIC-NEXT: bextrq %rdi, %rsi, %rax
-; GENERIC-NEXT: addq %rcx, %rax
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: addq %rcx, %rax # sched: [1:0.33]
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_bextr_i64:
; HASWELL: # BB#0:
@@ -199,8 +199,8 @@ define i32 @test_blsi_i32(i32 %a0, i32 *%a1) {
; GENERIC: # BB#0:
; GENERIC-NEXT: blsil (%rsi), %ecx
; GENERIC-NEXT: blsil %edi, %eax
-; GENERIC-NEXT: addl %ecx, %eax
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: addl %ecx, %eax # sched: [1:0.33]
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_blsi_i32:
; HASWELL: # BB#0:
@@ -236,8 +236,8 @@ define i64 @test_blsi_i64(i64 %a0, i64 *%a1) {
; GENERIC: # BB#0:
; GENERIC-NEXT: blsiq (%rsi), %rcx
; GENERIC-NEXT: blsiq %rdi, %rax
-; GENERIC-NEXT: addq %rcx, %rax
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: addq %rcx, %rax # sched: [1:0.33]
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_blsi_i64:
; HASWELL: # BB#0:
@@ -273,8 +273,8 @@ define i32 @test_blsmsk_i32(i32 %a0, i32 *%a1) {
; GENERIC: # BB#0:
; GENERIC-NEXT: blsmskl (%rsi), %ecx
; GENERIC-NEXT: blsmskl %edi, %eax
-; GENERIC-NEXT: addl %ecx, %eax
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: addl %ecx, %eax # sched: [1:0.33]
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_blsmsk_i32:
; HASWELL: # BB#0:
@@ -310,8 +310,8 @@ define i64 @test_blsmsk_i64(i64 %a0, i64 *%a1) {
; GENERIC: # BB#0:
; GENERIC-NEXT: blsmskq (%rsi), %rcx
; GENERIC-NEXT: blsmskq %rdi, %rax
-; GENERIC-NEXT: addq %rcx, %rax
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: addq %rcx, %rax # sched: [1:0.33]
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_blsmsk_i64:
; HASWELL: # BB#0:
@@ -347,8 +347,8 @@ define i32 @test_blsr_i32(i32 %a0, i32 *%a1) {
; GENERIC: # BB#0:
; GENERIC-NEXT: blsrl (%rsi), %ecx
; GENERIC-NEXT: blsrl %edi, %eax
-; GENERIC-NEXT: addl %ecx, %eax
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: addl %ecx, %eax # sched: [1:0.33]
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_blsr_i32:
; HASWELL: # BB#0:
@@ -384,8 +384,8 @@ define i64 @test_blsr_i64(i64 %a0, i64 *%a1) {
; GENERIC: # BB#0:
; GENERIC-NEXT: blsrq (%rsi), %rcx
; GENERIC-NEXT: blsrq %rdi, %rax
-; GENERIC-NEXT: addq %rcx, %rax
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: addq %rcx, %rax # sched: [1:0.33]
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_blsr_i64:
; HASWELL: # BB#0:
@@ -421,9 +421,9 @@ define i16 @test_cttz_i16(i16 zeroext %a0, i16 *%a1) {
; GENERIC: # BB#0:
; GENERIC-NEXT: tzcntw (%rsi), %cx
; GENERIC-NEXT: tzcntw %di, %ax
-; GENERIC-NEXT: orl %ecx, %eax
+; GENERIC-NEXT: orl %ecx, %eax # sched: [1:0.33]
; GENERIC-NEXT: # kill: %AX<def> %AX<kill> %EAX<kill>
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_cttz_i16:
; HASWELL: # BB#0:
@@ -461,8 +461,8 @@ define i32 @test_cttz_i32(i32 %a0, i32 *%a1) {
; GENERIC: # BB#0:
; GENERIC-NEXT: tzcntl (%rsi), %ecx
; GENERIC-NEXT: tzcntl %edi, %eax
-; GENERIC-NEXT: orl %ecx, %eax
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: orl %ecx, %eax # sched: [1:0.33]
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_cttz_i32:
; HASWELL: # BB#0:
@@ -497,8 +497,8 @@ define i64 @test_cttz_i64(i64 %a0, i64 *%a1) {
; GENERIC: # BB#0:
; GENERIC-NEXT: tzcntq (%rsi), %rcx
; GENERIC-NEXT: tzcntq %rdi, %rax
-; GENERIC-NEXT: orq %rcx, %rax
-; GENERIC-NEXT: retq
+; GENERIC-NEXT: orq %rcx, %rax # sched: [1:0.33]
+; GENERIC-NEXT: retq # sched: [1:1.00]
;
; HASWELL-LABEL: test_cttz_i64:
; HASWELL: # BB#0:
OpenPOWER on IntegriCloud