blob: 2dc14d5667ba3e47c266c9140b2e7cf92ed3b02c [file] [log] [blame]
Reid Spencer69ccadd2006-12-02 04:23:10 +00001; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm &&
Evan Cheng02b985c2007-01-19 09:20:23 +00002; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep "\-2147483648" | wc -l | grep 3 &&
3; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep "mvn" | wc -l | grep 3 &&
Reid Spencer69ccadd2006-12-02 04:23:10 +00004; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep "adds" | wc -l | grep 1 &&
Evan Cheng02b985c2007-01-19 09:20:23 +00005; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep "adc" | wc -l | grep 1 &&
6; RUN: llvm-upgrade < %s | llvm-as | llc -mtriple=arm-linux | grep "subs" | wc -l | grep 1 &&
7; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep "sbc" | wc -l | grep 1 &&
Reid Spencer69ccadd2006-12-02 04:23:10 +00008; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep "smull" | wc -l | grep 1 &&
9; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep "umull" | wc -l | grep 1
Rafael Espindola3a02f022006-09-04 19:05:01 +000010
11long %f1() {
12entry:
13 ret long 0
14}
15
16long %f2() {
17entry:
18 ret long 1
19}
20
21long %f3() {
22entry:
23 ret long 2147483647
24}
25
26long %f4() {
27entry:
28 ret long 2147483648
29}
30
31long %f5() {
32entry:
33 ret long 9223372036854775807
34}
Rafael Espindola2d8680a2006-10-09 17:30:15 +000035
36ulong %f6(ulong %x, ulong %y) {
37entry:
38 %tmp1 = add ulong %y, 1
39 ret ulong %tmp1
40}
Rafael Espindola26a76d12006-10-13 16:47:22 +000041
42void %f7() {
43entry:
44 %tmp = call long %f8()
45 ret void
46}
47declare long %f8()
Rafael Espindola53955382006-10-13 17:19:20 +000048
49long %f9(long %a, long %b) {
50entry:
51 %tmp = sub long %a, %b
52 ret long %tmp
53}
Rafael Espindolabec2e382006-10-16 16:33:29 +000054
55long %f(int %a, int %b) {
56entry:
57 %tmp = cast int %a to long
58 %tmp1 = cast int %b to long
59 %tmp2 = mul long %tmp1, %tmp
60 ret long %tmp2
61}
62
63ulong %g(uint %a, uint %b) {
64entry:
65 %tmp = cast uint %a to ulong
66 %tmp1 = cast uint %b to ulong
67 %tmp2 = mul ulong %tmp1, %tmp
68 ret ulong %tmp2
69}
Rafael Espindola0d479ec2006-10-17 14:34:02 +000070
71ulong %f10() {
72entry:
73 %a = alloca ulong, align 8
74 %retval = load ulong* %a
75 ret ulong %retval
76}