Commit 8c6cfffa authored by Michael Niedermayer's avatar Michael Niedermayer

Merge commit 'b574e1e9'

* commit 'b574e1e9':
  get_bits: Add OPEN_READER macro variant w/o size_plus8

Conflicts:
	libavcodec/get_bits.h
Merged-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parents 7865cafe b574e1e9
...@@ -96,7 +96,7 @@ static void dv_decode_ac(GetBitContext *gb, BlockInfo *mb, int16_t *block) ...@@ -96,7 +96,7 @@ static void dv_decode_ac(GetBitContext *gb, BlockInfo *mb, int16_t *block)
int partial_bit_count = mb->partial_bit_count; int partial_bit_count = mb->partial_bit_count;
int level, run, vlc_len, index; int level, run, vlc_len, index;
OPEN_READER(re, gb); OPEN_READER_NOSIZE(re, gb);
UPDATE_CACHE(re, gb); UPDATE_CACHE(re, gb);
/* if we must parse a partial VLC, we do it here */ /* if we must parse a partial VLC, we do it here */
......
...@@ -125,17 +125,18 @@ typedef struct RL_VLC_ELEM { ...@@ -125,17 +125,18 @@ typedef struct RL_VLC_ELEM {
# define MIN_CACHE_BITS 25 # define MIN_CACHE_BITS 25
#endif #endif
#if UNCHECKED_BITSTREAM_READER #define OPEN_READER_NOSIZE(name, gb) \
#define OPEN_READER(name, gb) \
unsigned int name ## _index = (gb)->index; \ unsigned int name ## _index = (gb)->index; \
unsigned int av_unused name ## _cache unsigned int av_unused name ## _cache
#if UNCHECKED_BITSTREAM_READER
#define OPEN_READER(name, gb) OPEN_READER_NOSIZE(name, gb)
#define BITS_AVAILABLE(name, gb) 1 #define BITS_AVAILABLE(name, gb) 1
#else #else
#define OPEN_READER(name, gb) \ #define OPEN_READER(name, gb) \
unsigned int name ## _index = (gb)->index; \ OPEN_READER_NOSIZE(name, gb); \
unsigned int av_unused name ## _cache = 0; \ unsigned int name ## _size_plus8 = (gb)->size_in_bits_plus8
unsigned int av_unused name ## _size_plus8 = (gb)->size_in_bits_plus8
#define BITS_AVAILABLE(name, gb) name ## _index < name ## _size_plus8 #define BITS_AVAILABLE(name, gb) name ## _index < name ## _size_plus8
#endif #endif
...@@ -286,7 +287,7 @@ static inline unsigned int get_bits_le(GetBitContext *s, int n) ...@@ -286,7 +287,7 @@ static inline unsigned int get_bits_le(GetBitContext *s, int n)
static inline unsigned int show_bits(GetBitContext *s, int n) static inline unsigned int show_bits(GetBitContext *s, int n)
{ {
register int tmp; register int tmp;
OPEN_READER(re, s); OPEN_READER_NOSIZE(re, s);
av_assert2(n>0 && n<=25); av_assert2(n>0 && n<=25);
UPDATE_CACHE(re, s); UPDATE_CACHE(re, s);
tmp = SHOW_UBITS(re, s, n); tmp = SHOW_UBITS(re, s, n);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment