Avoid using empty macro arguments.

These are not supported by all compilers (gcc 2.95 but also older SPARC
compilers, see gcc bug  for example), and there is no real need for them.
One use of this feature remains in libavdevice/v4l2.c which can't be
replaced quite as easily.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
This commit is contained in:
Reimar Döffinger 2013-12-30 12:10:35 +01:00
parent 7fdf245ab9
commit cbeaf67888
4 changed files with 16 additions and 16 deletions
libavcodec
libswresample/x86

@ -60,7 +60,7 @@ static void arith_normalise(ArithCoder *c)
} }
} }
ARITH_GET_BIT() ARITH_GET_BIT(arith)
static int arith_get_bits(ArithCoder *c, int bits) static int arith_get_bits(ArithCoder *c, int bits)
{ {
@ -105,7 +105,7 @@ static int arith_get_prob(ArithCoder *c, int16_t *probs)
return sym; return sym;
} }
ARITH_GET_MODEL_SYM() ARITH_GET_MODEL_SYM(arith)
static void arith_init(ArithCoder *c, GetBitContext *gb) static void arith_init(ArithCoder *c, GetBitContext *gb)
{ {

@ -99,8 +99,8 @@ int ff_mss12_decode_init(MSS12Context *c, int version,
SliceContext *sc1, SliceContext *sc2); SliceContext *sc1, SliceContext *sc2);
int ff_mss12_decode_end(MSS12Context *ctx); int ff_mss12_decode_end(MSS12Context *ctx);
#define ARITH_GET_BIT(VERSION) \ #define ARITH_GET_BIT(prefix) \
static int arith ## VERSION ## _get_bit(ArithCoder *c) \ static int prefix ## _get_bit(ArithCoder *c) \
{ \ { \
int range = c->high - c->low + 1; \ int range = c->high - c->low + 1; \
int bit = 2 * c->value - c->low >= c->high; \ int bit = 2 * c->value - c->low >= c->high; \
@ -110,22 +110,22 @@ static int arith ## VERSION ## _get_bit(ArithCoder *c) \
else \ else \
c->high = c->low + (range >> 1) - 1; \ c->high = c->low + (range >> 1) - 1; \
\ \
arith ## VERSION ## _normalise(c); \ prefix ## _normalise(c); \
\ \
return bit; \ return bit; \
} }
#define ARITH_GET_MODEL_SYM(VERSION) \ #define ARITH_GET_MODEL_SYM(prefix) \
static int arith ## VERSION ## _get_model_sym(ArithCoder *c, Model *m) \ static int prefix ## _get_model_sym(ArithCoder *c, Model *m) \
{ \ { \
int idx, val; \ int idx, val; \
\ \
idx = arith ## VERSION ## _get_prob(c, m->cum_prob); \ idx = prefix ## _get_prob(c, m->cum_prob); \
\ \
val = m->idx2sym[idx]; \ val = m->idx2sym[idx]; \
ff_mss12_model_update(m, idx); \ ff_mss12_model_update(m, idx); \
\ \
arith ## VERSION ## _normalise(c); \ prefix ## _normalise(c); \
\ \
return val; \ return val; \
} }

@ -54,7 +54,7 @@ static void arith2_normalise(ArithCoder *c)
} }
} }
ARITH_GET_BIT(2) ARITH_GET_BIT(arith2)
/* L. Stuiver and A. Moffat: "Piecewise Integer Mapping for Arithmetic Coding." /* L. Stuiver and A. Moffat: "Piecewise Integer Mapping for Arithmetic Coding."
* In Proc. 8th Data Compression Conference (DCC '98), pp. 3-12, Mar. 1998 */ * In Proc. 8th Data Compression Conference (DCC '98), pp. 3-12, Mar. 1998 */
@ -127,7 +127,7 @@ static int arith2_get_prob(ArithCoder *c, int16_t *probs)
return i; return i;
} }
ARITH_GET_MODEL_SYM(2) ARITH_GET_MODEL_SYM(arith2)
static int arith2_get_consumed_bytes(ArithCoder *c) static int arith2_get_consumed_bytes(ArithCoder *c)
{ {

@ -21,14 +21,14 @@
#include "libswresample/swresample_internal.h" #include "libswresample/swresample_internal.h"
#include "libswresample/audioconvert.h" #include "libswresample/audioconvert.h"
#define PROTO(pre, in, out, cap) void ff ## pre ## _ ##in## _to_ ##out## _a_ ##cap(uint8_t **dst, const uint8_t **src, int len); #define PROTO(pre, in, out, cap) void ff ## pre ## in## _to_ ##out## _a_ ##cap(uint8_t **dst, const uint8_t **src, int len);
#define PROTO2(pre, out, cap) PROTO(pre, int16, out, cap) PROTO(pre, int32, out, cap) PROTO(pre, float, out, cap) #define PROTO2(pre, out, cap) PROTO(pre, int16, out, cap) PROTO(pre, int32, out, cap) PROTO(pre, float, out, cap)
#define PROTO3(pre, cap) PROTO2(pre, int16, cap) PROTO2(pre, int32, cap) PROTO2(pre, float, cap) #define PROTO3(pre, cap) PROTO2(pre, int16, cap) PROTO2(pre, int32, cap) PROTO2(pre, float, cap)
#define PROTO4(pre) PROTO3(pre, mmx) PROTO3(pre, sse) PROTO3(pre, sse2) PROTO3(pre, ssse3) PROTO3(pre, sse4) PROTO3(pre, avx) #define PROTO4(pre) PROTO3(pre, mmx) PROTO3(pre, sse) PROTO3(pre, sse2) PROTO3(pre, ssse3) PROTO3(pre, sse4) PROTO3(pre, avx)
PROTO4() PROTO4(_)
PROTO4(_pack_2ch) PROTO4(_pack_2ch_)
PROTO4(_pack_6ch) PROTO4(_pack_6ch_)
PROTO4(_unpack_2ch) PROTO4(_unpack_2ch_)
av_cold void swri_audio_convert_init_x86(struct AudioConvert *ac, av_cold void swri_audio_convert_init_x86(struct AudioConvert *ac,
enum AVSampleFormat out_fmt, enum AVSampleFormat out_fmt,