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

  1. / fmod.s (emx+gcc) -- Copyright (c) 1992-1993 by Steffen Haecker
  2.  
  3.         .globl  _fmod
  4.  
  5.         .text
  6.  
  7.         .align  2, 0x90
  8.  
  9. / double fmod (double x, double y)
  10.  
  11. /define ret_addr  0(%esp)
  12. #define x         4(%esp)
  13. #define y        12(%esp)
  14.  
  15. _fmod:
  16.         fldl    y                       / y
  17.         ftst
  18.         fstsww  %ax
  19.         andw    $0x4100, %ax
  20.         xorb    $0x40, %ah
  21.         jz      2f                      / y = 0 ?
  22.         fldl    x                       / x
  23. 1:      fprem
  24.         fstsww  %ax
  25.         andb    $0x04, %ah
  26.         jnz     1b                      / C2 != 0 ?
  27.         fstp    %st(1)
  28. 2:      ret
  29.