1/* $OpenBSD: s_ceilf.S,v 1.6 2018/07/03 22:43:34 mortimer Exp $ */ 2/* 3 * Written by J.T. Conklin <jtc@NetBSD.org>. 4 * Public domain. 5 */ 6 7#include <machine/asm.h> 8 9ENTRY(ceilf) 10 RETGUARD_SETUP(ceilf, r11) 11 fstcw -8(%rsp) 12 movw -8(%rsp),%dx 13 orw $0x0800,%dx 14 andw $0xfbff,%dx 15 movw %dx,-12(%rsp) 16 fldcw -12(%rsp) 17 movss %xmm0,-4(%rsp) 18 flds -4(%rsp) 19 frndint 20 fldcw -8(%rsp) 21 fstps -4(%rsp) 22 movss -4(%rsp),%xmm0 23 RETGUARD_CHECK(ceilf, r11) 24 ret 25END(ceilf) 26