static void rv34_pred_4x4_block(RV34DecContext *r, uint8_t *dst, int stride, int itype, int up, int left, int down, int right)

{

    uint8_t *prev = dst - stride + 4;

    uint32_t topleft;



    if(!up && !left)

        itype = DC_128_PRED;

    else if(!up){

        if(itype == VERT_PRED) itype = HOR_PRED;

        if(itype == DC_PRED)   itype = LEFT_DC_PRED;

    }else if(!left){

        if(itype == HOR_PRED)  itype = VERT_PRED;

        if(itype == DC_PRED)   itype = TOP_DC_PRED;

        if(itype == DIAG_DOWN_LEFT_PRED) itype = DIAG_DOWN_LEFT_PRED_RV40_NODOWN;

    }

    if(!down){

        if(itype == DIAG_DOWN_LEFT_PRED) itype = DIAG_DOWN_LEFT_PRED_RV40_NODOWN;

        if(itype == HOR_UP_PRED) itype = HOR_UP_PRED_RV40_NODOWN;

        if(itype == VERT_LEFT_PRED) itype = VERT_LEFT_PRED_RV40_NODOWN;

    }

    if(!right && up){

        topleft = dst[-stride + 3] * 0x01010101;

        prev = (uint8_t*)&topleft;

    }

    r->h.pred4x4[itype](dst, prev, stride);

}

static void rv34_pred_4x4_block(RV34DecContext *r, uint8_t *dst, int stride, int itype, int up, int left, int down, int right)

{

    uint8_t *prev = dst - stride + 4;

    uint32_t topleft;



    if(!up && !left)

        itype = DC_128_PRED;

    else if(!up){

        if(itype == VERT_PRED) itype = HOR_PRED;

        if(itype == DC_PRED)   itype = LEFT_DC_PRED;

    }else if(!left){

        if(itype == HOR_PRED)  itype = VERT_PRED;

        if(itype == DC_PRED)   itype = TOP_DC_PRED;

        if(itype == DIAG_DOWN_LEFT_PRED) itype = DIAG_DOWN_LEFT_PRED_RV40_NODOWN;

    }

    if(!down){

        if(itype == DIAG_DOWN_LEFT_PRED) itype = DIAG_DOWN_LEFT_PRED_RV40_NODOWN;

        if(itype == HOR_UP_PRED) itype = HOR_UP_PRED_RV40_NODOWN;

        if(itype == VERT_LEFT_PRED) itype = VERT_LEFT_PRED_RV40_NODOWN;

    }

    if(!right && up){

        topleft = dst[-stride + 3] * 0x01010101;

        prev = (uint8_t*)&topleft;

    }

    r->h.pred4x4[itype](dst, prev, stride);

}

        topleft = dst[-stride + 3] * 0x01010101;
static void FUNC_0(RV34DecContext *VAR_0, uint8_t *VAR_1, int VAR_2, int VAR_3, int VAR_4, int VAR_5, int VAR_6, int VAR_7)

{

    uint8_t *prev = VAR_1 - VAR_2 + 4;

    uint32_t topleft;



    if(!VAR_4 && !VAR_5)

        VAR_3 = DC_128_PRED;

    else if(!VAR_4){

        if(VAR_3 == VERT_PRED) VAR_3 = HOR_PRED;

        if(VAR_3 == DC_PRED)   VAR_3 = LEFT_DC_PRED;

    }else if(!VAR_5){

        if(VAR_3 == HOR_PRED)  VAR_3 = VERT_PRED;

        if(VAR_3 == DC_PRED)   VAR_3 = TOP_DC_PRED;

        if(VAR_3 == DIAG_DOWN_LEFT_PRED) VAR_3 = DIAG_DOWN_LEFT_PRED_RV40_NODOWN;

    }

    if(!VAR_6){

        if(VAR_3 == DIAG_DOWN_LEFT_PRED) VAR_3 = DIAG_DOWN_LEFT_PRED_RV40_NODOWN;

        if(VAR_3 == HOR_UP_PRED) VAR_3 = HOR_UP_PRED_RV40_NODOWN;

        if(VAR_3 == VERT_LEFT_PRED) VAR_3 = VERT_LEFT_PRED_RV40_NODOWN;

    }

    if(!VAR_7 && VAR_4){

        topleft = VAR_1[-VAR_2 + 3] * 0x01010101;

        prev = (uint8_t*)&topleft;

    }

    VAR_0->h.pred4x4[VAR_3](VAR_1, prev, VAR_2);

}

static void FUNC_0(RV34DecContext *VAR_0, uint8_t *VAR_1, int VAR_2, int VAR_3, int VAR_4, int VAR_5, int VAR_6, int VAR_7)
{ uint8_t *prev = VAR_1 - VAR_2 + 4; uint32_t topleft; if(!VAR_4 && !VAR_5)
VAR_3 = DC_128_PRED; else if(!VAR_4){ if(VAR_3 == VERT_PRED) VAR_3 = HOR_PRED; if(VAR_3 == DC_PRED)   VAR_3 = LEFT_DC_PRED; }else if(!VAR_5){ if(VAR_3 == HOR_PRED)  VAR_3 = VERT_PRED; if(VAR_3 == DC_PRED)   VAR_3 = TOP_DC_PRED; if(VAR_3 == DIAG_DOWN_LEFT_PRED) VAR_3 = DIAG_DOWN_LEFT_PRED_RV40_NODOWN; } if(!VAR_6){ if(VAR_3 == DIAG_DOWN_LEFT_PRED) VAR_3 = DIAG_DOWN_LEFT_PRED_RV40_NODOWN; if(VAR_3 == HOR_UP_PRED) VAR_3 = HOR_UP_PRED_RV40_NODOWN; if(VAR_3 == VERT_LEFT_PRED) VAR_3 = VERT_LEFT_PRED_RV40_NODOWN; } if(!VAR_7 && VAR_4){ topleft = VAR_1[-VAR_2 + 3] * 0x01010101; prev = (uint8_t*)&topleft; } VAR_0->h.pred4x4[VAR_3](VAR_1, prev, VAR_2); }