add get_unary_0_33() to help gcc with inlining

Originally committed as revision 10242 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Aurelien Jacobs 2007-08-26 22:38:57 +00:00
parent 2407a7c10f
commit ca1daf0ad0
2 changed files with 13 additions and 3 deletions

View File

@ -38,4 +38,14 @@ static inline int get_unary(GetBitContext *gb, int stop, int len)
return i;
}
/**
* Get unary code terminated by a 0 with a maximum length of 33
* @param gb GetBitContext
* @return Unary length/index
*/
static inline int get_unary_0_33(GetBitContext *gb)
{
return get_unary(gb, 0, 33);
}
#endif /* AVCODEC_UNARY_H */

View File

@ -161,7 +161,7 @@ static int wv_get_value(WavpackContext *ctx, GetBitContext *gb, int *median, int
if(ctx->zeroes)
return 0;
}else{
t = get_unary(gb, 0, 33);
t = get_unary_0_33(gb);
if(t >= 2) t = get_bits(gb, t - 1) | (1 << (t-1));
ctx->zeroes = t;
if(ctx->zeroes){
@ -180,13 +180,13 @@ static int wv_get_value(WavpackContext *ctx, GetBitContext *gb, int *median, int
t = 0;
ctx->zero = 0;
}else{
t = get_unary(gb, 0, 33);
t = get_unary_0_33(gb);
if(get_bits_count(gb) >= ctx->data_size){
*last = 1;
return 0;
}
if(t == 16) {
t2 = get_unary(gb, 0, 33);
t2 = get_unary_0_33(gb);
if(t2 < 2) t += t2;
else t += get_bits(gb, t2 - 1) | (1 << (t2 - 1));
}