File tree Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Original file line number Diff line number Diff line change
1
+ ; XFAIL: *
2
+ ; fixme rev16 pattern is not matching
3
+
4
+ ; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | grep {rev16\\W*r\[0-9\]*,\\W*r\[0-9\]*} | count 1
5
+
6
+ ; 0xff00ff00 = 4278255360
7
+ ; 0x00ff00ff = 16711935
8
+ define i32 @f1 (i32 %a ) {
9
+ %l8 = shl i32 %a , 8
10
+ %r8 = lshr i32 %a , 8
11
+ %mask_l8 = and i32 %l8 , 4278255360
12
+ %mask_r8 = and i32 %r8 , 16711935
13
+ %tmp = or i32 %mask_l8 , %mask_r8
14
+ ret i32 %tmp
15
+ }
16
+
17
+ ; 0xff000000 = 4278190080
18
+ ; 0x00ff0000 = 16711680
19
+ ; 0x0000ff00 = 65280
20
+ ; 0x000000ff = 255
21
+ define i32 @f2 (i32 %a ) {
22
+ %l8 = shl i32 %a , 8
23
+ %r8 = lshr i32 %a , 8
24
+ %masklo_l8 = and i32 %l8 , 65280
25
+ %maskhi_l8 = and i32 %l8 , 4278190080
26
+ %masklo_r8 = and i32 %r8 , 255
27
+ %maskhi_r8 = and i32 %r8 , 16711680
28
+ %tmp1 = or i32 %masklo_l8 , %masklo_r8
29
+ %tmp2 = or i32 %maskhi_l8 , %maskhi_r8
30
+ %tmp = or i32 %tmp1 , %tmp2
31
+ ret i32 %tmp
32
+ }
You can’t perform that action at this time.
0 commit comments