diff options
Diffstat (limited to 'test/CodeGen/ARM/ldr_pre.ll')
-rw-r--r-- | test/CodeGen/ARM/ldr_pre.ll | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/test/CodeGen/ARM/ldr_pre.ll b/test/CodeGen/ARM/ldr_pre.ll new file mode 100644 index 0000000..e9af1c9 --- /dev/null +++ b/test/CodeGen/ARM/ldr_pre.ll @@ -0,0 +1,18 @@ +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | \ +; RUN: grep {ldr.*\\!} | wc -l | grep 2 + +int *%test1(int *%X, int *%dest) { + %Y = getelementptr int* %X, int 4 + %A = load int* %Y + store int %A, int* %dest + ret int* %Y +} + +int %test2(int %a, int %b, int %c) { + %tmp1 = sub int %a, %b + %tmp2 = cast int %tmp1 to int* + %tmp3 = load int* %tmp2 + %tmp4 = sub int %tmp1, %c + %tmp5 = add int %tmp4, %tmp3 + ret int %tmp5 +} |