Lines Matching full:matrix

75   /// Performs matrix transposition on a 4x4 matrix \p InputVectors and
319 ArrayRef<Instruction *> Matrix,
322 // Matrix[0]= c0 c1 c2 c3 c4 ... c7
323 // Matrix[1]= m0 m1 m2 m3 m4 ... m7
324 // Matrix[2]= y0 y1 y2 y3 y4 ... y7
325 // Matrix[3]= k0 k1 k2 k3 k4 ... k7
345 Builder.CreateShuffleVector(Matrix[0], Matrix[1], MaskLow);
347 Builder.CreateShuffleVector(Matrix[2], Matrix[3], MaskLow);
359 ArrayRef<Instruction *> Matrix, SmallVectorImpl<Value *> &TransposedMatrix,
362 // Matrix[0]= c0 c1 c2 c3 c4 ... c31
363 // Matrix[1]= m0 m1 m2 m3 m4 ... m31
364 // Matrix[2]= y0 y1 y2 y3 y4 ... y31
365 // Matrix[3]= k0 k1 k2 k3 k4 ... k31
397 IntrVec[0] = Builder.CreateShuffleVector(Matrix[0], Matrix[1], MaskLow);
398 IntrVec[1] = Builder.CreateShuffleVector(Matrix[0], Matrix[1], MaskHigh);
399 IntrVec[2] = Builder.CreateShuffleVector(Matrix[2], Matrix[3], MaskLow);
400 IntrVec[3] = Builder.CreateShuffleVector(Matrix[2], Matrix[3], MaskHigh);
496 // order. An assumption(The shape of the matrix) was taken for the
546 // Matrix[0]= a0 b0 c0 a1 b1 c1 a2 b2
547 // Matrix[1]= c2 a3 b3 c3 a4 b4 c4 a5
548 // Matrix[2]= b5 c5 a6 b6 c6 a7 b7 c7
629 // Matrix[0]= a0 a1 a2 a3 a4 a5 a6 a7
630 // Matrix[1]= b0 b1 b2 b3 b4 b5 b6 b7
631 // Matrix[2]= c0 c1 c2 c3 c3 a7 b7 c7
685 ArrayRef<Instruction *> Matrix,
687 assert(Matrix.size() == 4 && "Invalid matrix size");
693 Value *IntrVec1 = Builder.CreateShuffleVector(Matrix[0], Matrix[2], Mask);
694 Value *IntrVec2 = Builder.CreateShuffleVector(Matrix[1], Matrix[3], Mask);
699 Value *IntrVec3 = Builder.CreateShuffleVector(Matrix[0], Matrix[2], Mask);
700 Value *IntrVec4 = Builder.CreateShuffleVector(Matrix[1], Matrix[3], Mask);
741 // Perform matrix-transposition in order to compute interleaved