14887Schin /*********************************************************************** 24887Schin * * 34887Schin * This software is part of the ast package * 4*12068SRoger.Faulkner@Oracle.COM * Copyright (c) 1985-2010 AT&T Intellectual Property * 54887Schin * and is licensed under the * 64887Schin * Common Public License, Version 1.0 * 78462SApril.Chin@Sun.COM * by AT&T Intellectual Property * 84887Schin * * 94887Schin * A copy of the License is available at * 104887Schin * http://www.opensource.org/licenses/cpl1.0.txt * 114887Schin * (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) * 124887Schin * * 134887Schin * Information and Software Systems Research * 144887Schin * AT&T Research * 154887Schin * Florham Park NJ * 164887Schin * * 174887Schin * Glenn Fowler <gsf@research.att.com> * 184887Schin * David Korn <dgk@research.att.com> * 194887Schin * Phong Vo <kpv@research.att.com> * 204887Schin * * 214887Schin ***********************************************************************/ 224887Schin 234887Schin /* : : generated by proto : : */ 24*12068SRoger.Faulkner@Oracle.COM /* : : generated from /home/gisburn/ksh93/ast_ksh_20100309/build_i386_64bit/src/lib/libast/features/float by iffe version 2009-12-04 : : */ 254887Schin 264887Schin #ifndef _def_float_ast 274887Schin #if !defined(__PROTO__) 284887Schin # if defined(__STDC__) || defined(__cplusplus) || defined(_proto) || defined(c_plusplus) 294887Schin # if defined(__cplusplus) 304887Schin # define __LINKAGE__ "C" 314887Schin # else 324887Schin # define __LINKAGE__ 334887Schin # endif 344887Schin # define __STDARG__ 354887Schin # define __PROTO__(x) x 364887Schin # define __OTORP__(x) 374887Schin # define __PARAM__(n,o) n 384887Schin # if !defined(__STDC__) && !defined(__cplusplus) 394887Schin # if !defined(c_plusplus) 404887Schin # define const 414887Schin # endif 424887Schin # define signed 434887Schin # define void int 444887Schin # define volatile 454887Schin # define __V_ char 464887Schin # else 474887Schin # define __V_ void 484887Schin # endif 494887Schin # else 504887Schin # define __PROTO__(x) () 514887Schin # define __OTORP__(x) x 524887Schin # define __PARAM__(n,o) o 534887Schin # define __LINKAGE__ 544887Schin # define __V_ char 554887Schin # define const 564887Schin # define signed 574887Schin # define void int 584887Schin # define volatile 594887Schin # endif 604887Schin # define __MANGLE__ __LINKAGE__ 614887Schin # if defined(__cplusplus) || defined(c_plusplus) 624887Schin # define __VARARG__ ... 634887Schin # else 644887Schin # define __VARARG__ 654887Schin # endif 664887Schin # if defined(__STDARG__) 674887Schin # define __VA_START__(p,a) va_start(p,a) 684887Schin # else 694887Schin # define __VA_START__(p,a) va_start(p) 704887Schin # endif 714887Schin # if !defined(__INLINE__) 724887Schin # if defined(__cplusplus) 734887Schin # define __INLINE__ extern __MANGLE__ inline 744887Schin # else 754887Schin # if defined(_WIN32) && !defined(__GNUC__) 764887Schin # define __INLINE__ __inline 774887Schin # endif 784887Schin # endif 794887Schin # endif 804887Schin #endif 814887Schin #if !defined(__LINKAGE__) 824887Schin #define __LINKAGE__ /* 2004-08-11 transition */ 834887Schin #endif 844887Schin 854887Schin #define _def_float_ast 1 864887Schin #define _sys_types 1 /* #include <sys/types.h> ok */ 874887Schin #define _hdr_float 1 /* #include <float.h> ok */ 884887Schin #define _hdr_limits 1 /* #include <limits.h> ok */ 894887Schin #define _hdr_math 1 /* #include <math.h> ok */ 904887Schin #define _hdr_values 1 /* #include <values.h> ok */ 914887Schin #define _LIB_m 1 /* -lm is a library */ 928462SApril.Chin@Sun.COM #define _lib_fpclassify 1 /* fpclassify() in default lib(s) */ 934887Schin #define _lib_frexp 1 /* frexp() in default lib(s) */ 944887Schin #define _lib_frexpl 1 /* frexpl() in default lib(s) */ 954887Schin #define _lib_ldexp 1 /* ldexp() in default lib(s) */ 964887Schin #define _lib_ldexpl 1 /* ldexpl() in default lib(s) */ 974887Schin #define _lib_finite 1 /* finite() in default lib(s) */ 988462SApril.Chin@Sun.COM #define _lib_isinf 1 /* isinf() in default lib(s) */ 994887Schin #define _lib_isnan 1 /* isnan() in default lib(s) */ 1004887Schin #define _lib_isnanl 1 /* isnanl() in default lib(s) */ 1018462SApril.Chin@Sun.COM #define _lib_signbit 1 /* signbit() in default lib(s) */ 1024887Schin #define _lib_copysign 1 /* copysign() in default lib(s) */ 1034887Schin #define _lib_copysignl 1 /* copysignl() in default lib(s) */ 1044887Schin #include <ast_common.h> 1054887Schin #include <float.h> 1064887Schin #include <math.h> 1074887Schin #ifndef FLT_DIG 1084887Schin #define FLT_DIG 6 1094887Schin #endif 1104887Schin #ifndef FLT_MAX 1114887Schin #define FLT_MAX 3.4028234663852885981170E+38F 1124887Schin #endif 1134887Schin #ifndef FLT_MAX_10_EXP 1144887Schin #define FLT_MAX_10_EXP ( + 38 ) 1154887Schin #endif 1164887Schin #ifndef FLT_MAX_EXP 1174887Schin #define FLT_MAX_EXP ( + 128 ) 1184887Schin #endif 1194887Schin #ifndef FLT_MIN 1204887Schin #define FLT_MIN 1.1754943508222875079688E-38F 1214887Schin #endif 1224887Schin #ifndef FLT_MIN_10_EXP 1234887Schin #define FLT_MIN_10_EXP ( - 37 ) 1244887Schin #endif 1254887Schin #ifndef FLT_MIN_EXP 1264887Schin #define FLT_MIN_EXP ( - 125 ) 1274887Schin #endif 1284887Schin #ifndef DBL_DIG 1294887Schin #define DBL_DIG 15 1304887Schin #endif 1314887Schin #ifndef DBL_MAX 1324887Schin #define DBL_MAX 1.7976931348623157081452E+308 1334887Schin #endif 1344887Schin #ifndef DBL_MAX_10_EXP 1354887Schin #define DBL_MAX_10_EXP ( + 308 ) 1364887Schin #endif 1374887Schin #ifndef DBL_MAX_EXP 1384887Schin #define DBL_MAX_EXP ( + 1024 ) 1394887Schin #endif 1404887Schin #ifndef DBL_MIN 1414887Schin #define DBL_MIN 2.2250738585072013830903E-308 1424887Schin #endif 1434887Schin #ifndef DBL_MIN_10_EXP 1444887Schin #define DBL_MIN_10_EXP ( - 307 ) 1454887Schin #endif 1464887Schin #ifndef DBL_MIN_EXP 1474887Schin #define DBL_MIN_EXP ( - 1021 ) 1484887Schin #endif 1494887Schin #ifndef LDBL_DIG 1504887Schin #define LDBL_DIG 18 1514887Schin #endif 1524887Schin #ifndef LDBL_MAX 1534887Schin #define LDBL_MAX 1.1897314953572317650213E+4932L 1544887Schin #endif 1554887Schin #ifndef LDBL_MAX_10_EXP 1564887Schin #define LDBL_MAX_10_EXP ( + 4932 ) 1574887Schin #endif 1584887Schin #ifndef LDBL_MAX_EXP 1594887Schin #define LDBL_MAX_EXP ( + 16384 ) 1604887Schin #endif 1614887Schin #ifndef LDBL_MIN 1624887Schin #define LDBL_MIN 3.3621031431120935062627E-4932L 1634887Schin #endif 1644887Schin #ifndef LDBL_MIN_10_EXP 1654887Schin #define LDBL_MIN_10_EXP ( - 4931 ) 1664887Schin #endif 1674887Schin #ifndef LDBL_MIN_EXP 1684887Schin #define LDBL_MIN_EXP ( - 16381 ) 1694887Schin #endif 1704887Schin 1714887Schin 1724887Schin #define USHRT_DIG 4 1734887Schin #define UINT_DIG 9 1744887Schin #define ULONG_DIG 19 1754887Schin #define UINTMAX_DIG ULONG_DIG 1764887Schin 1774887Schin #define FLT_ULONG_MAX 18446744073709551615.0F 1784887Schin #define FLT_ULLONG_MAX FLT_ULONG_MAX 1794887Schin #define FLT_UINTMAX_MAX FLT_ULONG_MAX 1804887Schin #define FLT_LONG_MAX 9223372036854775807.0F 1814887Schin #define FLT_LLONG_MAX FLT_LONG_MAX 1824887Schin #define FLT_INTMAX_MAX FLT_LONG_MAX 1834887Schin #define FLT_LONG_MIN (-9223372036854775808.0F) 1844887Schin #define FLT_LLONG_MIN FLT_LONG_MIN 1854887Schin #define FLT_INTMAX_MIN FLT_LONG_MIN 1864887Schin 1874887Schin #define DBL_ULONG_MAX 18446744073709551615.0 1884887Schin #define DBL_ULLONG_MAX DBL_ULONG_MAX 1894887Schin #define DBL_UINTMAX_MAX DBL_ULONG_MAX 1904887Schin #define DBL_LONG_MAX 9223372036854775807.0 1914887Schin #define DBL_LLONG_MAX DBL_LONG_MAX 1924887Schin #define DBL_INTMAX_MAX DBL_LONG_MAX 1934887Schin #define DBL_LONG_MIN (-9223372036854775808.0) 1944887Schin #define DBL_LLONG_MIN DBL_LONG_MIN 1954887Schin #define DBL_INTMAX_MIN DBL_LONG_MIN 1964887Schin 1974887Schin #define LDBL_ULONG_MAX 18446744073709551615.0L 1984887Schin #define LDBL_ULLONG_MAX LDBL_ULONG_MAX 1994887Schin #define LDBL_UINTMAX_MAX LDBL_ULONG_MAX 2004887Schin #define LDBL_LONG_MAX 9223372036854775807.0L 2014887Schin #define LDBL_LLONG_MAX LDBL_LONG_MAX 2024887Schin #define LDBL_INTMAX_MAX LDBL_LONG_MAX 2034887Schin #define LDBL_LONG_MIN (-9223372036854775808.0L) 2044887Schin #define LDBL_LLONG_MIN LDBL_LONG_MIN 2054887Schin #define LDBL_INTMAX_MIN LDBL_LONG_MIN 2064887Schin 2074887Schin #define FLTMAX_UINTMAX_MAX LDBL_UINTMAX_MAX 2084887Schin #define FLTMAX_INTMAX_MAX LDBL_INTMAX_MAX 2094887Schin #define FLTMAX_INTMAX_MIN LDBL_INTMAX_MIN 2104887Schin 2114887Schin typedef union _ast_dbl_exp_u 2124887Schin { 2134887Schin uint32_t e[sizeof(double)/4]; 2144887Schin double f; 2154887Schin } _ast_dbl_exp_t; 2164887Schin 2174887Schin #define _ast_dbl_exp_index 1 2184887Schin #define _ast_dbl_exp_shift 20 2194887Schin 2204887Schin typedef union _fltmax_exp_u 2214887Schin { 2224887Schin uint32_t e[sizeof(_ast_fltmax_t)/4]; 2234887Schin _ast_fltmax_t f; 2244887Schin } _ast_fltmax_exp_t; 2254887Schin 2264887Schin #define _ast_fltmax_exp_index 2 2274887Schin #define _ast_fltmax_exp_shift 0 2284887Schin 2294887Schin #define _ast_flt_unsigned_max_t unsigned long long 2304887Schin #define _ast_flt_nan_init 0xff,0xff,0xff,0x7f 2314887Schin #define _ast_flt_inf_init 0x00,0x00,0x80,0x7f 2324887Schin #define _ast_dbl_nan_init 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f 2334887Schin #define _ast_dbl_inf_init 0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0x7f 2344887Schin #define _ast_ldbl_nan_init 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x40,0x00,0x00,0x00,0x00,0x00 2354887Schin #define _ast_ldbl_inf_init 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xff,0x7f,0x40,0x00,0x00,0x00,0x00,0x00 2364887Schin #endif 237