1*83e449a4SBruce Evans/* 2*83e449a4SBruce Evans * Based on the i387 version written by J.T. Conklin <jtc@netbsd.org>. 3*83e449a4SBruce Evans * Public domain. 4*83e449a4SBruce Evans */ 5*83e449a4SBruce Evans 6*83e449a4SBruce Evans#include <machine/asm.h> 7*83e449a4SBruce Evans__FBSDID("$FreeBSD$") 8*83e449a4SBruce Evans 9*83e449a4SBruce EvansENTRY(fmodf) 10*83e449a4SBruce Evans movss %xmm0,-4(%rsp) 11*83e449a4SBruce Evans movss %xmm1,-8(%rsp) 12*83e449a4SBruce Evans flds -8(%rsp) 13*83e449a4SBruce Evans flds -4(%rsp) 14*83e449a4SBruce Evans1: fprem 15*83e449a4SBruce Evans fstsw %ax 16*83e449a4SBruce Evans testw $0x400,%ax 17*83e449a4SBruce Evans jne 1b 18*83e449a4SBruce Evans fstps -4(%rsp) 19*83e449a4SBruce Evans movss -4(%rsp),%xmm0 20*83e449a4SBruce Evans fstp %st 21*83e449a4SBruce Evans ret 22*83e449a4SBruce EvansEND(fmodf) 23*83e449a4SBruce Evans 24*83e449a4SBruce Evans .section .note.GNU-stack,"",%progbits 25