1 /* Test for hexadecimal float rounding: bug 21720. */ 2 /* { dg-do link } */ 3 /* { dg-options "-O -std=gnu99" } */ 4 /* { dg-skip-if "SPU float rounds towards zero" { spu-*-* } } */ 5 6 #include <float.h> 7 8 extern void link_failure (void); 9 10 int main(void)11main (void) 12 { 13 #if FLT_RADIX == 2 && FLT_MANT_DIG == 24 14 if (0x1.0000011p0f == 1) 15 link_failure (); 16 if (0x1.00000101p0f == 1) 17 link_failure (); 18 if (0x1.000001001p0f == 1) 19 link_failure (); 20 if (0x1.0000010001p0f == 1) 21 link_failure (); 22 if (0x1.00000100001p0f == 1) 23 link_failure (); 24 if (0x1.000001000001p0f == 1) 25 link_failure (); 26 if (0x1.0000010000001p0f == 1) 27 link_failure (); 28 if (0x1.00000100000001p0f == 1) 29 link_failure (); 30 if (0x1.000001000000001p0f == 1) 31 link_failure (); 32 if (0x1.0000010000000001p0f == 1) 33 link_failure (); 34 if (0x1.00000100000000001p0f == 1) 35 link_failure (); 36 if (0x1.000001000000000001p0f == 1) 37 link_failure (); 38 if (0x1.0000010000000000001p0f == 1) 39 link_failure (); 40 if (0x1.00000100000000000001p0f == 1) 41 link_failure (); 42 if (0x1.000001000000000000001p0f == 1) 43 link_failure (); 44 if (0x1.0000010000000000000001p0f == 1) 45 link_failure (); 46 if (0x1.00000100000000000000001p0f == 1) 47 link_failure (); 48 if (0x1.000001000000000000000001p0f == 1) 49 link_failure (); 50 if (0x1.0000010000000000000000001p0f == 1) 51 link_failure (); 52 if (0x1.00000100000000000000000001p0f == 1) 53 link_failure (); 54 if (0x1.000001000000000000000000001p0f == 1) 55 link_failure (); 56 if (0x1.0000010000000000000000000001p0f == 1) 57 link_failure (); 58 if (0x1.00000100000000000000000000001p0f == 1) 59 link_failure (); 60 if (0x1.000001000000000000000000000001p0f == 1) 61 link_failure (); 62 if (0x1.0000010000000000000000000000001p0f == 1) 63 link_failure (); 64 if (0x1.00000100000000000000000000000001p0f == 1) 65 link_failure (); 66 if (0x1.000001000000000000000000000000001p0f == 1) 67 link_failure (); 68 if (0x1.0000010000000000000000000000000001p0f == 1) 69 link_failure (); 70 if (0x1.00000100000000000000000000000000001p0f == 1) 71 link_failure (); 72 if (0x1.000001000000000000000000000000000001p0f == 1) 73 link_failure (); 74 if (0x1.0000010000000000000000000000000000001p0f == 1) 75 link_failure (); 76 if (0x1.00000100000000000000000000000000000001p0f == 1) 77 link_failure (); 78 if (0x1.000001000000000000000000000000000000001p0f == 1) 79 link_failure (); 80 if (0x1.0000010000000000000000000000000000000001p0f == 1) 81 link_failure (); 82 if (0x1.00000100000000000000000000000000000000001p0f == 1) 83 link_failure (); 84 if (0x1.000001000000000000000000000000000000000001p0f == 1) 85 link_failure (); 86 if (0x1.0000010000000000000000000000000000000000001p0f == 1) 87 link_failure (); 88 if (0x1.00000100000000000000000000000000000000000001p0f == 1) 89 link_failure (); 90 if (0x1.000001000000000000000000000000000000000000001p0f == 1) 91 link_failure (); 92 if (0x1.0000010000000000000000000000000000000000000001p0f == 1) 93 link_failure (); 94 if (0x1.00000100000000000000000000000000000000000000001p0f == 1) 95 link_failure (); 96 if (0x1.000001000000000000000000000000000000000000000001p0f == 1) 97 link_failure (); 98 if (0x1.0000010000000000000000000000000000000000000000001p0f == 1) 99 link_failure (); 100 if (0x1.00000100000000000000000000000000000000000000000001p0f == 1) 101 link_failure (); 102 if (0x1.000001000000000000000000000000000000000000000000001p0f == 1) 103 link_failure (); 104 if (0x1.0000010000000000000000000000000000000000000000000001p0f == 1) 105 link_failure (); 106 if (0x1.00000100000000000000000000000000000000000000000000001p0f == 1) 107 link_failure (); 108 if (0x1.000001000000000000000000000000000000000000000000000001p0f == 1) 109 link_failure (); 110 if (0x1.0000010000000000000000000000000000000000000000000000001p0f == 1) 111 link_failure (); 112 #endif 113 return 0; 114 } 115