Lines Matching defs:TransposedMatrix

86                      SmallVectorImpl<Value *> &TransposedMatrix);
88 SmallVectorImpl<Value *> &TransposedMatrix,
91 SmallVectorImpl<Value *> &TransposedMatrix);
93 SmallVectorImpl<Value *> &TransposedMatrix,
96 SmallVectorImpl<Value *> &TransposedMatrix,
270 // Invec[0] - |0| TransposedMatrix[0] - |0|
271 // Invec[1] - |1| => TransposedMatrix[1] - |1|
272 // Invec[2] - |2| TransposedMatrix[2] - |2|
275 // Invec[0] - |0|3| TransposedMatrix[0] - |0|1|
276 // Invec[1] - |1|4| => TransposedMatrix[1] - |2|3|
277 // Invec[2] - |2|5| TransposedMatrix[2] - |4|5|
280 // Invec[0] - |0|3|6|9 | TransposedMatrix[0] - |0|1|2 |3 |
281 // Invec[1] - |1|4|7|10| => TransposedMatrix[1] - |4|5|6 |7 |
282 // Invec[2] - |2|5|8|11| TransposedMatrix[2] - |8|9|10|11|
284 static void reorderSubVector(MVT VT, SmallVectorImpl<Value *> &TransposedMatrix,
291 TransposedMatrix[i] = Builder.CreateShuffleVector(Vec[i], VPShuf);
307 std::copy(Temp, Temp + Stride, TransposedMatrix.begin());
311 TransposedMatrix[i] =
317 SmallVectorImpl<Value *> &TransposedMatrix) {
325 TransposedMatrix.resize(2);
346 // TransposedMatrix[0] = c0 m0 y0 k0 c1 m1 y1 k1 c2 m2 y2 k2 c3 m3 y3 k3
347 // TransposedMatrix[1] = c4 m4 y4 k4 c5 m5 y5 k5 c6 m6 y6 k6 c7 m7 y7 k7
349 TransposedMatrix[0] =
351 TransposedMatrix[1] =
356 ArrayRef<Instruction *> Matrix, SmallVectorImpl<Value *> &TransposedMatrix,
367 TransposedMatrix.resize(4);
415 std::copy(VecOut, VecOut + 4, TransposedMatrix.begin());
419 reorderSubVector(VT, TransposedMatrix, VecOut, ArrayRef(Concat, 16), NumOfElm,
540 ArrayRef<Instruction *> InVec, SmallVectorImpl<Value *> &TransposedMatrix,
547 TransposedMatrix.resize(3);
590 // TransposedMatrix[0]= a0 a1 a2 a3 a4 a5 a6 a7
591 // TransposedMatrix[1]= b0 b1 b2 b3 b4 b5 b6 b7
592 // TransposedMatrix[2]= c0 c1 c2 c3 c4 c5 c6 c7
595 TransposedMatrix[0] = Builder.CreateShuffleVector(Vec[0], VPAlign2);
596 TransposedMatrix[1] = VecElems == 8 ? Vec[2] : TempVec;
597 TransposedMatrix[2] = VecElems == 8 ? TempVec : Vec[2];
623 ArrayRef<Instruction *> InVec, SmallVectorImpl<Value *> &TransposedMatrix,
630 TransposedMatrix.resize(3);
672 // TransposedMatrix[0] = a0 b0 c0 a1 b1 c1 a2 b2
673 // TransposedMatrix[1] = c2 a3 b3 c3 a4 b4 c4 a5
674 // TransposedMatrix[2] = b5 c5 a6 b6 c6 a7 b7 c7
678 reorderSubVector(VT, TransposedMatrix, Vec, VPShuf, NumOfElm, 3, Builder);
683 SmallVectorImpl<Value *> &TransposedMatrix) {
685 TransposedMatrix.resize(4);
702 TransposedMatrix[0] = Builder.CreateShuffleVector(IntrVec1, IntrVec2, Mask);
703 TransposedMatrix[2] = Builder.CreateShuffleVector(IntrVec3, IntrVec4, Mask);
708 TransposedMatrix[1] = Builder.CreateShuffleVector(IntrVec1, IntrVec2, Mask);
709 TransposedMatrix[3] = Builder.CreateShuffleVector(IntrVec3, IntrVec4, Mask);