static inline void comp_block(MadContext *t, int mb_x, int mb_y,

                              int j, int mv_x, int mv_y, int add)

{

    MpegEncContext *s = &t->s;

    if (j < 4) {

        comp(t->frame.data[0] + (mb_y*16 + ((j&2)<<2))*t->frame.linesize[0] + mb_x*16 + ((j&1)<<3),

             t->frame.linesize[0],

             t->last_frame.data[0] + (mb_y*16 + ((j&2)<<2) + mv_y)*t->last_frame.linesize[0] + mb_x*16 + ((j&1)<<3) + mv_x,

             t->last_frame.linesize[0], add);

    } else if (!(s->avctx->flags & CODEC_FLAG_GRAY)) {

        int index = j - 3;

        comp(t->frame.data[index] + (mb_y*8)*t->frame.linesize[index] + mb_x * 8,

             t->frame.linesize[index],

             t->last_frame.data[index] + (mb_y * 8 + (mv_y/2))*t->last_frame.linesize[index] + mb_x * 8 + (mv_x/2),

             t->last_frame.linesize[index], add);

    }

}

static inline void comp_block(MadContext *t, int mb_x, int mb_y,

                              int j, int mv_x, int mv_y, int add)

{

    MpegEncContext *s = &t->s;

    if (j < 4) {

        comp(t->frame.data[0] + (mb_y*16 + ((j&2)<<2))*t->frame.linesize[0] + mb_x*16 + ((j&1)<<3),

             t->frame.linesize[0],

             t->last_frame.data[0] + (mb_y*16 + ((j&2)<<2) + mv_y)*t->last_frame.linesize[0] + mb_x*16 + ((j&1)<<3) + mv_x,

             t->last_frame.linesize[0], add);

    } else if (!(s->avctx->flags & CODEC_FLAG_GRAY)) {

        int index = j - 3;

        comp(t->frame.data[index] + (mb_y*8)*t->frame.linesize[index] + mb_x * 8,

             t->frame.linesize[index],

             t->last_frame.data[index] + (mb_y * 8 + (mv_y/2))*t->last_frame.linesize[index] + mb_x * 8 + (mv_x/2),

             t->last_frame.linesize[index], add);

    }

}

             t->last_frame.data[0] + (mb_y*16 + ((j&2)<<2) + mv_y)*t->last_frame.linesize[0] + mb_x*16 + ((j&1)<<3) + mv_x,              t->last_frame.data[index] + (mb_y * 8 + (mv_y/2))*t->last_frame.linesize[index] + mb_x * 8 + (mv_x/2),
static inline void FUNC_0(MadContext *VAR_0, int VAR_1, int VAR_2,

                              int VAR_3, int VAR_4, int VAR_5, int VAR_6)

{

    MpegEncContext *s = &VAR_0->s;

    if (VAR_3 < 4) {

        comp(VAR_0->frame.data[0] + (VAR_2*16 + ((VAR_3&2)<<2))*VAR_0->frame.linesize[0] + VAR_1*16 + ((VAR_3&1)<<3),

             VAR_0->frame.linesize[0],

             VAR_0->last_frame.data[0] + (VAR_2*16 + ((VAR_3&2)<<2) + VAR_5)*VAR_0->last_frame.linesize[0] + VAR_1*16 + ((VAR_3&1)<<3) + VAR_4,

             VAR_0->last_frame.linesize[0], VAR_6);

    } else if (!(s->avctx->flags & CODEC_FLAG_GRAY)) {

        int VAR_7 = VAR_3 - 3;

        comp(VAR_0->frame.data[VAR_7] + (VAR_2*8)*VAR_0->frame.linesize[VAR_7] + VAR_1 * 8,

             VAR_0->frame.linesize[VAR_7],

             VAR_0->last_frame.data[VAR_7] + (VAR_2 * 8 + (VAR_5/2))*VAR_0->last_frame.linesize[VAR_7] + VAR_1 * 8 + (VAR_4/2),

             VAR_0->last_frame.linesize[VAR_7], VAR_6);

    }

}

static inline void FUNC_0(MadContext *VAR_0, int VAR_1, int VAR_2,
int VAR_3, int VAR_4, int VAR_5, int VAR_6)
{ MpegEncContext *s = &VAR_0->s; if (VAR_3 < 4) { comp(VAR_0->frame.data[0] + (VAR_2*16 + ((VAR_3&2)<<2))*VAR_0->frame.linesize[0] + VAR_1*16 + ((VAR_3&1)<<3),
VAR_0->frame.linesize[0],
VAR_0->last_frame.data[0] + (VAR_2*16 + ((VAR_3&2)<<2) + VAR_5)*VAR_0->last_frame.linesize[0] + VAR_1*16 + ((VAR_3&1)<<3) + VAR_4,
VAR_0->last_frame.linesize[0], VAR_6); } else if (!(s->avctx->flags & CODEC_FLAG_GRAY)) { int VAR_7 = VAR_3 - 3; comp(VAR_0->frame.data[VAR_7] + (VAR_2*8)*VAR_0->frame.linesize[VAR_7] + VAR_1 * 8,
VAR_0->frame.linesize[VAR_7],
VAR_0->last_frame.data[VAR_7] + (VAR_2 * 8 + (VAR_5/2))*VAR_0->last_frame.linesize[VAR_7] + VAR_1 * 8 + (VAR_4/2),
VAR_0->last_frame.linesize[VAR_7], VAR_6); } }