summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAurelien Jacobs <aurel@gnuage.org>2007-08-26 22:38:57 +0000
committerAurelien Jacobs <aurel@gnuage.org>2007-08-26 22:38:57 +0000
commitca1daf0ad06e349344b80b90ea9cb91edda58bb8 (patch)
tree45233378640b93fd0788e84ba136bc95c982bc80
parent2407a7c10f0922d3e2f867665ae559627ccdc77f (diff)
add get_unary_0_33() to help gcc with inlining
Originally committed as revision 10242 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavcodec/unary.h10
-rw-r--r--libavcodec/wavpack.c6
2 files changed, 13 insertions, 3 deletions
diff --git a/libavcodec/unary.h b/libavcodec/unary.h
index daf02c3aab..0f600cc4e0 100644
--- a/libavcodec/unary.h
+++ b/libavcodec/unary.h
@@ -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 */
diff --git a/libavcodec/wavpack.c b/libavcodec/wavpack.c
index f6764b2657..798f6bed70 100644
--- a/libavcodec/wavpack.c
+++ b/libavcodec/wavpack.c
@@ -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));
}