1/* float.h for target sh3e with optional IEEE 32 bit double format */ 2#ifndef _FLOAT_H_ 3#define _FLOAT_H_ 4/* Produced by enquire version 4.3, CWI, Amsterdam */ 5 6 /* Radix of exponent representation */ 7#undef FLT_RADIX 8#define FLT_RADIX 2 9 /* Number of base-FLT_RADIX digits in the significand of a float */ 10#undef FLT_MANT_DIG 11#define FLT_MANT_DIG 24 12 /* Number of decimal digits of precision in a float */ 13#undef FLT_DIG 14#define FLT_DIG 6 15 /* Addition rounds to 0: zero, 1: nearest, 2: +inf, 3: -inf, -1: unknown */ 16#undef FLT_ROUNDS 17#define FLT_ROUNDS 1 18 /* Difference between 1.0 and the minimum float greater than 1.0 */ 19#undef FLT_EPSILON 20#define FLT_EPSILON 1.19209290e-07F 21 /* Minimum int x such that FLT_RADIX**(x-1) is a normalised float */ 22#undef FLT_MIN_EXP 23#define FLT_MIN_EXP (-125) 24 /* Minimum normalised float */ 25#undef FLT_MIN 26#define FLT_MIN 1.17549435e-38F 27 /* Minimum int x such that 10**x is a normalised float */ 28#undef FLT_MIN_10_EXP 29#define FLT_MIN_10_EXP (-37) 30 /* Maximum int x such that FLT_RADIX**(x-1) is a representable float */ 31#undef FLT_MAX_EXP 32#define FLT_MAX_EXP 128 33 /* Maximum float */ 34#undef FLT_MAX 35#define FLT_MAX 3.40282347e+38F 36 /* Maximum int x such that 10**x is a representable float */ 37#undef FLT_MAX_10_EXP 38#define FLT_MAX_10_EXP 38 39 40#if defined (__SH3E__) || defined (__SH4_SINGLE_ONLY__) 41 42 /* Number of base-FLT_RADIX digits in the significand of a double */ 43#undef DBL_MANT_DIG 44#define DBL_MANT_DIG 24 45 /* Number of decimal digits of precision in a double */ 46#undef DBL_DIG 47#define DBL_DIG 6 48 /* Difference between 1.0 and the minimum double greater than 1.0 */ 49#undef DBL_EPSILON 50#define DBL_EPSILON 1.19209290e-07F 51 /* Minimum int x such that FLT_RADIX**(x-1) is a normalised double */ 52#undef DBL_MIN_EXP 53#define DBL_MIN_EXP (-125) 54 /* Minimum normalised double */ 55#undef DBL_MIN 56#define DBL_MIN 1.17549435e-38F 57 /* Minimum int x such that 10**x is a normalised double */ 58#undef DBL_MIN_10_EXP 59#define DBL_MIN_10_EXP (-37) 60 /* Maximum int x such that FLT_RADIX**(x-1) is a representable double */ 61#undef DBL_MAX_EXP 62#define DBL_MAX_EXP 128 63 /* Maximum double */ 64#undef DBL_MAX 65#define DBL_MAX 3.40282347e+38F 66 /* Maximum int x such that 10**x is a representable double */ 67#undef DBL_MAX_10_EXP 68#define DBL_MAX_10_EXP 38 69 70#else 71 72 /* Number of base-FLT_RADIX digits in the significand of a double */ 73#undef DBL_MANT_DIG 74#define DBL_MANT_DIG 53 75 /* Number of decimal digits of precision in a double */ 76#undef DBL_DIG 77#define DBL_DIG 15 78 /* Difference between 1.0 and the minimum double greater than 1.0 */ 79#undef DBL_EPSILON 80#define DBL_EPSILON 2.2204460492503131e-16 81 /* Minimum int x such that FLT_RADIX**(x-1) is a normalised double */ 82#undef DBL_MIN_EXP 83#define DBL_MIN_EXP (-1021) 84 /* Minimum normalised double */ 85#undef DBL_MIN 86#define DBL_MIN 2.2250738585072014e-308 87 /* Minimum int x such that 10**x is a normalised double */ 88#undef DBL_MIN_10_EXP 89#define DBL_MIN_10_EXP (-307) 90 /* Maximum int x such that FLT_RADIX**(x-1) is a representable double */ 91#undef DBL_MAX_EXP 92#define DBL_MAX_EXP 1024 93 /* Maximum double */ 94#undef DBL_MAX 95#define DBL_MAX 1.7976931348623157e+308 96 /* Maximum int x such that 10**x is a representable double */ 97#undef DBL_MAX_10_EXP 98#define DBL_MAX_10_EXP 308 99 100#endif 101 102 /* Number of base-FLT_RADIX digits in the significand of a long double */ 103#undef LDBL_MANT_DIG 104#define LDBL_MANT_DIG 53 105 /* Number of decimal digits of precision in a long double */ 106#undef LDBL_DIG 107#define LDBL_DIG 15 108 /* Difference between 1.0 and the minimum long double greater than 1.0 */ 109#undef LDBL_EPSILON 110#define LDBL_EPSILON 2.2204460492503131e-16 111 /* Minimum int x such that FLT_RADIX**(x-1) is a normalised long double */ 112#undef LDBL_MIN_EXP 113#define LDBL_MIN_EXP (-1021) 114 /* Minimum normalised long double */ 115#undef LDBL_MIN 116#define LDBL_MIN 2.2250738585072014e-308 117 /* Minimum int x such that 10**x is a normalised long double */ 118#undef LDBL_MIN_10_EXP 119#define LDBL_MIN_10_EXP (-307) 120 /* Maximum int x such that FLT_RADIX**(x-1) is a representable long double */ 121#undef LDBL_MAX_EXP 122#define LDBL_MAX_EXP 1024 123 /* Maximum long double */ 124#undef LDBL_MAX 125#define LDBL_MAX 1.7976931348623157e+308 126 /* Maximum int x such that 10**x is a representable long double */ 127#undef LDBL_MAX_10_EXP 128#define LDBL_MAX_10_EXP 308 129 130#endif /* _FLOAT_H_ */ 131