rt_gccstream/gcc/testsuite/gcc.dg/hex-round-1.c

115 lines
3.8 KiB
C

/* Test for hexadecimal float rounding: bug 21720. */
/* { dg-do link } */
/* { dg-options "-O -std=gnu99" } */
/* { dg-skip-if "SPU float rounds towards zero" { spu-*-* } } */
#include <float.h>
extern void link_failure (void);
int
main (void)
{
#if FLT_RADIX == 2 && FLT_MANT_DIG == 24
if (0x1.0000011p0f == 1)
link_failure ();
if (0x1.00000101p0f == 1)
link_failure ();
if (0x1.000001001p0f == 1)
link_failure ();
if (0x1.0000010001p0f == 1)
link_failure ();
if (0x1.00000100001p0f == 1)
link_failure ();
if (0x1.000001000001p0f == 1)
link_failure ();
if (0x1.0000010000001p0f == 1)
link_failure ();
if (0x1.00000100000001p0f == 1)
link_failure ();
if (0x1.000001000000001p0f == 1)
link_failure ();
if (0x1.0000010000000001p0f == 1)
link_failure ();
if (0x1.00000100000000001p0f == 1)
link_failure ();
if (0x1.000001000000000001p0f == 1)
link_failure ();
if (0x1.0000010000000000001p0f == 1)
link_failure ();
if (0x1.00000100000000000001p0f == 1)
link_failure ();
if (0x1.000001000000000000001p0f == 1)
link_failure ();
if (0x1.0000010000000000000001p0f == 1)
link_failure ();
if (0x1.00000100000000000000001p0f == 1)
link_failure ();
if (0x1.000001000000000000000001p0f == 1)
link_failure ();
if (0x1.0000010000000000000000001p0f == 1)
link_failure ();
if (0x1.00000100000000000000000001p0f == 1)
link_failure ();
if (0x1.000001000000000000000000001p0f == 1)
link_failure ();
if (0x1.0000010000000000000000000001p0f == 1)
link_failure ();
if (0x1.00000100000000000000000000001p0f == 1)
link_failure ();
if (0x1.000001000000000000000000000001p0f == 1)
link_failure ();
if (0x1.0000010000000000000000000000001p0f == 1)
link_failure ();
if (0x1.00000100000000000000000000000001p0f == 1)
link_failure ();
if (0x1.000001000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.0000010000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.00000100000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.000001000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.0000010000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.00000100000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.000001000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.0000010000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.00000100000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.000001000000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.0000010000000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.00000100000000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.000001000000000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.0000010000000000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.00000100000000000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.000001000000000000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.0000010000000000000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.00000100000000000000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.000001000000000000000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.0000010000000000000000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.00000100000000000000000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.000001000000000000000000000000000000000000000000000001p0f == 1)
link_failure ();
if (0x1.0000010000000000000000000000000000000000000000000000001p0f == 1)
link_failure ();
#endif
return 0;
}