@@ -3875,7 +3875,6 @@ void VPInterleaveEVLRecipe::execute(VPTransformState &State) {
38753875 State.Builder .CreateVectorSplat (WideVF, State.Builder .getTrue ());
38763876 }
38773877
3878- const DataLayout &DL = Instr->getDataLayout ();
38793878 // Vectorize the interleaved load group.
38803879 if (isa<LoadInst>(Instr)) {
38813880 CallInst *NewLoad = State.Builder .CreateIntrinsic (
@@ -3896,6 +3895,7 @@ void VPInterleaveEVLRecipe::execute(VPTransformState &State) {
38963895 NewLoad->getType (), NewLoad,
38973896 /* FMFSource=*/ nullptr , " strided.vec" );
38983897
3898+ const DataLayout &DL = Instr->getDataLayout ();
38993899 for (unsigned I = 0 , J = 0 ; I < InterleaveFactor; ++I) {
39003900 Instruction *Member = Group->getMember (I);
39013901 // Skip the gaps in the group.
@@ -3922,6 +3922,7 @@ void VPInterleaveEVLRecipe::execute(VPTransformState &State) {
39223922 ArrayRef<VPValue *> StoredValues = getStoredValues ();
39233923 // Collect the stored vector from each member.
39243924 SmallVector<Value *, 4 > StoredVecs;
3925+ const DataLayout &DL = Instr->getDataLayout ();
39253926 for (unsigned I = 0 , StoredIdx = 0 ; I < InterleaveFactor; I++) {
39263927 Instruction *Member = Group->getMember (I);
39273928 // Skip the gaps in the group.
0 commit comments