New testcase, SROA with variable array index
authorChris Lattner <sabre@nondot.org>
Sun, 14 Nov 2004 04:58:40 +0000 (04:58 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 14 Nov 2004 04:58:40 +0000 (04:58 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17726 91177308-0d34-0410-b5e6-96231b3b80d8

test/Transforms/ScalarRepl/sroa_two.ll [new file with mode: 0644]

diff --git a/test/Transforms/ScalarRepl/sroa_two.ll b/test/Transforms/ScalarRepl/sroa_two.ll
new file mode 100644 (file)
index 0000000..2d8e7c6
--- /dev/null
@@ -0,0 +1,16 @@
+; RUN: llvm-as < %s | opt -scalarrepl | llvm-dis
+
+implementation
+
+int %test(int %X) {
+       %Arr = alloca [2 x int]
+       %tmp.0 = getelementptr [2 x int]* %Arr, int 0, int 0
+       store int 1, int* %tmp.0
+       %tmp.1 = getelementptr [2 x int]* %Arr, int 0, int 1
+       store int 2, int* %tmp.1
+
+       ;; This should turn into a select instruction.
+       %tmp.3 = getelementptr [2 x int]* %Arr, int 0, int %X
+       %tmp.4 = load int* %tmp.3
+       ret int %tmp.4
+}