171 |
/* Initialize the function pointers */ |
/* Initialize the function pointers */ |
172 |
idct_int32_init(); |
idct_int32_init(); |
173 |
init_vlc_tables(); |
init_vlc_tables(); |
|
init_postproc(); |
|
174 |
|
|
175 |
/* Fixed Point Forward/Inverse DCT transformations */ |
/* Fixed Point Forward/Inverse DCT transformations */ |
176 |
fdct = fdct_int32; |
fdct = fdct_int32; |
480 |
interpolate8x8_halfpel_hv = interpolate8x8_halfpel_hv_3dne; |
interpolate8x8_halfpel_hv = interpolate8x8_halfpel_hv_3dne; |
481 |
} |
} |
482 |
|
|
|
#if defined(EXPERIMENTAL_SSE2_CODE) /* mark the whole SSE2 stuff as experimental. At least on |
|
|
my P4, it crashes... */ |
|
483 |
if ((cpu_flags & XVID_CPU_SSE2)) { |
if ((cpu_flags & XVID_CPU_SSE2)) { |
484 |
|
|
485 |
calc_cbp = calc_cbp_sse2; |
calc_cbp = calc_cbp_sse2; |
494 |
sad16 = sad16_sse2; |
sad16 = sad16_sse2; |
495 |
dev16 = dev16_sse2; |
dev16 = dev16_sse2; |
496 |
|
|
497 |
/* DCT operators */ |
/* DCT operators |
498 |
|
* no iDCT because it's not "Walken matching" */ |
499 |
fdct = fdct_sse2_skal; |
fdct = fdct_sse2_skal; |
|
idct = idct_sse2_dmitry; |
|
500 |
} |
} |
501 |
#endif |
#endif /* ARCH_IS_IA32 */ |
|
#endif |
|
502 |
|
|
503 |
#if defined(ARCH_IS_IA64) |
#if defined(ARCH_IS_IA64) |
504 |
if ((cpu_flags & XVID_CPU_ASM)) { /* use assembler routines? */ |
if ((cpu_flags & XVID_CPU_ASM)) { /* use assembler routines? */ |