Commit 06cb7a1c authored by Vitor Sessak's avatar Vitor Sessak

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.

Originally committed as revision 21231 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent a4be782c
...@@ -264,17 +264,13 @@ if ((y) < (x)) {\ ...@@ -264,17 +264,13 @@ if ((y) < (x)) {\
} }
#if !HAVE_EXP2 #if !HAVE_EXP2
static av_always_inline av_const double exp2(double x) #undef exp2
{ #define exp2(x) exp((x) * 0.693147180559945)
return exp(x * 0.693147180559945);
}
#endif /* HAVE_EXP2 */ #endif /* HAVE_EXP2 */
#if !HAVE_EXP2F #if !HAVE_EXP2F
static av_always_inline av_const float exp2f(float x) #undef exp2f
{ #define exp2f(x) exp2(x)
return exp2(x);
}
#endif /* HAVE_EXP2F */ #endif /* HAVE_EXP2F */
#if !HAVE_LLRINT #if !HAVE_LLRINT
...@@ -285,17 +281,13 @@ static av_always_inline av_const long long llrint(double x) ...@@ -285,17 +281,13 @@ static av_always_inline av_const long long llrint(double x)
#endif /* HAVE_LLRINT */ #endif /* HAVE_LLRINT */
#if !HAVE_LOG2 #if !HAVE_LOG2
static av_always_inline av_const double log2(double x) #undef log2
{ #define log2(x) (log(x) * 1.44269504088896340736)
return log(x) * 1.44269504088896340736;
}
#endif /* HAVE_LOG2 */ #endif /* HAVE_LOG2 */
#if !HAVE_LOG2F #if !HAVE_LOG2F
static av_always_inline av_const float log2f(float x) #undef log2f
{ #define log2f(x) log2(x)
return log2(x);
}
#endif /* HAVE_LOG2F */ #endif /* HAVE_LOG2F */
#if !HAVE_LRINT #if !HAVE_LRINT
......
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