Lines Matching defs:TransposedMatrix

89                      SmallVectorImpl<Value *> &TransposedMatrix);
91 SmallVectorImpl<Value *> &TransposedMatrix,
94 SmallVectorImpl<Value *> &TransposedMatrix);
96 SmallVectorImpl<Value *> &TransposedMatrix,
99 SmallVectorImpl<Value *> &TransposedMatrix,
273 // Invec[0] - |0| TransposedMatrix[0] - |0|
274 // Invec[1] - |1| => TransposedMatrix[1] - |1|
275 // Invec[2] - |2| TransposedMatrix[2] - |2|
278 // Invec[0] - |0|3| TransposedMatrix[0] - |0|1|
279 // Invec[1] - |1|4| => TransposedMatrix[1] - |2|3|
280 // Invec[2] - |2|5| TransposedMatrix[2] - |4|5|
283 // Invec[0] - |0|3|6|9 | TransposedMatrix[0] - |0|1|2 |3 |
284 // Invec[1] - |1|4|7|10| => TransposedMatrix[1] - |4|5|6 |7 |
285 // Invec[2] - |2|5|8|11| TransposedMatrix[2] - |8|9|10|11|
287 static void reorderSubVector(MVT VT, SmallVectorImpl<Value *> &TransposedMatrix,
294 TransposedMatrix[i] = Builder.CreateShuffleVector(Vec[i], VPShuf);
310 std::copy(Temp, Temp + Stride, TransposedMatrix.begin());
314 TransposedMatrix[i] =
320 SmallVectorImpl<Value *> &TransposedMatrix) {
328 TransposedMatrix.resize(2);
349 // TransposedMatrix[0] = c0 m0 y0 k0 c1 m1 y1 k1 c2 m2 y2 k2 c3 m3 y3 k3
350 // TransposedMatrix[1] = c4 m4 y4 k4 c5 m5 y5 k5 c6 m6 y6 k6 c7 m7 y7 k7
352 TransposedMatrix[0] =
354 TransposedMatrix[1] =
359 ArrayRef<Instruction *> Matrix, SmallVectorImpl<Value *> &TransposedMatrix,
370 TransposedMatrix.resize(4);
418 std::copy(VecOut, VecOut + 4, TransposedMatrix.begin());
422 reorderSubVector(VT, TransposedMatrix, VecOut, ArrayRef(Concat, 16), NumOfElm,
543 ArrayRef<Instruction *> InVec, SmallVectorImpl<Value *> &TransposedMatrix,
550 TransposedMatrix.resize(3);
593 // TransposedMatrix[0]= a0 a1 a2 a3 a4 a5 a6 a7
594 // TransposedMatrix[1]= b0 b1 b2 b3 b4 b5 b6 b7
595 // TransposedMatrix[2]= c0 c1 c2 c3 c4 c5 c6 c7
598 TransposedMatrix[0] = Builder.CreateShuffleVector(Vec[0], VPAlign2);
599 TransposedMatrix[1] = VecElems == 8 ? Vec[2] : TempVec;
600 TransposedMatrix[2] = VecElems == 8 ? TempVec : Vec[2];
626 ArrayRef<Instruction *> InVec, SmallVectorImpl<Value *> &TransposedMatrix,
633 TransposedMatrix.resize(3);
675 // TransposedMatrix[0] = a0 b0 c0 a1 b1 c1 a2 b2
676 // TransposedMatrix[1] = c2 a3 b3 c3 a4 b4 c4 a5
677 // TransposedMatrix[2] = b5 c5 a6 b6 c6 a7 b7 c7
681 reorderSubVector(VT, TransposedMatrix, Vec, VPShuf, NumOfElm, 3, Builder);
686 SmallVectorImpl<Value *> &TransposedMatrix) {
688 TransposedMatrix.resize(4);
705 TransposedMatrix[0] = Builder.CreateShuffleVector(IntrVec1, IntrVec2, Mask);
706 TransposedMatrix[2] = Builder.CreateShuffleVector(IntrVec3, IntrVec4, Mask);
711 TransposedMatrix[1] = Builder.CreateShuffleVector(IntrVec1, IntrVec2, Mask);
712 TransposedMatrix[3] = Builder.CreateShuffleVector(IntrVec3, IntrVec4, Mask);