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

Diff of /xvidcore/src/motion/gmc.c

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

revision 1.7, Tue Nov 7 19:59:03 2006 UTC revision 1.9, Thu Nov 27 16:31:48 2008 UTC
# Line 385  Line 385 
385          mv->y = RSHIFT(Dsp->Vo<<qpel, 3);          mv->y = RSHIFT(Dsp->Vo<<qpel, 3);
386  }  }
387    
388  #if defined(ARCH_IS_IA32)  #if defined(ARCH_IS_IA32) || defined(ARCH_IS_X86_64)
389  /* *************************************************************  /* *************************************************************
390   * MMX core function   * MMX core function
391   */   */
# Line 400  Line 400 
400  extern void xvid_GMC_Core_Lin_8_sse2(uint8_t *Dst, const uint16_t * Offsets,  extern void xvid_GMC_Core_Lin_8_sse2(uint8_t *Dst, const uint16_t * Offsets,
401                                       const uint8_t * const Src0, const int BpS, const int Rounder);                                       const uint8_t * const Src0, const int BpS, const int Rounder);
402    
403    extern void xvid_GMC_Core_Lin_8_sse41(uint8_t *Dst, const uint16_t * Offsets,
404                                          const uint8_t * const Src0, const int BpS, const int Rounder);
405    
406  /* *************************************************************/  /* *************************************************************/
407    
408  static void GMC_Core_Non_Lin_8(uint8_t *Dst,  static void GMC_Core_Non_Lin_8(uint8_t *Dst,
# Line 587  Line 590 
590        Predict_16x16_func = Predict_16x16_C;        Predict_16x16_func = Predict_16x16_C;
591        Predict_8x8_func   = Predict_8x8_C;        Predict_8x8_func   = Predict_8x8_C;
592    
593  #if defined(ARCH_IS_IA32)  #if defined(ARCH_IS_IA32) || defined(ARCH_IS_X86_64)
594        if ((cpu_flags & XVID_CPU_MMX)   || (cpu_flags & XVID_CPU_MMXEXT)   ||        if ((cpu_flags & XVID_CPU_MMX)   || (cpu_flags & XVID_CPU_MMXEXT)   ||
595            (cpu_flags & XVID_CPU_3DNOW) || (cpu_flags & XVID_CPU_3DNOWEXT) ||            (cpu_flags & XVID_CPU_3DNOW) || (cpu_flags & XVID_CPU_3DNOWEXT) ||
596            (cpu_flags & XVID_CPU_SSE)   || (cpu_flags & XVID_CPU_SSE2))            (cpu_flags & XVID_CPU_SSE)   || (cpu_flags & XVID_CPU_SSE2) ||
597              (cpu_flags & XVID_CPU_SSE3)  || (cpu_flags & XVID_CPU_SSE41))
598          {          {
599             Predict_16x16_func = Predict_16x16_mmx;             Predict_16x16_func = Predict_16x16_mmx;
600             Predict_8x8_func   = Predict_8x8_mmx;             Predict_8x8_func   = Predict_8x8_mmx;
601             if (cpu_flags & XVID_CPU_SSE2)  
602               if (cpu_flags & XVID_CPU_SSE41)
603                 GMC_Core_Lin_8 = xvid_GMC_Core_Lin_8_sse41;
604               else if (cpu_flags & XVID_CPU_SSE2)
605               GMC_Core_Lin_8 = xvid_GMC_Core_Lin_8_sse2;               GMC_Core_Lin_8 = xvid_GMC_Core_Lin_8_sse2;
606             else             else
607               GMC_Core_Lin_8 = xvid_GMC_Core_Lin_8_mmx;               GMC_Core_Lin_8 = xvid_GMC_Core_Lin_8_mmx;

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.9

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