_transp
_transp(d, 0, 1, n, mask);
_transp(d, 2, 3, n, mask);
_transp(d, 0, 2, n, mask);
_transp(d, 1, 3, n, mask);
_transp(d, 2, 0, n, mask);
_transp(d, 3, 1, n, mask);
_transp(d, 0, 1, n, mask);
_transp(d, 2, 3, n, mask);
_transp(d, 4, 5, n, mask);
_transp(d, 6, 7, n, mask);
_transp(d, 0, 2, n, mask);
_transp(d, 1, 3, n, mask);
_transp(d, 4, 6, n, mask);
_transp(d, 5, 7, n, mask);
_transp(d, 0, 4, n, mask);
_transp(d, 1, 5, n, mask);
_transp(d, 2, 6, n, mask);
_transp(d, 3, 7, n, mask);