mirror of
https://github.com/glest/glest-source.git
synced 2025-10-01 18:06:44 +02:00
Added streflop (standalone reproducible floating point library) layer to mega-glest (initial checkin only) and changed a few areas to use the library in linux
This commit is contained in:
7
source/shared_lib/include/streflop/libm/headers/SMath.h
Normal file
7
source/shared_lib/include/streflop/libm/headers/SMath.h
Normal file
@@ -0,0 +1,7 @@
|
||||
/* Copied from math.h in same directory */
|
||||
|
||||
/* This file is stub automatically generated by import.pl */
|
||||
|
||||
// Include bridge, just in case math_private is not included
|
||||
#include "../streflop_libm_bridge.h"
|
||||
|
77
source/shared_lib/include/streflop/libm/headers/endian.h
Normal file
77
source/shared_lib/include/streflop/libm/headers/endian.h
Normal file
@@ -0,0 +1,77 @@
|
||||
/* See the import.pl script for potential modifications */
|
||||
/* Copyright (C) 1992, 1996, 1997, 2000 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#ifndef _ENDIAN_H
|
||||
#define _ENDIAN_H 1
|
||||
|
||||
#include "features.h"
|
||||
|
||||
/* Definitions for byte order, according to significance of bytes,
|
||||
from low addresses to high addresses. The value is what you get by
|
||||
putting '4' in the most significant byte, '3' in the second most
|
||||
significant byte, '2' in the second least significant byte, and '1'
|
||||
in the least significant byte, and then writing down one digit for
|
||||
each byte, starting with the byte at the lowest address at the left,
|
||||
and proceeding to the byte with the highest address at the right. */
|
||||
|
||||
#define __LITTLE_ENDIAN 1234
|
||||
#define __BIG_ENDIAN 4321
|
||||
#define __PDP_ENDIAN 3412
|
||||
|
||||
/* This file defines `__BYTE_ORDER' for the particular machine. */
|
||||
#include "../streflop_libm_bridge.h"
|
||||
|
||||
/* Some machines may need to use a different endianness for floating point
|
||||
values. */
|
||||
#ifndef __FLOAT_WORD_ORDER
|
||||
# define __FLOAT_WORD_ORDER __BYTE_ORDER
|
||||
#endif
|
||||
|
||||
#ifdef __USE_BSD
|
||||
# define LITTLE_ENDIAN __LITTLE_ENDIAN
|
||||
# define BIG_ENDIAN __BIG_ENDIAN
|
||||
# define PDP_ENDIAN __PDP_ENDIAN
|
||||
# define BYTE_ORDER __BYTE_ORDER
|
||||
#endif
|
||||
|
||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
# define __LONG_LONG_PAIR(HI, LO) LO, HI
|
||||
#elif __BYTE_ORDER == __BIG_ENDIAN
|
||||
# define __LONG_LONG_PAIR(HI, LO) HI, LO
|
||||
#endif
|
||||
|
||||
#endif /* endian.h */
|
||||
//#include <string/endian.h>
|
||||
|
||||
#if 1
|
||||
//#if defined _LIBC && !defined _ISOMAC
|
||||
# if __FLOAT_WORD_ORDER == __BIG_ENDIAN
|
||||
# define BIG_ENDI 1
|
||||
# undef LITTLE_ENDI
|
||||
# define HIGH_HALF 0
|
||||
# define LOW_HALF 1
|
||||
# else
|
||||
# if __FLOAT_WORD_ORDER == __LITTLE_ENDIAN
|
||||
# undef BIG_ENDI
|
||||
# define LITTLE_ENDI 1
|
||||
# define HIGH_HALF 1
|
||||
# define LOW_HALF 0
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
350
source/shared_lib/include/streflop/libm/headers/features.h
Normal file
350
source/shared_lib/include/streflop/libm/headers/features.h
Normal file
@@ -0,0 +1,350 @@
|
||||
/* See the import.pl script for potential modifications */
|
||||
/* Copyright (C) 1991,1992,1993,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006
|
||||
Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#ifndef _FEATURES_H
|
||||
#define _FEATURES_H 1
|
||||
|
||||
/* These are defined by the user (or the compiler)
|
||||
to specify the desired environment:
|
||||
|
||||
__STRICT_ANSI__ ISO Standard C.
|
||||
_ISOC99_SOURCE Extensions to ISO C89 from ISO C99.
|
||||
_POSIX_SOURCE IEEE Std 1003.1.
|
||||
_POSIX_C_SOURCE If ==1, like _POSIX_SOURCE; if >=2 add IEEE Std 1003.2;
|
||||
if >=199309L, add IEEE Std 1003.1b-1993;
|
||||
if >=199506L, add IEEE Std 1003.1c-1995;
|
||||
if >=200112L, all of IEEE 1003.1-2004
|
||||
_XOPEN_SOURCE Includes POSIX and XPG things. Set to 500 if
|
||||
Single Unix conformance is wanted, to 600 for the
|
||||
upcoming sixth revision.
|
||||
_XOPEN_SOURCE_EXTENDED XPG things and X/Open Unix extensions.
|
||||
_LARGEFILE_SOURCE Some more functions for correct standard I/O.
|
||||
_LARGEFILE64_SOURCE Additional functionality from LFS for large files.
|
||||
_FILE_OFFSET_BITS=N Select default filesystem interface.
|
||||
_BSD_SOURCE ISO C, POSIX, and 4.3BSD things.
|
||||
_SVID_SOURCE ISO C, POSIX, and SVID things.
|
||||
_ATFILE_SOURCE Additional *at interfaces.
|
||||
_GNU_SOURCE All of the above, plus GNU extensions.
|
||||
_REENTRANT Select additionally reentrant object.
|
||||
_THREAD_SAFE Same as _REENTRANT, often used by other systems.
|
||||
_FORTIFY_SOURCE If set to numeric value > 0 additional security
|
||||
measures are defined, according to level.
|
||||
|
||||
The `-ansi' switch to the GNU C compiler defines __STRICT_ANSI__.
|
||||
If none of these are defined, the default is to have _SVID_SOURCE,
|
||||
_BSD_SOURCE, and _POSIX_SOURCE set to one and _POSIX_C_SOURCE set to
|
||||
199506L. If more than one of these are defined, they accumulate.
|
||||
For example __STRICT_ANSI__, _POSIX_SOURCE and _POSIX_C_SOURCE
|
||||
together give you ISO C, 1003.1, and 1003.2, but nothing else.
|
||||
|
||||
These are defined by this file and are used by the
|
||||
header files to decide what to declare or define:
|
||||
|
||||
__USE_ISOC99 Define ISO C99 things.
|
||||
__USE_POSIX Define IEEE Std 1003.1 things.
|
||||
__USE_POSIX2 Define IEEE Std 1003.2 things.
|
||||
__USE_POSIX199309 Define IEEE Std 1003.1, and .1b things.
|
||||
__USE_POSIX199506 Define IEEE Std 1003.1, .1b, .1c and .1i things.
|
||||
__USE_XOPEN Define XPG things.
|
||||
__USE_XOPEN_EXTENDED Define X/Open Unix things.
|
||||
__USE_UNIX98 Define Single Unix V2 things.
|
||||
__USE_XOPEN2K Define XPG6 things.
|
||||
__USE_LARGEFILE Define correct standard I/O things.
|
||||
__USE_LARGEFILE64 Define LFS things with separate names.
|
||||
__USE_FILE_OFFSET64 Define 64bit interface as default.
|
||||
__USE_BSD Define 4.3BSD things.
|
||||
__USE_SVID Define SVID things.
|
||||
__USE_MISC Define things common to BSD and System V Unix.
|
||||
__USE_ATFILE Define *at interfaces and AT_* constants for them.
|
||||
__USE_GNU Define GNU extensions.
|
||||
__USE_REENTRANT Define reentrant/thread-safe *_r functions.
|
||||
__USE_FORTIFY_LEVEL Additional security measures used, according to level.
|
||||
__FAVOR_BSD Favor 4.3BSD things in cases of conflict.
|
||||
|
||||
The macros `__GNU_LIBRARY__', `__GLIBC__', and `__GLIBC_MINOR__' are
|
||||
defined by this file unconditionally. `__GNU_LIBRARY__' is provided
|
||||
only for compatibility. All new code should use the other symbols
|
||||
to test for features.
|
||||
|
||||
All macros listed above as possibly being defined by this file are
|
||||
explicitly undefined if they are not explicitly defined.
|
||||
Feature-test macros that are not defined by the user or compiler
|
||||
but are implied by the other feature-test macros defined (or by the
|
||||
lack of any definitions) are defined by the file. */
|
||||
|
||||
|
||||
/* Undefine everything, so we get a clean slate. */
|
||||
#undef __USE_ISOC99
|
||||
#undef __USE_POSIX
|
||||
#undef __USE_POSIX2
|
||||
#undef __USE_POSIX199309
|
||||
#undef __USE_POSIX199506
|
||||
#undef __USE_XOPEN
|
||||
#undef __USE_XOPEN_EXTENDED
|
||||
#undef __USE_UNIX98
|
||||
#undef __USE_XOPEN2K
|
||||
#undef __USE_LARGEFILE
|
||||
#undef __USE_LARGEFILE64
|
||||
#undef __USE_FILE_OFFSET64
|
||||
#undef __USE_BSD
|
||||
#undef __USE_SVID
|
||||
#undef __USE_MISC
|
||||
#undef __USE_ATFILE
|
||||
#undef __USE_GNU
|
||||
#undef __USE_REENTRANT
|
||||
#undef __USE_FORTIFY_LEVEL
|
||||
#undef __FAVOR_BSD
|
||||
#undef __KERNEL_STRICT_NAMES
|
||||
|
||||
/* Suppress kernel-name space pollution unless user expressedly asks
|
||||
for it. */
|
||||
#ifndef _LOOSE_KERNEL_NAMES
|
||||
# define __KERNEL_STRICT_NAMES
|
||||
#endif
|
||||
|
||||
/* Always use ISO C things. */
|
||||
#define __USE_ANSI 1
|
||||
|
||||
/* Convenience macros to test the versions of glibc and gcc.
|
||||
Use them like this:
|
||||
#if __GNUC_PREREQ (2,8)
|
||||
... code requiring gcc 2.8 or later ...
|
||||
#endif
|
||||
Note - they won't work for gcc1 or glibc1, since the _MINOR macros
|
||||
were not defined then. */
|
||||
#if defined __GNUC__ && defined __GNUC_MINOR__
|
||||
# define __GNUC_PREREQ(maj, min) \
|
||||
((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
|
||||
#else
|
||||
# define __GNUC_PREREQ(maj, min) 0
|
||||
#endif
|
||||
|
||||
|
||||
/* If _BSD_SOURCE was defined by the user, favor BSD over POSIX. */
|
||||
#if defined _BSD_SOURCE && \
|
||||
!(defined _POSIX_SOURCE || defined _POSIX_C_SOURCE || \
|
||||
defined _XOPEN_SOURCE || defined _XOPEN_SOURCE_EXTENDED || \
|
||||
defined _GNU_SOURCE || defined _SVID_SOURCE)
|
||||
# define __FAVOR_BSD 1
|
||||
#endif
|
||||
|
||||
/* If _GNU_SOURCE was defined by the user, turn on all the other features. */
|
||||
#ifdef _GNU_SOURCE
|
||||
# undef _ISOC99_SOURCE
|
||||
# define _ISOC99_SOURCE 1
|
||||
# undef _POSIX_SOURCE
|
||||
# define _POSIX_SOURCE 1
|
||||
# undef _POSIX_C_SOURCE
|
||||
# define _POSIX_C_SOURCE 199506L
|
||||
# undef _XOPEN_SOURCE
|
||||
# define _XOPEN_SOURCE 600
|
||||
# undef _XOPEN_SOURCE_EXTENDED
|
||||
# define _XOPEN_SOURCE_EXTENDED 1
|
||||
# undef _LARGEFILE64_SOURCE
|
||||
# define _LARGEFILE64_SOURCE 1
|
||||
# undef _BSD_SOURCE
|
||||
# define _BSD_SOURCE 1
|
||||
# undef _SVID_SOURCE
|
||||
# define _SVID_SOURCE 1
|
||||
# undef _ATFILE_SOURCE
|
||||
# define _ATFILE_SOURCE 1
|
||||
#endif
|
||||
|
||||
/* If nothing (other than _GNU_SOURCE) is defined,
|
||||
define _BSD_SOURCE and _SVID_SOURCE. */
|
||||
#if (!defined __STRICT_ANSI__ && !defined _ISOC99_SOURCE && \
|
||||
!defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE && \
|
||||
!defined _XOPEN_SOURCE && !defined _XOPEN_SOURCE_EXTENDED && \
|
||||
!defined _BSD_SOURCE && !defined _SVID_SOURCE)
|
||||
# define _BSD_SOURCE 1
|
||||
# define _SVID_SOURCE 1
|
||||
#endif
|
||||
|
||||
/* This is to enable the ISO C99 extension. Also recognize the old macro
|
||||
which was used prior to the standard acceptance. This macro will
|
||||
eventually go away and the features enabled by default once the ISO C99
|
||||
standard is widely adopted. */
|
||||
#if (defined _ISOC99_SOURCE || defined _ISOC9X_SOURCE \
|
||||
|| (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L))
|
||||
# define __USE_ISOC99 1
|
||||
#endif
|
||||
|
||||
/* If none of the ANSI/POSIX macros are defined, use POSIX.1 and POSIX.2
|
||||
(and IEEE Std 1003.1b-1993 unless _XOPEN_SOURCE is defined). */
|
||||
#if ((!defined __STRICT_ANSI__ || (_XOPEN_SOURCE - 0) >= 500) && \
|
||||
!defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE)
|
||||
# define _POSIX_SOURCE 1
|
||||
# if defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 500
|
||||
# define _POSIX_C_SOURCE 2
|
||||
# elif defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 600
|
||||
# define _POSIX_C_SOURCE 199506L
|
||||
# else
|
||||
# define _POSIX_C_SOURCE 200112L
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if defined _POSIX_SOURCE || _POSIX_C_SOURCE >= 1 || defined _XOPEN_SOURCE
|
||||
# define __USE_POSIX 1
|
||||
#endif
|
||||
|
||||
#if defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 2 || defined _XOPEN_SOURCE
|
||||
# define __USE_POSIX2 1
|
||||
#endif
|
||||
|
||||
#if (_POSIX_C_SOURCE - 0) >= 199309L
|
||||
# define __USE_POSIX199309 1
|
||||
#endif
|
||||
|
||||
#if (_POSIX_C_SOURCE - 0) >= 199506L
|
||||
# define __USE_POSIX199506 1
|
||||
#endif
|
||||
|
||||
#if (_POSIX_C_SOURCE - 0) >= 200112L
|
||||
# define __USE_XOPEN2K 1
|
||||
#endif
|
||||
|
||||
#ifdef _XOPEN_SOURCE
|
||||
# define __USE_XOPEN 1
|
||||
# if (_XOPEN_SOURCE - 0) >= 500
|
||||
# define __USE_XOPEN_EXTENDED 1
|
||||
# define __USE_UNIX98 1
|
||||
# undef _LARGEFILE_SOURCE
|
||||
# define _LARGEFILE_SOURCE 1
|
||||
# if (_XOPEN_SOURCE - 0) >= 600
|
||||
# define __USE_XOPEN2K 1
|
||||
# undef __USE_ISOC99
|
||||
# define __USE_ISOC99 1
|
||||
# endif
|
||||
# else
|
||||
# ifdef _XOPEN_SOURCE_EXTENDED
|
||||
# define __USE_XOPEN_EXTENDED 1
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef _LARGEFILE_SOURCE
|
||||
# define __USE_LARGEFILE 1
|
||||
#endif
|
||||
|
||||
#ifdef _LARGEFILE64_SOURCE
|
||||
# define __USE_LARGEFILE64 1
|
||||
#endif
|
||||
|
||||
#if defined _FILE_OFFSET_BITS && _FILE_OFFSET_BITS == 64
|
||||
# define __USE_FILE_OFFSET64 1
|
||||
#endif
|
||||
|
||||
#if defined _BSD_SOURCE || defined _SVID_SOURCE
|
||||
# define __USE_MISC 1
|
||||
#endif
|
||||
|
||||
#ifdef _BSD_SOURCE
|
||||
# define __USE_BSD 1
|
||||
#endif
|
||||
|
||||
#ifdef _SVID_SOURCE
|
||||
# define __USE_SVID 1
|
||||
#endif
|
||||
|
||||
#ifdef _ATFILE_SOURCE
|
||||
# define __USE_ATFILE 1
|
||||
#endif
|
||||
|
||||
#ifdef _GNU_SOURCE
|
||||
# define __USE_GNU 1
|
||||
#endif
|
||||
|
||||
#if defined _REENTRANT || defined _THREAD_SAFE
|
||||
# define __USE_REENTRANT 1
|
||||
#endif
|
||||
|
||||
#if defined _FORTIFY_SOURCE && _FORTIFY_SOURCE > 0 \
|
||||
&& __GNUC_PREREQ (4, 1) && defined __OPTIMIZE__ && __OPTIMIZE__ > 0
|
||||
# if _FORTIFY_SOURCE > 1
|
||||
# define __USE_FORTIFY_LEVEL 2
|
||||
# else
|
||||
# define __USE_FORTIFY_LEVEL 1
|
||||
# endif
|
||||
#else
|
||||
# define __USE_FORTIFY_LEVEL 0
|
||||
#endif
|
||||
|
||||
/* We do support the IEC 559 math functionality, real and complex. */
|
||||
#define __STDC_IEC_559__ 1
|
||||
#define __STDC_IEC_559_COMPLEX__ 1
|
||||
|
||||
/* wchar_t uses ISO 10646-1 (2nd ed., published 2000-09-15) / Unicode 3.1. */
|
||||
#define __STDC_ISO_10646__ 200009L
|
||||
|
||||
/* This macro indicates that the installed library is the GNU C Library.
|
||||
For historic reasons the value now is 6 and this will stay from now
|
||||
on. The use of this variable is deprecated. Use __GLIBC__ and
|
||||
__GLIBC_MINOR__ now (see below) when you want to test for a specific
|
||||
GNU C library version and use the values in <gnu/lib-names.h> to get
|
||||
the sonames of the shared libraries. */
|
||||
#undef __GNU_LIBRARY__
|
||||
#define __GNU_LIBRARY__ 6
|
||||
|
||||
/* Major and minor version number of the GNU C library package. Use
|
||||
these macros to test for features in specific releases. */
|
||||
#define __GLIBC__ 2
|
||||
#define __GLIBC_MINOR__ 4
|
||||
|
||||
#define __GLIBC_PREREQ(maj, min) \
|
||||
((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min))
|
||||
|
||||
/* Decide whether a compiler supports the long long datatypes. */
|
||||
#if defined __GNUC__ \
|
||||
|| (defined __PGI && defined __i386__ ) \
|
||||
|| (defined __INTEL_COMPILER && (defined __i386__ || defined __ia64__)) \
|
||||
|| (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)
|
||||
# define __GLIBC_HAVE_LONG_LONG 1
|
||||
#endif
|
||||
|
||||
/* This is here only because every header file already includes this one. */
|
||||
#ifndef __ASSEMBLER__
|
||||
# ifndef _SYS_CDEFS_H
|
||||
//# include <sys/cdefs.h>
|
||||
# endif
|
||||
|
||||
/* If we don't have __REDIRECT, prototypes will be missing if
|
||||
__USE_FILE_OFFSET64 but not __USE_LARGEFILE[64]. */
|
||||
# if defined __USE_FILE_OFFSET64 && !defined __REDIRECT
|
||||
# define __USE_LARGEFILE 1
|
||||
# define __USE_LARGEFILE64 1
|
||||
# endif
|
||||
|
||||
#endif /* !ASSEMBLER */
|
||||
|
||||
/* Decide whether we can define 'extern inline' functions in headers. */
|
||||
#if __GNUC_PREREQ (2, 7) && defined __OPTIMIZE__ \
|
||||
&& !defined __OPTIMIZE_SIZE__ && !defined __NO_INLINE__
|
||||
# define __USE_EXTERN_INLINES 1
|
||||
#endif
|
||||
|
||||
|
||||
/* This is here only because every header file already includes this one.
|
||||
Get the definitions of all the appropriate `__stub_FUNCTION' symbols.
|
||||
<gnu/stubs.h> contains `#define __stub_FUNCTION' when FUNCTION is a stub
|
||||
that will always return failure (and set errno to ENOSYS). */
|
||||
//#include <gnu/stubs.h>
|
||||
|
||||
|
||||
#endif /* features.h */
|
223
source/shared_lib/include/streflop/libm/headers/ieee754.h
Normal file
223
source/shared_lib/include/streflop/libm/headers/ieee754.h
Normal file
@@ -0,0 +1,223 @@
|
||||
/* See the import.pl script for potential modifications */
|
||||
/* Copyright (C) 1992, 1995, 1996, 1999 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#ifndef _IEEE754_H
|
||||
|
||||
#define _IEEE754_H 1
|
||||
#include "../streflop_libm_bridge.h"
|
||||
|
||||
#include "features.h"
|
||||
|
||||
#include "endian.h"
|
||||
|
||||
//__BEGIN_DECLS
|
||||
|
||||
#if defined(LIBM_COMPILING_FLT32)
|
||||
union ieee754_float
|
||||
{
|
||||
int storage[sizeof(float)/sizeof(int)];
|
||||
inline Simple& f() {return SIMPLE_FROM_INT_PTR(&storage[0]);}
|
||||
inline const Simple& f() const {return CONST_SIMPLE_FROM_INT_PTR(&storage[0]);}
|
||||
|
||||
|
||||
/* This is the IEEE 754 single-precision format. */
|
||||
struct
|
||||
{
|
||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||
unsigned int negative:1;
|
||||
unsigned int exponent:8;
|
||||
unsigned int mantissa:23;
|
||||
#endif /* Big endian. */
|
||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
unsigned int mantissa:23;
|
||||
unsigned int exponent:8;
|
||||
unsigned int negative:1;
|
||||
#endif /* Little endian. */
|
||||
} ieee;
|
||||
|
||||
/* This format makes it easier to see if a NaN is a signalling NaN. */
|
||||
struct
|
||||
{
|
||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||
unsigned int negative:1;
|
||||
unsigned int exponent:8;
|
||||
unsigned int quiet_nan:1;
|
||||
unsigned int mantissa:22;
|
||||
#endif /* Big endian. */
|
||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
unsigned int mantissa:22;
|
||||
unsigned int quiet_nan:1;
|
||||
unsigned int exponent:8;
|
||||
unsigned int negative:1;
|
||||
#endif /* Little endian. */
|
||||
} ieee_nan;
|
||||
};
|
||||
|
||||
#define IEEE754_FLOAT_BIAS 0x7f /* Added to exponent. */
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#if defined(LIBM_COMPILING_DBL64)
|
||||
union ieee754_double
|
||||
{
|
||||
int storage[sizeof(double)/sizeof(int)];
|
||||
inline Double& d() {return DOUBLE_FROM_INT_PTR(&storage[0]);}
|
||||
inline const Double& d() const {return CONST_DOUBLE_FROM_INT_PTR(&storage[0]);}
|
||||
|
||||
|
||||
/* This is the IEEE 754 double-precision format. */
|
||||
struct
|
||||
{
|
||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||
unsigned int negative:1;
|
||||
unsigned int exponent:11;
|
||||
/* Together these comprise the mantissa. */
|
||||
unsigned int mantissa0:20;
|
||||
unsigned int mantissa1:32;
|
||||
#endif /* Big endian. */
|
||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
# if __FLOAT_WORD_ORDER == BIG_ENDIAN
|
||||
unsigned int mantissa0:20;
|
||||
unsigned int exponent:11;
|
||||
unsigned int negative:1;
|
||||
unsigned int mantissa1:32;
|
||||
# else
|
||||
/* Together these comprise the mantissa. */
|
||||
unsigned int mantissa1:32;
|
||||
unsigned int mantissa0:20;
|
||||
unsigned int exponent:11;
|
||||
unsigned int negative:1;
|
||||
# endif
|
||||
#endif /* Little endian. */
|
||||
} ieee;
|
||||
|
||||
/* This format makes it easier to see if a NaN is a signalling NaN. */
|
||||
struct
|
||||
{
|
||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||
unsigned int negative:1;
|
||||
unsigned int exponent:11;
|
||||
unsigned int quiet_nan:1;
|
||||
/* Together these comprise the mantissa. */
|
||||
unsigned int mantissa0:19;
|
||||
unsigned int mantissa1:32;
|
||||
#else
|
||||
# if __FLOAT_WORD_ORDER == BIG_ENDIAN
|
||||
unsigned int mantissa0:19;
|
||||
unsigned int quiet_nan:1;
|
||||
unsigned int exponent:11;
|
||||
unsigned int negative:1;
|
||||
unsigned int mantissa1:32;
|
||||
# else
|
||||
/* Together these comprise the mantissa. */
|
||||
unsigned int mantissa1:32;
|
||||
unsigned int mantissa0:19;
|
||||
unsigned int quiet_nan:1;
|
||||
unsigned int exponent:11;
|
||||
unsigned int negative:1;
|
||||
# endif
|
||||
#endif
|
||||
} ieee_nan;
|
||||
};
|
||||
|
||||
#define IEEE754_DOUBLE_BIAS 0x3ff /* Added to exponent. */
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#if defined(LIBM_COMPILING_LDBL96)
|
||||
#if defined(Extended)
|
||||
union ieee854_long_double
|
||||
{
|
||||
int storage[sizeof(long double)/sizeof(int)];
|
||||
inline Extended& d() {return EXTENDED_FROM_INT_PTR(&storage[0]);}
|
||||
inline const Extended& d() const {return CONST_EXTENDED_FROM_INT_PTR(&storage[0]);}
|
||||
|
||||
|
||||
/* This is the IEEE 854 double-extended-precision format. */
|
||||
struct
|
||||
{
|
||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||
unsigned int negative:1;
|
||||
unsigned int exponent:15;
|
||||
unsigned int empty:16;
|
||||
unsigned int mantissa0:32;
|
||||
unsigned int mantissa1:32;
|
||||
#endif
|
||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
# if __FLOAT_WORD_ORDER == BIG_ENDIAN
|
||||
unsigned int exponent:15;
|
||||
unsigned int negative:1;
|
||||
unsigned int empty:16;
|
||||
unsigned int mantissa0:32;
|
||||
unsigned int mantissa1:32;
|
||||
# else
|
||||
unsigned int mantissa1:32;
|
||||
unsigned int mantissa0:32;
|
||||
unsigned int exponent:15;
|
||||
unsigned int negative:1;
|
||||
unsigned int empty:16;
|
||||
# endif
|
||||
#endif
|
||||
} ieee;
|
||||
|
||||
/* This is for NaNs in the IEEE 854 double-extended-precision format. */
|
||||
struct
|
||||
{
|
||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||
unsigned int negative:1;
|
||||
unsigned int exponent:15;
|
||||
unsigned int empty:16;
|
||||
unsigned int one:1;
|
||||
unsigned int quiet_nan:1;
|
||||
unsigned int mantissa0:30;
|
||||
unsigned int mantissa1:32;
|
||||
#endif
|
||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
# if __FLOAT_WORD_ORDER == BIG_ENDIAN
|
||||
unsigned int exponent:15;
|
||||
unsigned int negative:1;
|
||||
unsigned int empty:16;
|
||||
unsigned int mantissa0:30;
|
||||
unsigned int quiet_nan:1;
|
||||
unsigned int one:1;
|
||||
unsigned int mantissa1:32;
|
||||
# else
|
||||
unsigned int mantissa1:32;
|
||||
unsigned int mantissa0:30;
|
||||
unsigned int quiet_nan:1;
|
||||
unsigned int one:1;
|
||||
unsigned int exponent:15;
|
||||
unsigned int negative:1;
|
||||
unsigned int empty:16;
|
||||
# endif
|
||||
#endif
|
||||
} ieee_nan;
|
||||
};
|
||||
|
||||
#define IEEE854_LONG_DOUBLE_BIAS 0x3fff
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
//__END_DECLS
|
||||
|
||||
#endif /* ieee754.h */
|
5
source/shared_lib/include/streflop/libm/headers/math.h
Normal file
5
source/shared_lib/include/streflop/libm/headers/math.h
Normal file
@@ -0,0 +1,5 @@
|
||||
/* This file is stub automatically generated by import.pl */
|
||||
|
||||
// Include bridge, just in case math_private is not included
|
||||
#include "../streflop_libm_bridge.h"
|
||||
|
285
source/shared_lib/include/streflop/libm/headers/math_private.h
Normal file
285
source/shared_lib/include/streflop/libm/headers/math_private.h
Normal file
@@ -0,0 +1,285 @@
|
||||
/* See the import.pl script for potential modifications */
|
||||
/*
|
||||
* ====================================================
|
||||
* Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
|
||||
*
|
||||
* Developed at SunPro, a Sun Microsystems, Inc. business.
|
||||
* Permission to use, copy, modify, and distribute this
|
||||
* software is freely granted, provided that this notice
|
||||
* is preserved.
|
||||
* ====================================================
|
||||
*/
|
||||
|
||||
/*
|
||||
* from: @(#)fdlibm.h 5.1 93/09/24
|
||||
*/
|
||||
|
||||
#ifndef _MATH_PRIVATE_H_
|
||||
#define _MATH_PRIVATE_H_
|
||||
|
||||
/* import.pl: Skipped the macro definitions, keep only the declarations, converted to use streflop types (aliases or wrappers) */
|
||||
#include "../streflop_libm_bridge.h"
|
||||
|
||||
namespace streflop_libm {
|
||||
|
||||
#ifdef LIBM_COMPILING_FLT32
|
||||
#define __sqrtf __ieee754_sqrtf
|
||||
#define fabsf __fabsf
|
||||
#define copysignf __copysignf
|
||||
extern Simple __log1pf(Simple x);
|
||||
extern Simple __fabsf(Simple x);
|
||||
extern Simple __atanf(Simple x);
|
||||
extern Simple __expm1f(Simple x);
|
||||
extern int __isinff(Simple x);
|
||||
extern Simple __rintf(Simple x);
|
||||
extern Simple __cosf(Simple x);
|
||||
extern void __sincosf (Simple x, Simple *sinx, Simple *cosx);
|
||||
extern Simple __floorf(Simple x);
|
||||
extern Simple __scalbnf (Simple x, int n);
|
||||
extern Simple __frexpf(Simple x, int *eptr);
|
||||
extern Simple __ldexpf(Simple value, int exp);
|
||||
extern int __finitef(Simple x);
|
||||
#endif
|
||||
|
||||
#ifdef LIBM_COMPILING_DBL64
|
||||
#define __sqrt __ieee754_sqrt
|
||||
#define fabs __fabs
|
||||
#define copysign __copysign
|
||||
extern Double __log1p(Double x);
|
||||
extern Double __fabs(Double x);
|
||||
extern Double atan(Double x);
|
||||
extern Double __expm1(Double x);
|
||||
extern int __isinf(Double x);
|
||||
extern Double __rint(Double x);
|
||||
extern Double __cos(Double x);
|
||||
extern void __sincos (Double x, Double *sinx, Double *cosx);
|
||||
extern Double __floor(Double x);
|
||||
extern Double __scalbn(Double x, int n);
|
||||
extern Double __frexp(Double x, int *eptr);
|
||||
extern Double __ldexp(Double value, int exp);
|
||||
extern int __finite(Double x);
|
||||
#endif
|
||||
|
||||
#ifdef LIBM_COMPILING_LDBL96
|
||||
#if defined(Extended)
|
||||
#define fabsl __fabsl
|
||||
extern Extended __cosl(Extended x);
|
||||
extern Extended __sinl(Extended x);
|
||||
extern Extended __fabsl(Extended x);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef LIBM_COMPILING_DBL64
|
||||
extern Double __ieee754_sqrt (Double);
|
||||
extern Double __ieee754_acos (Double);
|
||||
extern Double __ieee754_acosh (Double);
|
||||
extern Double __ieee754_log (Double);
|
||||
extern Double __ieee754_atanh (Double);
|
||||
extern Double __ieee754_asin (Double);
|
||||
extern Double __ieee754_atan2 (Double,Double);
|
||||
extern Double __ieee754_exp (Double);
|
||||
extern Double __ieee754_exp2 (Double);
|
||||
extern Double __ieee754_exp10 (Double);
|
||||
extern Double __ieee754_cosh (Double);
|
||||
extern Double __ieee754_fmod (Double,Double);
|
||||
extern Double __ieee754_pow (Double,Double);
|
||||
extern Double __ieee754_lgamma_r (Double,int *);
|
||||
extern Double __ieee754_gamma_r (Double,int *);
|
||||
extern Double __ieee754_lgamma (Double);
|
||||
extern Double __ieee754_gamma (Double);
|
||||
extern Double __ieee754_log10 (Double);
|
||||
extern Double __ieee754_log2 (Double);
|
||||
extern Double __ieee754_sinh (Double);
|
||||
extern Double __ieee754_hypot (Double,Double);
|
||||
extern Double __ieee754_j0 (Double);
|
||||
extern Double __ieee754_j1 (Double);
|
||||
extern Double __ieee754_y0 (Double);
|
||||
extern Double __ieee754_y1 (Double);
|
||||
extern Double __ieee754_jn (int,Double);
|
||||
extern Double __ieee754_yn (int,Double);
|
||||
extern Double __ieee754_remainder (Double,Double);
|
||||
extern int32_t __ieee754_rem_pio2 (Double,Double*);
|
||||
extern Double __ieee754_scalb (Double,Double);
|
||||
#endif
|
||||
|
||||
/* fdlibm kernel function */
|
||||
#ifdef LIBM_COMPILING_DBL64
|
||||
extern Double __kernel_standard (Double,Double,int);
|
||||
extern Double __kernel_sin (Double,Double,int);
|
||||
extern Double __kernel_cos (Double,Double);
|
||||
extern Double __kernel_tan (Double,Double,int);
|
||||
extern int __kernel_rem_pio2 (Double*,Double*,int,int,int, const int32_t*);
|
||||
#endif
|
||||
|
||||
/* internal functions. */
|
||||
#ifdef LIBM_COMPILING_DBL64
|
||||
extern Double __copysign (Double x, Double __y);
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
#ifdef LIBM_COMPILING_DBL64
|
||||
extern inline Double __copysign (Double x, Double y)
|
||||
{ return __builtin_copysign (x, y); }
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* ieee style elementary Simple functions */
|
||||
#ifdef LIBM_COMPILING_FLT32
|
||||
extern Simple __ieee754_sqrtf (Simple);
|
||||
extern Simple __ieee754_acosf (Simple);
|
||||
extern Simple __ieee754_acoshf (Simple);
|
||||
extern Simple __ieee754_logf (Simple);
|
||||
extern Simple __ieee754_atanhf (Simple);
|
||||
extern Simple __ieee754_asinf (Simple);
|
||||
extern Simple __ieee754_atan2f (Simple,Simple);
|
||||
extern Simple __ieee754_expf (Simple);
|
||||
extern Simple __ieee754_exp2f (Simple);
|
||||
extern Simple __ieee754_exp10f (Simple);
|
||||
extern Simple __ieee754_coshf (Simple);
|
||||
extern Simple __ieee754_fmodf (Simple,Simple);
|
||||
extern Simple __ieee754_powf (Simple,Simple);
|
||||
extern Simple __ieee754_lgammaf_r (Simple,int *);
|
||||
extern Simple __ieee754_gammaf_r (Simple,int *);
|
||||
extern Simple __ieee754_lgammaf (Simple);
|
||||
extern Simple __ieee754_gammaf (Simple);
|
||||
extern Simple __ieee754_log10f (Simple);
|
||||
extern Simple __ieee754_log2f (Simple);
|
||||
extern Simple __ieee754_sinhf (Simple);
|
||||
extern Simple __ieee754_hypotf (Simple,Simple);
|
||||
extern Simple __ieee754_j0f (Simple);
|
||||
extern Simple __ieee754_j1f (Simple);
|
||||
extern Simple __ieee754_y0f (Simple);
|
||||
extern Simple __ieee754_y1f (Simple);
|
||||
extern Simple __ieee754_jnf (int,Simple);
|
||||
extern Simple __ieee754_ynf (int,Simple);
|
||||
extern Simple __ieee754_remainderf (Simple,Simple);
|
||||
extern int32_t __ieee754_rem_pio2f (Simple,Simple*);
|
||||
extern Simple __ieee754_scalbf (Simple,Simple);
|
||||
#endif
|
||||
|
||||
|
||||
/* Simple versions of fdlibm kernel functions */
|
||||
#ifdef LIBM_COMPILING_FLT32
|
||||
extern Simple __kernel_sinf (Simple,Simple,int);
|
||||
extern Simple __kernel_cosf (Simple,Simple);
|
||||
extern Simple __kernel_tanf (Simple,Simple,int);
|
||||
extern int __kernel_rem_pio2f (Simple*,Simple*,int,int,int, const int32_t*);
|
||||
#endif
|
||||
|
||||
/* internal functions. */
|
||||
#ifdef LIBM_COMPILING_FLT32
|
||||
extern Simple __copysignf (Simple x, Simple __y);
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
#ifdef LIBM_COMPILING_FLT32
|
||||
extern inline Simple __copysignf (Simple x, Simple y)
|
||||
{ return __builtin_copysignf (x, y); }
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(Extended)
|
||||
/* ieee style elementary Extended functions */
|
||||
#ifdef LIBM_COMPILING_LDBL96
|
||||
extern Extended __ieee754_sqrtl (Extended);
|
||||
extern Extended __ieee754_acosl (Extended);
|
||||
extern Extended __ieee754_acoshl (Extended);
|
||||
extern Extended __ieee754_logl (Extended);
|
||||
extern Extended __ieee754_atanhl (Extended);
|
||||
extern Extended __ieee754_asinl (Extended);
|
||||
extern Extended __ieee754_atan2l (Extended,Extended);
|
||||
extern Extended __ieee754_expl (Extended);
|
||||
extern Extended __ieee754_exp2l (Extended);
|
||||
extern Extended __ieee754_exp10l (Extended);
|
||||
extern Extended __ieee754_coshl (Extended);
|
||||
extern Extended __ieee754_fmodl (Extended,Extended);
|
||||
extern Extended __ieee754_powl (Extended,Extended);
|
||||
extern Extended __ieee754_lgammal_r (Extended,int *);
|
||||
extern Extended __ieee754_gammal_r (Extended,int *);
|
||||
extern Extended __ieee754_lgammal (Extended);
|
||||
extern Extended __ieee754_gammal (Extended);
|
||||
extern Extended __ieee754_log10l (Extended);
|
||||
extern Extended __ieee754_log2l (Extended);
|
||||
extern Extended __ieee754_sinhl (Extended);
|
||||
extern Extended __ieee754_hypotl (Extended,Extended);
|
||||
extern Extended __ieee754_j0l (Extended);
|
||||
extern Extended __ieee754_j1l (Extended);
|
||||
extern Extended __ieee754_y0l (Extended);
|
||||
extern Extended __ieee754_y1l (Extended);
|
||||
extern Extended __ieee754_jnl (int,Extended);
|
||||
extern Extended __ieee754_ynl (int,Extended);
|
||||
extern Extended __ieee754_remainderl (Extended,Extended);
|
||||
extern int __ieee754_rem_pio2l (Extended,Extended*);
|
||||
extern Extended __ieee754_scalbl (Extended,Extended);
|
||||
#endif
|
||||
|
||||
/* Extended versions of fdlibm kernel functions */
|
||||
#ifdef LIBM_COMPILING_LDBL96
|
||||
extern Extended __kernel_sinl (Extended,Extended,int);
|
||||
extern Extended __kernel_cosl (Extended,Extended);
|
||||
extern Extended __kernel_tanl (Extended,Extended,int);
|
||||
extern void __kernel_sincosl (Extended,Extended,
|
||||
Extended *,Extended *, int);
|
||||
extern int __kernel_rem_pio2l (Extended*,Extended*,int,int,
|
||||
int,const int*);
|
||||
#endif
|
||||
|
||||
#ifndef NO_LONG_DOUBLE
|
||||
/* prototypes required to compile the ldbl-96 support without warnings */
|
||||
#ifdef LIBM_COMPILING_LDBL96
|
||||
extern int __finitel (Extended);
|
||||
extern int __ilogbl (Extended);
|
||||
extern int __isinfl (Extended);
|
||||
extern int __isnanl (Extended);
|
||||
extern Extended __atanl (Extended);
|
||||
extern Extended __copysignl (Extended, Extended);
|
||||
extern Extended __expm1l (Extended);
|
||||
extern Extended __floorl (Extended);
|
||||
extern Extended __frexpl (Extended, int *);
|
||||
extern Extended __ldexpl (Extended, int);
|
||||
extern Extended __log1pl (Extended);
|
||||
extern Extended __nanl (const char *);
|
||||
extern Extended __rintl (Extended);
|
||||
extern Extended __scalbnl (Extended, int);
|
||||
extern Extended __sqrtl (Extended x);
|
||||
extern Extended fabsl (Extended x);
|
||||
extern void __sincosl (Extended, Extended *, Extended *);
|
||||
extern Extended __logbl (Extended x);
|
||||
extern Extended __significandl (Extended x);
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
#ifdef LIBM_COMPILING_LDBL96
|
||||
extern inline Extended __copysignl (Extended x, Extended y)
|
||||
{ return __builtin_copysignl (x, y); }
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
/* Prototypes for functions of the IBM Accurate Mathematical Library. */
|
||||
#ifdef LIBM_COMPILING_DBL64
|
||||
extern Double __exp1 (Double __x, Double __xx, Double __error);
|
||||
extern Double __sin (Double __x);
|
||||
extern Double __cos (Double __x);
|
||||
extern int __branred (Double __x, Double *__a, Double *__aa);
|
||||
extern void __doasin (Double __x, Double __dx, Double __v[]);
|
||||
extern void __dubsin (Double __x, Double __dx, Double __v[]);
|
||||
extern void __dubcos (Double __x, Double __dx, Double __v[]);
|
||||
extern Double __halfulp (Double __x, Double __y);
|
||||
extern Double __sin32 (Double __x, Double __res, Double __res1);
|
||||
extern Double __cos32 (Double __x, Double __res, Double __res1);
|
||||
extern Double __mpsin (Double __x, Double __dx);
|
||||
extern Double __mpcos (Double __x, Double __dx);
|
||||
extern Double __mpsin1 (Double __x);
|
||||
extern Double __mpcos1 (Double __x);
|
||||
extern Double __slowexp (Double __x);
|
||||
extern Double __slowpow (Double __x, Double __y, Double __z);
|
||||
extern void __docos (Double __x, Double __dx, Double __v[]);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
#endif /* _MATH_PRIVATE_H_ */
|
26
source/shared_lib/include/streflop/libm/headers/wchar.h
Normal file
26
source/shared_lib/include/streflop/libm/headers/wchar.h
Normal file
@@ -0,0 +1,26 @@
|
||||
/* wchar_t type related definitions.
|
||||
Copyright (C) 2000 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#ifndef _BITS_WCHAR_H
|
||||
#define _BITS_WCHAR_H 1
|
||||
|
||||
#define __WCHAR_MIN (-2147483647 - 1)
|
||||
#define __WCHAR_MAX (2147483647)
|
||||
|
||||
#endif /* bits/wchar.h */
|
Reference in New Issue
Block a user