Expand Up
@@ -137,12 +137,11 @@ define i64 @or_shift1_and1_64(i64 %x, i64 %y) {
define i32 @or_and_and_rhs_neg_i32 (i32 %x , i32 %y , i32 %z ) {
; NOBMI-LABEL: or_and_and_rhs_neg_i32:
; NOBMI: # %bb.0: # %entry
; NOBMI-NEXT: # kill: def $esi killed $esi def $rsi
; NOBMI-NEXT: # kill: def $edx killed $edx def $rdx
; NOBMI-NEXT: xorl %edi, %edx
; NOBMI-NEXT: andl %esi, %edx
; NOBMI-NEXT: notl %esi
; NOBMI-NEXT: andl %edi, %esi
; NOBMI-NEXT: orl %edx, %esi
; NOBMI-NEXT: leal 1(%rsi), %eax
; NOBMI-NEXT: xorl %edi, %edx
; NOBMI-NEXT: leal 1(%rdx), %eax
; NOBMI-NEXT: retq
;
; BMI-LABEL: or_and_and_rhs_neg_i32:
Expand All
@@ -164,12 +163,11 @@ entry:
define i32 @or_and_and_lhs_neg_i32 (i32 %x , i32 %y , i32 %z ) {
; NOBMI-LABEL: or_and_and_lhs_neg_i32:
; NOBMI: # %bb.0: # %entry
; NOBMI-NEXT: # kill: def $esi killed $esi def $rsi
; NOBMI-NEXT: # kill: def $edx killed $edx def $rdx
; NOBMI-NEXT: xorl %edi, %edx
; NOBMI-NEXT: andl %esi, %edx
; NOBMI-NEXT: notl %esi
; NOBMI-NEXT: andl %edi, %esi
; NOBMI-NEXT: orl %edx, %esi
; NOBMI-NEXT: leal 1(%rsi), %eax
; NOBMI-NEXT: xorl %edi, %edx
; NOBMI-NEXT: leal 1(%rdx), %eax
; NOBMI-NEXT: retq
;
; BMI-LABEL: or_and_and_lhs_neg_i32:
Expand All
@@ -191,12 +189,11 @@ entry:
define i32 @or_and_rhs_neg_and_i32 (i32 %x , i32 %y , i32 %z ) {
; NOBMI-LABEL: or_and_rhs_neg_and_i32:
; NOBMI: # %bb.0: # %entry
; NOBMI-NEXT: # kill: def $esi killed $esi def $rsi
; NOBMI-NEXT: # kill: def $edi killed $edi def $rdi
; NOBMI-NEXT: xorl %edx, %edi
; NOBMI-NEXT: andl %esi, %edi
; NOBMI-NEXT: notl %esi
; NOBMI-NEXT: andl %edx, %esi
; NOBMI-NEXT: orl %edi, %esi
; NOBMI-NEXT: leal 1(%rsi), %eax
; NOBMI-NEXT: xorl %edx, %edi
; NOBMI-NEXT: leal 1(%rdi), %eax
; NOBMI-NEXT: retq
;
; BMI-LABEL: or_and_rhs_neg_and_i32:
Expand All
@@ -218,12 +215,11 @@ entry:
define i32 @or_and_lhs_neg_and_i32 (i32 %x , i32 %y , i32 %z ) {
; NOBMI-LABEL: or_and_lhs_neg_and_i32:
; NOBMI: # %bb.0: # %entry
; NOBMI-NEXT: # kill: def $esi killed $esi def $rsi
; NOBMI-NEXT: # kill: def $edi killed $edi def $rdi
; NOBMI-NEXT: xorl %edx, %edi
; NOBMI-NEXT: andl %esi, %edi
; NOBMI-NEXT: notl %esi
; NOBMI-NEXT: andl %edx, %esi
; NOBMI-NEXT: orl %edi, %esi
; NOBMI-NEXT: leal 1(%rsi), %eax
; NOBMI-NEXT: xorl %edx, %edi
; NOBMI-NEXT: leal 1(%rdi), %eax
; NOBMI-NEXT: retq
;
; BMI-LABEL: or_and_lhs_neg_and_i32:
Expand All
@@ -245,11 +241,10 @@ entry:
define i64 @or_and_and_rhs_neg_i64 (i64 %x , i64 %y , i64 %z ) {
; NOBMI-LABEL: or_and_and_rhs_neg_i64:
; NOBMI: # %bb.0: # %entry
; NOBMI-NEXT: xorq %rdi, %rdx
; NOBMI-NEXT: andq %rsi, %rdx
; NOBMI-NEXT: notq %rsi
; NOBMI-NEXT: andq %rdi, %rsi
; NOBMI-NEXT: orq %rdx, %rsi
; NOBMI-NEXT: leaq 1(%rsi), %rax
; NOBMI-NEXT: xorq %rdi, %rdx
; NOBMI-NEXT: leaq 1(%rdx), %rax
; NOBMI-NEXT: retq
;
; BMI-LABEL: or_and_and_rhs_neg_i64:
Expand All
@@ -271,11 +266,10 @@ entry:
define i64 @or_and_and_lhs_neg_i64 (i64 %x , i64 %y , i64 %z ) {
; NOBMI-LABEL: or_and_and_lhs_neg_i64:
; NOBMI: # %bb.0: # %entry
; NOBMI-NEXT: xorq %rdi, %rdx
; NOBMI-NEXT: andq %rsi, %rdx
; NOBMI-NEXT: notq %rsi
; NOBMI-NEXT: andq %rdi, %rsi
; NOBMI-NEXT: orq %rdx, %rsi
; NOBMI-NEXT: leaq 1(%rsi), %rax
; NOBMI-NEXT: xorq %rdi, %rdx
; NOBMI-NEXT: leaq 1(%rdx), %rax
; NOBMI-NEXT: retq
;
; BMI-LABEL: or_and_and_lhs_neg_i64:
Expand All
@@ -297,11 +291,10 @@ entry:
define i64 @or_and_rhs_neg_and_i64 (i64 %x , i64 %y , i64 %z ) {
; NOBMI-LABEL: or_and_rhs_neg_and_i64:
; NOBMI: # %bb.0: # %entry
; NOBMI-NEXT: xorq %rdx, %rdi
; NOBMI-NEXT: andq %rsi, %rdi
; NOBMI-NEXT: notq %rsi
; NOBMI-NEXT: andq %rdx, %rsi
; NOBMI-NEXT: orq %rdi, %rsi
; NOBMI-NEXT: leaq 1(%rsi), %rax
; NOBMI-NEXT: xorq %rdx, %rdi
; NOBMI-NEXT: leaq 1(%rdi), %rax
; NOBMI-NEXT: retq
;
; BMI-LABEL: or_and_rhs_neg_and_i64:
Expand All
@@ -323,11 +316,10 @@ entry:
define i64 @or_and_lhs_neg_and_i64 (i64 %x , i64 %y , i64 %z ) {
; NOBMI-LABEL: or_and_lhs_neg_and_i64:
; NOBMI: # %bb.0: # %entry
; NOBMI-NEXT: xorq %rdx, %rdi
; NOBMI-NEXT: andq %rsi, %rdi
; NOBMI-NEXT: notq %rsi
; NOBMI-NEXT: andq %rdx, %rsi
; NOBMI-NEXT: orq %rdi, %rsi
; NOBMI-NEXT: leaq 1(%rsi), %rax
; NOBMI-NEXT: xorq %rdx, %rdi
; NOBMI-NEXT: leaq 1(%rdi), %rax
; NOBMI-NEXT: retq
;
; BMI-LABEL: or_and_lhs_neg_and_i64:
Expand Down