--- qpel.h 2004/08/10 21:58:55 1.3 +++ qpel.h 2005/01/05 23:02:15 1.6 @@ -19,7 +19,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: qpel.h,v 1.3 2004/08/10 21:58:55 edgomez Exp $ + * $Id: qpel.h,v 1.6 2005/01/05 23:02:15 edgomez Exp $ * ****************************************************************************/ @@ -78,6 +78,16 @@ extern XVID_QP_FUNCS xvid_QP_Add_Funcs_mmx; #endif +#ifdef ARCH_IS_PPC +extern XVID_QP_FUNCS xvid_QP_Funcs_Altivec_C; +extern XVID_QP_FUNCS xvid_QP_Add_Funcs_Altivec_C; +#endif + +#ifdef ARCH_IS_X86_64 +extern XVID_QP_FUNCS xvid_QP_Funcs_x86_64; +extern XVID_QP_FUNCS xvid_QP_Add_Funcs_x86_64; +#endif + extern XVID_QP_FUNCS *xvid_QP_Funcs; /* <- main pointer for enc/dec structure */ extern XVID_QP_FUNCS *xvid_QP_Add_Funcs; /* <- main pointer for enc/dec structure */ @@ -120,8 +130,8 @@ int32_t x_int, y_int; - const int32_t xRef = x*4 + dx; - const int32_t yRef = y*4 + dy; + const int32_t xRef = (int)x*4 + dx; + const int32_t yRef = (int)y*4 + dy; Ops = xvid_QP_Funcs; quads = (dx&3) | ((dy&3)<<2); @@ -135,7 +145,7 @@ y_int--; dst = cur + y * stride + x; - src = refn + y_int * stride + x_int; + src = refn + y_int * (int)stride + x_int; tmp = refh; /* we need at least a 16 x stride scratch block */ @@ -223,8 +233,8 @@ int32_t x_int, y_int; - const int32_t xRef = x*4 + dx; - const int32_t yRef = y*4 + dy; + const int32_t xRef = (int)x*4 + dx; + const int32_t yRef = (int)y*4 + dy; Ops = xvid_QP_Add_Funcs; Ops_Copy = xvid_QP_Funcs; @@ -239,7 +249,7 @@ y_int--; dst = cur + y * stride + x; - src = refn + y_int * stride + x_int; + src = refn + y_int * (int)stride + x_int; tmp = refh; /* we need at least a 16 x stride scratch block */ @@ -328,8 +338,8 @@ int32_t x_int, y_int; - const int32_t xRef = x*4 + dx; - const int32_t yRef = y*4 + dy; + const int32_t xRef = (int)x*4 + dx; + const int32_t yRef = (int)y*4 + dy; Ops = xvid_QP_Funcs; quads = (dx&3) | ((dy&3)<<2); @@ -343,7 +353,7 @@ y_int--; dst = cur + y * stride + x; - src = refn + y_int * stride + x_int; + src = refn + y_int * (int)stride + x_int; tmp = refh; /* we need at least a 16 x stride scratch block */ @@ -428,8 +438,8 @@ int32_t x_int, y_int; - const int32_t xRef = x*4 + dx; - const int32_t yRef = y*4 + dy; + const int32_t xRef = (int)x*4 + dx; + const int32_t yRef = (int)y*4 + dy; Ops = xvid_QP_Funcs; quads = (dx&3) | ((dy&3)<<2); @@ -443,7 +453,7 @@ y_int--; dst = cur + y * stride + x; - src = refn + y_int * stride + x_int; + src = refn + y_int * (int)stride + x_int; tmp = refh; /* we need at least a 16 x stride scratch block */ @@ -528,8 +538,8 @@ int32_t x_int, y_int; - const int32_t xRef = x*4 + dx; - const int32_t yRef = y*4 + dy; + const int32_t xRef = (int)x*4 + dx; + const int32_t yRef = (int)y*4 + dy; Ops = xvid_QP_Add_Funcs; Ops_Copy = xvid_QP_Funcs; @@ -544,7 +554,7 @@ y_int--; dst = cur + y * stride + x; - src = refn + y_int * stride + x_int; + src = refn + y_int * (int)stride + x_int; tmp = refh; /* we need at least a 16 x stride scratch block */