[FFmpeg-cvslog] r21155 - in trunk: configure libavutil/internal.h

vitor subversion
Tue Jan 12 03:19:51 CET 2010


Author: vitor
Date: Tue Jan 12 03:19:51 2010
New Revision: 21155

Log:
Add replacements for log2f(), exp2() and exp2f() for platforms that lacks it.

Should fix build breakage on some platforms introduced in r21125.

Modified:
   trunk/configure
   trunk/libavutil/internal.h

Modified: trunk/configure
==============================================================================
--- trunk/configure	Tue Jan 12 01:29:26 2010	(r21154)
+++ trunk/configure	Tue Jan 12 03:19:51 2010	(r21155)
@@ -954,6 +954,8 @@ HAVE_LIST="
     dos_paths
     ebp_available
     ebx_available
+    exp2
+    exp2f
     fast_64bit
     fast_cmov
     fast_unaligned
@@ -970,6 +972,7 @@ HAVE_LIST="
     libdc1394_2
     llrint
     log2
+    log2f
     loongson
     lrint
     lrintf
@@ -2379,8 +2382,11 @@ done
 check_lib math.h sin -lm
 check_lib va/va.h vaInitialize -lva
 
+check_func exp2
+check_func exp2f
 check_func llrint
 check_func log2
+check_func log2f
 check_func lrint
 check_func lrintf
 check_func round

Modified: trunk/libavutil/internal.h
==============================================================================
--- trunk/libavutil/internal.h	Tue Jan 12 01:29:26 2010	(r21154)
+++ trunk/libavutil/internal.h	Tue Jan 12 03:19:51 2010	(r21155)
@@ -263,6 +263,20 @@ if ((y) < (x)) {\
     }\
 }
 
+#if !HAVE_EXP2
+static av_always_inline av_const double exp2(double x)
+{
+    return exp(x * 0.693147180559945);
+}
+#endif /* HAVE_EXP2 */
+
+#if !HAVE_EXP2F
+static av_always_inline av_const float exp2f(float x)
+{
+    return exp2(x);
+}
+#endif /* HAVE_EXP2F */
+
 #if !HAVE_LLRINT
 static av_always_inline av_const long long llrint(double x)
 {
@@ -277,6 +291,13 @@ static av_always_inline av_const double 
 }
 #endif /* HAVE_LOG2 */
 
+#if !HAVE_LOG2F
+static av_always_inline av_const float log2f(float x)
+{
+    return log2(x);
+}
+#endif /* HAVE_LOG2F */
+
 #if !HAVE_LRINT
 static av_always_inline av_const long int lrint(double x)
 {



More information about the ffmpeg-cvslog mailing list