da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin/* : : generated by proto : : */
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner/* : : generated from /home/gisburn/ksh93/ast_ksh_20100309/build_sparc_64bit/src/cmd/ksh93/features/math.sh by iffe version 2009-12-04 : : */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#ifndef _def_math_ksh93
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#if !defined(__PROTO__)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# if defined(__STDC__) || defined(__cplusplus) || defined(_proto) || defined(c_plusplus)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# if defined(__cplusplus)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __LINKAGE__ "C"
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# else
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __LINKAGE__
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __STDARG__
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __PROTO__(x) x
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __OTORP__(x)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __PARAM__(n,o) n
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# if !defined(__STDC__) && !defined(__cplusplus)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# if !defined(c_plusplus)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define const
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define signed
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define void int
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define volatile
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __V_ char
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# else
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __V_ void
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# else
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __PROTO__(x) ()
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __OTORP__(x) x
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __PARAM__(n,o) o
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __LINKAGE__
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __V_ char
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define const
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define signed
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define void int
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define volatile
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __MANGLE__ __LINKAGE__
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# if defined(__cplusplus) || defined(c_plusplus)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __VARARG__ ...
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# else
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __VARARG__
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# if defined(__STDARG__)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __VA_START__(p,a) va_start(p,a)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# else
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __VA_START__(p,a) va_start(p)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# if !defined(__INLINE__)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# if defined(__cplusplus)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __INLINE__ extern __MANGLE__ inline
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# else
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# if defined(_WIN32) && !defined(__GNUC__)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# define __INLINE__ __inline
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#if !defined(__LINKAGE__)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#define __LINKAGE__ /* 2004-08-11 transition */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#define _def_math_ksh93 1
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#define _sys_types 1 /* #include <sys/types.h> ok */
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner#define _LIB_dll 1 /* /home/gisburn/ksh93/ast_ksh_20100309/build_sparc_64bit/arch/sol11.sun4/lib/libdll.a is a library */
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner#define _LIB_ast 1 /* /home/gisburn/ksh93/ast_ksh_20100309/build_sparc_64bit/arch/sol11.sun4/lib/libast.a is a library */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#define _LIB_m 1 /* -lm is a library */
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner#define _LIB_cmd 1 /* /home/gisburn/ksh93/ast_ksh_20100309/build_sparc_64bit/arch/sol11.sun4/lib/libcmd.a is a library */
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define _LIB_md 1 /* -lmd is a library */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#define _LIB_nsl 1 /* -lnsl is a library */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner/* : : generated by iffe from /home/gisburn/ksh93/ast_ksh_20100309/build_sparc_64bit/src/cmd/ksh93/data/math.tab : : */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chintypedef Sfdouble_t (*Math_f) __PROTO__((Sfdouble_t,...));
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#include <ast_standards.h>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#include <math.h>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#include <ieeefp.h>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinstatic Sfdouble_t local_finite __PARAM__((Sfdouble_t a1), (a1)) __OTORP__(Sfdouble_t a1;){return finite(a1);}
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinstatic int local_fpclassify __PARAM__((Sfdouble_t a1), (a1)) __OTORP__(Sfdouble_t a1;){return fpclassify(a1);}
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinstatic int local_isfinite __PARAM__((Sfdouble_t a1), (a1)) __OTORP__(Sfdouble_t a1;){return isfinite(a1);}
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinstatic int local_isgreater __PARAM__((Sfdouble_t a1,Sfdouble_t a2), (a1, a2)) __OTORP__(Sfdouble_t a1;Sfdouble_t a2;){return isgreater(a1,a2);}
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinstatic int local_isgreaterequal __PARAM__((Sfdouble_t a1,Sfdouble_t a2), (a1, a2)) __OTORP__(Sfdouble_t a1;Sfdouble_t a2;){return isgreaterequal(a1,a2);}
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinstatic int local_isinf __PARAM__((Sfdouble_t a1), (a1)) __OTORP__(Sfdouble_t a1;){return isinf(a1);}
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinstatic int local_isless __PARAM__((Sfdouble_t a1,Sfdouble_t a2), (a1, a2)) __OTORP__(Sfdouble_t a1;Sfdouble_t a2;){return isless(a1,a2);}
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinstatic int local_islessequal __PARAM__((Sfdouble_t a1,Sfdouble_t a2), (a1, a2)) __OTORP__(Sfdouble_t a1;Sfdouble_t a2;){return islessequal(a1,a2);}
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinstatic int local_islessgreater __PARAM__((Sfdouble_t a1,Sfdouble_t a2), (a1, a2)) __OTORP__(Sfdouble_t a1;Sfdouble_t a2;){return islessgreater(a1,a2);}
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinstatic int local_isnormal __PARAM__((Sfdouble_t a1), (a1)) __OTORP__(Sfdouble_t a1;){return isnormal(a1);}
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz#ifdef FP_SUBNORMAL
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainzstatic int local_issubnormal __PARAM__((Sfdouble_t x), (x)) __OTORP__(Sfdouble_t x;){ return fpclassify(x) == FP_SUBNORMAL; }
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz#endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinstatic int local_isunordered __PARAM__((Sfdouble_t a1,Sfdouble_t a2), (a1, a2)) __OTORP__(Sfdouble_t a1;Sfdouble_t a2;){return isunordered(a1,a2);}
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz#ifdef FP_ZERO
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainzstatic int local_iszero __PARAM__((Sfdouble_t x), (x)) __OTORP__(Sfdouble_t x;){ return fpclassify(x) == FP_ZERO; }
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz#endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinstatic int local_signbit __PARAM__((Sfdouble_t a1), (a1)) __OTORP__(Sfdouble_t a1;){return signbit(a1);}
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin/*
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * first byte is two-digit octal number. Last digit is number of args
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * first digit is 0 if return value is double, 1 for integer
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinconst struct mathtab shtab_math[] =
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin{
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001acos", (Math_f)acosl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001acosh", (Math_f)acoshl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001asin", (Math_f)asinl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001asinh", (Math_f)asinhl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001atan", (Math_f)atanl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\002atan2", (Math_f)atan2l,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001atanh", (Math_f)atanhl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001cbrt", (Math_f)cbrtl,
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin "\001ceil", (Math_f)ceill,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\002copysign", (Math_f)copysignl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001cos", (Math_f)cosl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001cosh", (Math_f)coshl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001erf", (Math_f)erfl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001erfc", (Math_f)erfcl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001exp", (Math_f)expl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001exp2", (Math_f)exp2l,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001expm1", (Math_f)expm1l,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001fabs", (Math_f)fabsl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001abs", (Math_f)fabsl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\002fdim", (Math_f)fdiml,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001finite", (Math_f)local_finite,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001floor", (Math_f)floorl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001int", (Math_f)floorl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\003fma", (Math_f)fmal,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\002fmax", (Math_f)fmaxl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\002fmin", (Math_f)fminl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\002fmod", (Math_f)fmodl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\011fpclassify", (Math_f)local_fpclassify,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\002hypot", (Math_f)hypotl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\011ilogb", (Math_f)ilogbl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\011isfinite", (Math_f)local_isfinite,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\012isgreater", (Math_f)local_isgreater,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\012isgreaterequal", (Math_f)local_isgreaterequal,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\011isinf", (Math_f)local_isinf,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\012isless", (Math_f)local_isless,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\012islessequal", (Math_f)local_islessequal,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\012islessgreater", (Math_f)local_islessgreater,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\011isnan", (Math_f)isnanl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\011isnormal", (Math_f)local_isnormal,
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz#ifdef FP_SUBNORMAL
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz "\011issubnormal", (Math_f)local_issubnormal,
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz#endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\012isunordered", (Math_f)local_isunordered,
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz#ifdef FP_ZERO
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz "\011iszero", (Math_f)local_iszero,
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz#endif
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz "\001j0", (Math_f)j0l,
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz "\001j1", (Math_f)j1l,
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz "\002jn", (Math_f)jnl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001lgamma", (Math_f)lgammal,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001log", (Math_f)logl,
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz "\001log10", (Math_f)log10l,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001log1p", (Math_f)log1pl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001log2", (Math_f)log2l,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001logb", (Math_f)logbl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001nearbyint", (Math_f)nearbyintl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\002nextafter", (Math_f)nextafterl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\002nexttoward", (Math_f)nexttowardl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\002pow", (Math_f)powl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\002remainder", (Math_f)remainderl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001rint", (Math_f)rintl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001round", (Math_f)roundl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\002scalb", (Math_f)scalbl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\002scalbn", (Math_f)scalbnl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\011signbit", (Math_f)local_signbit,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001sin", (Math_f)sinl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001sinh", (Math_f)sinhl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001sqrt", (Math_f)sqrtl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001tan", (Math_f)tanl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001tanh", (Math_f)tanhl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001tgamma", (Math_f)tgammal,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "\001trunc", (Math_f)truncl,
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz "\001y0", (Math_f)y0l,
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz "\001y1", (Math_f)y1l,
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz "\002yn", (Math_f)ynl,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "", (Math_f)0
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin};
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#endif