void vp8_mc_part(VP8Context *s, uint8_t *dst[3],

                 AVFrame *ref_frame, int x_off, int y_off,

                 int bx_off, int by_off,

                 int block_w, int block_h,

                 int width, int height, VP56mv *mv)

{

    VP56mv uvmv = *mv;



    /* Y */

    vp8_mc(s, 1, dst[0] + by_off * s->linesize + bx_off,

           ref_frame->data[0], mv, x_off + bx_off, y_off + by_off,

           block_w, block_h, width, height, s->linesize,

           s->put_pixels_tab[block_w == 8]);



    /* U/V */

    if (s->profile == 3) {

        uvmv.x &= ~7;

        uvmv.y &= ~7;

    }

    x_off   >>= 1; y_off   >>= 1;

    bx_off  >>= 1; by_off  >>= 1;

    width   >>= 1; height  >>= 1;

    block_w >>= 1; block_h >>= 1;

    vp8_mc(s, 0, dst[1] + by_off * s->uvlinesize + bx_off,

           ref_frame->data[1], &uvmv, x_off + bx_off, y_off + by_off,

           block_w, block_h, width, height, s->uvlinesize,

           s->put_pixels_tab[1 + (block_w == 4)]);

    vp8_mc(s, 0, dst[2] + by_off * s->uvlinesize + bx_off,

           ref_frame->data[2], &uvmv, x_off + bx_off, y_off + by_off,

           block_w, block_h, width, height, s->uvlinesize,

           s->put_pixels_tab[1 + (block_w == 4)]);

}

void vp8_mc_part(VP8Context *s, uint8_t *dst[3],

                 AVFrame *ref_frame, int x_off, int y_off,

                 int bx_off, int by_off,

                 int block_w, int block_h,

                 int width, int height, VP56mv *mv)

{

    VP56mv uvmv = *mv;



    

    vp8_mc(s, 1, dst[0] + by_off * s->linesize + bx_off,

           ref_frame->data[0], mv, x_off + bx_off, y_off + by_off,

           block_w, block_h, width, height, s->linesize,

           s->put_pixels_tab[block_w == 8]);



    

    if (s->profile == 3) {

        uvmv.x &= ~7;

        uvmv.y &= ~7;

    }

    x_off   >>= 1; y_off   >>= 1;

    bx_off  >>= 1; by_off  >>= 1;

    width   >>= 1; height  >>= 1;

    block_w >>= 1; block_h >>= 1;

    vp8_mc(s, 0, dst[1] + by_off * s->uvlinesize + bx_off,

           ref_frame->data[1], &uvmv, x_off + bx_off, y_off + by_off,

           block_w, block_h, width, height, s->uvlinesize,

           s->put_pixels_tab[1 + (block_w == 4)]);

    vp8_mc(s, 0, dst[2] + by_off * s->uvlinesize + bx_off,

           ref_frame->data[2], &uvmv, x_off + bx_off, y_off + by_off,

           block_w, block_h, width, height, s->uvlinesize,

           s->put_pixels_tab[1 + (block_w == 4)]);

}

void FUNC_0(VP8Context *VAR_0, uint8_t *VAR_1[3],

                 AVFrame *VAR_2, int VAR_3, int VAR_4,

                 int VAR_5, int VAR_6,

                 int VAR_7, int VAR_8,

                 int VAR_9, int VAR_10, VP56mv *VAR_11)

{

    VP56mv uvmv = *VAR_11;



    

    vp8_mc(VAR_0, 1, VAR_1[0] + VAR_6 * VAR_0->linesize + VAR_5,

           VAR_2->data[0], VAR_11, VAR_3 + VAR_5, VAR_4 + VAR_6,

           VAR_7, VAR_8, VAR_9, VAR_10, VAR_0->linesize,

           VAR_0->put_pixels_tab[VAR_7 == 8]);



    

    if (VAR_0->profile == 3) {

        uvmv.x &= ~7;

        uvmv.y &= ~7;

    }

    VAR_3   >>= 1; VAR_4   >>= 1;

    VAR_5  >>= 1; VAR_6  >>= 1;

    VAR_9   >>= 1; VAR_10  >>= 1;

    VAR_7 >>= 1; VAR_8 >>= 1;

    vp8_mc(VAR_0, 0, VAR_1[1] + VAR_6 * VAR_0->uvlinesize + VAR_5,

           VAR_2->data[1], &uvmv, VAR_3 + VAR_5, VAR_4 + VAR_6,

           VAR_7, VAR_8, VAR_9, VAR_10, VAR_0->uvlinesize,

           VAR_0->put_pixels_tab[1 + (VAR_7 == 4)]);

    vp8_mc(VAR_0, 0, VAR_1[2] + VAR_6 * VAR_0->uvlinesize + VAR_5,

           VAR_2->data[2], &uvmv, VAR_3 + VAR_5, VAR_4 + VAR_6,

           VAR_7, VAR_8, VAR_9, VAR_10, VAR_0->uvlinesize,

           VAR_0->put_pixels_tab[1 + (VAR_7 == 4)]);

}

void FUNC_0(VP8Context *VAR_0, uint8_t *VAR_1[3],
AVFrame *VAR_2, int VAR_3, int VAR_4,
int VAR_5, int VAR_6,
int VAR_7, int VAR_8,
int VAR_9, int VAR_10, VP56mv *VAR_11)
{ VP56mv uvmv = *VAR_11; vp8_mc(VAR_0, 1, VAR_1[0] + VAR_6 * VAR_0->linesize + VAR_5,
VAR_2->data[0], VAR_11, VAR_3 + VAR_5, VAR_4 + VAR_6,
VAR_7, VAR_8, VAR_9, VAR_10, VAR_0->linesize,
VAR_0->put_pixels_tab[VAR_7 == 8]); if (VAR_0->profile == 3) { uvmv.x &= ~7; uvmv.y &= ~7; } VAR_3   >>= 1; VAR_4   >>= 1; VAR_5  >>= 1; VAR_6  >>= 1; VAR_9   >>= 1; VAR_10  >>= 1; VAR_7 >>= 1; VAR_8 >>= 1; vp8_mc(VAR_0, 0, VAR_1[1] + VAR_6 * VAR_0->uvlinesize + VAR_5,
VAR_2->data[1], &uvmv, VAR_3 + VAR_5, VAR_4 + VAR_6,
VAR_7, VAR_8, VAR_9, VAR_10, VAR_0->uvlinesize,
VAR_0->put_pixels_tab[1 + (VAR_7 == 4)]); vp8_mc(VAR_0, 0, VAR_1[2] + VAR_6 * VAR_0->uvlinesize + VAR_5,
VAR_2->data[2], &uvmv, VAR_3 + VAR_5, VAR_4 + VAR_6,
VAR_7, VAR_8, VAR_9, VAR_10, VAR_0->uvlinesize,
VAR_0->put_pixels_tab[1 + (VAR_7 == 4)]); }