LLVM API Documentation
#include "bzlib_private.h"Include dependency graph for decompress.c:

Go to the source code of this file.
Defines | |
| #define | RETURN(rrr) { retVal = rrr; goto save_state_and_return; }; |
| #define | GET_BITS(lll, vvv, nnn) |
| #define | GET_UCHAR(lll, uuu) GET_BITS(lll,uuu,8) |
| #define | GET_BIT(lll, uuu) GET_BITS(lll,uuu,1) |
| #define | GET_MTF_VAL(label1, label2, lval) |
Functions | |
| static void | makeMaps_d (DState *s) |
| Int32 | BZ2_decompress (DState *s) |
| #define GET_BIT | ( | lll, | |||
| uuu | ) | GET_BITS(lll,uuu,1) |
| #define GET_BITS | ( | lll, | |||
| vvv, | |||||
| nnn | ) |
Value:
case lll: s->state = lll; \ while (True) { \ if (s->bsLive >= nnn) { \ UInt32 v; \ v = (s->bsBuff >> \ (s->bsLive-nnn)) & ((1 << nnn)-1); \ s->bsLive -= nnn; \ vvv = v; \ break; \ } \ if (s->strm->avail_in == 0) RETURN(BZ_OK); \ s->bsBuff \ = (s->bsBuff << 8) | \ ((UInt32) \ (*((UChar*)(s->strm->next_in)))); \ s->bsLive += 8; \ s->strm->next_in++; \ s->strm->avail_in--; \ s->strm->total_in_lo32++; \ if (s->strm->total_in_lo32 == 0) \ s->strm->total_in_hi32++; \ }
Definition at line 83 of file decompress.c.
Referenced by BZ2_decompress().
| #define GET_MTF_VAL | ( | label1, | |||
| label2, | |||||
| lval | ) |
Value:
{ \
if (groupPos == 0) { \
groupNo++; \
if (groupNo >= nSelectors) \
RETURN(BZ_DATA_ERROR); \
groupPos = BZ_G_SIZE; \
gSel = s->selector[groupNo]; \
gMinlen = s->minLens[gSel]; \
gLimit = &(s->limit[gSel][0]); \
gPerm = &(s->perm[gSel][0]); \
gBase = &(s->base[gSel][0]); \
} \
groupPos--; \
zn = gMinlen; \
GET_BITS(label1, zvec, zn); \
while (1) { \
if (zn > 20 /* the longest code */) \
RETURN(BZ_DATA_ERROR); \
if (zvec <= gLimit[zn]) break; \
zn++; \
GET_BIT(label2, zj); \
zvec = (zvec << 1) | zj; \
}; \
if (zvec - gBase[zn] < 0 \
|| zvec - gBase[zn] >= BZ_MAX_ALPHA_SIZE) \
RETURN(BZ_DATA_ERROR); \
lval = gPerm[zvec - gBase[zn]]; \
}
Definition at line 114 of file decompress.c.
Referenced by BZ2_decompress().
| #define GET_UCHAR | ( | lll, | |||
| uuu | ) | GET_BITS(lll,uuu,8) |
| #define RETURN | ( | rrr | ) | { retVal = rrr; goto save_state_and_return; }; |
Definition at line 146 of file decompress.c.
References DState::blockRandomised, DState::blockSize100k, BZ2_hbCreateDecodeTables(), BZ_DATA_ERROR, BZ_DATA_ERROR_MAGIC, BZ_GET_SMALL, BZ_HDR_0, BZ_HDR_B, BZ_HDR_h, BZ_HDR_Z, BZ_INITIALISE_CRC, BZ_MEM_ERROR, BZ_N_GROUPS, BZ_OK, BZ_RAND_INIT_MASK, BZ_RAND_MASK, BZ_RAND_UPD_MASK, BZ_RUNA, BZ_RUNB, BZ_X_BCRC_1, BZ_X_BCRC_2, BZ_X_BCRC_3, BZ_X_BCRC_4, BZ_X_BLKHDR_1, BZ_X_BLKHDR_2, BZ_X_BLKHDR_3, BZ_X_BLKHDR_4, BZ_X_BLKHDR_5, BZ_X_BLKHDR_6, BZ_X_CODING_1, BZ_X_CODING_2, BZ_X_CODING_3, BZ_X_MAGIC_1, BZ_X_MAGIC_2, BZ_X_MAGIC_3, BZ_X_MAGIC_4, BZ_X_MAPPING_1, BZ_X_MAPPING_2, BZ_X_MTF_1, BZ_X_MTF_2, BZ_X_MTF_3, BZ_X_MTF_4, BZ_X_MTF_5, BZ_X_MTF_6, BZ_X_ORIGPTR_1, BZ_X_ORIGPTR_2, BZ_X_ORIGPTR_3, BZ_X_OUTPUT, BZ_X_RANDBIT, BZ_X_SELECTOR_1, BZ_X_SELECTOR_2, BZ_X_SELECTOR_3, BZALLOC, DState::calculatedBlockCRC, DState::cftab, DState::cftabCopy, DState::currBlockNo, False, GET_BIT, GET_BITS, GET_LL, GET_MTF_VAL, GET_UCHAR, DState::inUse, DState::inUse16, DState::k0, DState::ll16, DState::ll4, makeMaps_d(), DState::mtfa, MTFA_SIZE, DState::mtfbase, MTFL_SIZE, DState::nblock_used, DState::origPtr, RETURN, DState::save_alphaSize, DState::save_curr, DState::save_EOB, DState::save_es, DState::save_gBase, DState::save_gLimit, DState::save_gMinlen, DState::save_gPerm, DState::save_groupNo, DState::save_groupPos, DState::save_gSel, DState::save_i, DState::save_j, DState::save_N, DState::save_nblock, DState::save_nblockMAX, DState::save_nextSym, DState::save_nGroups, DState::save_nSelectors, DState::save_t, DState::save_zj, DState::save_zn, DState::save_zt, DState::save_zvec, DState::seqToUnseq, SET_LL, DState::smallDecompress, DState::state, DState::state_out_ch, DState::state_out_len, DState::storedBlockCRC, DState::strm, DState::tPos, True, DState::tt, DState::unzftab, DState::verbosity, VPrintf0, and VPrintf1.
Referenced by BZ2_bzDecompress().
| static void makeMaps_d | ( | DState * | s | ) | [static] |
Definition at line 67 of file decompress.c.
References DState::inUse, DState::nInUse, and DState::seqToUnseq.
Referenced by BZ2_decompress().