#include "crlibm/acos.h"
#include "ucb/acos.h"
#include "sanity/acos.h"
+#include "special/acos.h"
};
static struct f_f t[] = {
#include "ucb/acosf.h"
#include "sanity/acosf.h"
+#include "special/acosf.h"
};
static struct d_d t[] = {
#include "sanity/acosh.h"
+#include "special/acosh.h"
};
static struct f_f t[] = {
#include "sanity/acoshf.h"
+#include "special/acoshf.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/acosh.h"
+#include "special/acosh.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/acoshl.h"
+#include "special/acoshl.h"
#endif
};
#include "crlibm/acos.h"
#include "ucb/acos.h"
#include "sanity/acos.h"
+#include "special/acos.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/acosl.h"
+#include "special/acosl.h"
#endif
};
#include "crlibm/asin.h"
#include "ucb/asin.h"
#include "sanity/asin.h"
+#include "special/asin.h"
};
static struct f_f t[] = {
#include "ucb/asinf.h"
#include "sanity/asinf.h"
+#include "special/asinf.h"
};
static struct d_d t[] = {
#include "sanity/asinh.h"
+#include "special/asinh.h"
};
static struct f_f t[] = {
#include "sanity/asinhf.h"
+#include "special/asinhf.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/asinh.h"
+#include "special/asinh.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/asinhl.h"
+#include "special/asinhl.h"
#endif
};
#include "crlibm/asin.h"
#include "ucb/asin.h"
#include "sanity/asin.h"
+#include "special/asin.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/asinl.h"
+#include "special/asinl.h"
#endif
};
#include "crlibm/atan.h"
#include "ucb/atan.h"
#include "sanity/atan.h"
+#include "special/atan.h"
};
static struct dd_d t[] = {
#include "ucb/atan2.h"
#include "sanity/atan2.h"
+#include "special/atan2.h"
};
static struct ff_f t[] = {
#include "ucb/atan2f.h"
#include "sanity/atan2f.h"
+#include "special/atan2f.h"
};
#if LDBL_MANT_DIG == 53
#include "ucb/atan2.h"
#include "sanity/atan2.h"
+#include "special/atan2.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/atan2l.h"
+#include "special/atan2l.h"
#endif
};
static struct f_f t[] = {
#include "ucb/atanf.h"
#include "sanity/atanf.h"
+#include "special/atanf.h"
};
static struct d_d t[] = {
#include "sanity/atanh.h"
+#include "special/atanh.h"
};
static struct f_f t[] = {
#include "sanity/atanhf.h"
+#include "special/atanhf.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/atanh.h"
+#include "special/atanh.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/atanhl.h"
+#include "special/atanhl.h"
#endif
};
#include "crlibm/atan.h"
#include "ucb/atan.h"
#include "sanity/atan.h"
+#include "special/atan.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/atanl.h"
+#include "special/atanl.h"
#endif
};
static struct d_d t[] = {
#include "sanity/cbrt.h"
+#include "special/cbrt.h"
};
static struct f_f t[] = {
#include "sanity/cbrtf.h"
+#include "special/cbrtf.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/cbrt.h"
+#include "special/cbrt.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/cbrtl.h"
+#include "special/cbrtl.h"
#endif
};
static struct d_d t[] = {
#include "ucb/ceil.h"
#include "sanity/ceil.h"
+#include "special/ceil.h"
};
static struct f_f t[] = {
#include "ucb/ceilf.h"
#include "sanity/ceilf.h"
+#include "special/ceilf.h"
};
#if LDBL_MANT_DIG == 53
#include "ucb/ceil.h"
#include "sanity/ceil.h"
+#include "special/ceil.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/ceill.h"
+#include "special/ceill.h"
#endif
};
static struct dd_d t[] = {
#include "sanity/copysign.h"
+#include "special/copysign.h"
};
static struct ff_f t[] = {
#include "sanity/copysignf.h"
+#include "special/copysignf.h"
};
static struct ll_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/copysign.h"
+#include "special/copysign.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/copysignl.h"
+#include "special/copysignl.h"
#endif
};
#include "crlibm/cos.h"
#include "ucb/cos.h"
#include "sanity/cos.h"
+#include "special/cos.h"
};
static struct f_f t[] = {
#include "ucb/cosf.h"
#include "sanity/cosf.h"
+#include "special/cosf.h"
};
#include "crlibm/cosh.h"
#include "ucb/cosh.h"
#include "sanity/cosh.h"
+#include "special/cosh.h"
};
static struct f_f t[] = {
#include "ucb/coshf.h"
#include "sanity/coshf.h"
+#include "special/coshf.h"
};
#include "crlibm/cosh.h"
#include "ucb/cosh.h"
#include "sanity/cosh.h"
+#include "special/cosh.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/coshl.h"
+#include "special/coshl.h"
#endif
};
#include "crlibm/cos.h"
#include "ucb/cos.h"
#include "sanity/cos.h"
+#include "special/cos.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/cosl.h"
+#include "special/cosl.h"
#endif
};
static struct d_d t[] = {
#include "sanity/erf.h"
+#include "special/erf.h"
};
static struct d_d t[] = {
#include "sanity/erfc.h"
+#include "special/erfc.h"
};
static struct f_f t[] = {
#include "sanity/erfcf.h"
+#include "special/erfcf.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/erfc.h"
+#include "special/erfc.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/erfcl.h"
+#include "special/erfcl.h"
#endif
};
static struct f_f t[] = {
#include "sanity/erff.h"
+#include "special/erff.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/erf.h"
+#include "special/erf.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/erfl.h"
+#include "special/erfl.h"
#endif
};
#include "crlibm/exp.h"
#include "ucb/exp.h"
#include "sanity/exp.h"
+#include "special/exp.h"
};
static struct d_d t[] = {
#include "sanity/exp10.h"
+#include "special/exp10.h"
};
static struct f_f t[] = {
#include "sanity/exp10f.h"
+#include "special/exp10f.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/exp10.h"
+#include "special/exp10.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/exp10l.h"
+#include "special/exp10l.h"
#endif
};
static struct d_d t[] = {
#include "sanity/exp2.h"
+#include "special/exp2.h"
};
static struct f_f t[] = {
#include "sanity/exp2f.h"
+#include "special/exp2f.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/exp2.h"
+#include "special/exp2.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/exp2l.h"
+#include "special/exp2l.h"
#endif
};
static struct f_f t[] = {
#include "ucb/expf.h"
#include "sanity/expf.h"
+#include "special/expf.h"
};
#include "crlibm/exp.h"
#include "ucb/exp.h"
#include "sanity/exp.h"
+#include "special/exp.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/expl.h"
+#include "special/expl.h"
#endif
};
static struct d_d t[] = {
#include "crlibm/expm1.h"
#include "sanity/expm1.h"
+#include "special/expm1.h"
};
static struct f_f t[] = {
#include "sanity/expm1f.h"
+#include "special/expm1f.h"
};
#if LDBL_MANT_DIG == 53
#include "crlibm/expm1.h"
#include "sanity/expm1.h"
+#include "special/expm1.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/expm1l.h"
+#include "special/expm1l.h"
#endif
};
static struct d_d t[] = {
#include "ucb/fabs.h"
#include "sanity/fabs.h"
+#include "special/fabs.h"
};
static struct f_f t[] = {
#include "ucb/fabsf.h"
#include "sanity/fabsf.h"
+#include "special/fabsf.h"
};
#if LDBL_MANT_DIG == 53
#include "ucb/fabs.h"
#include "sanity/fabs.h"
+#include "special/fabs.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/fabsl.h"
+#include "special/fabsl.h"
#endif
};
static struct dd_d t[] = {
#include "sanity/fdim.h"
+#include "special/fdim.h"
};
static struct ff_f t[] = {
#include "sanity/fdimf.h"
+#include "special/fdimf.h"
};
static struct ll_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/fdim.h"
+#include "special/fdim.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/fdiml.h"
+#include "special/fdiml.h"
#endif
};
static struct d_d t[] = {
#include "ucb/floor.h"
#include "sanity/floor.h"
+#include "special/floor.h"
};
static struct f_f t[] = {
#include "ucb/floorf.h"
#include "sanity/floorf.h"
+#include "special/floorf.h"
};
#if LDBL_MANT_DIG == 53
#include "ucb/floor.h"
#include "sanity/floor.h"
+#include "special/floor.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/floorl.h"
+#include "special/floorl.h"
#endif
};
static struct ddd_d t[] = {
#include "sanity/fma.h"
+#include "special/fma.h"
};
int main(void)
static struct fff_f t[] = {
#include "sanity/fmaf.h"
+#include "special/fmaf.h"
};
int main(void)
static struct lll_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/fma.h"
+#include "special/fma.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/fmal.h"
+#include "special/fmal.h"
#endif
};
static struct dd_d t[] = {
#include "sanity/fmax.h"
+#include "special/fmax.h"
};
static struct ff_f t[] = {
#include "sanity/fmaxf.h"
+#include "special/fmaxf.h"
};
static struct ll_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/fmax.h"
+#include "special/fmax.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/fmaxl.h"
+#include "special/fmaxl.h"
#endif
};
static struct dd_d t[] = {
#include "sanity/fmin.h"
+#include "special/fmin.h"
};
static struct ff_f t[] = {
#include "sanity/fminf.h"
+#include "special/fminf.h"
};
static struct ll_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/fmin.h"
+#include "special/fmin.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/fminl.h"
+#include "special/fminl.h"
#endif
};
static struct dd_d t[] = {
#include "ucb/fmod.h"
#include "sanity/fmod.h"
+#include "special/fmod.h"
};
static struct ff_f t[] = {
#include "ucb/fmodf.h"
#include "sanity/fmodf.h"
+#include "special/fmodf.h"
};
#if LDBL_MANT_DIG == 53
#include "ucb/fmod.h"
#include "sanity/fmod.h"
+#include "special/fmod.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/fmodl.h"
+#include "special/fmodl.h"
#endif
};
static struct d_di t[] = {
#include "sanity/frexp.h"
+#include "special/frexp.h"
};
static struct f_fi t[] = {
#include "sanity/frexpf.h"
+#include "special/frexpf.h"
};
static struct l_li t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/frexp.h"
+#include "special/frexp.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/frexpl.h"
+#include "special/frexpl.h"
#endif
};
static struct dd_d t[] = {
#include "ucb/hypot.h"
#include "sanity/hypot.h"
+#include "special/hypot.h"
};
static struct ff_f t[] = {
#include "ucb/hypotf.h"
#include "sanity/hypotf.h"
+#include "special/hypotf.h"
};
#if LDBL_MANT_DIG == 53
#include "ucb/hypot.h"
#include "sanity/hypot.h"
+#include "special/hypot.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/hypotl.h"
+#include "special/hypotl.h"
#endif
};
static struct d_i t[] = {
#include "sanity/ilogb.h"
+#include "special/ilogb.h"
};
static struct f_i t[] = {
#include "sanity/ilogbf.h"
+#include "special/ilogbf.h"
};
static struct l_i t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/ilogb.h"
+#include "special/ilogb.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/ilogbl.h"
+#include "special/ilogbl.h"
#endif
};
static struct d_d t[] = {
#include "sanity/j0.h"
+#include "special/j0.h"
};
static struct f_f t[] = {
#include "sanity/j0f.h"
+#include "special/j0f.h"
};
static struct d_d t[] = {
#include "sanity/j1.h"
+#include "special/j1.h"
};
static struct f_f t[] = {
#include "sanity/j1f.h"
+#include "special/j1f.h"
};
static struct di_d t[] = {
#include "sanity/jn.h"
+#include "special/jn.h"
};
int main(void)
static struct fi_f t[] = {
#include "sanity/jnf.h"
+#include "special/jnf.h"
};
int main(void)
static struct di_d t[] = {
#include "sanity/ldexp.h"
+#include "special/ldexp.h"
};
static struct fi_f t[] = {
#include "sanity/ldexpf.h"
+#include "special/ldexpf.h"
};
static struct li_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/ldexp.h"
+#include "special/ldexp.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/ldexpl.h"
+#include "special/ldexpl.h"
#endif
};
static struct d_di t[] = {
#include "sanity/lgamma.h"
+#include "special/lgamma.h"
};
static struct d_di t[] = {
#include "sanity/lgamma_r.h"
+#include "special/lgamma_r.h"
};
static struct f_fi t[] = {
#include "sanity/lgammaf.h"
+#include "special/lgammaf.h"
};
static struct f_fi t[] = {
#include "sanity/lgammaf_r.h"
+#include "special/lgammaf_r.h"
};
static struct l_li t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/lgamma.h"
+#include "special/lgamma.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/lgammal.h"
+#include "special/lgammal.h"
#endif
};
static struct l_li t[] = {
#if LDBL_MANT_DIG == 53
-#include "sanity/lgammal_r.h"
+#include "sanity/lgamma_r.h"
+#include "special/lgamma_r.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/lgammal_r.h"
+#include "special/lgammal_r.h"
#endif
};
static struct d_i t[] = {
#include "sanity/llrint.h"
+#include "special/llrint.h"
};
static struct f_i t[] = {
#include "sanity/llrintf.h"
+#include "special/llrintf.h"
};
static struct l_i t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/llrint.h"
+#include "special/llrint.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/llrintl.h"
+#include "special/llrintl.h"
#endif
};
static struct d_i t[] = {
#include "sanity/llround.h"
+#include "special/llround.h"
};
static struct f_i t[] = {
#include "sanity/llroundf.h"
+#include "special/llroundf.h"
};
static struct l_i t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/llround.h"
+#include "special/llround.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/llroundl.h"
+#include "special/llroundl.h"
#endif
};
#include "crlibm/log.h"
#include "ucb/log.h"
#include "sanity/log.h"
+#include "special/log.h"
};
#include "crlibm/log10.h"
#include "ucb/log10.h"
#include "sanity/log10.h"
+#include "special/log10.h"
};
static struct f_f t[] = {
#include "ucb/log10f.h"
#include "sanity/log10f.h"
+#include "special/log10f.h"
};
#include "crlibm/log10.h"
#include "ucb/log10.h"
#include "sanity/log10.h"
+#include "special/log10.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/log10l.h"
+#include "special/log10l.h"
#endif
};
static struct d_d t[] = {
#include "crlibm/log1p.h"
#include "sanity/log1p.h"
+#include "special/log1p.h"
};
static struct f_f t[] = {
#include "sanity/log1pf.h"
+#include "special/log1pf.h"
};
#if LDBL_MANT_DIG == 53
#include "crlibm/log1p.h"
#include "sanity/log1p.h"
+#include "special/log1p.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/log1pl.h"
+#include "special/log1pl.h"
#endif
};
static struct d_d t[] = {
#include "crlibm/log2.h"
#include "sanity/log2.h"
+#include "special/log2.h"
};
static struct f_f t[] = {
#include "sanity/log2f.h"
+#include "special/log2f.h"
};
#if LDBL_MANT_DIG == 53
#include "crlibm/log2.h"
#include "sanity/log2.h"
+#include "special/log2.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/log2l.h"
+#include "special/log2l.h"
#endif
};
static struct d_d t[] = {
#include "sanity/logb.h"
+#include "special/logb.h"
};
static struct f_f t[] = {
#include "sanity/logbf.h"
+#include "special/logbf.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/logb.h"
+#include "special/logb.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/logbl.h"
+#include "special/logbl.h"
#endif
};
static struct f_f t[] = {
#include "ucb/logf.h"
#include "sanity/logf.h"
+#include "special/logf.h"
};
#include "crlibm/log.h"
#include "ucb/log.h"
#include "sanity/log.h"
+#include "special/log.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/logl.h"
+#include "special/logl.h"
#endif
};
static struct d_i t[] = {
#include "sanity/lrint.h"
+#include "special/lrint.h"
};
static struct f_i t[] = {
#include "sanity/lrintf.h"
+#include "special/lrintf.h"
};
static struct l_i t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/lrint.h"
+#include "special/lrint.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/lrintl.h"
+#include "special/lrintl.h"
#endif
};
static struct d_i t[] = {
#include "sanity/lround.h"
+#include "special/lround.h"
};
static struct f_i t[] = {
#include "sanity/lroundf.h"
+#include "special/lroundf.h"
};
static struct l_i t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/lround.h"
+#include "special/lround.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/lroundl.h"
+#include "special/lroundl.h"
#endif
};
static struct d_dd t[] = {
#include "sanity/modf.h"
+#include "special/modf.h"
};
int main(void)
static struct f_ff t[] = {
#include "sanity/modff.h"
+#include "special/modff.h"
};
int main(void)
static struct l_ll t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/modf.h"
+#include "special/modf.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/modfl.h"
+#include "special/modfl.h"
#endif
};
static struct d_d t[] = {
#include "sanity/nearbyint.h"
+#include "special/nearbyint.h"
};
static struct f_f t[] = {
#include "sanity/nearbyintf.h"
+#include "special/nearbyintf.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/nearbyint.h"
+#include "special/nearbyint.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/nearbyintl.h"
+#include "special/nearbyintl.h"
#endif
};
static struct dd_d t[] = {
#include "sanity/nextafter.h"
+#include "special/nextafter.h"
};
static struct ff_f t[] = {
#include "sanity/nextafterf.h"
+#include "special/nextafterf.h"
};
static struct ll_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/nextafter.h"
+#include "special/nextafter.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/nextafterl.h"
+#include "special/nextafterl.h"
#endif
};
#include <stdio.h>
#include "util.h"
+// TODO: fix ldbl
static struct ll_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/nexttoward.h"
+#include "special/nexttoward.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/nexttoward.h"
+#include "special/nexttoward.h"
#endif
};
#include <stdio.h>
#include "util.h"
+// TODO: separate ldbl dir
static struct ll_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/nexttowardf.h"
+#include "special/nexttowardf.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/nexttowardf.h"
+#include "special/nexttowardf.h"
#endif
};
static struct ll_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/nexttoward.h"
+#include "special/nexttoward.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/nexttowardl.h"
+#include "special/nexttowardl.h"
#endif
};
#include "crlibm/pow.h"
#include "ucb/pow.h"
#include "sanity/pow.h"
+#include "special/pow.h"
};
static struct d_d t[] = {
#include "sanity/pow10.h"
+#include "special/exp10.h"
};
static struct f_f t[] = {
#include "sanity/pow10f.h"
+#include "special/exp10f.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/pow10.h"
+#include "special/exp10.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/pow10l.h"
+#include "special/exp10l.h"
#endif
};
static struct ff_f t[] = {
#include "ucb/powf.h"
#include "sanity/powf.h"
+#include "special/powf.h"
};
#include "crlibm/pow.h"
#include "ucb/pow.h"
#include "sanity/pow.h"
+#include "special/pow.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/powl.h"
+#include "special/powl.h"
#endif
};
static struct dd_d t[] = {
#include "sanity/remainder.h"
+#include "special/remainder.h"
};
static struct ff_f t[] = {
#include "sanity/remainderf.h"
+#include "special/remainderf.h"
};
static struct ll_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/remainder.h"
+#include "special/remainder.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/remainderl.h"
+#include "special/remainderl.h"
#endif
};
static struct dd_di t[] = {
#include "sanity/remquo.h"
+#include "special/remquo.h"
};
int main(void)
static struct ff_fi t[] = {
#include "sanity/remquof.h"
+#include "special/remquof.h"
};
int main(void)
static struct ll_li t[] = {
#include "sanity/remquol.h"
+#include "special/remquol.h"
};
int main(void)
static struct d_d t[] = {
#include "sanity/rint.h"
+#include "special/rint.h"
};
static struct f_f t[] = {
#include "sanity/rintf.h"
+#include "special/rintf.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/rint.h"
+#include "special/rint.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/rintl.h"
+#include "special/rintl.h"
#endif
};
static struct d_d t[] = {
#include "sanity/round.h"
+#include "special/round.h"
};
static struct f_f t[] = {
#include "sanity/roundf.h"
+#include "special/roundf.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/round.h"
+#include "special/round.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/roundl.h"
+#include "special/roundl.h"
#endif
};
static struct dd_d t[] = {
#include "sanity/scalb.h"
+#include "special/scalb.h"
};
static struct ff_f t[] = {
#include "sanity/scalbf.h"
+#include "special/scalbf.h"
};
static struct di_d t[] = {
#include "sanity/scalbln.h"
+#include "special/scalbln.h"
};
static struct fi_f t[] = {
#include "sanity/scalblnf.h"
+#include "special/scalblnf.h"
};
static struct li_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/scalbln.h"
+#include "special/scalbln.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/scalblnl.h"
+#include "special/scalblnl.h"
#endif
};
static struct di_d t[] = {
#include "sanity/scalbn.h"
+#include "special/scalbn.h"
};
static struct fi_f t[] = {
#include "sanity/scalbnf.h"
+#include "special/scalbnf.h"
};
static struct li_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/scalbn.h"
+#include "special/scalbn.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/scalbnl.h"
+#include "special/scalbnl.h"
#endif
};
#include "crlibm/sin.h"
#include "ucb/sin.h"
#include "sanity/sin.h"
+#include "special/sin.h"
};
static struct d_dd t[] = {
#include "sanity/sincos.h"
+#include "special/sincos.h"
};
int main(void)
static struct f_ff t[] = {
#include "sanity/sincosf.h"
+#include "special/sincosf.h"
};
int main(void)
static struct l_ll t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/sincos.h"
+#include "special/sincos.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/sincosl.h"
+#include "special/sincosl.h"
#endif
};
static struct f_f t[] = {
#include "ucb/sinf.h"
#include "sanity/sinf.h"
+#include "special/sinf.h"
};
#include "crlibm/sinh.h"
#include "ucb/sinh.h"
#include "sanity/sinh.h"
+#include "special/sinh.h"
};
static struct f_f t[] = {
#include "ucb/sinhf.h"
#include "sanity/sinhf.h"
+#include "special/sinhf.h"
};
#include "crlibm/sinh.h"
#include "ucb/sinh.h"
#include "sanity/sinh.h"
+#include "special/sinh.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/sinhl.h"
+#include "special/sinhl.h"
#endif
};
#include "crlibm/sin.h"
#include "ucb/sin.h"
#include "sanity/sin.h"
+#include "special/sin.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/sinl.h"
+#include "special/sinl.h"
#endif
};
--- /dev/null
+T(RN, 0x0p+0, 0x1.921fb54442d18p+0, -0x1.1a6264p-2, INEXACT)
+T(RN, -0x1p+0, 0x1.921fb54442d18p+1, -0x1.1a6264p-2, INEXACT)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.0000000000001p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x1.0000000000001p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1.921fb6p+0, 0x1.777a5cp-2, INEXACT)
+T(RN, -0x1p+0, 0x1.921fb6p+1, 0x1.777a5cp-2, INEXACT)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.000002p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x1.000002p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.ffffp-1, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.ffffp-1, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1.ffffp-1L, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
--- /dev/null
+T(RN, 0x0p+0L, 0x1.921fb54442d1846ap+0L, 0x1.d9ccecp-3, INEXACT)
+T(RN, -0x1p+0L, 0x1.921fb54442d1846ap+1L, 0x1.d9ccecp-3, INEXACT)
+T(RN, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1.0000000000000002p+0L, nan, 0x0p+0, INVALID)
+T(RN, -0x1.0000000000000002p+0L, nan, 0x0p+0, INVALID)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x1p+0, 0x1.921fb54442d18p+0, -0x1.1a6264p-2, INEXACT)
+T(RN, -0x1p+0, -0x1.921fb54442d18p+0, 0x1.1a6264p-2, INEXACT)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.0000000000001p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x1.0000000000001p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x1p+0, 0x1.921fb6p+0, 0x1.777a5cp-2, INEXACT)
+T(RN, -0x1p+0, -0x1.921fb6p+0, -0x1.777a5cp-2, INEXACT)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.000002p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x1.000002p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x1p+0L, 0x1.921fb54442d1846ap+0L, 0x1.d9ccecp-3, INEXACT)
+T(RN, -0x1p+0L, -0x1.921fb54442d1846ap+0L, -0x1.d9ccecp-3, INEXACT)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1.0000000000000002p+0L, nan, 0x0p+0, INVALID)
+T(RN, -0x1.0000000000000002p+0L, nan, 0x0p+0, INVALID)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.921fb54442d18p-1, -0x1.1a6264p-2, INEXACT)
+T(RN, -0x1p+0, -0x1.921fb54442d18p-1, 0x1.1a6264p-2, INEXACT)
+T(RN, inf, 0x1.921fb54442d18p+0, -0x1.1a6264p-2, INEXACT)
+T(RN, -inf, -0x1.921fb54442d18p+0, 0x1.1a6264p-2, INEXACT)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, 0x1.921fb54442d18p+1, -0x1.1a6264p-2, INEXACT)
+T(RN, 0x0p+0, -0x1p+0, 0x1.921fb54442d18p+1, -0x1.1a6264p-2, INEXACT)
+T(RN, 0x0p+0, -inf, 0x1.921fb54442d18p+1, -0x1.1a6264p-2, INEXACT)
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, -0x1.921fb54442d18p+1, 0x1.1a6264p-2, INEXACT)
+T(RN, -0x0p+0, -0x1p+0, -0x1.921fb54442d18p+1, 0x1.1a6264p-2, INEXACT)
+T(RN, -0x0p+0, -inf, -0x1.921fb54442d18p+1, 0x1.1a6264p-2, INEXACT)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, -0x1.921fb54442d18p+0, 0x1.1a6264p-2, INEXACT)
+T(RN, -0x1p+0, -0x0p+0, -0x1.921fb54442d18p+0, 0x1.1a6264p-2, INEXACT)
+T(RN, 0x1p+0, 0x0p+0, 0x1.921fb54442d18p+0, -0x1.1a6264p-2, INEXACT)
+T(RN, 0x1p+0, -0x0p+0, 0x1.921fb54442d18p+0, -0x1.1a6264p-2, INEXACT)
+T(RN, -0x1p+0, inf, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -0x1.921fb54442d18p+1, 0x1.1a6264p-2, INEXACT)
+T(RN, 0x1p+0, -inf, 0x1.921fb54442d18p+1, -0x1.1a6264p-2, INEXACT)
+T(RN, inf, 0x0p+0, 0x1.921fb54442d18p+0, -0x1.1a6264p-2, INEXACT)
+T(RN, -inf, 0x0p+0, -0x1.921fb54442d18p+0, 0x1.1a6264p-2, INEXACT)
+T(RN, inf, inf, 0x1.921fb54442d18p-1, -0x1.1a6264p-2, INEXACT)
+T(RN, inf, -inf, 0x1.2d97c7f3321d2p+1, -0x1.a79394p-3, INEXACT)
+T(RN, -inf, inf, -0x1.921fb54442d18p-1, 0x1.1a6264p-2, INEXACT)
+T(RN, -inf, -inf, -0x1.2d97c7f3321d2p+1, 0x1.a79394p-3, INEXACT)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, 0x1.921fb6p+1, 0x1.777a5cp-2, INEXACT)
+T(RN, 0x0p+0, -0x1p+0, 0x1.921fb6p+1, 0x1.777a5cp-2, INEXACT)
+T(RN, 0x0p+0, -inf, 0x1.921fb6p+1, 0x1.777a5cp-2, INEXACT)
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, -0x1.921fb6p+1, -0x1.777a5cp-2, INEXACT)
+T(RN, -0x0p+0, -0x1p+0, -0x1.921fb6p+1, -0x1.777a5cp-2, INEXACT)
+T(RN, -0x0p+0, -inf, -0x1.921fb6p+1, -0x1.777a5cp-2, INEXACT)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, -0x1.921fb6p+0, -0x1.777a5cp-2, INEXACT)
+T(RN, -0x1p+0, -0x0p+0, -0x1.921fb6p+0, -0x1.777a5cp-2, INEXACT)
+T(RN, 0x1p+0, 0x0p+0, 0x1.921fb6p+0, 0x1.777a5cp-2, INEXACT)
+T(RN, 0x1p+0, -0x0p+0, 0x1.921fb6p+0, 0x1.777a5cp-2, INEXACT)
+T(RN, -0x1p+0, inf, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -0x1.921fb6p+1, -0x1.777a5cp-2, INEXACT)
+T(RN, 0x1p+0, -inf, 0x1.921fb6p+1, 0x1.777a5cp-2, INEXACT)
+T(RN, inf, 0x0p+0, 0x1.921fb6p+0, 0x1.777a5cp-2, INEXACT)
+T(RN, -inf, 0x0p+0, -0x1.921fb6p+0, -0x1.777a5cp-2, INEXACT)
+T(RN, inf, inf, 0x1.921fb6p-1, 0x1.777a5cp-2, INEXACT)
+T(RN, inf, -inf, 0x1.2d97c8p+1, 0x1.99bc5cp-6, INEXACT)
+T(RN, -inf, inf, -0x1.921fb6p-1, -0x1.777a5cp-2, INEXACT)
+T(RN, -inf, -inf, -0x1.2d97c8p+1, -0x1.99bc5cp-6, INEXACT)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x0p+0L, 0x1.921fb54442d1846ap+1L, 0x1.d9ccecp-3, INEXACT)
+T(RN, 0x0p+0L, -0x1p+0L, 0x1.921fb54442d1846ap+1L, 0x1.d9ccecp-3, INEXACT)
+T(RN, 0x0p+0L, -inf, 0x1.921fb54442d1846ap+1L, 0x1.d9ccecp-3, INEXACT)
+T(RN, 0x0p+0L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, -0x1.921fb54442d1846ap+1L, -0x1.d9ccecp-3, INEXACT)
+T(RN, -0x0p+0L, -0x1p+0L, -0x1.921fb54442d1846ap+1L, -0x1.d9ccecp-3, INEXACT)
+T(RN, -0x0p+0L, -inf, -0x1.921fb54442d1846ap+1L, -0x1.d9ccecp-3, INEXACT)
+T(RN, -0x0p+0L, 0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, inf, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x0p+0L, -0x1.921fb54442d1846ap+0L, -0x1.d9ccecp-3, INEXACT)
+T(RN, -0x1p+0L, -0x0p+0L, -0x1.921fb54442d1846ap+0L, -0x1.d9ccecp-3, INEXACT)
+T(RN, 0x1p+0L, 0x0p+0L, 0x1.921fb54442d1846ap+0L, 0x1.d9ccecp-3, INEXACT)
+T(RN, 0x1p+0L, -0x0p+0L, 0x1.921fb54442d1846ap+0L, 0x1.d9ccecp-3, INEXACT)
+T(RN, -0x1p+0L, inf, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -inf, -0x1.921fb54442d1846ap+1L, -0x1.d9ccecp-3, INEXACT)
+T(RN, 0x1p+0L, -inf, 0x1.921fb54442d1846ap+1L, 0x1.d9ccecp-3, INEXACT)
+T(RN, inf, 0x0p+0L, 0x1.921fb54442d1846ap+0L, 0x1.d9ccecp-3, INEXACT)
+T(RN, -inf, 0x0p+0L, -0x1.921fb54442d1846ap+0L, -0x1.d9ccecp-3, INEXACT)
+T(RN, inf, inf, 0x1.921fb54442d1846ap-1L, 0x1.d9ccecp-3, INEXACT)
+T(RN, inf, -inf, 0x1.2d97c7f3321d235p+1L, 0x1.b1acd8p-2, INEXACT)
+T(RN, -inf, inf, -0x1.921fb54442d1846ap-1L, -0x1.d9ccecp-3, INEXACT)
+T(RN, -inf, -inf, -0x1.2d97c7f3321d235p+1L, -0x1.b1acd8p-2, INEXACT)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.921fb6p-1, 0x1.777a5cp-2, INEXACT)
+T(RN, -0x1p+0, -0x1.921fb6p-1, -0x1.777a5cp-2, INEXACT)
+T(RN, inf, 0x1.921fb6p+0, 0x1.777a5cp-2, INEXACT)
+T(RN, -inf, -0x1.921fb6p+0, -0x1.777a5cp-2, INEXACT)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x1.0001p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x1.0001p+0, nan, 0x0p+0, INVALID)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x1.0001p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x1.0001p+0, nan, 0x0p+0, INVALID)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0L, -inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x1.0001p+0L, nan, 0x0p+0, INVALID)
+T(RN, -0x1.0001p+0L, nan, 0x0p+0, INVALID)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1.921fb54442d1846ap-1L, 0x1.d9ccecp-3, INEXACT)
+T(RN, -0x1p+0L, -0x1.921fb54442d1846ap-1L, -0x1.d9ccecp-3, INEXACT)
+T(RN, inf, 0x1.921fb54442d1846ap+0L, 0x1.d9ccecp-3, INEXACT)
+T(RN, -inf, -0x1.921fb54442d1846ap+0L, -0x1.d9ccecp-3, INEXACT)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-30, 0x1p-10, 0x0p+0, 0)
+T(RN, -0x1p-30, -0x1p-10, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+3, 0x1p+1, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-30, 0x1p-10, 0x0p+0, 0)
+T(RN, -0x1p-30, -0x1p-10, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+3, 0x1p+1, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-30L, 0x1p-10L, 0x0p+0, 0)
+T(RN, -0x1p-30L, -0x1p-10L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+3L, 0x1p+1L, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-1, -0x0p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0, 0x1p+1, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1, -0x0p+0, 0x0p+0, INEXACT)
+T(RN, 0x1p-100, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-100, -0x0p+0, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-1, -0x0p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0, 0x1p+1, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1, -0x0p+0, 0x0p+0, INEXACT)
+T(RN, 0x1p-100, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-100, -0x0p+0, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, 0x1p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1p-1L, -0x0p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0L, 0x1p+1L, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0L, -0x1p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1L, 0x1p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1L, -0x0p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1p-100L, 0x1p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1p-100L, -0x0p+0L, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, nan, -0x1p+0, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, -inf, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, -0x1p+0, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, nan, -0x1p+0, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, -inf, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, -0x1p+0, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, nan, -0x1p+0L, nan, 0x0p+0, 0)
+T(RN, -0x1p+0L, nan, 0x1p+0L, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p+0L, -inf, 0x0p+0, 0)
+T(RN, -0x1p+0L, inf, 0x1p+0L, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0L, inf, 0x0p+0, 0)
+T(RN, 0x1p+0L, -inf, -0x1p+0L, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.14a280fb5068cp-1, 0x1.b71edcp-2, INEXACT)
+T(RN, 0x1p+1, -0x1.aa22657537205p-2, -0x1.6f3342p-2, INEXACT)
+T(RN, 0x1.8p+1, -0x1.fae04be85e5d2p-1, 0x1.83effcp-2, INEXACT)
+T(RN, 0x1p+2, -0x1.4eaa606db24c1p-1, -0x1.dcc93p-3, INEXACT)
+T(RN, 0x1.4p+2, 0x1.22785706b4ad9p-2, -0x1.4f99f8p-2, INEXACT)
+T(RN, 0x1.999999999999ap-4, 0x1.fd712f9a817c1p-1, 0x1.fb7ab4p-2, INEXACT)
+T(RN, 0x1.999999999999ap-3, 0x1.f5cb49577627ap-1, -0x1.8a77c8p-6, INEXACT)
+T(RN, 0x1.3333333333333p-2, 0x1.e921dd42f09bap-1, -0x1.82c9a2p-2, INEXACT)
+T(RN, 0x1.999999999999ap-2, 0x1.d7954e7dba2f8p-1, 0x1.08619cp-2, INEXACT)
+T(RN, 0x1p-1, 0x1.c1528065b7d5p-1, 0x1.892112p-2, INEXACT)
+T(RN, 0x1.1p-1022, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.1p-1023, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1p-1074, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-1074, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.91eb851eb851fp+1, -0x1.ffffd5719f5d7p-1, 0x1.8ace0ap-2, INEXACT)
+T(RN, 0x1p+1023, -0x1.a719f26c232bfp-1, -0x1.7a7782p-2, INEXACT)
+T(RN, 0x1.fffffffffffffp+1023, -0x1.fffe62ecfab75p-1, 0x1.e038dap-3, INEXACT)
+T(RN, -0x1p+1023, -0x1.a719f26c232bfp-1, -0x1.7a7782p-2, INEXACT)
+T(RN, 0x1.91eb851eb851fp+1, -0x1.ffffd5719f5d7p-1, 0x1.8ace0ap-2, INEXACT)
+T(RN, 0x1.921cac083126fp+1, -0x1.ffffffdb21094p-1, -0x1.396f98p-2, INEXACT)
+T(RN, 0x1.921fafc8b007ap+1, -0x1.ffffffffff87cp-1, 0x1.3b75cep-3, INEXACT)
+T(RN, 0x1.921fb53c8d4f1p+1, -0x1p+0, -0x1.db6eap-6, INEXACT)
+T(RN, 0x1.921fb54411744p+1, -0x1p+0, -0x1.309ac6p-16, INEXACT)
+T(RN, 0x1.921fb5444261ep+1, -0x1p+0, -0x1.857fe8p-30, INEXACT)
+T(RN, 0x1.921fb54442d11p+1, -0x1p+0, -0x1.a77e82p-46, INEXACT)
+T(RN, 0x1.921fb54442d18p+1, -0x1p+0, -0x1.377ce8p-55, INEXACT)
+T(RN, 0x1.91eb851eb851fp+0, 0x1.a181296fadbfbp-11, 0x1.2ff084p-2, INEXACT)
+T(RN, 0x1.921fafc8b007ap+0, 0x1.5ee4b2791a5b8p-22, -0x1.4d86a6p-2, INEXACT)
+T(RN, 0x1.921fb543da7a8p+0, 0x1.a15c11a626331p-34, -0x1.16fed4p-2, INEXACT)
+T(RN, 0x1.921fb54442cfap+0, 0x1.e469898cc517p-48, -0x1.b839a2p-4, INEXACT)
+T(RN, 0x1.921fb54442d18p+0, 0x1.1a62633145c07p-54, 0x1.f1976cp-4, INEXACT)
+T(RN, 0x1.571290d0d806bp-1, 0x1.914be72e2c693p-1, -0x1.2a20a2p-4, INEXACT)
+T(RN, 0x1.119b6fff68efbp-1, 0x1.b89df025d713ap-1, -0x1.eff6e6p-2, INEXACT)
+T(RN, 0x1.c28e94aea392fp-2, 0x1.cf3bc6a49beddp-1, 0x1.e7dfc6p-6, INEXACT)
+T(RN, 0x1.fb0683f915c2ep-1, 0x1.18cebea0eb269p-1, 0x1.94cafep-3, INEXACT)
+T(RN, 0x1.d0b4bde8347c2p-2, 0x1.cc2d130a8d29bp-1, -0x1.22677ap-6, INEXACT)
+T(RN, 0x1.d80d782503ddcp-2, 0x1.ca8dcb198532dp-1, 0x1.753f04p-2, INEXACT)
+T(RN, 0x1.db6a0ab3fa2bp-1, 0x1.32b041a1d773dp-1, -0x1.28e676p-2, INEXACT)
+T(RN, 0x1.d262b13a2f8bcp-1, 0x1.39dec33e2ded1p-1, -0x1.f96048p-2, INEXACT)
+T(RN, 0x1.aa6ca26af29e1p-1, 0x1.58745295e1d27p-1, -0x1.76d8aap-2, INEXACT)
+T(RN, 0x1.e840e5a541f2p-1, 0x1.284fe765bdd23p-1, -0x1.5dfff2p-3, INEXACT)
+T(RN, 0x1.becd294b590d9p-1, 0x1.491c05952f5bp-1, -0x1.19162ap-2, INEXACT)
+T(RN, 0x1.72b27970cbbd9p-3, 0x1.f7a2b983cf8a1p-1, 0x1.8bc686p-9, INEXACT)
+T(RN, 0x1.2d97c7f388b27p+1, -0x1.6a09e668e8a1cp-1, -0x1.ee5fd6p-2, INEXACT)
+T(RN, 0x1.2d97c7f39507ap+1, -0x1.6a09e6690b83ap-1, -0x1.f24896p-2, INEXACT)
+T(RN, 0x1.2d97c7f34420ap+1, -0x1.6a09e66826b01p-1, -0x1.69e07p-2, INEXACT)
+T(RN, 0x1.2d97c7f3758b4p+1, -0x1.6a09e668b2757p-1, -0x1.ad2dc2p-2, INEXACT)
+T(RN, 0x1.2d97c7f38e7a2p+1, -0x1.6a09e668f8fafp-1, -0x1.e1ea36p-2, INEXACT)
+T(RN, 0x1.2d97c7f39ab7fp+1, -0x1.6a09e6691b9abp-1, -0x1.39882cp-2, INEXACT)
+T(RN, 0x1.2d97c7f394c5ap+1, -0x1.6a09e6690ac8fp-1, -0x1.38fbd8p-2, INEXACT)
+T(RN, 0x1.2d97c7f3a43c4p+1, -0x1.6a09e6693685ap-1, -0x1.8dc756p-2, INEXACT)
+T(RN, 0x1.2d97c7f35769ap+1, -0x1.6a09e6685d3cp-1, -0x1.e75c0ap-3, INEXACT)
+T(RN, 0x1.2d97c7f3a6a55p+1, -0x1.6a09e6693d56fp-1, -0x1.4f5166p-2, INEXACT)
+T(RN, 0x1.0c15238304b44p+1, -0x1.000000009d96ap-1, -0x1.ab1fc8p-2, INEXACT)
+T(RN, 0x1.0c152382ed3a2p+1, -0x1.000000004c42fp-1, -0x1.6d2cep-2, INEXACT)
+T(RN, 0x1.0c152383194ap+1, -0x1.00000000e4e59p-1, -0x1.cd839p-3, INEXACT)
+T(RN, 0x1.0c1523832b961p+1, -0x1.000000012447ap-1, -0x1.09e06ep-3, INEXACT)
+T(RN, 0x1.0c152382e297bp+1, -0x1.00000000276c2p-1, -0x1.455c66p-3, INEXACT)
+T(RN, 0x1.0c152382e73c2p+1, -0x1.000000003781p-1, -0x1.110e78p-2, INEXACT)
+T(RN, 0x1.0c1523830fc18p+1, -0x1.00000000c3df7p-1, -0x1.dc5f6ep-2, INEXACT)
+T(RN, 0x1.0c1523831b74fp+1, -0x1.00000000ec67fp-1, -0x1.de5212p-2, INEXACT)
+T(RN, 0x1.0c152382de35cp+1, -0x1.00000000183dap-1, -0x1.f9c65cp-3, INEXACT)
+T(RN, 0x1.0c152382eaa73p+1, -0x1.0000000043585p-1, -0x1.851012p-2, INEXACT)
+T(RN, 0x1.106c38fe9a1d4p+3, -0x1.399a9bc48bd62p-1, 0x1.fef8f8p-2, INEXACT)
+T(RN, 0x1.b3627c817a128p+2, 0x1.bc664664c2151p-1, 0x1.fd2656p-2, INEXACT)
+T(RN, 0x1.258069ae950eep+3, -0x1.efb845231e9e3p-1, -0x1.fe3c06p-2, INEXACT)
+T(RN, 0x1.1b599f1462456p+3, -0x1.af076e3f43156p-1, 0x1.fd701cp-2, INEXACT)
+T(RN, 0x1.26d514a15bd1dp+3, -0x1.f49dbe18ebc93p-1, -0x1.ff8cc6p-2, INEXACT)
+T(RN, 0x1.f213a550008fdp+2, 0x1.24bf5dd2ba797p-4, 0x1.fe8c16p-2, INEXACT)
+T(RN, 0x1.e004481b64637p+2, 0x1.62b41b3c0d01p-2, -0x1.ff9ca6p-2, INEXACT)
+T(RN, 0x1.23e54a10c2c25p+3, -0x1.e8ab971af5fabp-1, 0x1.fe3d82p-2, INEXACT)
+T(RN, 0x1.b23cafc9b3cebp+2, 0x1.c0e32d52ec691p-1, -0x1.fec7ap-2, INEXACT)
+T(RN, 0x1.18aac65e5f9dap+3, -0x1.965fa3629f1ap-1, 0x1.fff7bp-2, INEXACT)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1L, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, 0x1p+0L, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0L, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.5bf0a8b145769p+1, -0x1.4d57eep-2, INEXACT)
+T(RN, -0x1p+0, 0x1.78b56362cef38p-2, 0x1.ca8a42p-3, INEXACT)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.4p+3, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1.999999999999ap-4, 0x1.99999ap-2, INEXACT)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.4p+3, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1.99999ap-4, 0x1.99999ap-3, INEXACT)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1.4p+3L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x1.999999999999999ap-4L, 0x1.99999ap-3, INEXACT)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+1, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+1, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p+1L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x1p-1L, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.5bf0a8p+1, -0x1.628aeep-2, INEXACT)
+T(RN, -0x1p+0, 0x1.78b564p-2, 0x1.3a621ap-2, INEXACT)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1.5bf0a8b145769536p+1L, 0x1.408ea8p-2, INEXACT)
+T(RN, -0x1p+0L, 0x1.78b56362cef37c6ap-2L, -0x1.d6f63cp-2, INEXACT)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.b7e151628aed3p+0, 0x1.655024p-2, INEXACT)
+T(RN, -0x1p+0, -0x1.43a54e4e98864p-1, 0x1.ca8a42p-4, INEXACT)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.b7e152p+0, 0x1.3aea26p-2, INEXACT)
+T(RN, -0x1p+0, -0x1.43a54ep-1, 0x1.3a621ap-3, INEXACT)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1.b7e151628aed2a6ap+0L, -0x1.7ee2b2p-2, INEXACT)
+T(RN, -0x1p+0L, -0x1.43a54e4e988641cap-1L, 0x1.1484e2p-2, INEXACT)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0L, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, -0x1p+0, 0x1.8p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x1p+1, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, -0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -inf, inf, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -inf, inf, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0x0p+0, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x0p+0, inf, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, -0x0p+0, nan, 0x0p+0, 0)
+T(RN, inf, 0x1p+1, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p-1, inf, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, -0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, inf, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.cp+0, 0x1p-1, 0x1.4p+0, 0x0p+0, 0)
+T(RN, -0x1.cp+0, 0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.cp+0, -0x1p-1, 0x1.2p+1, 0x0p+0, 0)
+T(RN, -0x1.cp+0, -0x1p-1, 0x0p+0, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, -0x1p+0, 0x1.8p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x1p+1, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, -0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -inf, inf, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -inf, inf, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0x0p+0, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x0p+0, inf, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, -0x0p+0, nan, 0x0p+0, 0)
+T(RN, inf, 0x1p+1, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p-1, inf, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, -0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, inf, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.cp+0, 0x1p-1, 0x1.4p+0, 0x0p+0, 0)
+T(RN, -0x1.cp+0, 0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.cp+0, -0x1p-1, 0x1.2p+1, 0x0p+0, 0)
+T(RN, -0x1.cp+0, -0x1p-1, 0x0p+0, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p-1L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, inf, 0x1p+0L, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, nan, 0x1p+0L, nan, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, -0x1p+0L, 0x1.8p+0L, 0x0p+0, 0)
+T(RN, -0x1p-1L, -0x1p+0L, 0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -0x1p+0L, 0x1p+1L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, inf, -0x1p+0L, inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, nan, -0x1p+0L, nan, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -inf, inf, 0x0p+0, 0)
+T(RN, 0x0p+0L, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -inf, inf, 0x0p+0, 0)
+T(RN, -0x0p+0L, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, inf, 0x0p+0L, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, nan, 0x0p+0L, nan, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, inf, -0x0p+0L, inf, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, nan, -0x0p+0L, nan, 0x0p+0, 0)
+T(RN, inf, 0x1p+1L, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p-1L, inf, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -inf, -0x1p-1L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0L, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0L, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0L, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, -inf, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -inf, inf, 0x0p+0, 0)
+T(RN, -0x1p+0L, -inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1.cp+0L, 0x1p-1L, 0x1.4p+0L, 0x0p+0, 0)
+T(RN, -0x1.cp+0L, 0x1p-1L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1.cp+0L, -0x1p-1L, 0x1.2p+1L, 0x0p+0, 0)
+T(RN, -0x1.cp+0L, -0x1p-1L, 0x0p+0L, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-1, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0, -0x1p+1, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1p-100, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-100, -0x1p+0, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-1, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0, -0x1p+1, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1p-100, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-100, -0x1p+0, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, 0x0p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1p-1L, -0x1p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0L, 0x1p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0L, -0x1p+1L, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1L, 0x0p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1L, -0x1p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1p-100L, 0x0p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1p-100L, -0x1p+0L, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, 0x0p+0, nan, 0x0p+0, 0)
+T(RN, nan, 0x0p+0, 0x0p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, inf, inf, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, 0x0p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, 0x0p+0, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, -inf, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x0p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, inf, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, inf, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0, inf, inf, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0, inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0, -inf, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, -inf, -inf, 0x0p+0, 0)
+T(RN, inf, -inf, 0x1p+0, -inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, inf, inf, nan, nan, 0x0p+0, 0)
+T(RN, inf, nan, inf, nan, 0x0p+0, 0)
+T(RN, nan, inf, inf, nan, 0x0p+0, 0)
+// TODO: invalid is optional
+T(RN, inf, 0x0p+0, nan, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, inf, nan, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x0p+0, nan, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, -inf, nan, nan, 0x0p+0, INVALID)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, 0x0p+0, nan, 0x0p+0, 0)
+T(RN, nan, 0x0p+0, 0x0p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, inf, inf, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, 0x0p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, 0x0p+0, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, -inf, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x0p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, inf, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, inf, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0, inf, inf, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0, inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0, -inf, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, -inf, -inf, 0x0p+0, 0)
+T(RN, inf, -inf, 0x1p+0, -inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, inf, inf, nan, nan, 0x0p+0, 0)
+T(RN, inf, nan, inf, nan, 0x0p+0, 0)
+T(RN, nan, inf, inf, nan, 0x0p+0, 0)
+// TODO: invalid is optional
+T(RN, inf, 0x0p+0, nan, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, inf, nan, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x0p+0, nan, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, -inf, nan, nan, 0x0p+0, INVALID)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, -0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x0p+0L, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x0p+0L, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, -0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0L, nan, 0x0p+0L, nan, 0x0p+0, 0)
+T(RN, nan, 0x0p+0L, 0x0p+0L, nan, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, inf, inf, 0x0p+0, 0)
+T(RN, 0x0p+0L, inf, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, inf, 0x0p+0L, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0L, 0x0p+0L, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0L, -inf, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x0p+0L, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0L, inf, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0L, inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0L, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0L, -inf, inf, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0L, inf, inf, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0L, inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -0x1p+0L, -inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0L, -inf, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p+0L, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p+0L, -inf, -inf, 0x0p+0, 0)
+T(RN, inf, -inf, 0x1p+0L, -inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x1p+0L, inf, 0x0p+0, 0)
+T(RN, inf, inf, nan, nan, 0x0p+0, 0)
+T(RN, inf, nan, inf, nan, 0x0p+0, 0)
+T(RN, nan, inf, inf, nan, 0x0p+0, 0)
+// TODO: invalid is optional
+T(RN, inf, 0x0p+0L, nan, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0L, inf, nan, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x0p+0L, nan, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0L, -inf, nan, nan, 0x0p+0, INVALID)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, nan, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, inf, 0x0p+0, 0)
+T(RN, 0x0p+0, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, inf, 0x0p+0, 0)
+T(RN, -0x0p+0, -inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x0p+0, inf, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, nan, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+1, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p-1, inf, 0x0p+0, 0)
+T(RN, inf, nan, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, 0x1p+1, 0x0p+0, 0)
+T(RN, -inf, -0x1p-1, -0x1p-1, 0x0p+0, 0)
+T(RN, -inf, nan, -inf, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, inf, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, inf, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, -inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x1.cp+0, 0x1p-1, 0x1.cp+0, 0x0p+0, 0)
+T(RN, -0x1.cp+0, 0x1p-1, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1.cp+0, -0x1p-1, 0x1.cp+0, 0x0p+0, 0)
+T(RN, -0x1.cp+0, -0x1p-1, -0x1p-1, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, nan, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, inf, 0x0p+0, 0)
+T(RN, 0x0p+0, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, inf, 0x0p+0, 0)
+T(RN, -0x0p+0, -inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x0p+0, inf, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, nan, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+1, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p-1, inf, 0x0p+0, 0)
+T(RN, inf, nan, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, 0x1p+1, 0x0p+0, 0)
+T(RN, -inf, -0x1p-1, -0x1p-1, 0x0p+0, 0)
+T(RN, -inf, nan, -inf, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, inf, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, inf, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, -inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x1.cp+0, 0x1p-1, 0x1.cp+0, 0x0p+0, 0)
+T(RN, -0x1.cp+0, 0x1p-1, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1.cp+0, -0x1p-1, 0x1.cp+0, 0x0p+0, 0)
+T(RN, -0x1.cp+0, -0x1p-1, -0x1p-1, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p-1L, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, inf, 0x1p+0L, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, nan, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, -0x1p+0L, 0x1p-1L, 0x0p+0, 0)
+T(RN, -0x1p-1L, -0x1p+0L, -0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, inf, -0x1p+0L, inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, nan, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, inf, inf, 0x0p+0, 0)
+T(RN, 0x0p+0L, -inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, nan, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, inf, inf, 0x0p+0, 0)
+T(RN, -0x0p+0L, -inf, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, nan, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, inf, 0x0p+0L, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, nan, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, -0x0p+0L, inf, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, nan, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, 0x1p+1L, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p-1L, inf, 0x0p+0, 0)
+T(RN, inf, nan, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1L, 0x1p+1L, 0x0p+0, 0)
+T(RN, -inf, -0x1p-1L, -0x1p-1L, 0x0p+0, 0)
+T(RN, -inf, nan, -inf, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0L, nan, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, nan, -0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, inf, inf, 0x0p+0, 0)
+T(RN, -0x1p+0L, inf, inf, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0L, -inf, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -inf, -0x1p+0L, 0x0p+0, 0)
+T(RN, inf, -inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x1.cp+0L, 0x1p-1L, 0x1.cp+0L, 0x0p+0, 0)
+T(RN, -0x1.cp+0L, 0x1p-1L, 0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1.cp+0L, -0x1p-1L, 0x1.cp+0L, 0x0p+0, 0)
+T(RN, -0x1.cp+0L, -0x1p-1L, -0x1p-1L, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0, -inf, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, -inf, 0x0p+0, 0)
+T(RN, nan, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -inf, -inf, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, -inf, 0x0p+0, 0)
+T(RN, nan, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0, -inf, 0x0p+0, 0)
+T(RN, nan, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+1, 0x1p+1, 0x0p+0, 0)
+T(RN, inf, -0x1p-1, -0x1p-1, 0x0p+0, 0)
+T(RN, inf, nan, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, -inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p-1, -inf, 0x0p+0, 0)
+T(RN, -inf, nan, -inf, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, -inf, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -inf, 0x0p+0, 0)
+T(RN, inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x1.cp+0, 0x1p-1, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1.cp+0, 0x1p-1, -0x1.cp+0, 0x0p+0, 0)
+T(RN, 0x1.cp+0, -0x1p-1, -0x1p-1, 0x0p+0, 0)
+T(RN, -0x1.cp+0, -0x1p-1, -0x1.cp+0, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0, -inf, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, -inf, 0x0p+0, 0)
+T(RN, nan, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -inf, -inf, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, -inf, 0x0p+0, 0)
+T(RN, nan, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0, -inf, 0x0p+0, 0)
+T(RN, nan, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+1, 0x1p+1, 0x0p+0, 0)
+T(RN, inf, -0x1p-1, -0x1p-1, 0x0p+0, 0)
+T(RN, inf, nan, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, -inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p-1, -inf, 0x0p+0, 0)
+T(RN, -inf, nan, -inf, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, -inf, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -inf, 0x0p+0, 0)
+T(RN, inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x1.cp+0, 0x1p-1, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1.cp+0, 0x1p-1, -0x1.cp+0, 0x0p+0, 0)
+T(RN, 0x1.cp+0, -0x1p-1, -0x1p-1, 0x0p+0, 0)
+T(RN, -0x1.cp+0, -0x1p-1, -0x1.cp+0, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, 0x1p+0L, 0x1p-1L, 0x0p+0, 0)
+T(RN, -0x1p-1L, 0x1p+0L, -0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, inf, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0L, -inf, 0x0p+0, 0)
+T(RN, nan, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p-1L, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, inf, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0L, -inf, 0x0p+0, 0)
+T(RN, nan, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0L, nan, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, inf, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -inf, -inf, 0x0p+0, 0)
+T(RN, -0x0p+0L, nan, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x0p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, inf, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0L, -inf, 0x0p+0, 0)
+T(RN, nan, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x0p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, inf, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0L, -inf, 0x0p+0, 0)
+T(RN, nan, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, 0x1p+1L, 0x1p+1L, 0x0p+0, 0)
+T(RN, inf, -0x1p-1L, -0x1p-1L, 0x0p+0, 0)
+T(RN, inf, nan, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1L, -inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p-1L, -inf, 0x0p+0, 0)
+T(RN, -inf, nan, -inf, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0L, nan, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, nan, -0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, inf, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, inf, -0x1p+0L, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0L, -inf, -inf, 0x0p+0, 0)
+T(RN, -0x1p+0L, -inf, -inf, 0x0p+0, 0)
+T(RN, inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x1.cp+0L, 0x1p-1L, 0x1p-1L, 0x0p+0, 0)
+T(RN, -0x1.cp+0L, 0x1p-1L, -0x1.cp+0L, 0x0p+0, 0)
+T(RN, 0x1.cp+0L, -0x1p-1L, -0x1p-1L, 0x0p+0, 0)
+T(RN, -0x1.cp+0L, -0x1p-1L, -0x1.cp+0L, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.8p+0, 0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1.8p+0, 0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+1, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+1, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.8p+0, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1.8p+0, -0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+1, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+1, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, -0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x0p+0, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x0p+0, inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, 0x0p+0, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, -0x0p+0, nan, 0x0p+0, 0)
+T(RN, inf, 0x1p+1, nan, 0x0p+0, INVALID)
+T(RN, inf, -0x1p-1, nan, 0x0p+0, INVALID)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x1p-1, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, -inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1.cp+0, 0x1p-1, 0x1p-2, 0x0p+0, 0)
+T(RN, -0x1.cp+0, 0x1p-1, -0x1p-2, 0x0p+0, 0)
+T(RN, 0x1.cp+0, -0x1p-1, 0x1p-2, 0x0p+0, 0)
+T(RN, -0x1.cp+0, -0x1p-1, -0x1p-2, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.8p+0, 0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1.8p+0, 0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+1, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+1, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.8p+0, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1.8p+0, -0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+1, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+1, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, -0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x0p+0, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x0p+0, inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, 0x0p+0, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, -0x0p+0, nan, 0x0p+0, 0)
+T(RN, inf, 0x1p+1, nan, 0x0p+0, INVALID)
+T(RN, inf, -0x1p-1, nan, 0x0p+0, INVALID)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x1p-1, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, -inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1.cp+0, 0x1p-1, 0x1p-2, 0x0p+0, 0)
+T(RN, -0x1.cp+0, 0x1p-1, -0x1p-2, 0x0p+0, 0)
+T(RN, 0x1.cp+0, -0x1p-1, 0x1p-2, 0x0p+0, 0)
+T(RN, -0x1.cp+0, -0x1p-1, -0x1p-2, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, 0x1p+0L, 0x1p-1L, 0x0p+0, 0)
+T(RN, -0x1p-1L, 0x1p+0L, -0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1.8p+0L, 0x1p+0L, 0x1p-1L, 0x0p+0, 0)
+T(RN, -0x1.8p+0L, 0x1p+0L, -0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+1L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+1L, 0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, 0x1p+0L, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x1p+0L, nan, 0x0p+0, INVALID)
+T(RN, nan, 0x1p+0L, nan, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, -0x1p+0L, 0x1p-1L, 0x0p+0, 0)
+T(RN, -0x1p-1L, -0x1p+0L, -0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1.8p+0L, -0x1p+0L, 0x1p-1L, 0x0p+0, 0)
+T(RN, -0x1.8p+0L, -0x1p+0L, -0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+1L, -0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+1L, -0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, -0x1p+0L, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x1p+0L, nan, 0x0p+0, INVALID)
+T(RN, nan, -0x1p+0L, nan, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0L, -0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0L, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, -0x0p+0L, -0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, -0x0p+0L, inf, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -inf, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0L, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, inf, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, nan, 0x0p+0L, nan, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, inf, -0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, nan, -0x0p+0L, nan, 0x0p+0, 0)
+T(RN, inf, 0x1p+1L, nan, 0x0p+0, INVALID)
+T(RN, inf, -0x1p-1L, nan, 0x0p+0, INVALID)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1L, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x1p-1L, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0L, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0L, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0L, inf, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, inf, -0x1p+0L, 0x0p+0, 0)
+T(RN, inf, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0L, -inf, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -inf, -0x1p+0L, 0x0p+0, 0)
+T(RN, inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1.cp+0L, 0x1p-1L, 0x1p-2L, 0x0p+0, 0)
+T(RN, -0x1.cp+0L, 0x1p-1L, -0x1p-2L, 0x0p+0, 0)
+T(RN, 0x1.cp+0L, -0x1p-1L, 0x1p-2L, 0x0p+0, 0)
+T(RN, -0x1.cp+0L, -0x1p-1L, -0x1p-2L, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0, 0)
+T(RN, 0x1p-1, 0x1p-1, 0x0p+0, 0, 0)
+T(RN, -0x1p-1, -0x1p-1, 0x0p+0, 0, 0)
+T(RN, 0x1p+0, 0x1p-1, 0x0p+0, 1, 0)
+T(RN, -0x1p+0, -0x1p-1, 0x0p+0, 1, 0)
+T(RN, 0x1p+1, 0x1p-1, 0x0p+0, 2, 0)
+T(RN, -0x1p+1, -0x1p-1, 0x0p+0, 2, 0)
+// TODO: exp is unspecified for these inputs
+T(RN, inf, inf, 0x0p+0, 0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0, 0)
+T(RN, nan, nan, 0x0p+0, 0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0, 0)
+T(RN, 0x1p-1, 0x1p-1, 0x0p+0, 0, 0)
+T(RN, -0x1p-1, -0x1p-1, 0x0p+0, 0, 0)
+T(RN, 0x1p+0, 0x1p-1, 0x0p+0, 1, 0)
+T(RN, -0x1p+0, -0x1p-1, 0x0p+0, 1, 0)
+T(RN, 0x1p+1, 0x1p-1, 0x0p+0, 2, 0)
+T(RN, -0x1p+1, -0x1p-1, 0x0p+0, 2, 0)
+// TODO: exp is unspecified
+T(RN, inf, inf, 0x0p+0, 0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0, 0)
+T(RN, nan, nan, 0x0p+0, 0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0, 0)
+T(RN, 0x1p-1L, 0x1p-1L, 0x0p+0, 0, 0)
+T(RN, -0x1p-1L, -0x1p-1L, 0x0p+0, 0, 0)
+T(RN, 0x1p+0L, 0x1p-1L, 0x0p+0, 1, 0)
+T(RN, -0x1p+0L, -0x1p-1L, 0x0p+0, 1, 0)
+T(RN, 0x1p+1L, 0x1p-1L, 0x0p+0, 2, 0)
+T(RN, -0x1p+1L, -0x1p-1L, 0x0p+0, 2, 0)
+// TODO: exp is unspecified
+T(RN, inf, inf, 0x0p+0, 0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0, 0)
+T(RN, nan, nan, 0x0p+0, 0, 0)
--- /dev/null
+T(RN, 0x1.8p+1, 0x1p+2, 0x1.4p+2, 0x0p+0, 0)
+T(RN, -0x1.8p+1, 0x1p+2, 0x1.4p+2, 0x0p+0, 0)
+T(RN, 0x1p+2, 0x1.8p+1, 0x1.4p+2, 0x0p+0, 0)
+T(RN, 0x1p+2, -0x1.8p+1, 0x1.4p+2, 0x0p+0, 0)
+T(RN, -0x1.8p+1, -0x1p+2, 0x1.4p+2, 0x0p+0, 0)
+T(RN, 0x1.fffffffffffffp+1023, 0x0p+0, 0x1.fffffffffffffp+1023, 0x0p+0, 0)
+T(RN, 0x1.fffffffffffffp+1023, -0x0p+0, 0x1.fffffffffffffp+1023, 0x0p+0, 0)
+T(RN, 0x1p-1074, 0x0p+0, 0x1p-1074, 0x0p+0, 0)
+T(RN, 0x1p-1074, -0x0p+0, 0x1p-1074, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, inf, 0x0p+0, 0)
+T(RN, inf, nan, inf, 0x0p+0, 0)
+T(RN, nan, inf, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, inf, 0x0p+0, 0)
+T(RN, nan, -inf, inf, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x1.8p+1, 0x1p+2, 0x1.4p+2, 0x0p+0, 0)
+T(RN, -0x1.8p+1, 0x1p+2, 0x1.4p+2, 0x0p+0, 0)
+T(RN, 0x1p+2, 0x1.8p+1, 0x1.4p+2, 0x0p+0, 0)
+T(RN, 0x1p+2, -0x1.8p+1, 0x1.4p+2, 0x0p+0, 0)
+T(RN, -0x1.8p+1, -0x1p+2, 0x1.4p+2, 0x0p+0, 0)
+T(RN, 0x1.fffffep+127, 0x0p+0, 0x1.fffffep+127, 0x0p+0, 0)
+T(RN, 0x1.fffffep+127, -0x0p+0, 0x1.fffffep+127, 0x0p+0, 0)
+T(RN, 0x1p-149, 0x0p+0, 0x1p-149, 0x0p+0, 0)
+T(RN, 0x1p-149, -0x0p+0, 0x1p-149, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, inf, 0x0p+0, 0)
+T(RN, inf, nan, inf, 0x0p+0, 0)
+T(RN, nan, inf, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, inf, 0x0p+0, 0)
+T(RN, nan, -inf, inf, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x1.8p+1L, 0x1p+2L, 0x1.4p+2L, 0x0p+0, 0)
+T(RN, -0x1.8p+1L, 0x1p+2L, 0x1.4p+2L, 0x0p+0, 0)
+T(RN, 0x1p+2L, 0x1.8p+1L, 0x1.4p+2L, 0x0p+0, 0)
+T(RN, 0x1p+2L, -0x1.8p+1L, 0x1.4p+2L, 0x0p+0, 0)
+T(RN, -0x1.8p+1L, -0x1p+2L, 0x1.4p+2L, 0x0p+0, 0)
+T(RN, 0x1.fffffffffffffffep+16383L, 0x0p+0L, 0x1.fffffffffffffffep+16383L, 0x0p+0, 0)
+T(RN, 0x1.fffffffffffffffep+16383L, -0x0p+0L, 0x1.fffffffffffffffep+16383L, 0x0p+0, 0)
+T(RN, 0x1p-16445L, 0x0p+0L, 0x1p-16445L, 0x0p+0, 0)
+T(RN, 0x1p-16445L, -0x0p+0L, 0x1p-16445L, 0x0p+0, 0)
+T(RN, inf, 0x1p+0L, inf, 0x0p+0, 0)
+T(RN, 0x1p+0L, inf, inf, 0x0p+0, 0)
+T(RN, inf, nan, inf, 0x0p+0, 0)
+T(RN, nan, inf, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0L, inf, 0x0p+0, 0)
+T(RN, 0x1p+0L, -inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, inf, 0x0p+0, 0)
+T(RN, nan, -inf, inf, 0x0p+0, 0)
+T(RN, nan, 0x1p+0L, nan, 0x0p+0, 0)
+T(RN, 0x1p+0L, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, FP_ILOGB0, INVALID)
+T(RN, -0x0p+0, FP_ILOGB0, INVALID)
+T(RN, -0x1p-100, -100, 0)
+T(RN, 0x1p+0, 0, 0)
+T(RN, -0x1p+0, 0, 0)
+T(RN, inf, -1U/2, INVALID)
+T(RN, -inf, -1U/2, INVALID)
+T(RN, nan, FP_ILOGBNAN, INVALID)
+T(RN, 0x1p-1074, -1074, 0)
--- /dev/null
+T(RN, 0x0p+0, FP_ILOGB0, INVALID)
+T(RN, -0x0p+0, FP_ILOGB0, INVALID)
+T(RN, -0x1p-100, -100, 0)
+T(RN, 0x1p+0, 0, 0)
+T(RN, -0x1p+0, 0, 0)
+T(RN, inf, -1U/2, INVALID)
+T(RN, -inf, -1U/2, INVALID)
+T(RN, nan, FP_ILOGBNAN, INVALID)
+T(RN, 0x1p-149, -149, 0)
--- /dev/null
+T(RN, 0x0p+0, FP_ILOGB0, INVALID)
+T(RN, -0x0p+0, FP_ILOGB0, INVALID)
+T(RN, -0x1p-100, -100, 0)
+T(RN, 0x1p+0, 0, 0)
+T(RN, -0x1p+0, 0, 0)
+T(RN, inf, -1U/2, INVALID)
+T(RN, -inf, -1U/2, INVALID)
+T(RN, nan, FP_ILOGBNAN, INVALID)
+T(RN, 0x1p-16445L, -16445, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 1, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 1, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 1, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 1, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, -1, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -1, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, -1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, -1, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, -1, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 2, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 2, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, 2, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 2, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 2, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 1, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 1, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 1, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 1, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, -1, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -1, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, -1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, -1, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, -1, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 2, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 2, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, 2, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 2, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 2, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 2147483647, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -2147483647, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 2147483647, -0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0, nan, 0x0p+0, 0)
+T(RN, inf, 0, inf, 0x0p+0, 0)
+T(RN, -inf, 0, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 1, 0x1p+1, 0x0p+0, 0)
+T(RN, 0x1p+0, -1, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 2147483647, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, nan, 1, nan, 0x0p+0, 0)
+T(RN, inf, 2147483647, inf, 0x0p+0, 0)
+T(RN, inf, -2147483647, inf, 0x0p+0, 0)
+T(RN, -inf, 2147483647, -inf, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 2147483647, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -2147483647, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 2147483647, -0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0, nan, 0x0p+0, 0)
+T(RN, inf, 0, inf, 0x0p+0, 0)
+T(RN, -inf, 0, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 1, 0x1p+1, 0x0p+0, 0)
+T(RN, 0x1p+0, -1, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 2147483647, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, nan, 1, nan, 0x0p+0, 0)
+T(RN, inf, 2147483647, inf, 0x0p+0, 0)
+T(RN, inf, -2147483647, inf, 0x0p+0, 0)
+T(RN, -inf, 2147483647, -inf, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 2147483647, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -2147483647, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 2147483647, -0x0p+0L, 0x0p+0, 0)
+T(RN, nan, 0, nan, 0x0p+0, 0)
+T(RN, inf, 0, inf, 0x0p+0, 0)
+T(RN, -inf, 0, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 1, 0x1p+1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -1, 0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 2147483647, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, nan, 1, nan, 0x0p+0, 0)
+T(RN, inf, 2147483647, inf, 0x0p+0, 0)
+T(RN, inf, -2147483647, inf, 0x0p+0, 0)
+T(RN, -inf, 2147483647, -inf, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, -0x0p+0, inf, 0x0p+0, -1, DIVBYZERO)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 1, 0)
+T(RN, -0x1p+0, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, 0x1p+1, 0x0p+0, 0x0p+0, 1, 0)
+T(RN, -0x1p+1, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, inf, inf, 0x0p+0, 1, 0)
+T(RN, -inf, inf, 0x0p+0, -1, 0)
+T(RN, nan, nan, 0x0p+0, 1, 0)
--- /dev/null
+T(RN, 0x0p+0, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, -0x0p+0, inf, 0x0p+0, -1, DIVBYZERO)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 1, 0)
+T(RN, -0x1p+0, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, 0x1p+1, 0x0p+0, 0x0p+0, 1, 0)
+T(RN, -0x1p+1, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, inf, inf, 0x0p+0, 1, 0)
+T(RN, -inf, inf, 0x0p+0, -1, 0)
+T(RN, nan, nan, 0x0p+0, 1, 0)
--- /dev/null
+T(RN, 0x0p+0, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, -0x0p+0, inf, 0x0p+0, -1, DIVBYZERO)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 1, 0)
+T(RN, -0x1p+0, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, 0x1p+1, 0x0p+0, 0x0p+0, 1, 0)
+T(RN, -0x1p+1, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, inf, inf, 0x0p+0, 1, 0)
+T(RN, -inf, inf, 0x0p+0, -1, 0)
+T(RN, nan, nan, 0x0p+0, 1, 0)
--- /dev/null
+T(RN, 0x0p+0, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, -0x0p+0, inf, 0x0p+0, -1, DIVBYZERO)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 1, 0)
+T(RN, -0x1p+0, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, 0x1p+1, 0x0p+0, 0x0p+0, 1, 0)
+T(RN, -0x1p+1, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, inf, inf, 0x0p+0, 1, 0)
+T(RN, -inf, inf, 0x0p+0, -1, 0)
+T(RN, nan, nan, 0x0p+0, 1, 0)
--- /dev/null
+T(RN, 0x0p+0L, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, -0x0p+0L, inf, 0x0p+0, -1, DIVBYZERO)
+T(RN, 0x1p+0L, 0x0p+0L, 0x0p+0, 1, 0)
+T(RN, -0x1p+0L, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, 0x1p+1L, 0x0p+0L, 0x0p+0, 1, 0)
+T(RN, -0x1p+1L, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, inf, inf, 0x0p+0, 1, 0)
+T(RN, -inf, inf, 0x0p+0, -1, 0)
+T(RN, nan, nan, 0x0p+0, 1, 0)
--- /dev/null
+T(RN, 0x0p+0L, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, -0x0p+0L, inf, 0x0p+0, -1, DIVBYZERO)
+T(RN, 0x1p+0L, 0x0p+0L, 0x0p+0, 1, 0)
+T(RN, -0x1p+0L, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, 0x1p+1L, 0x0p+0L, 0x0p+0, 1, 0)
+T(RN, -0x1p+1L, inf, 0x0p+0, 1, DIVBYZERO)
+T(RN, inf, inf, 0x0p+0, 1, 0)
+T(RN, -inf, inf, 0x0p+0, -1, 0)
+T(RN, nan, nan, 0x0p+0, 1, 0)
--- /dev/null
+T(RN, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, 0, 0)
+T(RN, 0x1p-1, 0, INEXACT)
+T(RN, -0x1p-1, 0, INEXACT)
+T(RN, 0x1p+0, 1, 0)
+T(RN, -0x1p+0, -1, 0)
+T(RN, 0x1.0001p+0, 1, INEXACT)
+T(RN, -0x1.0001p+0, -1, INEXACT)
+T(RN, 0x1.ffffp-1, 1, INEXACT)
+T(RN, -0x1.ffffp-1, -1, INEXACT)
+T(RN, 0x1p-100, 0, INEXACT)
+T(RN, -0x1p-100, 0, INEXACT)
+// TODO: return value is unspecified
+T(RN, nan, -2147483648, INVALID)
+T(RN, inf, -2147483648, INVALID)
+T(RN, -inf, -2147483648, INVALID)
+T(RN, 0x1p+100, -2147483648, INVALID)
+T(RN, -0x1p+100, -2147483648, INVALID)
--- /dev/null
+T(RN, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, 0, 0)
+T(RN, 0x1p-1, 0, INEXACT)
+T(RN, -0x1p-1, 0, INEXACT)
+T(RN, 0x1p+0, 1, 0)
+T(RN, -0x1p+0, -1, 0)
+T(RN, 0x1.0001p+0, 1, INEXACT)
+T(RN, -0x1.0001p+0, -1, INEXACT)
+T(RN, 0x1.ffffp-1, 1, INEXACT)
+T(RN, -0x1.ffffp-1, -1, INEXACT)
+T(RN, 0x1p-100, 0, INEXACT)
+T(RN, -0x1p-100, 0, INEXACT)
+// TODO: return value is unspecified
+T(RN, nan, -2147483648, INVALID)
+T(RN, inf, -2147483648, INVALID)
+T(RN, -inf, -2147483648, INVALID)
+T(RN, 0x1p+100, -2147483648, INVALID)
+T(RN, -0x1p+100, -2147483648, INVALID)
--- /dev/null
+T(RN, 0x0p+0L, 0, 0)
+T(RN, -0x0p+0L, 0, 0)
+T(RN, 0x1p-1L, 0, INEXACT)
+T(RN, -0x1p-1L, 0, INEXACT)
+T(RN, 0x1p+0L, 1, 0)
+T(RN, -0x1p+0L, -1, 0)
+T(RN, 0x1.0001p+0L, 1, INEXACT)
+T(RN, -0x1.0001p+0L, -1, INEXACT)
+T(RN, 0x1.ffffp-1L, 1, INEXACT)
+T(RN, -0x1.ffffp-1L, -1, INEXACT)
+T(RN, 0x1p-100L, 0, INEXACT)
+T(RN, -0x1p-100L, 0, INEXACT)
+// TODO: return value is unspecified
+T(RN, nan, -2147483648, INVALID)
+T(RN, inf, -2147483648, INVALID)
+T(RN, -inf, -2147483648, INVALID)
+T(RN, 0x1p+100, -2147483648, INVALID)
+T(RN, -0x1p+100, -2147483648, INVALID)
--- /dev/null
+T(RN, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, 0, 0)
+T(RN, 0x1p-1, 1, INEXACT)
+T(RN, -0x1p-1, -1, INEXACT)
+T(RN, 0x1p+0, 1, 0)
+T(RN, -0x1p+0, -1, 0)
+T(RN, 0x1.0001p+0, 1, INEXACT)
+T(RN, -0x1.0001p+0, -1, INEXACT)
+T(RN, 0x1.ffffp-1, 1, INEXACT)
+T(RN, -0x1.ffffp-1, -1, INEXACT)
+T(RN, 0x1p-100, 0, INEXACT)
+T(RN, -0x1p-100, 0, INEXACT)
+// TODO: return value is unspecified
+T(RN, nan, -2147483648, INVALID)
+T(RN, inf, -2147483648, INVALID)
+T(RN, -inf, -2147483648, INVALID)
+T(RN, 0x1p+100, -2147483648, INVALID)
+T(RN, -0x1p+100, -2147483648, INVALID)
--- /dev/null
+T(RN, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, 0, 0)
+T(RN, 0x1p-1, 1, INEXACT)
+T(RN, -0x1p-1, -1, INEXACT)
+T(RN, 0x1p+0, 1, 0)
+T(RN, -0x1p+0, -1, 0)
+T(RN, 0x1.0001p+0, 1, INEXACT)
+T(RN, -0x1.0001p+0, -1, INEXACT)
+T(RN, 0x1.ffffp-1, 1, INEXACT)
+T(RN, -0x1.ffffp-1, -1, INEXACT)
+T(RN, 0x1p-100, 0, INEXACT)
+T(RN, -0x1p-100, 0, INEXACT)
+// TODO: return value is unspecified
+T(RN, nan, -2147483648, INVALID)
+T(RN, inf, -2147483648, INVALID)
+T(RN, -inf, -2147483648, INVALID)
+T(RN, 0x1p+100, -2147483648, INVALID)
+T(RN, -0x1p+100, -2147483648, INVALID)
--- /dev/null
+T(RN, 0x0p+0L, 0, 0)
+T(RN, -0x0p+0L, 0, 0)
+T(RN, 0x1p-1L, 1, INEXACT)
+T(RN, -0x1p-1L, -1, INEXACT)
+T(RN, 0x1p+0L, 1, 0)
+T(RN, -0x1p+0L, -1, 0)
+T(RN, 0x1.0001p+0L, 1, INEXACT)
+T(RN, -0x1.0001p+0L, -1, INEXACT)
+T(RN, 0x1.ffffp-1L, 1, INEXACT)
+T(RN, -0x1.ffffp-1L, -1, INEXACT)
+T(RN, 0x1p-100L, 0, INEXACT)
+T(RN, -0x1p-100L, 0, INEXACT)
+// TODO: return value is unspecified
+T(RN, nan, -2147483648, INVALID)
+T(RN, inf, -2147483648, INVALID)
+T(RN, -inf, -2147483648, INVALID)
+T(RN, 0x1p+100, -2147483648, INVALID)
+T(RN, -0x1p+100, -2147483648, INVALID)
--- /dev/null
+T(RN, 0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p-100, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p-100, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p-100, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0L, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p-100L, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, nan, 0x0p+0, INVALID)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p-100, -0x1p-100, 0x1p-49, INEXACT)
+T(RN, 0x1p+0, 0x1.62e42fefa39efp-1, -0x1.abc9e4p-3, INEXACT)
+T(RN, -0x1p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p-100, -0x1p-100, 0x1p-78, INEXACT)
+T(RN, 0x1p+0, 0x1.62e43p-1, 0x1.05c61p-5, INEXACT)
+T(RN, -0x1p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p-100L, -0x1p-100L, 0x1p-38, INEXACT)
+T(RN, 0x1p+0L, 0x1.62e42fefa39ef358p-1L, 0x1.b0e264p-3, INEXACT)
+T(RN, -0x1p+0L, -inf, 0x0p+0, DIVBYZERO)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p-100, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p-100, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0L, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p-100L, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, nan, 0x0p+0, INVALID)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p-100, -0x1.9p+6, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p-100, -0x1.9p+6, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0L, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p-100L, -0x1.9p+6L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p-100, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0L, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p-100L, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, nan, 0x0p+0, INVALID)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, 0, 0)
+T(RN, 0x1p-1, 0, INEXACT)
+T(RN, -0x1p-1, 0, INEXACT)
+T(RN, 0x1p+0, 1, 0)
+T(RN, -0x1p+0, -1, 0)
+T(RN, 0x1.0001p+0, 1, INEXACT)
+T(RN, -0x1.0001p+0, -1, INEXACT)
+T(RN, 0x1.ffffp-1, 1, INEXACT)
+T(RN, -0x1.ffffp-1, -1, INEXACT)
+T(RN, 0x1p-100, 0, INEXACT)
+T(RN, -0x1p-100, 0, INEXACT)
+// TODO: return value is unspecified
+T(RN, nan, -2147483648, INVALID)
+T(RN, inf, -2147483648, INVALID)
+T(RN, -inf, -2147483648, INVALID)
+T(RN, 0x1p+100, -2147483648, INVALID)
+T(RN, -0x1p+100, -2147483648, INVALID)
--- /dev/null
+T(RN, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, 0, 0)
+T(RN, 0x1p-1, 0, INEXACT)
+T(RN, -0x1p-1, 0, INEXACT)
+T(RN, 0x1p+0, 1, 0)
+T(RN, -0x1p+0, -1, 0)
+T(RN, 0x1.0001p+0, 1, INEXACT)
+T(RN, -0x1.0001p+0, -1, INEXACT)
+T(RN, 0x1.ffffp-1, 1, INEXACT)
+T(RN, -0x1.ffffp-1, -1, INEXACT)
+T(RN, 0x1p-100, 0, INEXACT)
+T(RN, -0x1p-100, 0, INEXACT)
+// TODO: return value is unspecified
+T(RN, nan, -2147483648, INVALID)
+T(RN, inf, -2147483648, INVALID)
+T(RN, -inf, -2147483648, INVALID)
+T(RN, 0x1p+100, -2147483648, INVALID)
+T(RN, -0x1p+100, -2147483648, INVALID)
--- /dev/null
+T(RN, 0x0p+0L, 0, 0)
+T(RN, -0x0p+0L, 0, 0)
+T(RN, 0x1p-1L, 0, INEXACT)
+T(RN, -0x1p-1L, 0, INEXACT)
+T(RN, 0x1p+0L, 1, 0)
+T(RN, -0x1p+0L, -1, 0)
+T(RN, 0x1.0001p+0L, 1, INEXACT)
+T(RN, -0x1.0001p+0L, -1, INEXACT)
+T(RN, 0x1.ffffp-1L, 1, INEXACT)
+T(RN, -0x1.ffffp-1L, -1, INEXACT)
+T(RN, 0x1p-100L, 0, INEXACT)
+T(RN, -0x1p-100L, 0, INEXACT)
+// TODO: return value is unspecified
+T(RN, nan, -2147483648, INVALID)
+T(RN, inf, -2147483648, INVALID)
+T(RN, -inf, -2147483648, INVALID)
+T(RN, 0x1p+100, -2147483648, INVALID)
+T(RN, -0x1p+100, -2147483648, INVALID)
--- /dev/null
+T(RN, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, 0, 0)
+T(RN, 0x1p-1, 1, INEXACT)
+T(RN, -0x1p-1, -1, INEXACT)
+T(RN, 0x1p+0, 1, 0)
+T(RN, -0x1p+0, -1, 0)
+T(RN, 0x1.0001p+0, 1, INEXACT)
+T(RN, -0x1.0001p+0, -1, INEXACT)
+T(RN, 0x1.ffffp-1, 1, INEXACT)
+T(RN, -0x1.ffffp-1, -1, INEXACT)
+T(RN, 0x1p-100, 0, INEXACT)
+T(RN, -0x1p-100, 0, INEXACT)
+// TODO: return value is unspecified
+T(RN, nan, -2147483648, INVALID)
+T(RN, inf, -2147483648, INVALID)
+T(RN, -inf, -2147483648, INVALID)
+T(RN, 0x1p+100, -2147483648, INVALID)
+T(RN, -0x1p+100, -2147483648, INVALID)
--- /dev/null
+T(RN, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, 0, 0)
+T(RN, 0x1p-1, 1, INEXACT)
+T(RN, -0x1p-1, -1, INEXACT)
+T(RN, 0x1p+0, 1, 0)
+T(RN, -0x1p+0, -1, 0)
+T(RN, 0x1.0001p+0, 1, INEXACT)
+T(RN, -0x1.0001p+0, -1, INEXACT)
+T(RN, 0x1.ffffp-1, 1, INEXACT)
+T(RN, -0x1.ffffp-1, -1, INEXACT)
+T(RN, 0x1p-100, 0, INEXACT)
+T(RN, -0x1p-100, 0, INEXACT)
+// TODO: return value is unspecified
+T(RN, nan, -2147483648, INVALID)
+T(RN, inf, -2147483648, INVALID)
+T(RN, -inf, -2147483648, INVALID)
+T(RN, 0x1p+100, -2147483648, INVALID)
+T(RN, -0x1p+100, -2147483648, INVALID)
--- /dev/null
+T(RN, 0x0p+0L, 0, 0)
+T(RN, -0x0p+0L, 0, 0)
+T(RN, 0x1p-1L, 1, INEXACT)
+T(RN, -0x1p-1L, -1, INEXACT)
+T(RN, 0x1p+0L, 1, 0)
+T(RN, -0x1p+0L, -1, 0)
+T(RN, 0x1.0001p+0L, 1, INEXACT)
+T(RN, -0x1.0001p+0L, -1, INEXACT)
+T(RN, 0x1.ffffp-1L, 1, INEXACT)
+T(RN, -0x1.ffffp-1L, -1, INEXACT)
+T(RN, 0x1p-100L, 0, INEXACT)
+T(RN, -0x1p-100L, 0, INEXACT)
+// TODO: return value is unspecified
+T(RN, nan, -2147483648, INVALID)
+T(RN, inf, -2147483648, INVALID)
+T(RN, -inf, -2147483648, INVALID)
+T(RN, 0x1p+100, -2147483648, INVALID)
+T(RN, -0x1p+100, -2147483648, INVALID)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p-1, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x1p-1, 0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, 0x0p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1.8p+0, 0x1p-1, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1.8p+0, -0x1p-1, 0x0p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+1, 0x0p+0, 0x0p+0, 0x1p+1, 0x0p+0, 0)
+T(RN, -0x1p+1, -0x0p+0, 0x0p+0, -0x1p+1, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, 0x0p+0, inf, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0, 0x0p+0, -inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p-1, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x1p-1, 0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, 0x0p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1.8p+0, 0x1p-1, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1.8p+0, -0x1p-1, 0x0p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+1, 0x0p+0, 0x0p+0, 0x1p+1, 0x0p+0, 0)
+T(RN, -0x1p+1, -0x0p+0, 0x0p+0, -0x1p+1, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, 0x0p+0, inf, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0, 0x0p+0, -inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, 0x1p-1L, 0x0p+0, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p-1L, -0x1p-1L, 0x0p+0, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x0p+0L, 0x0p+0, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x0p+0L, 0x0p+0, -0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1.8p+0L, 0x1p-1L, 0x0p+0, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1.8p+0L, -0x1p-1L, 0x0p+0, -0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+1L, 0x0p+0L, 0x0p+0, 0x1p+1L, 0x0p+0, 0)
+T(RN, -0x1p+1L, -0x0p+0L, 0x0p+0, -0x1p+1L, 0x0p+0, 0)
+T(RN, inf, 0x0p+0L, 0x0p+0, inf, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0L, 0x0p+0, -inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.0001p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1.0001p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1.ffffp-1, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1.ffffp-1, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p-100, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p-100, -0x0p+0, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.0001p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1.0001p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1.ffffp-1, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1.ffffp-1, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p-100, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p-100, -0x0p+0, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p-1L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1.0001p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1.0001p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1.ffffp-1L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1.ffffp-1L, -0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p-100L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p-100L, -0x0p+0L, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x1.fffffffffffffp+1023, inf, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, 0x1.fffffffffffffp+1023, 0x0p+0, 0x1.ffffffffffffep+1023, 0x0p+0, 0)
+T(RN, 0x1p-1074, -inf, 0x0p+0, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p-1074, inf, 0x1p-1073, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.ffffffffffffcp-1023, 0x1p+0, 0x1.ffffffffffffep-1023, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.ffffffffffffep-1023, 0x1p+0, 0x1p-1022, 0x0p+0, 0)
+T(RN, 0x1.0000000000001p-1022, 0x0p+0, 0x1p-1022, 0x0p+0, 0)
+T(RN, 0x1p-1022, 0x0p+0, 0x1.ffffffffffffep-1023, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p+0, 0x1.0000000000001p+0, 0x1.0000000000001p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.fffffffffffffp-1, 0x1.fffffffffffffp-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x1.fffffffffffffp-1, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, -0x1.fffffffffffffp-1, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x1p-1074, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x0p+0, -inf, -0x1p-1074, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, 0x1p-1074, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, -0x0p+0, -inf, -0x1p-1074, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, 0x1.fffffffffffffp+1023, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, inf,-0x1.fffffffffffffp+1023, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x1.fffffep+127, inf, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, 0x1.fffffep+127, 0x0p+0, 0x1.fffffcp+127, 0x0p+0, 0)
+T(RN, 0x1p-149, -inf, 0x0p+0, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p-149, inf, 0x1p-148, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.fffff8p-127, 0x1p+0, 0x1.fffffcp-127, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.fffffcp-127, 0x1p+0, 0x1p-126, 0x0p+0, 0)
+T(RN, 0x1.000002p-126, 0x0p+0, 0x1p-126, 0x0p+0, 0)
+T(RN, 0x1p-126, 0x0p+0, 0x1.fffffcp-127, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p+0, 0x1.0002p+0, 0x1.000002p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.fffep-1, 0x1.fffffep-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x1.fffffep-1, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, -0x1.fffffep-1, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x1p-149, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x0p+0, -inf, -0x1p-149, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, 0x1p-149, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, -0x0p+0, -inf, -0x1p-149, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, -0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, 0x1.fffffep+127, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, inf,-0x1.fffffep+127, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x1.fffffffffffffffep+16383L, inf, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, 0x1.fffffffffffffffep+16383L, 0x0p+0L, 0x1.fffffffffffffffcp+16383L, 0x0p+0, 0)
+T(RN, 0x1p-16445L, -inf, 0x0p+0L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p-16445L, inf, 0x1p-16444L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.fffffffffffffff8p-16383L, 0x1p+0L, 0x1.fffffffffffffffcp-16383L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.fffffffffffffffcp-16383L, 0x1p+0L, 0x1p-16382L, 0x0p+0, 0)
+T(RN, 0x1.0000000000000002p-16382L, 0x0p+0L, 0x1p-16382L, 0x0p+0, 0)
+T(RN, 0x1p-16382L, 0x0p+0L, 0x1.fffffffffffffffcp-16383L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p+0L, 0x1.0000000000000002p+0L, 0x1.0000000000000002p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1.fffffffffffffffep-1L, 0x1.fffffffffffffffep-1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -0x1p+0L, 0x1.fffffffffffffffep-1L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x1p+0L, -0x1.fffffffffffffffep-1L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, nan, nan, 0x0p+0, 0)
+T(RN, nan, 0x1p+0L, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0L, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0L, inf, 0x1p-16445L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x0p+0L, -inf, -0x1p-16445L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0L, inf, 0x1p-16445L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, -0x0p+0L, -inf, -0x1p-16445L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, -0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, 0x1.fffffffffffffffep+16383L, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, inf, -0x1.fffffffffffffffep+16383L, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x1.fffffffffffffp+1023, inf, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, 0x1.fffffffffffffp+1023, 0x0p+0L, 0x1.ffffffffffffep+1023, 0x0p+0, 0)
+T(RN, 0x1p-1074, -inf, 0x0p+0, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p-1074, inf, 0x1p-1073, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p-1074, 0x1.ffffffffffffffep-1075L, 0x0p+0, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p-1074, 0x1.000000000000002p-1074L, 0x1p-1073, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.ffffffffffffcp-1023, 0x1p+0L, 0x1.ffffffffffffep-1023, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.ffffffffffffep-1023, 0x1p+0L, 0x1p-1022, 0x0p+0, 0)
+T(RN, 0x1.0000000000001p-1022, 0x0p+0L, 0x1p-1022, 0x0p+0, 0)
+T(RN, 0x1p-1022, 0x0p+0L, 0x1.ffffffffffffep-1023, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p+0, 0x1.0000000000000002p+0L, 0x1.0000000000001p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.fffffffffffffffep-1L, 0x1.fffffffffffffp-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0L, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0L, 0x1.fffffffffffffp-1, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0L, -0x1.fffffffffffffp-1, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0L, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, nan, 0x1p+0L, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x1p-1074, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x0p+0, -inf, -0x1p-1074, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x0p+0, 0x0p+0L, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0L, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, 0x1p-1074, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, -0x0p+0, -inf, -0x1p-1074, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, -0x0p+0, 0x0p+0L, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0L, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, 0x1.fffffffffffffp+1023, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, inf,-0x1.fffffffffffffp+1023, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x1.fffffep+127, inf, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, 0x1.fffffep+127, 0x0p+0L, 0x1.fffffcp+127, 0x0p+0, 0)
+T(RN, 0x1p-149, -inf, 0x0p+0, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p-149, inf, 0x1p-148, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p-149, 0x1.ffffffffffffffep-150L, 0x0p+0, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p-149, 0x1.000000000000002p-149L, 0x1p-148, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.fffff8p-127, 0x1p+0L, 0x1.fffffcp-127, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.fffffcp-127, 0x1p+0L, 0x1p-126, 0x0p+0, 0)
+T(RN, 0x1.000002p-126, 0x0p+0L, 0x1p-126, 0x0p+0, 0)
+T(RN, 0x1p-126, 0x0p+0L, 0x1.fffffcp-127, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p+0, 0x1.0000000000000002p+0L, 0x1.000002p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.fffffffffffffffep-1L, 0x1.fffffep-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0L, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0L, 0x1.fffffep-1, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0L, -0x1.fffffep-1, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0L, -0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, nan, 0x1p+0L, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x1p-149, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x0p+0, -inf, -0x1p-149, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x0p+0, 0x0p+0L, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0L, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, 0x1p-149, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, -0x0p+0, -inf, -0x1p-149, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, -0x0p+0, 0x0p+0L, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0L, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, 0x1.fffffep+127, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, inf,-0x1.fffffep+127, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x1.fffffffffffffffep+16383L, inf, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, 0x1.fffffffffffffffep+16383L, 0x0p+0L, 0x1.fffffffffffffffcp+16383L, 0x0p+0, 0)
+T(RN, 0x1p-16445L, -inf, 0x0p+0L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p-16445L, inf, 0x1p-16444L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.fffffffffffffff8p-16383L, 0x1p+0L, 0x1.fffffffffffffffcp-16383L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.fffffffffffffffcp-16383L, 0x1p+0L, 0x1p-16382L, 0x0p+0, 0)
+T(RN, 0x1.0000000000000002p-16382L, 0x0p+0L, 0x1p-16382L, 0x0p+0, 0)
+T(RN, 0x1p-16382L, 0x0p+0L, 0x1.fffffffffffffffcp-16383L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1p+0L, 0x1.0000000000000002p+0L, 0x1.0000000000000002p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1.fffffffffffffffep-1L, 0x1.fffffffffffffffep-1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -0x1p+0L, 0x1.fffffffffffffffep-1L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x1p+0L, -0x1.fffffffffffffffep-1L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, nan, nan, 0x0p+0, 0)
+T(RN, nan, 0x1p+0L, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0L, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0L, inf, 0x1p-16445L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x0p+0L, -inf, -0x1p-16445L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0L, inf, 0x1p-16445L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, -0x0p+0L, -inf, -0x1p-16445L, 0x0p+0, INEXACT|UNDERFLOW)
+T(RN, -0x0p+0L, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, 0x1.fffffffffffffffep+16383L, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, inf, -0x1.fffffffffffffffep+16383L, 0x0p+0, 0)
+T(RN, -inf, -inf, -inf, 0x0p+0, 0)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x1.8p+1, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x1p+1, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p-1, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0, -0x1p+0, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0, -0x1p+1, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0, -0x1.8p+1, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0, -0x1p+2, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0, -inf, inf, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1.8p+1, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+1, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x1p-1, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -0x1p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -0x1p+1, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -0x1.8p+1, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -0x1p+2, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, inf, 0x0p+0, 0)
+T(RN, nan, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, nan, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+1, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+1, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1.8p+1, -0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p-1, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, nan, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.8p+1, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p-1, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p-1, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1.8p+1, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1p-1, nan, 0x0p+0, INVALID)
+T(RN, -0x1p-1, 0x1.8p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x1p-1, 0x1p+1, 0x1p-2, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1.8p+1, -0x1p-3, 0x0p+0, 0)
+T(RN, -0x1p-1, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, -inf, inf, 0x0p+0, 0)
+T(RN, -0x1p-1, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p-1, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, -inf, inf, 0x0p+0, 0)
+T(RN, 0x1p-1, nan, nan, 0x0p+0, 0)
+T(RN, 0x1.8p+0, inf, inf, 0x0p+0, 0)
+T(RN, 0x1.8p+0, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.8p+0, nan, nan, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1.8p+1, inf, 0x0p+0, 0)
+T(RN, inf, 0x1p+1, inf, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, inf, 0x1p-1, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0x1.8p+1, -inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0, -inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p-1, inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -inf, -0x1p+1, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, nan, -0x1p+0, nan, 0x0p+0, 0)
+T(RN, -0x1p+1, 0x1p+0, -0x1p+1, 0x0p+0, 0)
+T(RN, -0x1p+1, -0x1p+0, -0x1p-1, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x1.8p+1, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x1p+1, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p-1, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0, -0x1p+0, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0, -0x1p+1, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0, -0x1.8p+1, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0, -0x1p+2, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0, -inf, inf, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1.8p+1, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+1, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x1p-1, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -0x1p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -0x1p+1, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -0x1.8p+1, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -0x1p+2, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, inf, 0x0p+0, 0)
+T(RN, nan, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, nan, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+1, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+1, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1.8p+1, -0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p-1, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, nan, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1.8p+1, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p-1, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p-1, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1.8p+1, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1p-1, nan, 0x0p+0, INVALID)
+T(RN, -0x1p-1, 0x1.8p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x1p-1, 0x1p+1, 0x1p-2, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1.8p+1, -0x1p-3, 0x0p+0, 0)
+T(RN, -0x1p-1, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p-1, -inf, inf, 0x0p+0, 0)
+T(RN, -0x1p-1, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p-1, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, -inf, inf, 0x0p+0, 0)
+T(RN, 0x1p-1, nan, nan, 0x0p+0, 0)
+T(RN, 0x1.8p+0, inf, inf, 0x0p+0, 0)
+T(RN, 0x1.8p+0, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.8p+0, nan, nan, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1.8p+1, inf, 0x0p+0, 0)
+T(RN, inf, 0x1p+1, inf, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, inf, 0x0p+0, 0)
+T(RN, inf, 0x1p-1, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0x1.8p+1, -inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0, -inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p-1, inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p-1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -inf, -0x1p+1, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, nan, -0x1p+0, nan, 0x0p+0, 0)
+T(RN, -0x1p+1, 0x1p+0, -0x1p+1, 0x0p+0, 0)
+T(RN, -0x1p+1, -0x1p+0, -0x1p-1, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0L, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x1.8p+1L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x1p+1L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x1p-1L, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x1p-1L, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0L, -0x1p+0L, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0L, -0x1p+1L, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0L, -0x1.8p+1L, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0L, -0x1p+2L, inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x0p+0L, -inf, inf, 0x0p+0, 0)
+T(RN, -0x0p+0L, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0L, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1.8p+1L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p+1L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p-1L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x1p-1L, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0L, -0x1p+0L, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0L, -0x1p+1L, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0L, -0x1.8p+1L, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0L, -0x1p+2L, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0L, -inf, inf, 0x0p+0, 0)
+T(RN, nan, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, inf, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p-1L, 0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, nan, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, inf, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -inf, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p-1L, -0x0p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0L, inf, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -inf, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x1p+1L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x1p+0L, -0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x1p+1L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x1.8p+1L, -0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x1p-1L, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0L, nan, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, inf, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -inf, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1.8p+1L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p-1L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -0x1p-1L, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -0x1.8p+1L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p-1L, 0x1p-1L, nan, 0x0p+0, INVALID)
+T(RN, -0x1p-1L, 0x1.8p+0L, nan, 0x0p+0, INVALID)
+T(RN, -0x1p-1L, 0x1p+1L, 0x1p-2L, 0x0p+0, 0)
+T(RN, -0x1p-1L, 0x1.8p+1L, -0x1p-3L, 0x0p+0, 0)
+T(RN, -0x1p-1L, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p-1L, -inf, inf, 0x0p+0, 0)
+T(RN, -0x1p-1L, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p-1L, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, -inf, inf, 0x0p+0, 0)
+T(RN, 0x1p-1L, nan, nan, 0x0p+0, 0)
+T(RN, 0x1.8p+0L, inf, inf, 0x0p+0, 0)
+T(RN, 0x1.8p+0L, -inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1.8p+0L, nan, nan, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, inf, 0x1.8p+1L, inf, 0x0p+0, 0)
+T(RN, inf, 0x1p+1L, inf, 0x0p+0, 0)
+T(RN, inf, 0x1p+0L, inf, 0x0p+0, 0)
+T(RN, inf, 0x1p-1L, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p-1L, 0x0p+0L, 0x0p+0, 0)
+T(RN, inf, -0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, inf, -0x1p+1L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, -inf, 0x1.8p+1L, -inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1L, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+0L, -inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p-1L, inf, 0x0p+0, 0)
+T(RN, -inf, -0x1p-1L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, -inf, -0x1p+1L, 0x0p+0L, 0x0p+0, 0)
+T(RN, nan, 0x1p+0L, nan, 0x0p+0, 0)
+T(RN, nan, -0x1p+0L, nan, 0x0p+0, 0)
+T(RN, -0x1p+1L, 0x1p+0L, -0x1p+1L, 0x0p+0, 0)
+T(RN, -0x1p+1L, -0x1p+0L, -0x1p-1L, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.8p+0, 0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, -0x1.8p+0, 0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+1, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+1, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.8p+0, -0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, -0x1.8p+0, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+1, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+1, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, -0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x0p+0, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x0p+0, inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, 0x0p+0, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, -0x0p+0, nan, 0x0p+0, 0)
+T(RN, inf, 0x1p+1, nan, 0x0p+0, INVALID)
+T(RN, inf, -0x1p-1, nan, 0x0p+0, INVALID)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x1p-1, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, -inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1.cp+0, 0x1p-1, -0x1p-2, 0x0p+0, 0)
+T(RN, -0x1.cp+0, 0x1p-1, 0x1p-2, 0x0p+0, 0)
+T(RN, 0x1.cp+0, -0x1p-1, -0x1p-2, 0x0p+0, 0)
+T(RN, -0x1.cp+0, -0x1p-1, 0x1p-2, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p-1, 0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.8p+0, 0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, -0x1.8p+0, 0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+1, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+1, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p-1, -0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1.8p+0, -0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, -0x1.8p+0, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+1, -0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+1, -0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, -0x1p+0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x0p+0, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x0p+0, inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -inf, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, 0x0p+0, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, -0x0p+0, nan, 0x0p+0, 0)
+T(RN, inf, 0x1p+1, nan, 0x0p+0, INVALID)
+T(RN, inf, -0x1p-1, nan, 0x0p+0, INVALID)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x1p-1, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0, -inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -0x1p+0, 0x0p+0, 0)
+T(RN, inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1.cp+0, 0x1p-1, -0x1p-2, 0x0p+0, 0)
+T(RN, -0x1.cp+0, 0x1p-1, 0x1p-2, 0x0p+0, 0)
+T(RN, 0x1.cp+0, -0x1p-1, -0x1p-2, 0x0p+0, 0)
+T(RN, -0x1.cp+0, -0x1p-1, 0x1p-2, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, 0x1p+0L, 0x1p-1L, 0x0p+0, 0)
+T(RN, -0x1p-1L, 0x1p+0L, -0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, 0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1.8p+0L, 0x1p+0L, -0x1p-1L, 0x0p+0, 0)
+T(RN, -0x1.8p+0L, 0x1p+0L, 0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+1L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+1L, 0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, 0x1p+0L, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x1p+0L, nan, 0x0p+0, INVALID)
+T(RN, nan, 0x1p+0L, nan, 0x0p+0, 0)
+T(RN, 0x0p+0L, -0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, -0x1p+0L, 0x1p-1L, 0x0p+0, 0)
+T(RN, -0x1p-1L, -0x1p+0L, -0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1.8p+0L, -0x1p+0L, -0x1p-1L, 0x0p+0, 0)
+T(RN, -0x1.8p+0L, -0x1p+0L, 0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+1L, -0x1p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x1p+1L, -0x1p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, -0x1p+0L, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x1p+0L, nan, 0x0p+0, INVALID)
+T(RN, nan, -0x1p+0L, nan, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0L, -0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0L, inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -inf, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, nan, nan, 0x0p+0, 0)
+T(RN, -0x0p+0L, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, -0x0p+0L, -0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, -0x0p+0L, inf, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -inf, -0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, -0x1p+0L, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, inf, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, -inf, 0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, nan, 0x0p+0L, nan, 0x0p+0, 0)
+T(RN, -0x1p+0L, -0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, inf, -0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x0p+0L, nan, 0x0p+0, INVALID)
+T(RN, nan, -0x0p+0L, nan, 0x0p+0, 0)
+T(RN, inf, 0x1p+1L, nan, 0x0p+0, INVALID)
+T(RN, inf, -0x1p-1L, nan, 0x0p+0, INVALID)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, -inf, 0x1p+1L, nan, 0x0p+0, INVALID)
+T(RN, -inf, -0x1p-1L, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0L, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0L, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0L, inf, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, inf, -0x1p+0L, 0x0p+0, 0)
+T(RN, inf, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+0L, -inf, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, -inf, -0x1p+0L, 0x0p+0, 0)
+T(RN, inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x1.cp+0L, 0x1p-1L, -0x1p-2L, 0x0p+0, 0)
+T(RN, -0x1.cp+0L, 0x1p-1L, 0x1p-2L, 0x0p+0, 0)
+T(RN, 0x1.cp+0L, -0x1p-1L, -0x1p-2L, 0x0p+0, 0)
+T(RN, -0x1.cp+0L, -0x1p-1L, 0x1p-2L, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x1p-1, 0x0p+0, 0, 0)
+T(RN, -0x1p-1, 0x1p+0, -0x1p-1, 0x0p+0, 0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0x0p+0, 1, 0)
+T(RN, -0x1p+0, 0x1p+0, -0x0p+0, 0x0p+0, -1, 0)
+T(RN, 0x1.8p+0, 0x1p+0, -0x1p-1, 0x0p+0, 2, 0)
+T(RN, -0x1.8p+0, 0x1p+0, 0x1p-1, 0x0p+0, -2, 0)
+T(RN, 0x1p+1, 0x1p+0, 0x0p+0, 0x0p+0, 2, 0)
+T(RN, -0x1p+1, 0x1p+0, -0x0p+0, 0x0p+0, -2, 0)
+T(RN, inf, 0x1p+0, nan, 0x0p+0, -2, INVALID)
+T(RN, -inf, 0x1p+0, nan, 0x0p+0, -2, INVALID)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, -2, 0)
+T(RN, 0x0p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, -0x1p+0, -0x0p+0, 0x0p+0, 0, 0)
+T(RN, 0x1p-1, -0x1p+0, 0x1p-1, 0x0p+0, 0, 0)
+T(RN, -0x1p-1, -0x1p+0, -0x1p-1, 0x0p+0, 0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x0p+0, 0x0p+0, -1, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x0p+0, 0x0p+0, 1, 0)
+T(RN, 0x1.8p+0, -0x1p+0, -0x1p-1, 0x0p+0, -2, 0)
+T(RN, -0x1.8p+0, -0x1p+0, 0x1p-1, 0x0p+0, 2, 0)
+T(RN, 0x1p+1, -0x1p+0, 0x0p+0, 0x0p+0, -2, 0)
+T(RN, -0x1p+1, -0x1p+0, -0x0p+0, 0x0p+0, 2, 0)
+T(RN, inf, -0x1p+0, nan, 0x0p+0, 2, INVALID)
+T(RN, -inf, -0x1p+0, nan, 0x0p+0, 2, INVALID)
+T(RN, nan, -0x1p+0, nan, 0x0p+0, 2, 0)
+T(RN, 0x0p+0, 0x0p+0, nan, 0x0p+0, 2, INVALID)
+T(RN, 0x0p+0, -0x0p+0, nan, 0x0p+0, 2, INVALID)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0, 0)
+T(RN, 0x0p+0, -inf, 0x0p+0, 0x0p+0, 0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, 0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, -0x0p+0, -0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, -0x0p+0, inf, -0x0p+0, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, -inf, -0x0p+0, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0, 0)
+T(RN, 0x1p+0, 0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, -0x1p+0, 0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, inf, 0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, 0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, nan, 0x0p+0, nan, 0x0p+0, 0, 0)
+T(RN, -0x1p+0, -0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, inf, -0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, -0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, nan, -0x0p+0, nan, 0x0p+0, 0, 0)
+T(RN, inf, 0x1p+1, nan, 0x0p+0, 0, INVALID)
+T(RN, inf, -0x1p-1, nan, 0x0p+0, 0, INVALID)
+T(RN, inf, nan, nan, 0x0p+0, 0, 0)
+T(RN, -inf, 0x1p+1, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, -0x1p-1, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, nan, nan, 0x0p+0, 0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0, 0)
+T(RN, -0x1p+0, nan, nan, 0x0p+0, 0, 0)
+T(RN, 0x1p+0, inf, 0x1p+0, 0x0p+0, 0, 0)
+T(RN, -0x1p+0, inf, -0x1p+0, 0x0p+0, 0, 0)
+T(RN, inf, inf, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, inf, nan, 0x0p+0, 0, INVALID)
+T(RN, 0x1p+0, -inf, 0x1p+0, 0x0p+0, 0, 0)
+T(RN, -0x1p+0, -inf, -0x1p+0, 0x0p+0, 0, 0)
+T(RN, inf, -inf, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, -inf, nan, 0x0p+0, 0, INVALID)
+T(RN, 0x1.cp+0, 0x1p-1, -0x1p-2, 0x0p+0, 4, 0)
+T(RN, -0x1.cp+0, 0x1p-1, 0x1p-2, 0x0p+0, -4, 0)
+T(RN, 0x1.cp+0, -0x1p-1, -0x1p-2, 0x0p+0, -4, 0)
+T(RN, -0x1.cp+0, -0x1p-1, 0x1p-2, 0x0p+0, 4, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x1p-1, 0x0p+0, 0, 0)
+T(RN, -0x1p-1, 0x1p+0, -0x1p-1, 0x0p+0, 0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0x0p+0, 1, 0)
+T(RN, -0x1p+0, 0x1p+0, -0x0p+0, 0x0p+0, -1, 0)
+T(RN, 0x1.8p+0, 0x1p+0, -0x1p-1, 0x0p+0, 2, 0)
+T(RN, -0x1.8p+0, 0x1p+0, 0x1p-1, 0x0p+0, -2, 0)
+T(RN, 0x1p+1, 0x1p+0, 0x0p+0, 0x0p+0, 2, 0)
+T(RN, -0x1p+1, 0x1p+0, -0x0p+0, 0x0p+0, -2, 0)
+T(RN, inf, 0x1p+0, nan, 0x0p+0, -2, INVALID)
+T(RN, -inf, 0x1p+0, nan, 0x0p+0, -2, INVALID)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, -2, 0)
+T(RN, 0x0p+0, -0x1p+0, 0x0p+0, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, -0x1p+0, -0x0p+0, 0x0p+0, 0, 0)
+T(RN, 0x1p-1, -0x1p+0, 0x1p-1, 0x0p+0, 0, 0)
+T(RN, -0x1p-1, -0x1p+0, -0x1p-1, 0x0p+0, 0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x0p+0, 0x0p+0, -1, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x0p+0, 0x0p+0, 1, 0)
+T(RN, 0x1.8p+0, -0x1p+0, -0x1p-1, 0x0p+0, -2, 0)
+T(RN, -0x1.8p+0, -0x1p+0, 0x1p-1, 0x0p+0, 2, 0)
+T(RN, 0x1p+1, -0x1p+0, 0x0p+0, 0x0p+0, -2, 0)
+T(RN, -0x1p+1, -0x1p+0, -0x0p+0, 0x0p+0, 2, 0)
+T(RN, inf, -0x1p+0, nan, 0x0p+0, 2, INVALID)
+T(RN, -inf, -0x1p+0, nan, 0x0p+0, 2, INVALID)
+T(RN, nan, -0x1p+0, nan, 0x0p+0, 2, 0)
+T(RN, 0x0p+0, 0x0p+0, nan, 0x0p+0, 2, INVALID)
+T(RN, 0x0p+0, -0x0p+0, nan, 0x0p+0, 2, INVALID)
+T(RN, 0x0p+0, inf, 0x0p+0, 0x0p+0, 0, 0)
+T(RN, 0x0p+0, -inf, 0x0p+0, 0x0p+0, 0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, 0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, -0x0p+0, -0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, -0x0p+0, inf, -0x0p+0, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, -inf, -0x0p+0, 0x0p+0, 0, 0)
+T(RN, -0x0p+0, nan, nan, 0x0p+0, 0, 0)
+T(RN, 0x1p+0, 0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, -0x1p+0, 0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, inf, 0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, 0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, nan, 0x0p+0, nan, 0x0p+0, 0, 0)
+T(RN, -0x1p+0, -0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, inf, -0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, -0x0p+0, nan, 0x0p+0, 0, INVALID)
+T(RN, nan, -0x0p+0, nan, 0x0p+0, 0, 0)
+T(RN, inf, 0x1p+1, nan, 0x0p+0, 0, INVALID)
+T(RN, inf, -0x1p-1, nan, 0x0p+0, 0, INVALID)
+T(RN, inf, nan, nan, 0x0p+0, 0, 0)
+T(RN, -inf, 0x1p+1, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, -0x1p-1, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, nan, nan, 0x0p+0, 0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0, 0)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0, 0)
+T(RN, -0x1p+0, nan, nan, 0x0p+0, 0, 0)
+T(RN, 0x1p+0, inf, 0x1p+0, 0x0p+0, 0, 0)
+T(RN, -0x1p+0, inf, -0x1p+0, 0x0p+0, 0, 0)
+T(RN, inf, inf, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, inf, nan, 0x0p+0, 0, INVALID)
+T(RN, 0x1p+0, -inf, 0x1p+0, 0x0p+0, 0, 0)
+T(RN, -0x1p+0, -inf, -0x1p+0, 0x0p+0, 0, 0)
+T(RN, inf, -inf, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, -inf, nan, 0x0p+0, 0, INVALID)
+T(RN, 0x1.cp+0, 0x1p-1, -0x1p-2, 0x0p+0, 4, 0)
+T(RN, -0x1.cp+0, 0x1p-1, 0x1p-2, 0x0p+0, -4, 0)
+T(RN, 0x1.cp+0, -0x1p-1, -0x1p-2, 0x0p+0, -4, 0)
+T(RN, -0x1.cp+0, -0x1p-1, 0x1p-2, 0x0p+0, 4, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x1p+0L, 0x0p+0L, 0x0p+0, 0, 0)
+T(RN, -0x0p+0L, 0x1p+0L, -0x0p+0L, 0x0p+0, 0, 0)
+T(RN, 0x1p-1L, 0x1p+0L, 0x1p-1L, 0x0p+0, 0, 0)
+T(RN, -0x1p-1L, 0x1p+0L, -0x1p-1L, 0x0p+0, 0, 0)
+T(RN, 0x1p+0L, 0x1p+0L, 0x0p+0L, 0x0p+0, 1, 0)
+T(RN, -0x1p+0L, 0x1p+0L, -0x0p+0L, 0x0p+0, -1, 0)
+T(RN, 0x1.8p+0L, 0x1p+0L, -0x1p-1L, 0x0p+0, 2, 0)
+T(RN, -0x1.8p+0L, 0x1p+0L, 0x1p-1L, 0x0p+0, -2, 0)
+T(RN, 0x1p+1L, 0x1p+0L, 0x0p+0L, 0x0p+0, 2, 0)
+T(RN, -0x1p+1L, 0x1p+0L, -0x0p+0L, 0x0p+0, -2, 0)
+T(RN, inf, 0x1p+0L, nan, 0x0p+0, -2, INVALID)
+T(RN, -inf, 0x1p+0L, nan, 0x0p+0, -2, INVALID)
+T(RN, nan, 0x1p+0L, nan, 0x0p+0, -2, 0)
+T(RN, 0x0p+0L, -0x1p+0L, 0x0p+0L, 0x0p+0, 0, 0)
+T(RN, -0x0p+0L, -0x1p+0L, -0x0p+0L, 0x0p+0, 0, 0)
+T(RN, 0x1p-1L, -0x1p+0L, 0x1p-1L, 0x0p+0, 0, 0)
+T(RN, -0x1p-1L, -0x1p+0L, -0x1p-1L, 0x0p+0, 0, 0)
+T(RN, 0x1p+0L, -0x1p+0L, 0x0p+0L, 0x0p+0, -1, 0)
+T(RN, -0x1p+0L, -0x1p+0L, -0x0p+0L, 0x0p+0, 1, 0)
+T(RN, 0x1.8p+0L, -0x1p+0L, -0x1p-1L, 0x0p+0, -2, 0)
+T(RN, -0x1.8p+0L, -0x1p+0L, 0x1p-1L, 0x0p+0, 2, 0)
+T(RN, 0x1p+1L, -0x1p+0L, 0x0p+0L, 0x0p+0, -2, 0)
+T(RN, -0x1p+1L, -0x1p+0L, -0x0p+0L, 0x0p+0, 2, 0)
+T(RN, inf, -0x1p+0L, nan, 0x0p+0, 2, INVALID)
+T(RN, -inf, -0x1p+0L, nan, 0x0p+0, 2, INVALID)
+T(RN, nan, -0x1p+0L, nan, 0x0p+0, 2, 0)
+T(RN, 0x0p+0L, 0x0p+0L, nan, 0x0p+0, 2, INVALID)
+T(RN, 0x0p+0L, -0x0p+0L, nan, 0x0p+0, 2, INVALID)
+T(RN, 0x0p+0L, inf, 0x0p+0L, 0x0p+0, 0, 0)
+T(RN, 0x0p+0L, -inf, 0x0p+0L, 0x0p+0, 0, 0)
+T(RN, 0x0p+0L, nan, nan, 0x0p+0, 0, 0)
+T(RN, -0x0p+0L, 0x0p+0L, nan, 0x0p+0, 0, INVALID)
+T(RN, -0x0p+0L, -0x0p+0L, nan, 0x0p+0, 0, INVALID)
+T(RN, -0x0p+0L, inf, -0x0p+0L, 0x0p+0, 0, 0)
+T(RN, -0x0p+0L, -inf, -0x0p+0L, 0x0p+0, 0, 0)
+T(RN, -0x0p+0L, nan, nan, 0x0p+0, 0, 0)
+T(RN, 0x1p+0L, 0x0p+0L, nan, 0x0p+0, 0, INVALID)
+T(RN, -0x1p+0L, 0x0p+0L, nan, 0x0p+0, 0, INVALID)
+T(RN, inf, 0x0p+0L, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, 0x0p+0L, nan, 0x0p+0, 0, INVALID)
+T(RN, nan, 0x0p+0L, nan, 0x0p+0, 0, 0)
+T(RN, -0x1p+0L, -0x0p+0L, nan, 0x0p+0, 0, INVALID)
+T(RN, inf, -0x0p+0L, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, -0x0p+0L, nan, 0x0p+0, 0, INVALID)
+T(RN, nan, -0x0p+0L, nan, 0x0p+0, 0, 0)
+T(RN, inf, 0x1p+1L, nan, 0x0p+0, 0, INVALID)
+T(RN, inf, -0x1p-1L, nan, 0x0p+0, 0, INVALID)
+T(RN, inf, nan, nan, 0x0p+0, 0, 0)
+T(RN, -inf, 0x1p+1L, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, -0x1p-1L, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, nan, nan, 0x0p+0, 0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0, 0)
+T(RN, 0x1p+0L, nan, nan, 0x0p+0, 0, 0)
+T(RN, -0x1p+0L, nan, nan, 0x0p+0, 0, 0)
+T(RN, 0x1p+0L, inf, 0x1p+0L, 0x0p+0, 0, 0)
+T(RN, -0x1p+0L, inf, -0x1p+0L, 0x0p+0, 0, 0)
+T(RN, inf, inf, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, inf, nan, 0x0p+0, 0, INVALID)
+T(RN, 0x1p+0L, -inf, 0x1p+0L, 0x0p+0, 0, 0)
+T(RN, -0x1p+0L, -inf, -0x1p+0L, 0x0p+0, 0, 0)
+T(RN, inf, -inf, nan, 0x0p+0, 0, INVALID)
+T(RN, -inf, -inf, nan, 0x0p+0, 0, INVALID)
+T(RN, 0x1.cp+0L, 0x1p-1L, -0x1p-2L, 0x0p+0, 4, 0)
+T(RN, -0x1.cp+0L, 0x1p-1L, 0x1p-2L, 0x0p+0, -4, 0)
+T(RN, 0x1.cp+0L, -0x1p-1L, -0x1p-2L, 0x0p+0, -4, 0)
+T(RN, -0x1.cp+0L, -0x1p-1L, 0x1p-2L, 0x0p+0, 4, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-1, -0x0p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1p-100, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-100, -0x0p+0, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-1, -0x0p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1p-100, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-100, -0x0p+0, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, 0x0p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1p-1L, -0x0p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0L, 0x1p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0L, -0x1p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1L, 0x1p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1L, -0x1p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1p-100L, 0x0p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1p-100L, -0x0p+0L, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-1, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1p-100, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-100, -0x0p+0, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-1, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1p-100, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-100, -0x0p+0, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, 0x1p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1p-1L, -0x1p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0L, 0x1p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0L, -0x1p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1L, 0x1p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1L, -0x1p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1p-100L, 0x0p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1p-100L, -0x0p+0L, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x1p+100, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p+100, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+100, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0x0p+0, nan, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x1p+1, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+100, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, -0x1p+1, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, -inf, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, nan, inf, nan, 0x0p+0, 0)
+T(RN, nan, -inf, nan, 0x0p+0, 0)
+T(RN, inf, 0x1p+100, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p+100, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+100, -inf, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, nan, 0x0p+0, INVALID)
--- /dev/null
+T(RN, 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x1p+100, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -0x1p+100, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 0x1p+100, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, inf, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0x0p+0, nan, 0x0p+0, 0)
+T(RN, inf, 0x0p+0, inf, 0x0p+0, 0)
+T(RN, -inf, 0x0p+0, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x1p+1, 0x0p+0, 0)
+T(RN, 0x1p+0, -0x1p+0, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+100, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, 0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, 0x1p+0, inf, inf, 0x0p+0, 0)
+T(RN, 0x1p+0, -inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x0p+0, -0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, 0x1p+0, -0x1p+1, 0x0p+0, 0)
+T(RN, -0x1p+0, -0x1p+0, -0x1p-1, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, nan, 0x0p+0, 0)
+T(RN, -0x1p+0, inf, -inf, 0x0p+0, 0)
+T(RN, -0x1p+0, -inf, -0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0x1p+0, nan, 0x0p+0, 0)
+T(RN, nan, nan, nan, 0x0p+0, 0)
+T(RN, nan, inf, nan, 0x0p+0, 0)
+T(RN, nan, -inf, nan, 0x0p+0, 0)
+T(RN, inf, 0x1p+100, inf, 0x0p+0, 0)
+T(RN, inf, -0x1p+100, inf, 0x0p+0, 0)
+T(RN, -inf, 0x1p+100, -inf, 0x0p+0, 0)
+T(RN, inf, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, inf, 0x0p+0, 0)
+T(RN, inf, -inf, nan, 0x0p+0, INVALID)
--- /dev/null
+T(RN, 0x0p+0, 2147483647, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -2147483647, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 2147483647, -0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0, nan, 0x0p+0, 0)
+T(RN, inf, 0, inf, 0x0p+0, 0)
+T(RN, -inf, 0, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 1, 0x1p+1, 0x0p+0, 0)
+T(RN, 0x1p+0, -1, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 2147483647, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, nan, 1, nan, 0x0p+0, 0)
+T(RN, inf, 2147483647, inf, 0x0p+0, 0)
+T(RN, inf, -2147483647, inf, 0x0p+0, 0)
+T(RN, -inf, 2147483647, -inf, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 2147483647, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -2147483647, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 2147483647, -0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0, nan, 0x0p+0, 0)
+T(RN, inf, 0, inf, 0x0p+0, 0)
+T(RN, -inf, 0, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 1, 0x1p+1, 0x0p+0, 0)
+T(RN, 0x1p+0, -1, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 2147483647, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, nan, 1, nan, 0x0p+0, 0)
+T(RN, inf, 2147483647, inf, 0x0p+0, 0)
+T(RN, inf, -2147483647, inf, 0x0p+0, 0)
+T(RN, -inf, 2147483647, -inf, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 2147483647, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -2147483647, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 2147483647, -0x0p+0L, 0x0p+0, 0)
+T(RN, nan, 0, nan, 0x0p+0, 0)
+T(RN, inf, 0, inf, 0x0p+0, 0)
+T(RN, -inf, 0, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 1, 0x1p+1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -1, 0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 2147483647, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, nan, 1, nan, 0x0p+0, 0)
+T(RN, inf, 2147483647, inf, 0x0p+0, 0)
+T(RN, inf, -2147483647, inf, 0x0p+0, 0)
+T(RN, -inf, 2147483647, -inf, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 2147483647, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -2147483647, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 2147483647, -0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0, nan, 0x0p+0, 0)
+T(RN, inf, 0, inf, 0x0p+0, 0)
+T(RN, -inf, 0, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 1, 0x1p+1, 0x0p+0, 0)
+T(RN, 0x1p+0, -1, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 2147483647, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, nan, 1, nan, 0x0p+0, 0)
+T(RN, inf, 2147483647, inf, 0x0p+0, 0)
+T(RN, inf, -2147483647, inf, 0x0p+0, 0)
+T(RN, -inf, 2147483647, -inf, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 2147483647, 0x0p+0, 0x0p+0, 0)
+T(RN, 0x0p+0, -2147483647, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, 2147483647, -0x0p+0, 0x0p+0, 0)
+T(RN, nan, 0, nan, 0x0p+0, 0)
+T(RN, inf, 0, inf, 0x0p+0, 0)
+T(RN, -inf, 0, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0, 0, 0x1p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 1, 0x1p+1, 0x0p+0, 0)
+T(RN, 0x1p+0, -1, 0x1p-1, 0x0p+0, 0)
+T(RN, 0x1p+0, 2147483647, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, nan, 1, nan, 0x0p+0, 0)
+T(RN, inf, 2147483647, inf, 0x0p+0, 0)
+T(RN, inf, -2147483647, inf, 0x0p+0, 0)
+T(RN, -inf, 2147483647, -inf, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 2147483647, 0x0p+0L, 0x0p+0, 0)
+T(RN, 0x0p+0L, -2147483647, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, 2147483647, -0x0p+0L, 0x0p+0, 0)
+T(RN, nan, 0, nan, 0x0p+0, 0)
+T(RN, inf, 0, inf, 0x0p+0, 0)
+T(RN, -inf, 0, -inf, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0, 0x1p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 1, 0x1p+1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, -1, 0x1p-1L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 2147483647, inf, 0x0p+0, INEXACT|OVERFLOW)
+T(RN, nan, 1, nan, 0x0p+0, 0)
+T(RN, inf, 2147483647, inf, 0x0p+0, 0)
+T(RN, inf, -2147483647, inf, 0x0p+0, 0)
+T(RN, -inf, 2147483647, -inf, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0x1p+0L, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+2, 0x1p+1, 0x0p+0, 0)
+T(RN, 0x1p-1073, 0x1.6a09e667f3bcdp-537, 0x1.bdd342p-2, INEXACT)
+T(RN, 0x1.8p-1073, 0x1.bb67ae8584caap-537, -0x1.cec95ep-2, INEXACT)
+T(RN, 0x1p-1074, 0x1p-537, 0x0p+0, 0)
+T(RN, -0x1p-1074, nan, 0x0p+0, INVALID)
+T(RN, 0x1.fffffffffffffp-1, 0x1.fffffffffffffp-1, -0x1p-1, INEXACT)
+T(RN, 0x1.fffffffffffffp+0, 0x1.6a09e667f3bccp+0, -0x1.b045bp-3, INEXACT)
+T(RN, 0x1.0000000000001p+0, 0x1p+0, -0x1p-1, INEXACT)
+T(RN, 0x1.0000000000001p+1, 0x1.6a09e667f3bcdp+0, -0x1.16408cp-2, INEXACT)
+T(RN, 0x1.0000000000001p+0, 0x1p+0, -0x1p-1, INEXACT)
+T(RN, 0x1.fffffffffffffp-1, 0x1.fffffffffffffp-1, -0x1p-1, INEXACT)
+T(RN,-0x1.fffffffffffffp+1023, nan, 0x0p+0, INVALID)
+T(RN, 0x1.fffffffffffffp+1023, 0x1.fffffffffffffp+511, -0x1p-1, INEXACT)
+T(RN, 0x1.ffffffffffffbp+1023, 0x1.ffffffffffffdp+511, -0x1p-1, INEXACT)
+T(RN, 0x1.ffffffffffff7p+1023, 0x1.ffffffffffffbp+511, -0x1p-1, INEXACT)
+T(RN, 0x1.ffffffffffff3p+1023, 0x1.ffffffffffff9p+511, -0x1p-1, INEXACT)
+T(RN, 0x1.fffffffffffefp+1023, 0x1.ffffffffffff7p+511, -0x1p-1, INEXACT)
+T(RN, 0x1.fffffffffffebp+1023, 0x1.ffffffffffff5p+511, -0x1p-1, INEXACT)
+T(RN, 0x1.fffffffffffe7p+1023, 0x1.ffffffffffff3p+511, -0x1p-1, INEXACT)
+T(RN, 0x1.fffffffffffe3p+1023, 0x1.ffffffffffff1p+511, -0x1p-1, INEXACT)
+T(RN, 0x1.fffffffffffdfp+1023, 0x1.fffffffffffefp+511, -0x1p-1, INEXACT)
+T(RN, 0x1.fffffffffffdbp+1023, 0x1.fffffffffffedp+511, -0x1p-1, INEXACT)
+T(RN, 0x1.fffffffffffd7p+1023, 0x1.fffffffffffebp+511, -0x1p-1, INEXACT)
+T(RN, 0x1.0000000000003p-1022, 0x1.0000000000001p-511, -0x1p-1, INEXACT)
+T(RN, 0x1.0000000000007p-1022, 0x1.0000000000003p-511, -0x1p-1, INEXACT)
+T(RN, 0x1.000000000000bp-1022, 0x1.0000000000005p-511, -0x1p-1, INEXACT)
+T(RN, 0x1.000000000000fp-1022, 0x1.0000000000007p-511, -0x1p-1, INEXACT)
+T(RN, 0x1.0000000000013p-1022, 0x1.0000000000009p-511, -0x1p-1, INEXACT)
+T(RN, 0x1.0000000000017p-1022, 0x1.000000000000bp-511, -0x1p-1, INEXACT)
+T(RN, 0x1.000000000001bp-1022, 0x1.000000000000dp-511, -0x1p-1, INEXACT)
+T(RN, 0x1.000000000001fp-1022, 0x1.000000000000fp-511, -0x1p-1, INEXACT)
+T(RN, 0x1.0000000000023p-1022, 0x1.0000000000011p-511, -0x1p-1, INEXACT)
+T(RN, 0x1.0000000000027p-1022, 0x1.0000000000013p-511, -0x1p-1, INEXACT)
+T(RN, 0x1.000000000002bp-1022, 0x1.0000000000015p-511, -0x1p-1, INEXACT)
+T(RN, 0x1.000000000002fp-1022, 0x1.0000000000017p-511, -0x1p-1, INEXACT)
+T(RN, 0x1.0000000000033p-1022, 0x1.0000000000019p-511, -0x1p-1, INEXACT)
+T(RN, 0x1.0000000000037p-1022, 0x1.000000000001bp-511, -0x1p-1, INEXACT)
+T(RN, 0x1.7167bc36eaa3bp+6, 0x1.3384c7db650cdp+3, 0x1.ffcf2ap-2, INEXACT)
+T(RN, 0x1.7570994273ad7p+6, 0x1.353186e89b8ffp+3, -0x1.ffcb84p-2, INEXACT)
+T(RN, 0x1.7dae969442fe6p+6, 0x1.389640fb18b75p+3, -0x1.fff8d8p-2, INEXACT)
+T(RN, 0x1.7f8444fcf67e5p+6, 0x1.395659e94669fp+3, 0x1.ffdfacp-2, INEXACT)
+T(RN, 0x1.8364650e63a54p+6, 0x1.3aea9efe1a3d7p+3, 0x1.ffcc12p-2, INEXACT)
+T(RN, 0x1.85bedd274edd8p+6, 0x1.3bdf20c867057p+3, 0x1.ffc39cp-2, INEXACT)
+T(RN, 0x1.8609cf496ab77p+6, 0x1.3bfd7e14b5eabp+3, 0x1.ffff86p-2, INEXACT)
+T(RN, 0x1.873849c70a375p+6, 0x1.3c77ed341d27fp+3, -0x1.fff502p-2, INEXACT)
+T(RN, 0x1.8919c962cbaaep+6, 0x1.3d3a7113ee82fp+3, 0x1.ffcb64p-2, INEXACT)
+T(RN, 0x1.8de4493e22dc6p+6, 0x1.3f27d448220c3p+3, -0x1.fff3f4p-2, INEXACT)
+T(RN, 0x1.924829a17a288p+6, 0x1.40e9552eec28fp+3, -0x1.fff6b4p-2, INEXACT)
+T(RN, 0x1.92702cd992f12p+6, 0x1.40f94a6fdfddfp+3, 0x1.ffc03ap-2, INEXACT)
+T(RN, 0x1.92b763a8311fdp+6, 0x1.4115af614695fp+3, -0x1.ffc594p-2, INEXACT)
+T(RN, 0x1.947da013c7293p+6, 0x1.41ca91102940fp+3, 0x1.ffe252p-2, INEXACT)
+T(RN, 0x1.9536091c494d2p+6, 0x1.4213e334c77adp+3, 0x1.ffe88ep-2, INEXACT)
+T(RN, 0x1.61b04c6p-1019, 0x1.a98b88f18b46dp-510, -0x1.ffe5c8p-2, INEXACT)
+T(RN, 0x1.93789f1p-1018, 0x1.4162ae43d5821p-509, -0x1.ffeeccp-2, INEXACT)
+T(RN, 0x1.a1989b4p-1018, 0x1.46f6736eb44bbp-509, -0x1.ffe4a8p-2, INEXACT)
+T(RN, 0x1.f93bc9p-1018, 0x1.67a36ec403bafp-509, 0x1.ffcd4p-2, INEXACT)
+T(RN, 0x1.2f675e3p-1017, 0x1.8a22ab6dcfee1p-509, -0x1.ffe782p-2, INEXACT)
+T(RN, 0x1.a158508p-1017, 0x1.ce418a96cf589p-509, -0x1.fff9eep-2, INEXACT)
+T(RN, 0x1.cd31f078p-1017, 0x1.e5ef1c65dccebp-509, -0x1.fff33cp-2, INEXACT)
+T(RN, 0x1.33b43b08p-1016, 0x1.18a9f607e1701p-508, -0x1.ffdc56p-2, INEXACT)
+T(RN, 0x1.6e66a858p-1016, 0x1.324402a00b45fp-508, 0x1.ffd628p-2, INEXACT)
+T(RN, 0x1.8661cbf8p-1016, 0x1.3c212046bfdffp-508, 0x1.ffed66p-2, INEXACT)
+T(RN, 0x1.bbb221b4p-1016, 0x1.510681b939931p-508, 0x1.ffe348p-2, INEXACT)
+T(RN, 0x1.c4942f3cp-1016, 0x1.5461e59227ab5p-508, -0x1.ffc3bcp-2, INEXACT)
+T(RN, 0x1.dbb258c8p-1016, 0x1.5cf7b0f78d3afp-508, 0x1.ffdd36p-2, INEXACT)
+T(RN, 0x1.57103ea4p-1015, 0x1.a31ab946d340bp-508, 0x1.ffd4acp-2, INEXACT)
+T(RN, 0x1.9b294f88p-1015, 0x1.cad197e28e85bp-508, 0x1.ffdb24p-2, INEXACT)
+
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+2, 0x1p+1, 0x0p+0, 0)
+T(RN, 0x1p-148, 0x1p-74, 0x0p+0, 0)
+T(RN, 0x1.8p-148, 0x1.3988e2p-74, 0x1.7edbdap-2, INEXACT)
+T(RN, 0x1p-149, 0x1.6a09e6p-75, -0x1.9fcef4p-3, INEXACT)
+T(RN, -0x1p-149, nan, 0x0p+0, INVALID)
+T(RN, 0x1.fffffep+127, 0x1.fffffep+63, -0x1p-1, INEXACT)
+T(RN,-0x1.fffffep+127, nan, 0x0p+0, INVALID)
+T(RN, 0x1.fffffcp-1, 0x1.fffffep-1, 0x1.000002p-25, INEXACT)
+T(RN, 0x1.fffffep-1, 0x1.fffffep-1, -0x1p-1, INEXACT)
+T(RN, 0x1.fffffcp+0, 0x1.6a09e4p+0, -0x1.fbd3acp-2, INEXACT)
+T(RN, 0x1.fffffep+0, 0x1.6a09e6p+0, 0x1.3444dap-3, INEXACT)
+T(RN, 0x1.000002p+0, 0x1p+0, -0x1p-1, INEXACT)
+T(RN, 0x1.000004p+0, 0x1.000002p+0, 0x1.fffffcp-25, INEXACT)
+T(RN, 0x1.000002p+1, 0x1.6a09e8p+0, 0x1.7012ecp-4, INEXACT)
+T(RN, 0x1.000004p+1, 0x1.6a09eap+0, 0x1.87f0f2p-2, INEXACT)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+2L, 0x1p+1L, 0x0p+0, 0)
+T(RN, 0x1p-16444L, 0x1p-8222L, 0x0p+0, 0)
+T(RN, 0x1.8p-16444L, 0x1.3988e1409212e7dp-8222L, -0x1.90c8a2p-4, INEXACT)
+T(RN, 0x1p-16445L, 0x1.6a09e667f3bcc908p-8223L, -0x1.65f626p-2, INEXACT)
+T(RN, -0x1p-16445L, nan, 0x0p+0, INVALID)
+T(RN, 0x1.fffffffffffffffep+16382L, 0x1.6a09e667f3bcc908p+8191L, 0x1.04efe6p-8, INEXACT)
+T(RN, 0x1.fffffffffffffffep+16383L, 0x1.fffffffffffffffep+8191L, -0x1p-1, INEXACT)
+T(RN, -0x1.fffffffffffffffep+16383L, nan, 0x0p+0, INVALID)
+T(RN, 0x1.fffffffffffffffcp-1L, 0x1.fffffffffffffffep-1L, 0x1p-64, INEXACT)
+T(RN, 0x1.fffffffffffffffep-1L, 0x1.fffffffffffffffep-1L, -0x1p-1, INEXACT)
+T(RN, 0x1.fffffffffffffffcp+0L, 0x1.6a09e667f3bcc908p+0L, 0x1.6e1da6p-2, INEXACT)
+T(RN, 0x1.fffffffffffffffep+0L, 0x1.6a09e667f3bcc908p+0L, 0x1.04efe6p-8, INEXACT)
+T(RN, 0x1.0000000000000002p+0L, 0x1p+0L, -0x1p-1, INEXACT)
+T(RN, 0x1.0000000000000004p+0L, 0x1.0000000000000002p+0L, 0x1p-64, INEXACT)
+T(RN, 0x1.0000000000000002p+1L, 0x1.6a09e667f3bcc90ap+0L, -0x1.d04f9cp-5, INEXACT)
+T(RN, 0x1.0000000000000004p+1L, 0x1.6a09e667f3bcc90cp+0L, 0x1.e3c48p-3, INEXACT)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, inf, 0x1p+0, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, 0x1p+0L, 0x0p+0, 0)
+T(RN, -inf, -0x1p+0L, 0x0p+0, 0)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, inf, nan, 0x0p+0, INVALID)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+1, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+1, nan, 0x0p+0, INVALID)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x1p+0, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+1, 0x1p+0, 0x0p+0, 0)
+T(RN, -0x1p+1, nan, 0x0p+0, INVALID)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0L, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0L, -inf, 0x0p+0, DIVBYZERO)
+T(RN, 0x1p+0L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+0L, nan, 0x0p+0, INVALID)
+T(RN, 0x1p+1L, 0x1p+0L, 0x0p+0, 0)
+T(RN, -0x1p+1L, nan, 0x0p+0, INVALID)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-1, -0x0p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1, -0x0p+0, 0x0p+0, INEXACT)
+T(RN, 0x1p-100, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-100, -0x0p+0, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0)
+T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0)
+T(RN, 0x1p-1, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-1, -0x0p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0, 0x1p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0, -0x1p+0, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1, -0x0p+0, 0x0p+0, INEXACT)
+T(RN, 0x1p-100, 0x0p+0, 0x0p+0, INEXACT)
+T(RN, -0x1p-100, -0x0p+0, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, nan, nan, 0x0p+0, 0)
+T(RN, inf, inf, 0x0p+0, 0)
+T(RN, -inf, -inf, 0x0p+0, 0)
+T(RN, 0x0p+0L, 0x0p+0L, 0x0p+0, 0)
+T(RN, -0x0p+0L, -0x0p+0L, 0x0p+0, 0)
+T(RN, 0x1p-1L, 0x0p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1p-1L, -0x0p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1.0001p+0L, 0x1p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1.0001p+0L, -0x1p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1.ffffp-1L, 0x0p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1.ffffp-1L, -0x0p+0L, 0x0p+0, INEXACT)
+T(RN, 0x1p-100L, 0x0p+0L, 0x0p+0, INEXACT)
+T(RN, -0x1p-100L, -0x0p+0L, 0x0p+0, INEXACT)
--- /dev/null
+T(RN, 0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, nan, 0x0p+0, INVALID)
+T(RN, inf, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, nan, 0x0p+0, INVALID)
+T(RN, nan, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, 0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, 0, nan, 0x0p+0, INVALID)
+T(RN, inf, 0, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0, nan, 0x0p+0, INVALID)
+T(RN, nan, 0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 1, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, 1, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, 1, nan, 0x0p+0, INVALID)
+T(RN, inf, 1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 1, nan, 0x0p+0, INVALID)
+T(RN, nan, 1, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, -1, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -1, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, -1, nan, 0x0p+0, INVALID)
+T(RN, inf, -1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, -1, nan, 0x0p+0, INVALID)
+T(RN, nan, -1, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 2, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, 2, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, 2, nan, 0x0p+0, INVALID)
+T(RN, inf, 2, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 2, nan, 0x0p+0, INVALID)
+T(RN, nan, 2, nan, 0x0p+0, 0)
--- /dev/null
+T(RN, 0x0p+0, 0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, 0, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, 0, nan, 0x0p+0, INVALID)
+T(RN, inf, 0, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 0, nan, 0x0p+0, INVALID)
+T(RN, nan, 0, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 1, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, 1, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, 1, nan, 0x0p+0, INVALID)
+T(RN, inf, 1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 1, nan, 0x0p+0, INVALID)
+T(RN, nan, 1, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, -1, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, -1, inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, -1, nan, 0x0p+0, INVALID)
+T(RN, inf, -1, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, -1, nan, 0x0p+0, INVALID)
+T(RN, nan, -1, nan, 0x0p+0, 0)
+T(RN, 0x0p+0, 2, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x0p+0, 2, -inf, 0x0p+0, DIVBYZERO)
+T(RN, -0x1p+0, 2, nan, 0x0p+0, INVALID)
+T(RN, inf, 2, 0x0p+0, 0x0p+0, 0)
+T(RN, -inf, 2, nan, 0x0p+0, INVALID)
+T(RN, nan, 2, nan, 0x0p+0, 0)
static struct d_d t[] = {
#include "ucb/sqrt.h"
#include "sanity/sqrt.h"
+#include "special/sqrt.h"
};
static struct f_f t[] = {
#include "ucb/sqrtf.h"
#include "sanity/sqrtf.h"
+#include "special/sqrtf.h"
};
#if LDBL_MANT_DIG == 53
#include "ucb/sqrt.h"
#include "sanity/sqrt.h"
+#include "special/sqrt.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/sqrtl.h"
+#include "special/sqrtl.h"
#endif
};
#include "crlibm/tan.h"
#include "ucb/tan.h"
#include "sanity/tan.h"
+#include "special/tan.h"
};
static struct f_f t[] = {
#include "ucb/tanf.h"
#include "sanity/tanf.h"
+#include "special/tanf.h"
};
static struct d_d t[] = {
#include "ucb/tanh.h"
#include "sanity/tanh.h"
+#include "special/tanh.h"
};
static struct f_f t[] = {
#include "ucb/tanhf.h"
#include "sanity/tanhf.h"
+#include "special/tanhf.h"
};
#if LDBL_MANT_DIG == 53
#include "ucb/tanh.h"
#include "sanity/tanh.h"
+#include "special/tanh.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/tanhl.h"
+#include "special/tanhl.h"
#endif
};
#include "crlibm/tan.h"
#include "ucb/tan.h"
#include "sanity/tan.h"
+#include "special/tan.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/tanl.h"
+#include "special/tanl.h"
#endif
};
static struct d_d t[] = {
#include "sanity/tgamma.h"
+#include "special/tgamma.h"
};
static struct f_f t[] = {
#include "sanity/tgammaf.h"
+#include "special/tgammaf.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/tgamma.h"
+#include "special/tgamma.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/tgammal.h"
+#include "special/tgammal.h"
#endif
};
static struct d_d t[] = {
#include "sanity/trunc.h"
+#include "special/trunc.h"
};
static struct f_f t[] = {
#include "sanity/truncf.h"
+#include "special/truncf.h"
};
static struct l_l t[] = {
#if LDBL_MANT_DIG == 53
#include "sanity/trunc.h"
+#include "special/trunc.h"
#elif LDBL_MANT_DIG == 64
#include "sanity/truncl.h"
+#include "special/truncl.h"
#endif
};
static struct d_d t[] = {
#include "sanity/y0.h"
+#include "special/y0.h"
};
static struct f_f t[] = {
#include "sanity/y0f.h"
+#include "special/y0f.h"
};
static struct d_d t[] = {
#include "sanity/y1.h"
+#include "special/y1.h"
};
static struct f_f t[] = {
#include "sanity/y1f.h"
+#include "special/y1f.h"
};
static struct di_d t[] = {
#include "sanity/yn.h"
+#include "special/yn.h"
};
int main(void)
static struct fi_f t[] = {
#include "sanity/ynf.h"
+#include "special/ynf.h"
};
int main(void)