]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/CodeGen/ARM/bic.ll
Vendor import of llvm trunk r351319 (just before the release_80 branch
[FreeBSD/FreeBSD.git] / test / CodeGen / ARM / bic.ll
1 ; RUN: llc -mtriple=arm-eabi %s -o - | FileCheck %s
2
3 define i32 @f1(i32 %a, i32 %b) {
4 ; CHECK-LABEL: f1:
5 ; CHECK: bic    r0, r0, r1
6     %tmp = xor i32 %b, 4294967295
7     %tmp1 = and i32 %a, %tmp
8     ret i32 %tmp1
9 }
10
11 define i32 @f2(i32 %a, i32 %b) {
12 ; CHECK-LABEL: f2:
13 ; CHECK: bic    r0, r0, r1
14     %tmp = xor i32 %b, 4294967295
15     %tmp1 = and i32 %tmp, %a
16     ret i32 %tmp1
17 }
18
19 define i32 @f3(i32 %a) {
20 ; CHECK-LABEL: f3:
21 ; CHECK: bic r0, r0, #255
22     %tmp = and i32 %a, -256
23     ret i32 %tmp
24 }