llvm.org GIT mirror llvm / 3d1d1e1
Merge from mainline. When transforming a vector_shuffle to a load, the base address must not be an undef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_23@50981 91177308-0d34-0410-b5e6-96231b3b80d8 Tanya Lattner 12 years ago
2 changed file(s) with 12 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
62826282 return false;
62836283 if (!Base) {
62846284 Base = Elt.Val;
6285 if (Base->getOpcode() == ISD::UNDEF)
6286 return false;
62856287 continue;
62866288 }
62876289 if (Elt.getOpcode() == ISD::UNDEF)
0 ; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2
1
2 define fastcc void @glgVectorFloatConversion() nounwind {
3 %tmp12745 = load <4 x float>* null, align 16 ; <<4 x float>> [#uses=1]
4 %tmp12773 = insertelement <4 x float> %tmp12745, float 1.000000e+00, i32 1 ; <<4 x float>> [#uses=1]
5 %tmp12774 = insertelement <4 x float> %tmp12773, float 0.000000e+00, i32 2 ; <<4 x float>> [#uses=1]
6 %tmp12775 = insertelement <4 x float> %tmp12774, float 1.000000e+00, i32 3 ; <<4 x float>> [#uses=1]
7 store <4 x float> %tmp12775, <4 x float>* null, align 16
8 unreachable
9 }