1*20008Sdist# 2*20008Sdist# Copyright (c) 1980 Regents of the University of California. 3*20008Sdist# All rights reserved. The Berkeley software License Agreement 4*20008Sdist# specifies the terms and conditions for redistribution. 5*20008Sdist# 6*20008Sdist# @(#)sinh.s 5.1 (Berkeley) 05/08/85 7*20008Sdist# 8*20008Sdist# 919999Sdist# double _sinh(arg) 1019999Sdist# double _cosh(arg) 1119999Sdist# double arg 1219999Sdist# method: compute from exp except for sinh where -.5<arg<.5 1319999Sdist# then a polynimial approx. is uded 1419999Sdist# JF Jarvis, August 12,1978 1519999Sdist.globl _sinh 1619999Sdist.globl _cosh 1719999Sdist.globl _exp 1819999Sdist.text 1919999Sdist.align 1 2019999Sdist_sinh: 2119999Sdist .word 0x0c0 2219999Sdist bispsw $0xe0 2319999Sdist movd 4(ap),r6 2419999Sdist cmpd r6,$0d0.5e+0 2519999Sdist jgeq expfrm 2619999Sdist cmpd r6,$0d-0.5e+0 2719999Sdist jleq expfrm 2819999Sdist muld3 r6,r6,r0 # Hart&Cheney SINH 1985 2919999Sdist polyd r0,$5,pcoef 3019999Sdist muld2 r6,r0 3119999Sdist ret 3219999Sdistexpfrm: 3319999Sdist movd r6,-(sp) # sinh(x)=(exp(x)-exp(-x))/2 3419999Sdist calls $2,_exp 3519999Sdist divd3 r0,$0d1.0e+0,r2 3619999Sdist subd2 r2,r0 3719999Sdist muld2 $0d0.5e+0,r0 3819999Sdist ret 3919999Sdist.align 1 4019999Sdist_cosh: 4119999Sdist .word 0x0 4219999Sdist bispsw $0xe0 4319999Sdist movd 4(ap),-(sp) 4419999Sdist calls $2,_exp 4519999Sdist divd3 r0,$0d1.0e+0,r2 4619999Sdist addd2 r2,r0 4719999Sdist muld2 $0d0.5e+0,r0 4819999Sdist ret 4919999Sdist.data 5019999Sdist.align 2 5119999Sdistpcoef: 5219999Sdist .double 0d0.251726188251e-7 5319999Sdist .double 0d0.275569807356154e-5 5419999Sdist .double 0d0.1984127027907999e-3 5519999Sdist .double 0d0.833333333307759961e-2 5619999Sdist .double 0d0.16666666666667212324e+0 5719999Sdist .double 0d0.99999999999999998116e+0 58