1 #include <msvcrt/math.h>
3 double ceil (double __x)
5 register double __value;
7 __volatile unsigned short int __cw, __cwtmp;
9 __asm __volatile ("fnstcw %0" : "=m" (__cw));
10 __cwtmp = (__cw & 0xf3ff) | 0x0800; /* rounding up */
11 __asm __volatile ("fldcw %0" : : "m" (__cwtmp));
12 __asm __volatile ("frndint" : "=t" (__value) : "0" (__x));
13 __asm __volatile ("fldcw %0" : : "m" (__cw));
15 __value = linkme_ceil(__x);
21 long double ceill (long double __x)