aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCameron Zwarich <zwarich@apple.com>2011-03-09 08:11:02 +0000
committerCameron Zwarich <zwarich@apple.com>2011-03-09 08:11:02 +0000
commit35e5475062fc0a5ce0dcbd20a49a3949fcc68ef7 (patch)
tree099ed0a09565f5b1b796cfe4d152eb54adf387d8
parent032c10fee2a4bb731488ce75844878009d3bd409 (diff)
Add a test case for r127320.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127321 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/Transforms/ScalarRepl/vector_promote.ll14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/Transforms/ScalarRepl/vector_promote.ll b/test/Transforms/ScalarRepl/vector_promote.ll
index 898cbde353..8e143612eb 100644
--- a/test/Transforms/ScalarRepl/vector_promote.ll
+++ b/test/Transforms/ScalarRepl/vector_promote.ll
@@ -157,3 +157,17 @@ define void @test10(<4 x i256> %x, <2 x i256> %y) {
; CHECK-NEXT: insertelement <2 x i512>
; CHECK-NEXT: bitcast <2 x i512> %tmp2 to <4 x i256>
}
+
+%union.v = type { <2 x i64> }
+
+define void @test11(<2 x i64> %x) {
+ %a = alloca %union.v
+ %p = getelementptr inbounds %union.v* %a, i32 0, i32 0
+ store <2 x i64> %x, <2 x i64>* %p, align 16
+ %q = getelementptr inbounds %union.v* %a, i32 0, i32 0
+ %r = bitcast <2 x i64>* %q to <4 x float>*
+ %b = load <4 x float>* %r, align 16
+ ret void
+; CHECK: @test11
+; CHECK-NOT: alloca
+}