It's not necessary to do rounding for alloca operations when the requested
alignment is equal to the stack alignment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40004 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/CodeGen/ARM/str_pre.ll b/test/CodeGen/ARM/str_pre.ll
new file mode 100644
index 0000000..69f9928
--- /dev/null
+++ b/test/CodeGen/ARM/str_pre.ll
@@ -0,0 +1,18 @@
+; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | \
+; RUN:   grep {str.*\\!}  | wc -l | grep 2
+
+void %test1(int *%X, int *%A, int **%dest) {
+        %B = load int* %A
+        %Y = getelementptr int* %X, int 4
+        store int %B, int* %Y
+        store int* %Y, int** %dest
+        ret void
+}
+
+short *%test2(short *%X, int *%A) {
+        %B = load int* %A
+        %Y = getelementptr short* %X, int 4
+        %tmp = cast int %B to short
+        store short %tmp, short* %Y
+        ret short* %Y
+}