blob: 3db9d791f1894c477bc303f9ee24aeeab15b77f5 [file] [log] [blame]
Evan Cheng06c25522007-01-24 02:27:03 +00001; RUN: llvm-as < %s | llc -march=arm &&
2; RUN: llvm-as < %s | llc -march=arm | not grep mov &&
3; RUN: llvm-as < %s | llc -march=arm -enable-thumb &&
4; RUN: llvm-as < %s | llc -march=arm -enable-thumb | grep cpy | wc -l | grep 2
5
Reid Spencere3ff5ad2007-01-26 08:25:06 +00006define i32 @f1() {
Evan Cheng06c25522007-01-24 02:27:03 +00007 %buf = alloca [32 x i32], align 4
8 %tmp = getelementptr [32 x i32]* %buf, i32 0, i32 0
9 %tmp1 = load i32* %tmp
10 ret i32 %tmp1
11}
12
Reid Spencere3ff5ad2007-01-26 08:25:06 +000013define i32 @f2() {
Evan Cheng06c25522007-01-24 02:27:03 +000014 %buf = alloca [32 x i8], align 4
15 %tmp = getelementptr [32 x i8]* %buf, i32 0, i32 0
16 %tmp1 = load i8* %tmp
17 %tmp2 = zext i8 %tmp1 to i32
18 ret i32 %tmp2
19}
20
Reid Spencere3ff5ad2007-01-26 08:25:06 +000021define i32 @f3() {
Evan Cheng06c25522007-01-24 02:27:03 +000022 %buf = alloca [32 x i32], align 4
23 %tmp = getelementptr [32 x i32]* %buf, i32 0, i32 32
24 %tmp1 = load i32* %tmp
25 ret i32 %tmp1
26}
27
Reid Spencere3ff5ad2007-01-26 08:25:06 +000028define i32 @f4() {
Evan Cheng06c25522007-01-24 02:27:03 +000029 %buf = alloca [32 x i8], align 4
30 %tmp = getelementptr [32 x i8]* %buf, i32 0, i32 2
31 %tmp1 = load i8* %tmp
32 %tmp2 = zext i8 %tmp1 to i32
33 ret i32 %tmp2
34}