• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: llc < %s -march=thumb -mattr=+thumb2 | FileCheck %s
2
3
4; 0x000000bb = 187
5define i32 @f1(i32 %a) {
6    %tmp1 = xor i32 4294967295, 187
7    %tmp2 = or i32 %a, %tmp1
8    ret i32 %tmp2
9}
10; CHECK: f1:
11; CHECK: 	orn	r0, r0, #187
12
13; 0x00aa00aa = 11141290
14define i32 @f2(i32 %a) {
15    %tmp1 = xor i32 4294967295, 11141290
16    %tmp2 = or i32 %a, %tmp1
17    ret i32 %tmp2
18}
19; CHECK: f2:
20; CHECK: 	orn	r0, r0, #11141290
21
22; 0xcc00cc00 = 3422604288
23define i32 @f3(i32 %a) {
24    %tmp1 = xor i32 4294967295, 3422604288
25    %tmp2 = or i32 %a, %tmp1
26    ret i32 %tmp2
27}
28; CHECK: f3:
29; CHECK: 	orn	r0, r0, #-872363008
30
31; 0x00110000 = 1114112
32define i32 @f5(i32 %a) {
33    %tmp1 = xor i32 4294967295, 1114112
34    %tmp2 = or i32 %a, %tmp1
35    ret i32 %tmp2
36}
37; CHECK: f5:
38; CHECK: 	orn	r0, r0, #1114112
39