OpenLIBM: local modification - elf notes on assembly
[dragonfly.git] / contrib / openbsd_libm / arch / amd64 / e_remainder.S
blob8d0c50a0d8a69bee0b82b93a510d5cbbd17ceaf3
1 /*      $OpenBSD: e_remainder.S,v 1.3 2008/09/07 20:36:08 martynas Exp $ */
2 /*
3  * Written by J.T. Conklin <jtc@NetBSD.org>.
4  * Public domain.
5  */
7 #include <machine/asm.h>
9 #include "abi.h"
11 ENTRY(remainder)
12         XMM_TWO_ARG_DOUBLE_PROLOGUE
13         fldl    ARG_DOUBLE_TWO
14         fldl    ARG_DOUBLE_ONE
15 1:      fprem1
16         fstsw   %ax
17         btw     $10,%ax
18         jc      1b
19         fstp    %st(1)
20         XMM_DOUBLE_EPILOGUE
21         ret
22 END(remainder)
24         .section .note.GNU-stack,"",%progbits