int bit_cnt;
static inline int get_vlc(GetBitContext *s, VLC *vlc){    int code, n, nb_bits, index;    INT16 *table_codes;    INT8 *table_bits;#ifndef ALT_BITSTREAM_READER    int bit_cnt;    UINT32 bit_buf;    UINT8 *buf_ptr;#endif    SAVE_BITS(s);    nb_bits = vlc->bits;    table_codes = vlc->table_codes;    table_bits = vlc->table_bits;        SHOW_BITS(s, index, nb_bits);    code = table_codes[index];    n = table_bits[index];    if (n > 0) {        /* most common case (90%)*/        FLUSH_BITS(n);        RESTORE_BITS(s);        return code;    } else if (n == 0) {        return -1;    } else {        FLUSH_BITS(nb_bits);        nb_bits = -n;        table_codes = vlc->table_codes + code;        table_bits = vlc->table_bits + code;    }    for(;;) {        SHOW_BITS(s, index, nb_bits);        code = table_codes[index];        n = table_bits[index];        if (n > 0) {            /* most common case */            FLUSH_BITS(n);#ifdef STATS            st_bit_counts[st_current_index] += n;#endif            break;        } else if (n == 0) {            return -1;        } else {            FLUSH_BITS(nb_bits);#ifdef STATS            st_bit_counts[st_current_index] += nb_bits;#endif            nb_bits = -n;            table_codes = vlc->table_codes + code;            table_bits = vlc->table_bits + code;        }    }    RESTORE_BITS(s);    return code;}