blob: 493b26a5a8409711024eeaa56aeb610247d7ae6f [file] [log] [blame]
Sanjay Patel8f5bdb92016-10-14 20:52:43 +00001; RUN: llc < %s -mtriple=arm-apple-darwin | FileCheck %s
2
3; PR30660 - https://llvm.org/bugs/show_bug.cgi?id=30660
4
5define i32 @select_i32_neg1_or_0(i1 %a) {
6; CHECK-LABEL: select_i32_neg1_or_0:
Francis Visoiu Mistrih25528d62017-12-04 17:18:51 +00007; CHECK-NEXT: @ %bb.0:
Sanjay Patel3a3aaf62016-10-19 16:58:59 +00008; CHECK-NEXT: and r0, r0, #1
9; CHECK-NEXT: rsb r0, r0, #0
Sanjay Patel8f5bdb92016-10-14 20:52:43 +000010; CHECK-NEXT: mov pc, lr
11;
12 %b = sext i1 %a to i32
13 ret i32 %b
14}
15
16define i32 @select_i32_neg1_or_0_zeroext(i1 zeroext %a) {
17; CHECK-LABEL: select_i32_neg1_or_0_zeroext:
Francis Visoiu Mistrih25528d62017-12-04 17:18:51 +000018; CHECK-NEXT: @ %bb.0:
Sanjay Patel3a3aaf62016-10-19 16:58:59 +000019; CHECK-NEXT: rsb r0, r0, #0
Sanjay Patel8f5bdb92016-10-14 20:52:43 +000020; CHECK-NEXT: mov pc, lr
21;
22 %b = sext i1 %a to i32
23 ret i32 %b
24}
25