mirror of
https://github.com/xenia-project/FFmpeg.git
synced 2024-11-26 21:10:34 +00:00
lavu/libm: add isfinite fallback
Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
This commit is contained in:
parent
44ac13eed4
commit
a0a47a09b0
1
configure
vendored
1
configure
vendored
@ -1820,6 +1820,7 @@ MATH_FUNCS="
|
||||
exp2f
|
||||
expf
|
||||
hypot
|
||||
isfinite
|
||||
isinf
|
||||
isnan
|
||||
ldexpf
|
||||
|
@ -343,6 +343,25 @@ static av_always_inline av_const int avpriv_isnan(double x)
|
||||
: avpriv_isnan(x))
|
||||
#endif /* HAVE_ISNAN */
|
||||
|
||||
#if !HAVE_ISFINITE
|
||||
static av_always_inline av_const int avpriv_isfinitef(float x)
|
||||
{
|
||||
uint32_t v = av_float2int(x);
|
||||
return (v & 0x7f800000) != 0x7f800000;
|
||||
}
|
||||
|
||||
static av_always_inline av_const int avpriv_isfinite(double x)
|
||||
{
|
||||
uint64_t v = av_double2int(x);
|
||||
return (v & 0x7ff0000000000000) != 0x7ff0000000000000;
|
||||
}
|
||||
|
||||
#define isfinite(x) \
|
||||
(sizeof(x) == sizeof(float) \
|
||||
? avpriv_isfinitef(x) \
|
||||
: avpriv_isfinite(x))
|
||||
#endif /* HAVE_ISFINITE */
|
||||
|
||||
#if !HAVE_HYPOT
|
||||
static inline av_const double hypot(double x, double y)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user