ieee-fp: fix asin/acos/asinh/acosh/atanh for NaN

This commit is contained in:
Marius Gerbershagen 2019-07-13 21:41:58 +02:00
parent ac19a3f0a9
commit 327da031cd

View file

@ -151,7 +151,7 @@ RADIANS) and (SIN RADIANS) respectively."
(setf ,arg (float ,arg)))
(typecase ,arg
(single-float
(if ,restriction
(if (or ,restriction #+ieee-floating-point (ext:float-nan-p ,arg))
(ffi::c-inline (,arg) (:float) :float
,(format nil "~af(#0)" name)
:one-liner t)
@ -162,7 +162,7 @@ RADIANS) and (SIN RADIANS) respectively."
#-complex-float
(progn ,@gencomplex)))
(double-float
(if ,restriction
(if (or ,restriction #+ieee-floating-point (ext:float-nan-p ,arg))
(ffi::c-inline (,arg) (:double) :double
,(format nil "~a(#0)" name)
:one-liner t)
@ -173,7 +173,7 @@ RADIANS) and (SIN RADIANS) respectively."
#-complex-float
(progn ,@gencomplex)))
(long-float
(if ,restriction
(if (or ,restriction #+ieee-floating-point (ext:float-nan-p ,arg))
(ffi::c-inline (,arg) (:long-double) :long-double
,(format nil "~al(#0)" name)
:one-liner t)