[FFmpeg-devel] [PATCH] libm: Add fallback definition for cbrt() using pow()
James Almer
jamrial at gmail.com
Tue Jan 22 08:10:21 CET 2013
The function is known to be missing in at least one target (MSVC).
Signed-off-by: James Almer <jamrial at gmail.com>
---
configure | 1 +
libavutil/libm.h | 7 +++++++
2 files changed, 8 insertions(+)
diff --git a/configure b/configure
index 8460e5f..a741fc3 100755
--- a/configure
+++ b/configure
@@ -1300,6 +1300,7 @@ HAVE_LIST_PUB='
MATH_FUNCS="
atanf
atan2f
+ cbrt
cbrtf
cosf
exp2
diff --git a/libavutil/libm.h b/libavutil/libm.h
index bfcc21c..6c17b28 100644
--- a/libavutil/libm.h
+++ b/libavutil/libm.h
@@ -48,6 +48,13 @@
#define powf(x, y) ((float)pow(x, y))
#endif
+#if !HAVE_CBRT
+static av_always_inline double cbrt(double x)
+{
+ return x < 0 ? -pow(-x, 1.0 / 3.0) : pow(x, 1.0 / 3.0);
+}
+#endif
+
#if !HAVE_CBRTF
static av_always_inline float cbrtf(float x)
{
--
1.7.12.4
More information about the ffmpeg-devel
mailing list