dct-test: add PARTTRANS permutation

Originally committed as revision 16169 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Måns Rullgård 2008-12-16 19:59:50 +00:00
parent d358caed7e
commit 875f31259b
1 changed files with 4 additions and 1 deletions

View File

@ -69,7 +69,7 @@ struct algo {
enum { FDCT, IDCT } is_idct;
void (* func) (DCTELEM *block);
void (* ref) (DCTELEM *block);
enum formattag { NO_PERM,MMX_PERM, MMX_SIMPLE_PERM, SCALE_PERM, SSE2_PERM } format;
enum formattag { NO_PERM,MMX_PERM, MMX_SIMPLE_PERM, SCALE_PERM, SSE2_PERM, PARTTRANS_PERM } format;
int mm_support;
};
@ -235,6 +235,9 @@ void dct_error(const char *name, int is_idct,
} else if (form == SSE2_PERM) {
for(i=0; i<64; i++)
block[(i&0x38) | idct_sse2_row_perm[i&7]] = block1[i];
} else if (form == PARTTRANS_PERM) {
for(i=0; i<64; i++)
block[(i&0x24) | ((i&3)<<3) | ((i>>3)&3)] = block1[i];
} else {
for(i=0; i<64; i++)
block[i]= block1[i];