mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-19 11:02:59 +02:00
[X86] Add test case to ensure testw is generated when optimizing for size. NFC
llvm-svn: 323687
This commit is contained in:
parent
86f5d6fe32
commit
1c373326ef
@ -530,4 +530,48 @@ no:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @testw(i16 inreg %x) nounwind minsize {
|
||||
; CHECK-LINUX64-LABEL: testw:
|
||||
; CHECK-LINUX64: # %bb.0:
|
||||
; CHECK-LINUX64-NEXT: testw $2049, %di # imm = 0x801
|
||||
; CHECK-LINUX64-NEXT: je .LBB12_1
|
||||
; CHECK-LINUX64-NEXT: # %bb.2: # %no
|
||||
; CHECK-LINUX64-NEXT: retq
|
||||
; CHECK-LINUX64-NEXT: .LBB12_1: # %yes
|
||||
; CHECK-LINUX64-NEXT: pushq %rax
|
||||
; CHECK-LINUX64-NEXT: callq bar
|
||||
; CHECK-LINUX64-NEXT: popq %rax
|
||||
; CHECK-LINUX64-NEXT: retq
|
||||
;
|
||||
; CHECK-WIN32-64-LABEL: testw:
|
||||
; CHECK-WIN32-64: # %bb.0:
|
||||
; CHECK-WIN32-64-NEXT: subq $40, %rsp
|
||||
; CHECK-WIN32-64-NEXT: testw $2049, %cx # imm = 0x801
|
||||
; CHECK-WIN32-64-NEXT: jne .LBB12_2
|
||||
; CHECK-WIN32-64-NEXT: # %bb.1: # %yes
|
||||
; CHECK-WIN32-64-NEXT: callq bar
|
||||
; CHECK-WIN32-64-NEXT: .LBB12_2: # %no
|
||||
; CHECK-WIN32-64-NEXT: addq $40, %rsp
|
||||
; CHECK-WIN32-64-NEXT: retq
|
||||
;
|
||||
; CHECK-X86-LABEL: testw:
|
||||
; CHECK-X86: # %bb.0:
|
||||
; CHECK-X86-NEXT: testw $2049, %ax # imm = 0x801
|
||||
; CHECK-X86-NEXT: je .LBB12_1
|
||||
; CHECK-X86-NEXT: # %bb.2: # %no
|
||||
; CHECK-X86-NEXT: retl
|
||||
; CHECK-X86-NEXT: .LBB12_1: # %yes
|
||||
; CHECK-X86-NEXT: calll bar
|
||||
; CHECK-X86-NEXT: retl
|
||||
%t = and i16 %x, 2049
|
||||
%s = icmp eq i16 %t, 0
|
||||
br i1 %s, label %yes, label %no
|
||||
|
||||
yes:
|
||||
call void @bar()
|
||||
ret void
|
||||
no:
|
||||
ret void
|
||||
}
|
||||
|
||||
declare void @bar()
|
||||
|
Loading…
Reference in New Issue
Block a user