[cvs] / xvidcore / src / xvid.c Repository:
ViewVC logotype

Diff of /xvidcore/src/xvid.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.45.4.1, Sat May 3 23:23:55 2003 UTC revision 1.46, Mon Jun 9 17:07:10 2003 UTC
# Line 44  Line 44 
44  #include "utils/emms.h"  #include "utils/emms.h"
45  #include "utils/timer.h"  #include "utils/timer.h"
46  #include "bitstream/mbcoding.h"  #include "bitstream/mbcoding.h"
 #include "image/qpel.h"  
47    
48  #if defined(ARCH_IS_IA32)  #if defined(ARCH_IS_IA32)
49    
# Line 182  Line 181 
181    
182          init_param->cpu_flags = cpu_flags;          init_param->cpu_flags = cpu_flags;
183    
         /* Qpel stuff */  
         xvid_QP_Funcs = &xvid_QP_Funcs_C;  
         xvid_QP_Add_Funcs = &xvid_QP_Add_Funcs_C;  
         xvid_Init_QP_mmx();  
184    
185          /* Initialize the function pointers */          /* Initialize the function pointers */
186          idct_int32_init();          idct_int32_init();
# Line 323  Line 318 
318    
319          if ((cpu_flags & XVID_CPU_MMX)) {          if ((cpu_flags & XVID_CPU_MMX)) {
320    
                 /* Qpel stuff */  
                 xvid_QP_Funcs = &xvid_QP_Funcs_mmx;  
                 xvid_QP_Add_Funcs = &xvid_QP_Add_Funcs_mmx;  
                 xvid_Init_QP_mmx();  
   
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;
# Line 416  Line 406 
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;
# Line 462  Line 452 
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;
# Line 512  Line 502 
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    

Legend:
Removed from v.1.45.4.1  
changed lines
  Added in v.1.46

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4