Enhance SROA to "promote to scalar" allocas which are
[oota-llvm.git] / test / Transforms / ScalarRepl / vector_memcpy.ll
1 ; RUN: llvm-as < %s | opt -scalarrepl | llvm-dis | grep {ret <16 x float> %A}
2 define <16 x float> @foo(<16 x float> %A) nounwind {
3         %tmp = alloca <16 x float>, align 16
4         %tmp2 = alloca <16 x float>, align 16
5         store <16 x float> %A, <16 x float>* %tmp
6         %s = bitcast <16 x float>* %tmp to i8*
7         %s2 = bitcast <16 x float>* %tmp2 to i8*
8         call void @llvm.memcpy.i64(i8* %s2, i8* %s, i64 64, i32 16)
9         
10         %R = load <16 x float>* %tmp2
11         ret <16 x float> %R
12 }
13
14 declare void @llvm.memcpy.i64(i8* nocapture, i8* nocapture, i64, i32) nounwind
15