s_ceilf.S revision 217108
1168404Spjd/* 2168404Spjd * Written by J.T. Conklin <jtc@netbsd.org>. 3168404Spjd * Public domain. 4168404Spjd */ 5168404Spjd 6168404Spjd#include <machine/asm.h> 7168404Spjd 8168404Spjd__FBSDID("$FreeBSD: head/lib/msun/i387/s_ceilf.S 217108 2011-01-07 16:13:12Z kib $"); 9168404Spjd/* RCSID("$NetBSD: s_ceilf.S,v 1.3 1995/05/08 23:52:44 jtc Exp $") */ 10168404Spjd 11168404SpjdENTRY(ceilf) 12168404Spjd pushl %ebp 13168404Spjd movl %esp,%ebp 14168404Spjd subl $8,%esp 15168404Spjd 16168404Spjd fstcw -4(%ebp) /* store fpu control word */ 17168404Spjd movw -4(%ebp),%dx 18168404Spjd orw $0x0800,%dx /* round towards +oo */ 19168404Spjd andw $0xfbff,%dx 20168404Spjd movw %dx,-8(%ebp) 21168404Spjd fldcw -8(%ebp) /* load modfied control word */ 22219089Spjd 23168404Spjd flds 8(%ebp); /* round */ 24168404Spjd frndint 25168404Spjd 26168404Spjd fldcw -4(%ebp) /* restore original control word */ 27168404Spjd 28168404Spjd leave 29168404Spjd ret 30168404SpjdEND(ceilf) 31168404Spjd 32168404Spjd .section .note.GNU-stack,"",%progbits 33168404Spjd