2021-08-08 04:08:33 +00:00
|
|
|
#ifndef TRANSPOSE_H
|
|
|
|
#define TRANSPOSE_H
|
2021-08-12 07:42:14 +00:00
|
|
|
#include "third_party/python/Modules/_decimal/libmpdec/mpdecimal.h"
|
2021-08-10 17:26:13 +00:00
|
|
|
/* clang-format off */
|
2021-08-08 04:08:33 +00:00
|
|
|
|
|
|
|
/* Internal header file: all symbols have local scope in the DSO */
|
|
|
|
|
|
|
|
enum {FORWARD_CYCLE, BACKWARD_CYCLE};
|
|
|
|
|
|
|
|
void std_trans(mpd_uint_t dest[], mpd_uint_t src[], mpd_size_t rows, mpd_size_t cols);
|
|
|
|
int transpose_pow2(mpd_uint_t *matrix, mpd_size_t rows, mpd_size_t cols);
|
|
|
|
void transpose_3xpow2(mpd_uint_t *matrix, mpd_size_t rows, mpd_size_t cols);
|
|
|
|
|
|
|
|
static inline void pointerswap(mpd_uint_t **a, mpd_uint_t **b)
|
|
|
|
{
|
|
|
|
mpd_uint_t *tmp;
|
|
|
|
tmp = *b;
|
|
|
|
*b = *a;
|
|
|
|
*a = tmp;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|