diff options
| author | Cameron Zwarich <zwarich@apple.com> | 2011-03-23 05:25:55 +0000 |
|---|---|---|
| committer | Cameron Zwarich <zwarich@apple.com> | 2011-03-23 05:25:55 +0000 |
| commit | 1537ce75ed25bbca58096383bb1fb9dd427bf1aa (patch) | |
| tree | 7469571d731ecd7fc08f3884f22a2ad9ab61bff1 /test/Transforms | |
| parent | 1e6c65dba706de80f5a4ceb8a1fc86bc3d0a61c6 (diff) | |
Fix PR9464 by correcting some math that just happened to be right in most cases
that were hit in practice.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128146 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms')
| -rw-r--r-- | test/Transforms/ScalarRepl/vector_promote.ll | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/test/Transforms/ScalarRepl/vector_promote.ll b/test/Transforms/ScalarRepl/vector_promote.ll index 8e143612eb..67bbf71b36 100644 --- a/test/Transforms/ScalarRepl/vector_promote.ll +++ b/test/Transforms/ScalarRepl/vector_promote.ll @@ -171,3 +171,19 @@ define void @test11(<2 x i64> %x) { ; CHECK: @test11 ; CHECK-NOT: alloca } + +define void @test12() { +entry: + %a = alloca <64 x i8>, align 64 + store <64 x i8> undef, <64 x i8>* %a, align 64 + %p = bitcast <64 x i8>* %a to <16 x i8>* + %0 = load <16 x i8>* %p, align 64 + store <16 x i8> undef, <16 x i8>* %p, align 64 + %q = bitcast <16 x i8>* %p to <64 x i8>* + %1 = load <64 x i8>* %q, align 64 + ret void +; CHECK: @test12 +; CHECK-NOT: alloca +; CHECK: extractelement <4 x i128> +; CHECK: insertelement <4 x i128> +} |
