# HG changeset patch # User vitor # Date 1263605266 0 # Node ID 1778eea266cb4ae1fac85330067de3ae854dea33 # Parent 36cc11e07d9bba14a64a9fe7091abfc603850b20 Use macros instead of inline functions to replace the following missing C99 functions: exp2, exp2f, log2, log2f. Should fix compilation in systems where these functions are defined in math.h but not implemented. diff -r 36cc11e07d9b -r 1778eea266cb internal.h --- a/internal.h Thu Jan 14 19:58:12 2010 +0000 +++ b/internal.h Sat Jan 16 01:27:46 2010 +0000 @@ -264,17 +264,13 @@ } #if !HAVE_EXP2 -static av_always_inline av_const double exp2(double x) -{ - return exp(x * 0.693147180559945); -} +#undef exp2 +#define exp2(x) exp((x) * 0.693147180559945) #endif /* HAVE_EXP2 */ #if !HAVE_EXP2F -static av_always_inline av_const float exp2f(float x) -{ - return exp2(x); -} +#undef exp2f +#define exp2f(x) exp2(x) #endif /* HAVE_EXP2F */ #if !HAVE_LLRINT @@ -285,17 +281,13 @@ #endif /* HAVE_LLRINT */ #if !HAVE_LOG2 -static av_always_inline av_const double log2(double x) -{ - return log(x) * 1.44269504088896340736; -} +#undef log2 +#define log2(x) (log(x) * 1.44269504088896340736) #endif /* HAVE_LOG2 */ #if !HAVE_LOG2F -static av_always_inline av_const float log2f(float x) -{ - return log2(x); -} +#undef log2f +#define log2f(x) log2(x) #endif /* HAVE_LOG2F */ #if !HAVE_LRINT