diff options
author | Diego Biurrun <diego@biurrun.de> | 2005-09-19 23:26:47 +0000 |
---|---|---|
committer | Diego Biurrun <diego@biurrun.de> | 2005-09-19 23:26:47 +0000 |
commit | 7df6545556367b62f6a122faf3298676c301af71 (patch) | |
tree | 04b869bfb7d9288c0e724bcbf1919d3f836bc464 | |
parent | 0f8840707500538c37db3239e8e6443773877ab5 (diff) | |
download | ffmpeg-7df6545556367b62f6a122faf3298676c301af71.tar.gz |
Move lrintf implementation from libavcodec/dsputil.h to libavutil/common.h
where it makes more sense.
Originally committed as revision 4599 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r-- | libavcodec/dsputil.h | 29 | ||||
-rw-r--r-- | libavutil/common.h | 29 |
2 files changed, 29 insertions, 29 deletions
diff --git a/libavcodec/dsputil.h b/libavcodec/dsputil.h index cad32660db..c91bac7fe0 100644 --- a/libavcodec/dsputil.h +++ b/libavcodec/dsputil.h @@ -594,33 +594,4 @@ static int name16(void /*MpegEncContext*/ *s, uint8_t *dst, uint8_t *src, int st return score;\ } -#ifndef HAVE_LRINTF -/* XXX: add ISOC specific test to avoid specific BSD testing. */ -/* better than nothing implementation. */ -/* btw, rintf() is existing on fbsd too -- alex */ -static always_inline long int lrintf(float x) -{ -#ifdef CONFIG_WIN32 -# ifdef ARCH_X86 - int32_t i; - asm volatile( - "fistpl %0\n\t" - : "=m" (i) : "t" (x) : "st" - ); - return i; -# else - /* XXX: incorrect, but make it compile */ - return (int)(x + (x < 0 ? -0.5 : 0.5)); -# endif -#else - return (int)(rint(x)); -#endif -} -#else -#ifndef _ISOC9X_SOURCE -#define _ISOC9X_SOURCE -#endif -#include <math.h> -#endif - #endif diff --git a/libavutil/common.h b/libavutil/common.h index 8179ece5b2..bbbd4c91c9 100644 --- a/libavutil/common.h +++ b/libavutil/common.h @@ -543,6 +543,35 @@ tend= read_time();\ }\ } +#ifndef HAVE_LRINTF +/* XXX: add ISOC specific test to avoid specific BSD testing. */ +/* better than nothing implementation. */ +/* btw, rintf() is existing on fbsd too -- alex */ +static always_inline long int lrintf(float x) +{ +#ifdef CONFIG_WIN32 +# ifdef ARCH_X86 + int32_t i; + asm volatile( + "fistpl %0\n\t" + : "=m" (i) : "t" (x) : "st" + ); + return i; +# else + /* XXX: incorrect, but make it compile */ + return (int)(x + (x < 0 ? -0.5 : 0.5)); +# endif /* ARCH_X86 */ +#else + return (int)(rint(x)); +#endif /* CONFIG_WIN32 */ +} +#else +#ifndef _ISOC9X_SOURCE +#define _ISOC9X_SOURCE +#endif +#include <math.h> +#endif /* HAVE_LRINTF */ + #endif /* HAVE_AV_CONFIG_H */ #endif /* COMMON_H */ |