Lines Matching defs:matrix
51 /* Definition of the matrix transpose */
70 * Swap half-rows of 2^n * (2*2^n) matrix.
75 swap_halfrows_pow2(mpd_uint_t *matrix, mpd_size_t rows, mpd_size_t cols, int dir)
119 hp = matrix + hn*cols/2;
124 hp = matrix + next*cols/2;
135 hp = matrix + next*cols/2;
149 /* In-place transpose of a square matrix */
172 * Transpose 2^n * 2^n matrix. For cache efficiency, the matrix is split into
177 squaretrans_pow2(mpd_uint_t *matrix, mpd_size_t size)
192 from = matrix + r*size + c;
202 to = matrix + r*size + c;
212 from = matrix + c*size + r;
221 to = matrix + c*size + r;
229 to = matrix + r*size + c;
244 * or a (2*2^n) x 2^n matrix.
247 transpose_pow2(mpd_uint_t *matrix, mpd_size_t rows, mpd_size_t cols)
255 squaretrans_pow2(matrix, rows);
258 if (!swap_halfrows_pow2(matrix, rows, cols, FORWARD_CYCLE)) {
261 squaretrans_pow2(matrix, rows);
262 squaretrans_pow2(matrix+(size/2), rows);
265 squaretrans_pow2(matrix, cols);
266 squaretrans_pow2(matrix+(size/2), cols);
267 if (!swap_halfrows_pow2(matrix, cols, rows, BACKWARD_CYCLE)) {