• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/X86/

Lines Matching refs:TransposedMatrix

89                      SmallVectorImpl<Value *> &TransposedMatrix);
91 SmallVectorImpl<Value *> &TransposedMatrix,
94 SmallVectorImpl<Value *> &TransposedMatrix);
96 SmallVectorImpl<Value *> &TransposedMatrix,
99 SmallVectorImpl<Value *> &TransposedMatrix,
277 // Invec[0] - |0| TransposedMatrix[0] - |0|
278 // Invec[1] - |1| => TransposedMatrix[1] - |1|
279 // Invec[2] - |2| TransposedMatrix[2] - |2|
282 // Invec[0] - |0|3| TransposedMatrix[0] - |0|1|
283 // Invec[1] - |1|4| => TransposedMatrix[1] - |2|3|
284 // Invec[2] - |2|5| TransposedMatrix[2] - |4|5|
287 // Invec[0] - |0|3|6|9 | TransposedMatrix[0] - |0|1|2 |3 |
288 // Invec[1] - |1|4|7|10| => TransposedMatrix[1] - |4|5|6 |7 |
289 // Invec[2] - |2|5|8|11| TransposedMatrix[2] - |8|9|10|11|
291 static void reorderSubVector(MVT VT, SmallVectorImpl<Value *> &TransposedMatrix,
298 TransposedMatrix[i] = Builder.CreateShuffleVector(
315 std::copy(Temp, Temp + Stride, TransposedMatrix.begin());
319 TransposedMatrix[i] =
325 SmallVectorImpl<Value *> &TransposedMatrix) {
333 TransposedMatrix.resize(2);
354 // TransposedMatrix[0] = c0 m0 y0 k0 c1 m1 y1 k1 c2 m2 y2 k2 c3 m3 y3 k3
355 // TransposedMatrix[1] = c4 m4 y4 k4 c5 m5 y5 k5 c6 m6 y6 k6 c7 m7 y7 k7
357 TransposedMatrix[0] =
359 TransposedMatrix[1] =
364 ArrayRef<Instruction *> Matrix, SmallVectorImpl<Value *> &TransposedMatrix,
375 TransposedMatrix.resize(4);
423 std::copy(VecOut, VecOut + 4, TransposedMatrix.begin());
427 reorderSubVector(VT, TransposedMatrix, VecOut, makeArrayRef(Concat, 16),
548 ArrayRef<Instruction *> InVec, SmallVectorImpl<Value *> &TransposedMatrix,
555 TransposedMatrix.resize(3);
599 // TransposedMatrix[0]= a0 a1 a2 a3 a4 a5 a6 a7
600 // TransposedMatrix[1]= b0 b1 b2 b3 b4 b5 b6 b7
601 // TransposedMatrix[2]= c0 c1 c2 c3 c4 c5 c6 c7
605 TransposedMatrix[0] = Builder.CreateShuffleVector(
607 TransposedMatrix[1] = VecElems == 8 ? Vec[2] : TempVec;
608 TransposedMatrix[2] = VecElems == 8 ? TempVec : Vec[2];
634 ArrayRef<Instruction *> InVec, SmallVectorImpl<Value *> &TransposedMatrix,
641 TransposedMatrix.resize(3);
685 // TransposedMatrix[0] = a0 b0 c0 a1 b1 c1 a2 b2
686 // TransposedMatrix[1] = c2 a3 b3 c3 a4 b4 c4 a5
687 // TransposedMatrix[2] = b5 c5 a6 b6 c6 a7 b7 c7
691 reorderSubVector(VT, TransposedMatrix, Vec, VPShuf, NumOfElm, 3, Builder);
696 SmallVectorImpl<Value *> &TransposedMatrix) {
698 TransposedMatrix.resize(4);
715 TransposedMatrix[0] = Builder.CreateShuffleVector(IntrVec1, IntrVec2, Mask);
716 TransposedMatrix[2] = Builder.CreateShuffleVector(IntrVec3, IntrVec4, Mask);
721 TransposedMatrix[1] = Builder.CreateShuffleVector(IntrVec1, IntrVec2, Mask);
722 TransposedMatrix[3] = Builder.CreateShuffleVector(IntrVec3, IntrVec4, Mask);