OpenSolaris_b135/lib/libshell/sparc/src/cmd/ksh93/FEATURE/math


/* : : generated by proto : : */
/* : : generated from /home/gisburn/ksh93/ast_ksh_20091014/build_sparc_32bit/src/cmd/ksh93/features/math.sh by iffe version 2009-10-06 : : */
#ifndef _def_math_ksh93
#if !defined(__PROTO__)
#  if defined(__STDC__) || defined(__cplusplus) || defined(_proto) || defined(c_plusplus)
#    if defined(__cplusplus)
#      define __LINKAGE__	"C"
#    else
#      define __LINKAGE__
#    endif
#    define __STDARG__
#    define __PROTO__(x)	x
#    define __OTORP__(x)
#    define __PARAM__(n,o)	n
#    if !defined(__STDC__) && !defined(__cplusplus)
#      if !defined(c_plusplus)
#      	define const
#      endif
#      define signed
#      define void		int
#      define volatile
#      define __V_		char
#    else
#      define __V_		void
#    endif
#  else
#    define __PROTO__(x)	()
#    define __OTORP__(x)	x
#    define __PARAM__(n,o)	o
#    define __LINKAGE__
#    define __V_		char
#    define const
#    define signed
#    define void		int
#    define volatile
#  endif
#  define __MANGLE__	__LINKAGE__
#  if defined(__cplusplus) || defined(c_plusplus)
#    define __VARARG__	...
#  else
#    define __VARARG__
#  endif
#  if defined(__STDARG__)
#    define __VA_START__(p,a)	va_start(p,a)
#  else
#    define __VA_START__(p,a)	va_start(p)
#  endif
#  if !defined(__INLINE__)
#    if defined(__cplusplus)
#      define __INLINE__	extern __MANGLE__ inline
#    else
#      if defined(_WIN32) && !defined(__GNUC__)
#      	define __INLINE__	__inline
#      endif
#    endif
#  endif
#endif
#if !defined(__LINKAGE__)
#define __LINKAGE__		/* 2004-08-11 transition */
#endif

#define _def_math_ksh93	1
#define _sys_types	1	/* #include <sys/types.h> ok */
#define _LIB_dll	1	/* /home/gisburn/ksh93/ast_ksh_20091014/build_sparc_32bit/arch/sol11.sun4/lib/libdll.a is a library */
#define _LIB_ast	1	/* /home/gisburn/ksh93/ast_ksh_20091014/build_sparc_32bit/arch/sol11.sun4/lib/libast.a is a library */
#define _LIB_m	1	/* -lm is a library */
#define _LIB_cmd	1	/* /home/gisburn/ksh93/ast_ksh_20091014/build_sparc_32bit/arch/sol11.sun4/lib/libcmd.a is a library */
#define _LIB_md	1	/* -lmd is a library */
#define _LIB_nsl	1	/* -lnsl is a library */
                  

/* : : generated by iffe from /home/gisburn/ksh93/ast_ksh_20091014/build_sparc_32bit/src/cmd/ksh93/data/math.tab : : */

typedef Sfdouble_t (*Math_f) __PROTO__((Sfdouble_t,...));

#include <ast_standards.h>
#include <math.h>
#include <ieeefp.h>

static Sfdouble_t local_finite __PARAM__((Sfdouble_t a1), (a1)) __OTORP__(Sfdouble_t a1;){return finite(a1);}
static int local_fpclassify __PARAM__((Sfdouble_t a1), (a1)) __OTORP__(Sfdouble_t a1;){return fpclassify(a1);}
static int local_isfinite __PARAM__((Sfdouble_t a1), (a1)) __OTORP__(Sfdouble_t a1;){return isfinite(a1);}
static int local_isgreater __PARAM__((Sfdouble_t a1,Sfdouble_t a2), (a1, a2)) __OTORP__(Sfdouble_t a1;Sfdouble_t a2;){return isgreater(a1,a2);}
static int local_isgreaterequal __PARAM__((Sfdouble_t a1,Sfdouble_t a2), (a1, a2)) __OTORP__(Sfdouble_t a1;Sfdouble_t a2;){return isgreaterequal(a1,a2);}
static int local_isinf __PARAM__((Sfdouble_t a1), (a1)) __OTORP__(Sfdouble_t a1;){return isinf(a1);}
static int local_isless __PARAM__((Sfdouble_t a1,Sfdouble_t a2), (a1, a2)) __OTORP__(Sfdouble_t a1;Sfdouble_t a2;){return isless(a1,a2);}
static int local_islessequal __PARAM__((Sfdouble_t a1,Sfdouble_t a2), (a1, a2)) __OTORP__(Sfdouble_t a1;Sfdouble_t a2;){return islessequal(a1,a2);}
static int local_islessgreater __PARAM__((Sfdouble_t a1,Sfdouble_t a2), (a1, a2)) __OTORP__(Sfdouble_t a1;Sfdouble_t a2;){return islessgreater(a1,a2);}
static int local_isnormal __PARAM__((Sfdouble_t a1), (a1)) __OTORP__(Sfdouble_t a1;){return isnormal(a1);}
#ifdef FP_SUBNORMAL
static int local_issubnormal __PARAM__((Sfdouble_t x), (x)) __OTORP__(Sfdouble_t x;){ return fpclassify(x) == FP_SUBNORMAL; }
#endif
static int local_isunordered __PARAM__((Sfdouble_t a1,Sfdouble_t a2), (a1, a2)) __OTORP__(Sfdouble_t a1;Sfdouble_t a2;){return isunordered(a1,a2);}
#ifdef FP_ZERO
static int local_iszero __PARAM__((Sfdouble_t x), (x)) __OTORP__(Sfdouble_t x;){ return fpclassify(x) == FP_ZERO; }
#endif
static int local_signbit __PARAM__((Sfdouble_t a1), (a1)) __OTORP__(Sfdouble_t a1;){return signbit(a1);}

/*
 * first byte is two-digit octal number.  Last digit is number of args
 * first digit is 0 if return value is double, 1 for integer
 */
const struct mathtab shtab_math[] =
{
	"\001acos",	(Math_f)acosl,
	"\001acosh",	(Math_f)acoshl,
	"\001asin",	(Math_f)asinl,
	"\001asinh",	(Math_f)asinhl,
	"\001atan",	(Math_f)atanl,
	"\002atan2",	(Math_f)atan2l,
	"\001atanh",	(Math_f)atanhl,
	"\001cbrt",	(Math_f)cbrtl,
	"\001ceil",	(Math_f)ceill,
	"\002copysign",	(Math_f)copysignl,
	"\001cos",	(Math_f)cosl,
	"\001cosh",	(Math_f)coshl,
	"\001erf",	(Math_f)erfl,
	"\001erfc",	(Math_f)erfcl,
	"\001exp",	(Math_f)expl,
	"\001exp2",	(Math_f)exp2l,
	"\001expm1",	(Math_f)expm1l,
	"\001fabs",	(Math_f)fabsl,
	"\001abs",	(Math_f)fabsl,
	"\002fdim",	(Math_f)fdiml,
	"\001finite",	(Math_f)local_finite,
	"\001floor",	(Math_f)floorl,
	"\001int",	(Math_f)floorl,
	"\003fma",	(Math_f)fmal,
	"\002fmax",	(Math_f)fmaxl,
	"\002fmin",	(Math_f)fminl,
	"\002fmod",	(Math_f)fmodl,
	"\011fpclassify",	(Math_f)local_fpclassify,
	"\002hypot",	(Math_f)hypotl,
	"\011ilogb",	(Math_f)ilogbl,
	"\011isfinite",	(Math_f)local_isfinite,
	"\012isgreater",	(Math_f)local_isgreater,
	"\012isgreaterequal",	(Math_f)local_isgreaterequal,
	"\011isinf",	(Math_f)local_isinf,
	"\012isless",	(Math_f)local_isless,
	"\012islessequal",	(Math_f)local_islessequal,
	"\012islessgreater",	(Math_f)local_islessgreater,
	"\011isnan",	(Math_f)isnanl,
	"\011isnormal",	(Math_f)local_isnormal,
#ifdef FP_SUBNORMAL
	"\011issubnormal",	(Math_f)local_issubnormal,
#endif
	"\012isunordered",	(Math_f)local_isunordered,
#ifdef FP_ZERO
	"\011iszero",	(Math_f)local_iszero,
#endif
	"\001j0",	(Math_f)j0l,
	"\001j1",	(Math_f)j1l,
	"\002jn",	(Math_f)jnl,
	"\001lgamma",	(Math_f)lgammal,
	"\001log",	(Math_f)logl,
	"\001log10",	(Math_f)log10l,
	"\001log1p",	(Math_f)log1pl,
	"\001log2",	(Math_f)log2l,
	"\001logb",	(Math_f)logbl,
	"\001nearbyint",	(Math_f)nearbyintl,
	"\002nextafter",	(Math_f)nextafterl,
	"\002nexttoward",	(Math_f)nexttowardl,
	"\002pow",	(Math_f)powl,
	"\002remainder",	(Math_f)remainderl,
	"\001rint",	(Math_f)rintl,
	"\001round",	(Math_f)roundl,
	"\002scalb",	(Math_f)scalbl,
	"\002scalbn",	(Math_f)scalbnl,
	"\011signbit",	(Math_f)local_signbit,
	"\001sin",	(Math_f)sinl,
	"\001sinh",	(Math_f)sinhl,
	"\001sqrt",	(Math_f)sqrtl,
	"\001tan",	(Math_f)tanl,
	"\001tanh",	(Math_f)tanhl,
	"\001tgamma",	(Math_f)tgammal,
	"\001trunc",	(Math_f)truncl,
	"\001y0",	(Math_f)y0l,
	"\001y1",	(Math_f)y1l,
	"\002yn",	(Math_f)ynl,
	"",		(Math_f)0
};
#endif