summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/ARM
diff options
context:
space:
mode:
authorEric Christopher <echristo@apple.com>2010-12-15 23:47:29 +0000
committerEric Christopher <echristo@apple.com>2010-12-15 23:47:29 +0000
commit347f4c32e81ec09997dbc5b52c5c061cda33aba5 (patch)
tree85bf0c65c4be9755943406aca05dc0e6a79979d8 /llvm/test/CodeGen/ARM
parente7601e97e1fe199680ff55c6b5971867c0245127 (diff)
downloadbcm5719-llvm-347f4c32e81ec09997dbc5b52c5c061cda33aba5.tar.gz
bcm5719-llvm-347f4c32e81ec09997dbc5b52c5c061cda33aba5.zip
Don't handle -arm-long-calls in fast isel for now.
llvm-svn: 121919
Diffstat (limited to 'llvm/test/CodeGen/ARM')
-rw-r--r--llvm/test/CodeGen/ARM/fast-isel-static.ll30
1 files changed, 30 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/ARM/fast-isel-static.ll b/llvm/test/CodeGen/ARM/fast-isel-static.ll
new file mode 100644
index 00000000000..8f58480be16
--- /dev/null
+++ b/llvm/test/CodeGen/ARM/fast-isel-static.ll
@@ -0,0 +1,30 @@
+; RUN: llc < %s -mtriple=thumbv7-apple-darwin -O0 -relocation-model=static -arm-long-calls | FileCheck -check-prefix=LONG %s
+; RUN: llc < %s -mtriple=thumbv7-apple-darwin -O0 -relocation-model=static | FileCheck -check-prefix=NORM %s
+
+define void @myadd(float* %sum, float* %addend) nounwind {
+entry:
+ %sum.addr = alloca float*, align 4
+ %addend.addr = alloca float*, align 4
+ store float* %sum, float** %sum.addr, align 4
+ store float* %addend, float** %addend.addr, align 4
+ %tmp = load float** %sum.addr, align 4
+ %tmp1 = load float* %tmp
+ %tmp2 = load float** %addend.addr, align 4
+ %tmp3 = load float* %tmp2
+ %add = fadd float %tmp1, %tmp3
+ %tmp4 = load float** %sum.addr, align 4
+ store float %add, float* %tmp4
+ ret void
+}
+
+define i32 @main(i32 %argc, i8** %argv) nounwind {
+entry:
+ %ztot = alloca float, align 4
+ %z = alloca float, align 4
+ store float 0.000000e+00, float* %ztot, align 4
+ store float 1.000000e+00, float* %z, align 4
+; CHECK-LONG: blx r2
+; CHECK-NORM: blx _myadd
+ call void @myadd(float* %ztot, float* %z)
+ ret i32 0
+}
OpenPOWER on IntegriCloud