s_sin.S 474 B

123456789101112131415161718192021222324252627282930313233
  1. /*
  2. * Written by:
  3. * J.T. Conklin ([email protected])
  4. * Public domain.
  5. */
  6. #include <i387/bsd_asm.h>
  7. //__FBSDID("$FreeBSD: src/lib/msun/i387/s_sin.S,v 1.9 2011/01/07 16:13:12 kib Exp $")
  8. ENTRY(sin)
  9. fldl 4(%esp)
  10. fsin
  11. fnstsw %ax
  12. andw $0x400,%ax
  13. jnz 1f
  14. ret
  15. 1: fldpi
  16. fadd %st(0)
  17. fxch %st(1)
  18. 2: fprem1
  19. fnstsw %ax
  20. andw $0x400,%ax
  21. jnz 2b
  22. fstp %st(1)
  23. fsin
  24. ret
  25. END(sin)
  26. /* Enable stack protection */
  27. #if defined(__ELF__)
  28. .section .note.GNU-stack,"",%progbits
  29. #endif