X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Firrat.lisp;h=0f2b7a321a424d09d40a6c5efdbbe79e48209423;hb=a987d443ea0935bfdfa2eb8547218fef9730a14f;hp=9b901e83574955f856c46616bae6e75dbc2deb34;hpb=4898ef32c639b1c7f4ee13a5ba566ce6debd03e6;p=sbcl.git diff --git a/src/code/irrat.lisp b/src/code/irrat.lisp index 9b901e8..0f2b7a3 100644 --- a/src/code/irrat.lisp +++ b/src/code/irrat.lisp @@ -46,13 +46,21 @@ `(defun ,name ,ll (,name ,@ll)))) (def %atan2 (x y)) (def %atan (x)) + (def %tan (x)) (def %tan-quick (x)) + (def %cos (x)) (def %cos-quick (x)) + (def %sin (x)) (def %sin-quick (x)) (def %sqrt (x)) (def %log (x)) (def %exp (x))) +#!+x86-64 ;; for constant folding +(macrolet ((def (name ll) + `(defun ,name ,ll (,name ,@ll)))) + (def %sqrt (x))) + ;;;; stubs for the Unix math library ;;;; ;;;; Many of these are unnecessary on the X86 because they're built @@ -68,17 +76,17 @@ #!-x86 (def-math-rtn "atan2" 2) (def-math-rtn "sinh" 1) (def-math-rtn "cosh" 1) -(def-math-rtn "tanh" 1) -(def-math-rtn "asinh" 1) -(def-math-rtn "acosh" 1) -(def-math-rtn "atanh" 1) +#!-win32(def-math-rtn "tanh" 1) +#!-win32(def-math-rtn "asinh" 1) +#!-win32(def-math-rtn "acosh" 1) +#!-win32(def-math-rtn "atanh" 1) ;;; exponential and logarithmic #!-x86 (def-math-rtn "exp" 1) #!-x86 (def-math-rtn "log" 1) #!-x86 (def-math-rtn "log10" 1) -(def-math-rtn "pow" 2) -#!-x86 (def-math-rtn "sqrt" 1) +#!-win32(def-math-rtn "pow" 2) +#!-(or x86 x86-64) (def-math-rtn "sqrt" 1) (def-math-rtn "hypot" 2) #!-(or hpux x86) (def-math-rtn "log1p" 1)