2 * inspired by glibc-2.0.6/sysdeps/libm-ieee754/s_nextafterf.c
4 * gcc -O2 -S -DOP=+ gives faddp %st(1),%st
5 * gcc -O2 -S -DOP=* gives fmulp %st(1),%st
6 * gcc -O2 -S -DOP=- gives fsubrp %st(1),%st
7 * gcc -O2 -S -DOP=/ gives fdivrp %st(1),%st
14 typedef int int32_t __attribute__ ((__mode__ ( __SI__
))) ;
15 typedef unsigned int u_int32_t
__attribute__ ((__mode__ ( __SI__
))) ;
21 } ieee_float_shape_type
;
23 float __nextafterf(float x
, float y
)
28 ieee_float_shape_type gf_u
;
33 ieee_float_shape_type gf_u
;
40 if ( ix
> 0x7f800000 || iy
> 0x7f800000 )
46 ieee_float_shape_type sf_u
;
47 sf_u
.word
= (hy
&0x80000000) | 1;
51 if (y
== x
) return y
; else return x
;
62 if (hy
>= 0 || hx
> hy
)
75 ieee_float_shape_type sf_u
;
82 ieee_float_shape_type sf_u
;