Commit ca1daf0a authored by Aurelien Jacobs's avatar Aurelien Jacobs

add get_unary_0_33() to help gcc with inlining

Originally committed as revision 10242 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent 2407a7c1
...@@ -38,4 +38,14 @@ static inline int get_unary(GetBitContext *gb, int stop, int len) ...@@ -38,4 +38,14 @@ static inline int get_unary(GetBitContext *gb, int stop, int len)
return i; 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 */ #endif /* AVCODEC_UNARY_H */
...@@ -161,7 +161,7 @@ static int wv_get_value(WavpackContext *ctx, GetBitContext *gb, int *median, int ...@@ -161,7 +161,7 @@ static int wv_get_value(WavpackContext *ctx, GetBitContext *gb, int *median, int
if(ctx->zeroes) if(ctx->zeroes)
return 0; return 0;
}else{ }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)); if(t >= 2) t = get_bits(gb, t - 1) | (1 << (t-1));
ctx->zeroes = t; ctx->zeroes = t;
if(ctx->zeroes){ if(ctx->zeroes){
...@@ -180,13 +180,13 @@ static int wv_get_value(WavpackContext *ctx, GetBitContext *gb, int *median, int ...@@ -180,13 +180,13 @@ static int wv_get_value(WavpackContext *ctx, GetBitContext *gb, int *median, int
t = 0; t = 0;
ctx->zero = 0; ctx->zero = 0;
}else{ }else{
t = get_unary(gb, 0, 33); t = get_unary_0_33(gb);
if(get_bits_count(gb) >= ctx->data_size){ if(get_bits_count(gb) >= ctx->data_size){
*last = 1; *last = 1;
return 0; return 0;
} }
if(t == 16) { if(t == 16) {
t2 = get_unary(gb, 0, 33); t2 = get_unary_0_33(gb);
if(t2 < 2) t += t2; if(t2 < 2) t += t2;
else t += get_bits(gb, t2 - 1) | (1 << (t2 - 1)); else t += get_bits(gb, t2 - 1) | (1 << (t2 - 1));
} }
......
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