17 |
* along with this program ; if not, write to the Free Software |
* along with this program ; if not, write to the Free Software |
18 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
19 |
* |
* |
20 |
* $Id: xvid.c,v 1.45 2003-02-21 00:00:57 edgomez Exp $ |
* $Id: xvid.c,v 1.46 2003-06-09 17:07:10 Isibaar Exp $ |
21 |
* |
* |
22 |
****************************************************************************/ |
****************************************************************************/ |
23 |
|
|
320 |
|
|
321 |
/* Forward and Inverse Discrete Cosine Transformation functions */ |
/* Forward and Inverse Discrete Cosine Transformation functions */ |
322 |
fdct = fdct_mmx; |
fdct = fdct_mmx; |
323 |
idct = idct_mmx; |
idct = simple_idct_mmx; /* use simple idct by default */ |
324 |
|
|
325 |
/* Quantization related functions */ |
/* Quantization related functions */ |
326 |
quant_intra = quant_intra_mmx; |
quant_intra = quant_intra_mmx; |
406 |
if ((cpu_flags & XVID_CPU_MMXEXT)) { |
if ((cpu_flags & XVID_CPU_MMXEXT)) { |
407 |
|
|
408 |
/* Inverse DCT */ |
/* Inverse DCT */ |
409 |
idct = idct_xmm; |
/* idct = idct_xmm; Don't use Walken idct anymore! */ |
410 |
|
|
411 |
/* Interpolation */ |
/* Interpolation */ |
412 |
interpolate8x8_halfpel_h = interpolate8x8_halfpel_h_xmm; |
interpolate8x8_halfpel_h = interpolate8x8_halfpel_h_xmm; |
452 |
if ((cpu_flags & XVID_CPU_3DNOWEXT)) { |
if ((cpu_flags & XVID_CPU_3DNOWEXT)) { |
453 |
|
|
454 |
/* Inverse DCT */ |
/* Inverse DCT */ |
455 |
idct = idct_3dne; |
/* idct = idct_3dne; Don't use Walken idct anymore */ |
456 |
|
|
457 |
/* Buffer transfer */ |
/* Buffer transfer */ |
458 |
transfer_8to16copy = transfer_8to16copy_3dne; |
transfer_8to16copy = transfer_8to16copy_3dne; |
502 |
dev16 = dev16_sse2; |
dev16 = dev16_sse2; |
503 |
#endif |
#endif |
504 |
/* Forward and Inverse DCT */ |
/* Forward and Inverse DCT */ |
505 |
idct = idct_sse2; |
/* idct = idct_sse2; |
506 |
fdct = fdct_sse2; |
/* fdct = fdct_sse2; Both are none to be unprecise - better deactivate for now */ |
507 |
} |
} |
508 |
#endif |
#endif |
509 |
|
|