mirror of
https://gitee.com/openharmony/third_party_ffmpeg
synced 2024-11-23 11:19:55 +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
|
exp2f
|
||||||
expf
|
expf
|
||||||
hypot
|
hypot
|
||||||
|
isfinite
|
||||||
isinf
|
isinf
|
||||||
isnan
|
isnan
|
||||||
ldexpf
|
ldexpf
|
||||||
|
@ -343,6 +343,25 @@ static av_always_inline av_const int avpriv_isnan(double x)
|
|||||||
: avpriv_isnan(x))
|
: avpriv_isnan(x))
|
||||||
#endif /* HAVE_ISNAN */
|
#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
|
#if !HAVE_HYPOT
|
||||||
static inline av_const double hypot(double x, double y)
|
static inline av_const double hypot(double x, double y)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user