Lines Matching refs:stride
86 static void h264_idct_add_altivec(uint8_t *dst, int16_t *block, int stride)
118 dst += stride;
120 dst += stride;
122 dst += stride;
218 static void h264_idct8_add_altivec(uint8_t *dst, int16_t *dct, int stride)
254 ALTIVEC_STORE_SUM_CLIP(&dst[0*stride], idct0, perm_ldv, perm_stv, sel);
255 ALTIVEC_STORE_SUM_CLIP(&dst[1*stride], idct1, perm_ldv, perm_stv, sel);
256 ALTIVEC_STORE_SUM_CLIP(&dst[2*stride], idct2, perm_ldv, perm_stv, sel);
257 ALTIVEC_STORE_SUM_CLIP(&dst[3*stride], idct3, perm_ldv, perm_stv, sel);
258 ALTIVEC_STORE_SUM_CLIP(&dst[4*stride], idct4, perm_ldv, perm_stv, sel);
259 ALTIVEC_STORE_SUM_CLIP(&dst[5*stride], idct5, perm_ldv, perm_stv, sel);
260 ALTIVEC_STORE_SUM_CLIP(&dst[6*stride], idct6, perm_ldv, perm_stv, sel);
261 ALTIVEC_STORE_SUM_CLIP(&dst[7*stride], idct7, perm_ldv, perm_stv, sel);
269 static av_always_inline void h264_idct_dc_add_internal(uint8_t *dst, int16_t *block, int stride, int size)
295 v0 = DST_LD(0, dst+0*stride);
296 v1 = DST_LD(0, dst+1*stride);
297 v2 = DST_LD(0, dst+2*stride);
298 v3 = DST_LD(0, dst+3*stride);
310 VEC_ST(v0, 0, dst+0*stride);
311 VEC_ST(v1, 0, dst+1*stride);
312 VEC_ST(v2, 0, dst+2*stride);
313 VEC_ST(v3, 0, dst+3*stride);
315 dst += 4*stride;
319 static void h264_idct_dc_add_altivec(uint8_t *dst, int16_t *block, int stride)
321 h264_idct_dc_add_internal(dst, block, stride, 4);
324 static void h264_idct8_dc_add_altivec(uint8_t *dst, int16_t *block, int stride)
326 h264_idct_dc_add_internal(dst, block, stride, 8);
330 int16_t *block, int stride,
337 if(nnz==1 && block[i*16]) h264_idct_dc_add_altivec(dst + block_offset[i], block + i*16, stride);
338 else h264_idct_add_altivec(dst + block_offset[i], block + i*16, stride);
344 int16_t *block, int stride,
349 if(nnzc[ scan8[i] ]) h264_idct_add_altivec(dst + block_offset[i], block + i*16, stride);
350 else if(block[i*16]) h264_idct_dc_add_altivec(dst + block_offset[i], block + i*16, stride);
355 int16_t *block, int stride,
362 if(nnz==1 && block[i*16]) h264_idct8_dc_add_altivec(dst + block_offset[i], block + i*16, stride);
363 else h264_idct8_add_altivec(dst + block_offset[i], block + i*16, stride);
369 int16_t *block, int stride,
376 h264_idct_add_altivec(dest[j-1] + block_offset[i], block + i*16, stride);
378 h264_idct_dc_add_altivec(dest[j-1] + block_offset[i], block + i*16, stride);
628 static void h264_v_loop_filter_luma_altivec(uint8_t *pix, ptrdiff_t stride, int alpha, int beta, int8_t *tc0) {
631 register vec_u8 p2 = vec_ld(-3*stride, pix);
632 register vec_u8 p1 = vec_ld(-2*stride, pix);
633 register vec_u8 p0 = vec_ld(-1*stride, pix);
635 register vec_u8 q1 = vec_ld(stride, pix);
636 register vec_u8 q2 = vec_ld(2*stride, pix);
638 vec_st(p1, -2*stride, pix);
639 vec_st(p0, -1*stride, pix);
641 vec_st(q1, stride, pix);
645 static void h264_h_loop_filter_luma_altivec(uint8_t *pix, ptrdiff_t stride, int alpha, int beta, int8_t *tc0) {
650 readAndTranspose16x6(pix-3, stride, line0, line1, line2, line3, line4, line5);
653 write16x4(pix-2, stride, line1, line2, line3, line4);
657 void weight_h264_W_altivec(uint8_t *block, int stride, int height,
701 block += stride;
706 void biweight_h264_W_altivec(uint8_t *dst, uint8_t *src, int stride, int height,
768 dst += stride;
769 src += stride;
774 static void weight_h264_pixels ## W ## _altivec(uint8_t *block, ptrdiff_t stride, int height, \
777 weight_h264_W_altivec(block, stride, height, log2_denom, weight, offset, W); \
779 static void biweight_h264_pixels ## W ## _altivec(uint8_t *dst, uint8_t *src, ptrdiff_t stride, int height, \
782 biweight_h264_W_altivec(dst, src, stride, height, log2_denom, weightd, weights, offset, W); \