home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / CLIPPER / MISC / EMXLIB8F.ZIP / EMX / LIB / MATH / SIN.S < prev    next >
Encoding:
Text File  |  1993-01-02  |  628 b   |  30 lines

  1. / sin.s (emx+gcc) -- Copyright (c) 1992-1993 by Steffen Haecker
  2.  
  3. #include <libm.h>
  4.  
  5.         .globl  _sin
  6.  
  7.         .text
  8.  
  9.         .align  2, 0x90
  10.  
  11. / double sin (double x)
  12. /
  13. / |x| >= 2^63 results in #NAN; errno is set to EDOM
  14. /
  15.  
  16. #define x       4(%esp)
  17.  
  18. _sin:
  19.         fldl    x                       / x
  20.         fsin                            / sin(x)
  21.         fstsww  %ax
  22.         testb   $0x04, %ah                              
  23.         jnz     1f                      / C2 != 0 ?
  24.         ret
  25.  
  26. 1:      fldl    __const_NAN             / #NAN
  27.         fstp    %st(1)
  28.         SETERRNO($EDOM)
  29.         ret
  30.