Mercurial > libavcodec.hg
comparison dct-test.c @ 7148:cf7e5dcefe48 libavcodec
Revert "add libmpeg2 permutation to dct-test"
10l to me for not noticing that dct-test.c calls this
permutation MMX. Note to self: don't code after 2am.
author | mru |
---|---|
date | Thu, 26 Jun 2008 17:20:26 +0000 |
parents | 3664894594e5 |
children | 83e7ee1790a8 |
comparison
equal
deleted
inserted
replaced
7147:da33cd4590a0 | 7148:cf7e5dcefe48 |
---|---|
67 struct algo { | 67 struct algo { |
68 const char *name; | 68 const char *name; |
69 enum { FDCT, IDCT } is_idct; | 69 enum { FDCT, IDCT } is_idct; |
70 void (* func) (DCTELEM *block); | 70 void (* func) (DCTELEM *block); |
71 void (* ref) (DCTELEM *block); | 71 void (* ref) (DCTELEM *block); |
72 enum formattag { NO_PERM,MMX_PERM, MMX_SIMPLE_PERM, SCALE_PERM, SSE2_PERM, LIBMPEG2_PERM } format; | 72 enum formattag { NO_PERM,MMX_PERM, MMX_SIMPLE_PERM, SCALE_PERM, SSE2_PERM } format; |
73 int mm_support; | 73 int mm_support; |
74 }; | 74 }; |
75 | 75 |
76 #ifndef FAAN_POSTSCALE | 76 #ifndef FAAN_POSTSCALE |
77 #define FAAN_SCALE SCALE_PERM | 77 #define FAAN_SCALE SCALE_PERM |
233 block[idct_simple_mmx_perm[i]] = block1[i]; | 233 block[idct_simple_mmx_perm[i]] = block1[i]; |
234 | 234 |
235 } else if (form == SSE2_PERM) { | 235 } else if (form == SSE2_PERM) { |
236 for(i=0; i<64; i++) | 236 for(i=0; i<64; i++) |
237 block[(i&0x38) | idct_sse2_row_perm[i&7]] = block1[i]; | 237 block[(i&0x38) | idct_sse2_row_perm[i&7]] = block1[i]; |
238 } else if (form == LIBMPEG2_PERM) { | |
239 for(i=0; i<64; i++) | |
240 block[(i&0x38) | ((i&6) >> 1) | ((i&1) << 2)] = block1[i]; | |
241 } else { | 238 } else { |
242 for(i=0; i<64; i++) | 239 for(i=0; i<64; i++) |
243 block[i]= block1[i]; | 240 block[i]= block1[i]; |
244 } | 241 } |
245 #if 0 // simulate mismatch control for tested IDCT but not the ref | 242 #if 0 // simulate mismatch control for tested IDCT but not the ref |