Add missing run line
[oota-llvm.git] / test / CodeGen / PowerPC / rlwimi.ll
1 ; All of these ands and shifts should be folded into rlwimi's
2 ; RUN: llvm-as < rlwimi.ll | llc -march=ppc32 | not grep and
3
4 implementation   ; Functions:
5
6 int %test1(int %x, int %y) {
7 entry:
8         %tmp.3 = shl int %x, ubyte 16           ; <int> [#uses=1]
9         %tmp.7 = and int %y, 65535              ; <int> [#uses=1]
10         %tmp.9 = or int %tmp.7, %tmp.3          ; <int> [#uses=1]
11         ret int %tmp.9
12 }
13
14 int %test2(int %x, int %y) {
15 entry:
16         %tmp.7 = and int %x, 65535              ; <int> [#uses=1]
17         %tmp.3 = shl int %y, ubyte 16           ; <int> [#uses=1]
18         %tmp.9 = or int %tmp.7, %tmp.3          ; <int> [#uses=1]
19         ret int %tmp.9
20 }
21
22 uint %test3(uint %x, uint %y) {
23 entry:
24         %tmp.3 = shr uint %x, ubyte 16          ; <uint> [#uses=1]
25         %tmp.6 = and uint %y, 4294901760                ; <uint> [#uses=1]
26         %tmp.7 = or uint %tmp.6, %tmp.3         ; <uint> [#uses=1]
27         ret uint %tmp.7
28 }
29
30 uint %test4(uint %x, uint %y) {
31 entry:
32         %tmp.6 = and uint %x, 4294901760                ; <uint> [#uses=1]
33         %tmp.3 = shr uint %y, ubyte 16          ; <uint> [#uses=1]
34         %tmp.7 = or uint %tmp.6, %tmp.3         ; <uint> [#uses=1]
35         ret uint %tmp.7
36 }
37
38 int %test5(int %x, int %y) {
39 entry:
40         %tmp.3 = shl int %x, ubyte 1            ; <int> [#uses=1]
41         %tmp.4 = and int %tmp.3, -65536         ; <int> [#uses=1]
42         %tmp.7 = and int %y, 65535              ; <int> [#uses=1]
43         %tmp.9 = or int %tmp.4, %tmp.7          ; <int> [#uses=1]
44         ret int %tmp.9
45 }
46
47 int %test6(int %x, int %y) {
48 entry:
49         %tmp.7 = and int %x, 65535              ; <int> [#uses=1]
50         %tmp.3 = shl int %y, ubyte 1            ; <int> [#uses=1]
51         %tmp.4 = and int %tmp.3, -65536         ; <int> [#uses=1]
52         %tmp.9 = or int %tmp.4, %tmp.7          ; <int> [#uses=1]
53         ret int %tmp.9
54 }
55
56 int %test9(int %x, int %y) {
57 entry:
58         %tmp.2 = and int %x, -65536             ; <int> [#uses=1]
59         %tmp.5 = and int %y, 65535              ; <int> [#uses=1]
60         %tmp.7 = or int %tmp.5, %tmp.2          ; <int> [#uses=1]
61         ret int %tmp.7
62 }