diff options
| author | mrg <mrg@NetBSD.org> | 2003-07-26 14:48:06 +0000 |
|---|---|---|
| committer | mrg <mrg@NetBSD.org> | 2003-07-26 14:48:06 +0000 |
| commit | 9a2ca8e117e2b5fcb4c096589c0172351ea541ef (patch) | |
| tree | a74c023ba2c8b718931606444f1cdb4f45e26f0f /gnu/lib/libstdc++-v3 | |
| parent | d1fbc02d92565209cef6c7556b9dbf3dd0de092b (diff) | |
working arm & sparc64 support
Diffstat (limited to 'gnu/lib/libstdc++-v3')
| -rw-r--r-- | gnu/lib/libstdc++-v3/arch/arm/c++config.h | 1228 | ||||
| -rw-r--r-- | gnu/lib/libstdc++-v3/arch/arm/defs.mk | 18 | ||||
| -rw-r--r-- | gnu/lib/libstdc++-v3/arch/arm/gthr-default.h | 242 | ||||
| -rw-r--r-- | gnu/lib/libstdc++-v3/arch/arm/gthr-posix.h | 524 | ||||
| -rw-r--r-- | gnu/lib/libstdc++-v3/arch/arm/gthr-single.h | 242 | ||||
| -rw-r--r-- | gnu/lib/libstdc++-v3/arch/arm/gthr.h | 108 | ||||
| -rw-r--r-- | gnu/lib/libstdc++-v3/arch/sparc64/c++config.h | 1228 | ||||
| -rw-r--r-- | gnu/lib/libstdc++-v3/arch/sparc64/defs.mk | 18 | ||||
| -rw-r--r-- | gnu/lib/libstdc++-v3/arch/sparc64/gthr-default.h | 242 | ||||
| -rw-r--r-- | gnu/lib/libstdc++-v3/arch/sparc64/gthr-posix.h | 524 | ||||
| -rw-r--r-- | gnu/lib/libstdc++-v3/arch/sparc64/gthr-single.h | 242 | ||||
| -rw-r--r-- | gnu/lib/libstdc++-v3/arch/sparc64/gthr.h | 108 |
12 files changed, 4724 insertions, 0 deletions
diff --git a/gnu/lib/libstdc++-v3/arch/arm/c++config.h b/gnu/lib/libstdc++-v3/arch/arm/c++config.h new file mode 100644 index 00000000000..bb207d4c901 --- /dev/null +++ b/gnu/lib/libstdc++-v3/arch/arm/c++config.h @@ -0,0 +1,1228 @@ +/* This file is automatically generated. DO NOT EDIT! */ +/* Generated from: NetBSD: mknative-gcc,v 1.1 2003/07/25 16:26:53 mrg Exp */ + +// Predefined symbols and macros -*- C++ -*- + +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003 +// Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This 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 General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, +// USA. + +// As a special exception, you may use this file as part of a free software +// library without restriction. Specifically, if other files instantiate +// templates or use macros or inline functions from this file, or you compile +// this file and link it with other files to produce an executable, this +// file does not by itself cause the resulting executable to be covered by +// the GNU General Public License. This exception does not however +// invalidate any other reasons why the executable file might be covered by +// the GNU General Public License. + +#ifndef _CPP_CPPCONFIG +#define _CPP_CPPCONFIG 1 + +// Pick up any OS-specific definitions. +#include <bits/os_defines.h> + +// The current version of the C++ library in compressed ISO date format. +#define __GLIBCPP__ 20030720 + +// This is necessary until GCC supports separate template compilation. +#define _GLIBCPP_NO_TEMPLATE_EXPORT 1 + +// This is a hack around not having either pre-compiled headers or +// export compilation. If defined, the io, string, and valarray +// headers will include all the necessary bits. If not defined, the +// implementation optimizes the headers for the most commonly-used +// types. For the io library, this means that larger, out-of-line +// member functions are only declared, and definitions are not parsed +// by the compiler, but instead instantiated into the library binary. +#define _GLIBCPP_FULLY_COMPLIANT_HEADERS 1 + +// Allow use of the GNU syntax extension, "extern template." This +// extension is fully documented in the g++ manual, but in a nutshell, +// it inhibits all implicit instantiations and is used throughout the +// library to avoid multiple weak definitions for required types that +// are already explicitly instantiated in the library binary. This +// substantially reduces the binary size of resulting executables. +#ifndef _GLIBCPP_EXTERN_TEMPLATE +#define _GLIBCPP_EXTERN_TEMPLATE 1 +#endif + +// To enable older, ARM-style iostreams and other anachronisms use this. +//#define _GLIBCPP_DEPRECATED 1 + +// Use corrected code from the committee library group's issues list. +#define _GLIBCPP_RESOLVE_LIB_DEFECTS 1 + +// Hopefully temporary workaround to autoconf/m4 issue with quoting '@'. +#define _GLIBCPP_AT_AT "@@" + +// In those parts of the standard C++ library that use a mutex instead +// of a spin-lock, we now unconditionally use GCC's gthr.h mutex +// abstraction layer. All support to directly map to various +// threading models has been removed. Note: gthr.h may well map to +// gthr-single.h which is a correct way to express no threads support +// in gcc. Support for the undocumented _NOTHREADS has been removed. + +// Default to the typically high-speed, pool-based allocator (as +// libstdc++-v2) instead of the malloc-based allocator (libstdc++-v3 +// snapshots). See libstdc++-v3/docs/html/17_intro/howto.html for +// details on why you don't want to override this setting. Ensure +// that threads are properly configured on your platform before +// assigning blame to the STL container-memory allocator. After doing +// so, please report any possible issues to libstdc++@gcc.gnu.org . +// Do not define __USE_MALLOC on the command line. Enforce it here: +#ifdef __USE_MALLOC +#error __USE_MALLOC should never be defined. Read the release notes. +#endif + +// Create a boolean flag to be used to determine if --fast-math is set. +#ifdef __FAST_MATH__ +#define _GLIBCPP_FAST_MATH 1 +#else +#define _GLIBCPP_FAST_MATH 0 +#endif + +// The remainder of the prewritten config is mostly automatic; all the +// user hooks are listed above. + +// End of prewritten config; the discovered settings follow. +/* config.h. Generated automatically by configure. */ +/* config.h.in. Generated automatically from configure.in by autoheader. */ + +/* Define if you have a working `mmap' system call. */ +#define _GLIBCPP_HAVE_MMAP 1 + +// Define if GCC supports weak symbols. +/* #undef _GLIBCPP_SUPPORTS_WEAK */ + +// Include I/O support for 'long long' and 'unsigned long long'. +/* #undef _GLIBCPP_USE_LONG_LONG */ + +// Define if C99 features such as lldiv_t, llabs, lldiv should be exposed. +/* #undef _GLIBCPP_USE_C99 */ + +// Define if code specialized for wchar_t should be used. +/* #undef _GLIBCPP_USE_WCHAR_T */ + +// Define if using setrlimit to limit memory usage during 'make check'. +/* #undef _GLIBCPP_MEM_LIMITS */ + +// Define to use concept checking code from the boost libraries. +/* #undef _GLIBCPP_CONCEPT_CHECKS */ + +// Define to use symbol versioning in the shared library. +/* #undef _GLIBCPP_SYMVER */ + +// Define symbol versioning in assember directives. If symbol +// versioning is beigng used, and the assembler supports this kind of +// thing, then use it. +// NB: _GLIBCPP_AT_AT is a hack to work around quoting issues in m4. +#if _GLIBCPP_SYMVER + #define _GLIBCPP_ASM_SYMVER(cur, old, version) \ + asm (".symver " #cur "," #old _GLIBCPP_AT_AT #version); +#else + #define _GLIBCPP_ASM_SYMVER(cur, old, version) +#endif + +// Define if gthr-default.h exists (meaning that threading support is enabled). +/* #undef _GLIBCPP_HAVE_GTHR_DEFAULT */ + +// Define if drand48 exists. +/* #undef _GLIBCPP_HAVE_DRAND48 */ + +// Define if getpagesize exists. +/* #undef _GLIBCPP_HAVE_GETPAGESIZE */ + +// Define if setenv exists. +/* #undef _GLIBCPP_HAVE_SETENV */ + +// Define if sigsetjmp exists. +/* #undef _GLIBCPP_HAVE_SIGSETJMP */ + +// Define if mbstate_t exists in wchar.h. +#define _GLIBCPP_HAVE_MBSTATE_T 1 + +// Define if you have the modff function. +#define _GLIBCPP_HAVE_MODFF 1 + +// Define if you have the modfl function. +/* #undef _GLIBCPP_HAVE_MODFL */ + +// Define if you have the expf function. +#define _GLIBCPP_HAVE_EXPF 1 + +// Define if you have the expl function. +/* #undef _GLIBCPP_HAVE_EXPL */ + +// Define if you have the hypotf function. +#define _GLIBCPP_HAVE_HYPOTF 1 + +// Define if you have the hypotl function. +/* #undef _GLIBCPP_HAVE_HYPOTL */ + +// Define if the compiler/host combination has __builtin_abs +/* #undef _GLIBCPP_HAVE___BUILTIN_ABS */ + +// Define if the compiler/host combination has __builtin_labs +/* #undef _GLIBCPP_HAVE___BUILTIN_LABS */ + +// Define if the compiler/host combination has __builtin_cos +/* #undef _GLIBCPP_HAVE___BUILTIN_COS */ + +// Define if the compiler/host combination has __builtin_cosf +/* #undef _GLIBCPP_HAVE___BUILTIN_COSF */ + +// Define if the compiler/host combination has __builtin_cosl +/* #undef _GLIBCPP_HAVE___BUILTIN_COSL */ + +// Define if the compiler/host combination has __builtin_fabs +/* #undef _GLIBCPP_HAVE___BUILTIN_FABS */ + +// Define if the compiler/host combination has __builtin_fabsf +/* #undef _GLIBCPP_HAVE___BUILTIN_FABSF */ + +// Define if the compiler/host combination has __builtin_fabsl +/* #undef _GLIBCPP_HAVE___BUILTIN_FABSL */ + +// Define if the compiler/host combination has __builtin_sin +/* #undef _GLIBCPP_HAVE___BUILTIN_SIN */ + +// Define if the compiler/host combination has __builtin_sinf +/* #undef _GLIBCPP_HAVE___BUILTIN_SINF */ + +// Define if the compiler/host combination has __builtin_sinl +/* #undef _GLIBCPP_HAVE___BUILTIN_SINL */ + +// Define if the compiler/host combination has __builtin_sqrt +/* #undef _GLIBCPP_HAVE___BUILTIN_SQRT */ + +// Define if the compiler/host combination has __builtin_sqrtf +/* #undef _GLIBCPP_HAVE___BUILTIN_SQRTF */ + +// Define if the compiler/host combination has __builtin_sqrtl +/* #undef _GLIBCPP_HAVE___BUILTIN_SQRTL */ + +// Define if poll is available in <poll.h>. +/* #undef _GLIBCPP_HAVE_POLL */ + +// Define if S_ISREG (Posix) is available in <sys/stat.h>. +/* #undef _GLIBCPP_HAVE_S_ISREG */ + +// Define if S_IFREG is available in <sys/stat.h>. +/* #undef _GLIBCPP_HAVE_S_IFREG */ + +// Define if LC_MESSAGES is available in <locale.h>. +/* #undef _GLIBCPP_HAVE_LC_MESSAGES */ + +/* Define if you have the __signbit function. */ +/* #undef _GLIBCPP_HAVE___SIGNBIT */ + +/* Define if you have the __signbitf function. */ +/* #undef _GLIBCPP_HAVE___SIGNBITF */ + +/* Define if you have the __signbitl function. */ +/* #undef _GLIBCPP_HAVE___SIGNBITL */ + +/* Define if you have the _acosf function. */ +/* #undef _GLIBCPP_HAVE__ACOSF */ + +/* Define if you have the _acosl function. */ +/* #undef _GLIBCPP_HAVE__ACOSL */ + +/* Define if you have the _asinf function. */ +/* #undef _GLIBCPP_HAVE__ASINF */ + +/* Define if you have the _asinl function. */ +/* #undef _GLIBCPP_HAVE__ASINL */ + +/* Define if you have the _atan2f function. */ +/* #undef _GLIBCPP_HAVE__ATAN2F */ + +/* Define if you have the _atan2l function. */ +/* #undef _GLIBCPP_HAVE__ATAN2L */ + +/* Define if you have the _atanf function. */ +/* #undef _GLIBCPP_HAVE__ATANF */ + +/* Define if you have the _atanl function. */ +/* #undef _GLIBCPP_HAVE__ATANL */ + +/* Define if you have the _ceilf function. */ +/* #undef _GLIBCPP_HAVE__CEILF */ + +/* Define if you have the _ceill function. */ +/* #undef _GLIBCPP_HAVE__CEILL */ + +/* Define if you have the _copysign function. */ +/* #undef _GLIBCPP_HAVE__COPYSIGN */ + +/* Define if you have the _copysignl function. */ +/* #undef _GLIBCPP_HAVE__COPYSIGNL */ + +/* Define if you have the _cosf function. */ +/* #undef _GLIBCPP_HAVE__COSF */ + +/* Define if you have the _coshf function. */ +/* #undef _GLIBCPP_HAVE__COSHF */ + +/* Define if you have the _coshl function. */ +/* #undef _GLIBCPP_HAVE__COSHL */ + +/* Define if you have the _cosl function. */ +/* #undef _GLIBCPP_HAVE__COSL */ + +/* Define if you have the _expf function. */ +/* #undef _GLIBCPP_HAVE__EXPF */ + +/* Define if you have the _expl function. */ +/* #undef _GLIBCPP_HAVE__EXPL */ + +/* Define if you have the _fabsf function. */ +/* #undef _GLIBCPP_HAVE__FABSF */ + +/* Define if you have the _fabsl function. */ +/* #undef _GLIBCPP_HAVE__FABSL */ + +/* Define if you have the _finite function. */ +/* #undef _GLIBCPP_HAVE__FINITE */ + +/* Define if you have the _finitef function. */ +/* #undef _GLIBCPP_HAVE__FINITEF */ + +/* Define if you have the _finitel function. */ +/* #undef _GLIBCPP_HAVE__FINITEL */ + +/* Define if you have the _floorf function. */ +/* #undef _GLIBCPP_HAVE__FLOORF */ + +/* Define if you have the _floorl function. */ +/* #undef _GLIBCPP_HAVE__FLOORL */ + +/* Define if you have the _fmodf function. */ +/* #undef _GLIBCPP_HAVE__FMODF */ + +/* Define if you have the _fmodl function. */ +/* #undef _GLIBCPP_HAVE__FMODL */ + +/* Define if you have the _fpclass function. */ +/* #undef _GLIBCPP_HAVE__FPCLASS */ + +/* Define if you have the _frexpf function. */ +/* #undef _GLIBCPP_HAVE__FREXPF */ + +/* Define if you have the _frexpl function. */ +/* #undef _GLIBCPP_HAVE__FREXPL */ + +/* Define if you have the _hypot function. */ +/* #undef _GLIBCPP_HAVE__HYPOT */ + +/* Define if you have the _hypotf function. */ +/* #undef _GLIBCPP_HAVE__HYPOTF */ + +/* Define if you have the _hypotl function. */ +/* #undef _GLIBCPP_HAVE__HYPOTL */ + +/* Define if you have the _isinf function. */ +/* #undef _GLIBCPP_HAVE__ISINF */ + +/* Define if you have the _isinff function. */ +/* #undef _GLIBCPP_HAVE__ISINFF */ + +/* Define if you have the _isinfl function. */ +/* #undef _GLIBCPP_HAVE__ISINFL */ + +/* Define if you have the _isnan function. */ +/* #undef _GLIBCPP_HAVE__ISNAN */ + +/* Define if you have the _isnanf function. */ +/* #undef _GLIBCPP_HAVE__ISNANF */ + +/* Define if you have the _isnanl function. */ +/* #undef _GLIBCPP_HAVE__ISNANL */ + +/* Define if you have the _ldexpf function. */ +/* #undef _GLIBCPP_HAVE__LDEXPF */ + +/* Define if you have the _ldexpl function. */ +/* #undef _GLIBCPP_HAVE__LDEXPL */ + +/* Define if you have the _log10f function. */ +/* #undef _GLIBCPP_HAVE__LOG10F */ + +/* Define if you have the _log10l function. */ +/* #undef _GLIBCPP_HAVE__LOG10L */ + +/* Define if you have the _logf function. */ +/* #undef _GLIBCPP_HAVE__LOGF */ + +/* Define if you have the _logl function. */ +/* #undef _GLIBCPP_HAVE__LOGL */ + +/* Define if you have the _modff function. */ +/* #undef _GLIBCPP_HAVE__MODFF */ + +/* Define if you have the _modfl function. */ +/* #undef _GLIBCPP_HAVE__MODFL */ + +/* Define if you have the _powf function. */ +/* #undef _GLIBCPP_HAVE__POWF */ + +/* Define if you have the _powl function. */ +/* #undef _GLIBCPP_HAVE__POWL */ + +/* Define if you have the _qfpclass function. */ +/* #undef _GLIBCPP_HAVE__QFPCLASS */ + +/* Define if you have the _sincos function. */ +/* #undef _GLIBCPP_HAVE__SINCOS */ + +/* Define if you have the _sincosf function. */ +/* #undef _GLIBCPP_HAVE__SINCOSF */ + +/* Define if you have the _sincosl function. */ +/* #undef _GLIBCPP_HAVE__SINCOSL */ + +/* Define if you have the _sinf function. */ +/* #undef _GLIBCPP_HAVE__SINF */ + +/* Define if you have the _sinhf function. */ +/* #undef _GLIBCPP_HAVE__SINHF */ + +/* Define if you have the _sinhl function. */ +/* #undef _GLIBCPP_HAVE__SINHL */ + +/* Define if you have the _sinl function. */ +/* #undef _GLIBCPP_HAVE__SINL */ + +/* Define if you have the _sqrtf function. */ +/* #undef _GLIBCPP_HAVE__SQRTF */ + +/* Define if you have the _sqrtl function. */ +/* #undef _GLIBCPP_HAVE__SQRTL */ + +/* Define if you have the _tanf function. */ +/* #undef _GLIBCPP_HAVE__TANF */ + +/* Define if you have the _tanhf function. */ +/* #undef _GLIBCPP_HAVE__TANHF */ + +/* Define if you have the _tanhl function. */ +/* #undef _GLIBCPP_HAVE__TANHL */ + +/* Define if you have the _tanl function. */ +/* #undef _GLIBCPP_HAVE__TANL */ + +/* Define if you have the acosf function. */ +#define _GLIBCPP_HAVE_ACOSF 1 + +/* Define if you have the acosl function. */ +/* #undef _GLIBCPP_HAVE_ACOSL */ + +/* Define if you have the asinf function. */ +#define _GLIBCPP_HAVE_ASINF 1 + +/* Define if you have the asinl function. */ +/* #undef _GLIBCPP_HAVE_ASINL */ + +/* Define if you have the atan2f function. */ +#define _GLIBCPP_HAVE_ATAN2F 1 + +/* Define if you have the atan2l function. */ +/* #undef _GLIBCPP_HAVE_ATAN2L */ + +/* Define if you have the atanf function. */ +#define _GLIBCPP_HAVE_ATANF 1 + +/* Define if you have the atanl function. */ +/* #undef _GLIBCPP_HAVE_ATANL */ + +/* Define if you have the btowc function. */ +#define _GLIBCPP_HAVE_BTOWC 1 + +/* Define if you have the ceilf function. */ +#define _GLIBCPP_HAVE_CEILF 1 + +/* Define if you have the ceill function. */ +/* #undef _GLIBCPP_HAVE_CEILL */ + +/* Define if you have the copysign function. */ +#define _GLIBCPP_HAVE_COPYSIGN 1 + +/* Define if you have the copysignf function. */ +#define _GLIBCPP_HAVE_COPYSIGNF 1 + +/* Define if you have the copysignl function. */ +/* #undef _GLIBCPP_HAVE_COPYSIGNL */ + +/* Define if you have the cosf function. */ +#define _GLIBCPP_HAVE_COSF 1 + +/* Define if you have the coshf function. */ +#define _GLIBCPP_HAVE_COSHF 1 + +/* Define if you have the coshl function. */ +/* #undef _GLIBCPP_HAVE_COSHL */ + +/* Define if you have the cosl function. */ +/* #undef _GLIBCPP_HAVE_COSL */ + +/* Define if you have the drand48 function. */ +/* #undef _GLIBCPP_HAVE_DRAND48 */ + +/* Define if you have the expf function. */ +#define _GLIBCPP_HAVE_EXPF 1 + +/* Define if you have the expl function. */ +/* #undef _GLIBCPP_HAVE_EXPL */ + +/* Define if you have the fabsf function. */ +#define _GLIBCPP_HAVE_FABSF 1 + +/* Define if you have the fabsl function. */ +/* #undef _GLIBCPP_HAVE_FABSL */ + +/* Define if you have the fgetwc function. */ +#define _GLIBCPP_HAVE_FGETWC 1 + +/* Define if you have the fgetws function. */ +#define _GLIBCPP_HAVE_FGETWS 1 + +/* Define if you have the finite function. */ +#define _GLIBCPP_HAVE_FINITE 1 + +/* Define if you have the finitef function. */ +#define _GLIBCPP_HAVE_FINITEF 1 + +/* Define if you have the finitel function. */ +/* #undef _GLIBCPP_HAVE_FINITEL */ + +/* Define if you have the floorf function. */ +#define _GLIBCPP_HAVE_FLOORF 1 + +/* Define if you have the floorl function. */ +/* #undef _GLIBCPP_HAVE_FLOORL */ + +/* Define if you have the fmodf function. */ +#define _GLIBCPP_HAVE_FMODF 1 + +/* Define if you have the fmodl function. */ +/* #undef _GLIBCPP_HAVE_FMODL */ + +/* Define if you have the fpclass function. */ +/* #undef _GLIBCPP_HAVE_FPCLASS */ + +/* Define if you have the fputwc function. */ +#define _GLIBCPP_HAVE_FPUTWC 1 + +/* Define if you have the fputws function. */ +#define _GLIBCPP_HAVE_FPUTWS 1 + +/* Define if you have the frexpf function. */ +#define _GLIBCPP_HAVE_FREXPF 1 + +/* Define if you have the frexpl function. */ +/* #undef _GLIBCPP_HAVE_FREXPL */ + +/* Define if you have the fwide function. */ +#define _GLIBCPP_HAVE_FWIDE 1 + +/* Define if you have the fwprintf function. */ +/* #undef _GLIBCPP_HAVE_FWPRINTF */ + +/* Define if you have the fwscanf function. */ +/* #undef _GLIBCPP_HAVE_FWSCANF */ + +/* Define if you have the getpagesize function. */ +/* #undef _GLIBCPP_HAVE_GETPAGESIZE */ + +/* Define if you have the getwc function. */ +#define _GLIBCPP_HAVE_GETWC 1 + +/* Define if you have the getwchar function. */ +#define _GLIBCPP_HAVE_GETWCHAR 1 + +/* Define if you have the hypot function. */ +/* #undef _GLIBCPP_HAVE_HYPOT */ + +/* Define if you have the hypotf function. */ +#define _GLIBCPP_HAVE_HYPOTF 1 + +/* Define if you have the hypotl function. */ +/* #undef _GLIBCPP_HAVE_HYPOTL */ + +/* Define if you have the iconv function. */ +#define _GLIBCPP_HAVE_ICONV 1 + +/* Define if you have the iconv_close function. */ +#define _GLIBCPP_HAVE_ICONV_CLOSE 1 + +/* Define if you have the iconv_open function. */ +#define _GLIBCPP_HAVE_ICONV_OPEN 1 + +/* Define if you have the isatty function. */ +/* #undef _GLIBCPP_HAVE_ISATTY */ + +/* Define if you have the isinf function. */ +#define _GLIBCPP_HAVE_ISINF 1 + +/* Define if you have the isinff function. */ +#define _GLIBCPP_HAVE_ISINFF 1 + +/* Define if you have the isinfl function. */ +/* #undef _GLIBCPP_HAVE_ISINFL */ + +/* Define if you have the isnan function. */ +#define _GLIBCPP_HAVE_ISNAN 1 + +/* Define if you have the isnanf function. */ +#define _GLIBCPP_HAVE_ISNANF 1 + +/* Define if you have the isnanl function. */ +/* #undef _GLIBCPP_HAVE_ISNANL */ + +/* Define if you have the ldexpf function. */ +#define _GLIBCPP_HAVE_LDEXPF 1 + +/* Define if you have the ldexpl function. */ +/* #undef _GLIBCPP_HAVE_LDEXPL */ + +/* Define if you have the log10f function. */ +#define _GLIBCPP_HAVE_LOG10F 1 + +/* Define if you have the log10l function. */ +/* #undef _GLIBCPP_HAVE_LOG10L */ + +/* Define if you have the logf function. */ +#define _GLIBCPP_HAVE_LOGF 1 + +/* Define if you have the logl function. */ +/* #undef _GLIBCPP_HAVE_LOGL */ + +/* Define if you have the mbrlen function. */ +#define _GLIBCPP_HAVE_MBRLEN 1 + +/* Define if you have the mbrtowc function. */ +#define _GLIBCPP_HAVE_MBRTOWC 1 + +/* Define if you have the mbsinit function. */ +#define _GLIBCPP_HAVE_MBSINIT 1 + +/* Define if you have the mbsrtowcs function. */ +#define _GLIBCPP_HAVE_MBSRTOWCS 1 + +/* Define if you have the modff function. */ +#define _GLIBCPP_HAVE_MODFF 1 + +/* Define if you have the modfl function. */ +/* #undef _GLIBCPP_HAVE_MODFL */ + +/* Define if you have the nan function. */ +/* #undef _GLIBCPP_HAVE_NAN */ + +/* Define if you have the nl_langinfo function. */ +#define _GLIBCPP_HAVE_NL_LANGINFO 1 + +/* Define if you have the powf function. */ +#define _GLIBCPP_HAVE_POWF 1 + +/* Define if you have the powl function. */ +/* #undef _GLIBCPP_HAVE_POWL */ + +/* Define if you have the putwc function. */ +#define _GLIBCPP_HAVE_PUTWC 1 + +/* Define if you have the putwchar function. */ +#define _GLIBCPP_HAVE_PUTWCHAR 1 + +/* Define if you have the qfpclass function. */ +/* #undef _GLIBCPP_HAVE_QFPCLASS */ + +/* Define if you have the setenv function. */ +/* #undef _GLIBCPP_HAVE_SETENV */ + +/* Define if you have the sincos function. */ +/* #undef _GLIBCPP_HAVE_SINCOS */ + +/* Define if you have the sincosf function. */ +/* #undef _GLIBCPP_HAVE_SINCOSF */ + +/* Define if you have the sincosl function. */ +/* #undef _GLIBCPP_HAVE_SINCOSL */ + +/* Define if you have the sinf function. */ +#define _GLIBCPP_HAVE_SINF 1 + +/* Define if you have the sinhf function. */ +#define _GLIBCPP_HAVE_SINHF 1 + +/* Define if you have the sinhl function. */ +/* #undef _GLIBCPP_HAVE_SINHL */ + +/* Define if you have the sinl function. */ +/* #undef _GLIBCPP_HAVE_SINL */ + +/* Define if you have the sqrtf function. */ +#define _GLIBCPP_HAVE_SQRTF 1 + +/* Define if you have the sqrtl function. */ +/* #undef _GLIBCPP_HAVE_SQRTL */ + +/* Define if you have the strtof function. */ +#define _GLIBCPP_HAVE_STRTOF 1 + +/* Define if you have the strtold function. */ +#define _GLIBCPP_HAVE_STRTOLD 1 + +/* Define if you have the swprintf function. */ +/* #undef _GLIBCPP_HAVE_SWPRINTF */ + +/* Define if you have the swscanf function. */ +/* #undef _GLIBCPP_HAVE_SWSCANF */ + +/* Define if you have the tanf function. */ +#define _GLIBCPP_HAVE_TANF 1 + +/* Define if you have the tanhf function. */ +#define _GLIBCPP_HAVE_TANHF 1 + +/* Define if you have the tanhl function. */ +/* #undef _GLIBCPP_HAVE_TANHL */ + +/* Define if you have the tanl function. */ +/* #undef _GLIBCPP_HAVE_TANL */ + +/* Define if you have the ungetwc function. */ +#define _GLIBCPP_HAVE_UNGETWC 1 + +/* Define if you have the vfwprintf function. */ +/* #undef _GLIBCPP_HAVE_VFWPRINTF */ + +/* Define if you have the vfwscanf function. */ +/* #undef _GLIBCPP_HAVE_VFWSCANF */ + +/* Define if you have the vswprintf function. */ +/* #undef _GLIBCPP_HAVE_VSWPRINTF */ + +/* Define if you have the vswscanf function. */ +/* #undef _GLIBCPP_HAVE_VSWSCANF */ + +/* Define if you have the vwprintf function. */ +/* #undef _GLIBCPP_HAVE_VWPRINTF */ + +/* Define if you have the vwscanf function. */ +/* #undef _GLIBCPP_HAVE_VWSCANF */ + +/* Define if you have the wcrtomb function. */ +#define _GLIBCPP_HAVE_WCRTOMB 1 + +/* Define if you have the wcscat function. */ +#define _GLIBCPP_HAVE_WCSCAT 1 + +/* Define if you have the wcschr function. */ +#define _GLIBCPP_HAVE_WCSCHR 1 + +/* Define if you have the wcscmp function. */ +#define _GLIBCPP_HAVE_WCSCMP 1 + +/* Define if you have the wcscoll function. */ +#define _GLIBCPP_HAVE_WCSCOLL 1 + +/* Define if you have the wcscpy function. */ +#define _GLIBCPP_HAVE_WCSCPY 1 + +/* Define if you have the wcscspn function. */ +#define _GLIBCPP_HAVE_WCSCSPN 1 + +/* Define if you have the wcsftime function. */ +/* #undef _GLIBCPP_HAVE_WCSFTIME */ + +/* Define if you have the wcslen function. */ +#define _GLIBCPP_HAVE_WCSLEN 1 + +/* Define if you have the wcsncat function. */ +#define _GLIBCPP_HAVE_WCSNCAT 1 + +/* Define if you have the wcsncmp function. */ +#define _GLIBCPP_HAVE_WCSNCMP 1 + +/* Define if you have the wcsncpy function. */ +#define _GLIBCPP_HAVE_WCSNCPY 1 + +/* Define if you have the wcspbrk function. */ +#define _GLIBCPP_HAVE_WCSPBRK 1 + +/* Define if you have the wcsrchr function. */ +#define _GLIBCPP_HAVE_WCSRCHR 1 + +/* Define if you have the wcsrtombs function. */ +#define _GLIBCPP_HAVE_WCSRTOMBS 1 + +/* Define if you have the wcsspn function. */ +#define _GLIBCPP_HAVE_WCSSPN 1 + +/* Define if you have the wcsstr function. */ +#define _GLIBCPP_HAVE_WCSSTR 1 + +/* Define if you have the wcstod function. */ +#define _GLIBCPP_HAVE_WCSTOD 1 + +/* Define if you have the wcstof function. */ +/* #undef _GLIBCPP_HAVE_WCSTOF */ + +/* Define if you have the wcstok function. */ +#define _GLIBCPP_HAVE_WCSTOK 1 + +/* Define if you have the wcstol function. */ +#define _GLIBCPP_HAVE_WCSTOL 1 + +/* Define if you have the wcstoul function. */ +#define _GLIBCPP_HAVE_WCSTOUL 1 + +/* Define if you have the wcsxfrm function. */ +#define _GLIBCPP_HAVE_WCSXFRM 1 + +/* Define if you have the wctob function. */ +#define _GLIBCPP_HAVE_WCTOB 1 + +/* Define if you have the wmemchr function. */ +#define _GLIBCPP_HAVE_WMEMCHR 1 + +/* Define if you have the wmemcmp function. */ +#define _GLIBCPP_HAVE_WMEMCMP 1 + +/* Define if you have the wmemcpy function. */ +#define _GLIBCPP_HAVE_WMEMCPY 1 + +/* Define if you have the wmemmove function. */ +#define _GLIBCPP_HAVE_WMEMMOVE 1 + +/* Define if you have the wmemset function. */ +#define _GLIBCPP_HAVE_WMEMSET 1 + +/* Define if you have the wprintf function. */ +/* #undef _GLIBCPP_HAVE_WPRINTF */ + +/* Define if you have the wscanf function. */ +/* #undef _GLIBCPP_HAVE_WSCANF */ + +/* Define if you have the <endian.h> header file. */ +/* #undef _GLIBCPP_HAVE_ENDIAN_H */ + +/* Define if you have the <float.h> header file. */ +#define _GLIBCPP_HAVE_FLOAT_H 1 + +/* Define if you have the <fp.h> header file. */ +/* #undef _GLIBCPP_HAVE_FP_H */ + +/* Define if you have the <gconv.h> header file. */ +/* #undef _GLIBCPP_HAVE_GCONV_H */ + +/* Define if you have the <ieeefp.h> header file. */ +#define _GLIBCPP_HAVE_IEEEFP_H 1 + +/* Define if you have the <inttypes.h> header file. */ +#define _GLIBCPP_HAVE_INTTYPES_H 1 + +/* Define if you have the <locale.h> header file. */ +#define _GLIBCPP_HAVE_LOCALE_H 1 + +/* Define if you have the <machine/endian.h> header file. */ +#define _GLIBCPP_HAVE_MACHINE_ENDIAN_H 1 + +/* Define if you have the <machine/param.h> header file. */ +#define _GLIBCPP_HAVE_MACHINE_PARAM_H 1 + +/* Define if you have the <nan.h> header file. */ +/* #undef _GLIBCPP_HAVE_NAN_H */ + +/* Define if you have the <stdlib.h> header file. */ +#define _GLIBCPP_HAVE_STDLIB_H 1 + +/* Define if you have the <string.h> header file. */ +#define _GLIBCPP_HAVE_STRING_H 1 + +/* Define if you have the <sys/filio.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_FILIO_H */ + +/* Define if you have the <sys/ioctl.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_IOCTL_H */ + +/* Define if you have the <sys/isa_defs.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_ISA_DEFS_H */ + +/* Define if you have the <sys/machine.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_MACHINE_H */ + +/* Define if you have the <sys/resource.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_RESOURCE_H */ + +/* Define if you have the <sys/stat.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_STAT_H */ + +/* Define if you have the <sys/time.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_TIME_H */ + +/* Define if you have the <sys/types.h> header file. */ +#define _GLIBCPP_HAVE_SYS_TYPES_H 1 + +/* Define if you have the <unistd.h> header file. */ +/* #undef _GLIBCPP_HAVE_UNISTD_H */ + +/* Define if you have the <wchar.h> header file. */ +#define _GLIBCPP_HAVE_WCHAR_H 1 + +/* Define if you have the <wctype.h> header file. */ +#define _GLIBCPP_HAVE_WCTYPE_H 1 + +/* Define if you have the m library (-lm). */ +/* #undef _GLIBCPP_HAVE_LIBM */ + +/* Name of package */ +#define _GLIBCPP_PACKAGE "libstdc++" + +/* Version number of package */ +#define _GLIBCPP_VERSION "3.3.1" + +/* Define if the compiler is configured for setjmp/longjmp exceptions. */ +#define _GLIBCPP_SJLJ_EXCEPTIONS 1 + +/* Define if sigsetjmp is available. */ +/* #undef _GLIBCPP_HAVE_SIGSETJMP */ + +/* Only used in build directory testsuite_hooks.h. */ +/* #undef _GLIBCPP_HAVE_MEMLIMIT_DATA */ + +/* Only used in build directory testsuite_hooks.h. */ +/* #undef _GLIBCPP_HAVE_MEMLIMIT_RSS */ + +/* Only used in build directory testsuite_hooks.h. */ +/* #undef _GLIBCPP_HAVE_MEMLIMIT_VMEM */ + +/* Only used in build directory testsuite_hooks.h. */ +/* #undef _GLIBCPP_HAVE_MEMLIMIT_AS */ + +// +// Systems that have certain non-standard functions prefixed with an +// underscore, we'll handle those here. Must come after config.h.in. +// +#if defined (_GLIBCPP_HAVE__ISNAN) && ! defined (_GLIBCPP_HAVE_ISNAN) +# define _GLIBCPP_HAVE_ISNAN 1 +# define isnan _isnan +#endif + +#if defined (_GLIBCPP_HAVE__ISNANF) && ! defined (_GLIBCPP_HAVE_ISNANF) +# define _GLIBCPP_HAVE_ISNANF 1 +# define isnanf _isnanf +#endif + +#if defined (_GLIBCPP_HAVE__ISNANL) && ! defined (_GLIBCPP_HAVE_ISNANL) +# define _GLIBCPP_HAVE_ISNANL 1 +# define isnanl _isnanl +#endif + +#if defined (_GLIBCPP_HAVE__ISINF) && ! defined (_GLIBCPP_HAVE_ISINF) +# define _GLIBCPP_HAVE_ISINF 1 +# define isinf _isinf +#endif + +#if defined (_GLIBCPP_HAVE__ISINFF) && ! defined (_GLIBCPP_HAVE_ISINFF) +# define _GLIBCPP_HAVE_ISINFF 1 +# define isinff _isinff +#endif + +#if defined (_GLIBCPP_HAVE__ISINFL) && ! defined (_GLIBCPP_HAVE_ISINFL) +# define _GLIBCPP_HAVE_ISINFL 1 +# define isinfl _isinfl +#endif + +#if defined (_GLIBCPP_HAVE__COPYSIGN) && ! defined (_GLIBCPP_HAVE_COPYSIGN) +# define _GLIBCPP_HAVE_COPYSIGN 1 +# define copysign _copysign +#endif + +#if defined (_GLIBCPP_HAVE__COPYSIGNL) && ! defined (_GLIBCPP_HAVE_COPYSIGNL) +# define _GLIBCPP_HAVE_COPYSIGNL 1 +# define copysignl _copysignl +#endif + +#if defined (_GLIBCPP_HAVE__COSF) && ! defined (_GLIBCPP_HAVE_COSF) +# define _GLIBCPP_HAVE_COSF 1 +# define cosf _cosf +#endif + +#if defined (_GLIBCPP_HAVE__ACOSF) && ! defined (_GLIBCPP_HAVE_ACOSF) +# define _GLIBCPP_HAVE_ACOSF 1 +# define acosf _acosf +#endif + +#if defined (_GLIBCPP_HAVE__ACOSL) && ! defined (_GLIBCPP_HAVE_ACOSL) +# define _GLIBCPP_HAVE_ACOSL 1 +# define acosl _acosl +#endif + +#if defined (_GLIBCPP_HAVE__ASINF) && ! defined (_GLIBCPP_HAVE_ASINF) +# define _GLIBCPP_HAVE_ASINF 1 +# define asinf _asinf +#endif + +#if defined (_GLIBCPP_HAVE__ASINL) && ! defined (_GLIBCPP_HAVE_ASINL) +# define _GLIBCPP_HAVE_ASINL 1 +# define asinl _asinl +#endif + +#if defined (_GLIBCPP_HAVE__ATANF) && ! defined (_GLIBCPP_HAVE_ATANF) +# define _GLIBCPP_HAVE_ATANF 1 +# define atanf _atanf +#endif + +#if defined (_GLIBCPP_HAVE__ATANL) && ! defined (_GLIBCPP_HAVE_ATANL) +# define _GLIBCPP_HAVE_ATANL 1 +# define atanl _atanl +#endif + +#if defined (_GLIBCPP_HAVE__CEILF) && ! defined (_GLIBCPP_HAVE_CEILF) +# define _GLIBCPP_HAVE_CEILF 1 +# define aceil _ceilf +#endif + +#if defined (_GLIBCPP_HAVE__CEILL) && ! defined (_GLIBCPP_HAVE_CEILL) +# define _GLIBCPP_HAVE_CEILL 1 +# define aceil _ceill +#endif + +#if defined (_GLIBCPP_HAVE__COSHF) && ! defined (_GLIBCPP_HAVE_COSHF) +# define _GLIBCPP_HAVE_COSHF 1 +# define coshf _coshf +#endif + +#if defined (_GLIBCPP_HAVE__COSL) && ! defined (_GLIBCPP_HAVE_COSL) +# define _GLIBCPP_HAVE_COSL 1 +# define cosl _cosl +#endif + +#if defined (_GLIBCPP_HAVE__LOGF) && ! defined (_GLIBCPP_HAVE_LOGF) +# define _GLIBCPP_HAVE_LOGF 1 +# define logf _logf +#endif + +#if defined (_GLIBCPP_HAVE__COSHL) && ! defined (_GLIBCPP_HAVE_COSHL) +# define _GLIBCPP_HAVE_COSHL 1 +# define coshl _coshl +#endif + +#if defined (_GLIBCPP_HAVE__EXPF) && ! defined (_GLIBCPP_HAVE_EXPF) +# define _GLIBCPP_HAVE_EXPF 1 +# define expf _expf +#endif + +#if defined (_GLIBCPP_HAVE__EXPL) && ! defined (_GLIBCPP_HAVE_EXPL) +# define _GLIBCPP_HAVE_EXPL 1 +# define expl _expl +#endif + +#if defined (_GLIBCPP_HAVE__FABSF) && ! defined (_GLIBCPP_HAVE_FABSF) +# define _GLIBCPP_HAVE_FABSF 1 +# define fabsf _fabsf +#endif + +#if defined (_GLIBCPP_HAVE__FABSL) && ! defined (_GLIBCPP_HAVE_FABSL) +# define _GLIBCPP_HAVE_FABSL 1 +# define fabsl _fabsl +#endif + +#if defined (_GLIBCPP_HAVE__FLOORF) && ! defined (_GLIBCPP_HAVE_FLOORF) +# define _GLIBCPP_HAVE_FLOORF 1 +# define floorf _floorf +#endif + +#if defined (_GLIBCPP_HAVE__FLOORL) && ! defined (_GLIBCPP_HAVE_FLOORL) +# define _GLIBCPP_HAVE_FLOORL 1 +# define floorl _floorl +#endif + +#if defined (_GLIBCPP_HAVE__FMODF) && ! defined (_GLIBCPP_HAVE_FMODF) +# define _GLIBCPP_HAVE_FMODF 1 +# define fmodf _fmodf +#endif + +#if defined (_GLIBCPP_HAVE__FMODL) && ! defined (_GLIBCPP_HAVE_FMODL) +# define _GLIBCPP_HAVE_FMODL 1 +# define fmodl _fmodl +#endif + +#if defined (_GLIBCPP_HAVE__FREXPF) && ! defined (_GLIBCPP_HAVE_FREXPF) +# define _GLIBCPP_HAVE_FREXPF 1 +# define frexpf _frexpf +#endif + +#if defined (_GLIBCPP_HAVE__FREXPL) && ! defined (_GLIBCPP_HAVE_FREXPL) +# define _GLIBCPP_HAVE_FREXPL 1 +# define frexpl _frexpl +#endif + +#if defined (_GLIBCPP_HAVE__LDEXPF) && ! defined (_GLIBCPP_HAVE_LDEXPF) +# define _GLIBCPP_HAVE_LDEXPF 1 +# define ldexpf _ldexpf +#endif + +#if defined (_GLIBCPP_HAVE__LDEXPL) && ! defined (_GLIBCPP_HAVE_LDEXPL) +# define _GLIBCPP_HAVE_LDEXPL 1 +# define ldexpl _ldexpl +#endif + +#if defined (_GLIBCPP_HAVE__LOG10F) && ! defined (_GLIBCPP_HAVE_LOG10F) +# define _GLIBCPP_HAVE_LOG10F 1 +# define log10f _log10f +#endif + +#if defined (_GLIBCPP_HAVE__LOGL) && ! defined (_GLIBCPP_HAVE_LOGL) +# define _GLIBCPP_HAVE_LOGL 1 +# define logl _logl +#endif + +#if defined (_GLIBCPP_HAVE__POWF) && ! defined (_GLIBCPP_HAVE_POWF) +# define _GLIBCPP_HAVE_POWF 1 +# define powf _powf +#endif + +#if defined (_GLIBCPP_HAVE__LOG10L) && ! defined (_GLIBCPP_HAVE_LOG10L) +# define _GLIBCPP_HAVE_LOG10L 1 +# define log10l _log10l +#endif + +#if defined (_GLIBCPP_HAVE__MODF) && ! defined (_GLIBCPP_HAVE_MODF) +# define _GLIBCPP_HAVE_MODF 1 +# define modf _modf +#endif + +#if defined (_GLIBCPP_HAVE__MODL) && ! defined (_GLIBCPP_HAVE_MODL) +# define _GLIBCPP_HAVE_MODL 1 +# define modl _modl +#endif + +#if defined (_GLIBCPP_HAVE__SINF) && ! defined (_GLIBCPP_HAVE_SINF) +# define _GLIBCPP_HAVE_SINF 1 +# define sinf _sinf +#endif + +#if defined (_GLIBCPP_HAVE__POWL) && ! defined (_GLIBCPP_HAVE_POWL) +# define _GLIBCPP_HAVE_POWL 1 +# define powl _powl +#endif + +#if defined (_GLIBCPP_HAVE__SINHF) && ! defined (_GLIBCPP_HAVE_SINHF) +# define _GLIBCPP_HAVE_SINHF 1 +# define sinhf _sinhf +#endif + +#if defined (_GLIBCPP_HAVE__SINL) && ! defined (_GLIBCPP_HAVE_SINL) +# define _GLIBCPP_HAVE_SINL 1 +# define sinl _sinl +#endif + +#if defined (_GLIBCPP_HAVE__SQRTF) && ! defined (_GLIBCPP_HAVE_SQRTF) +# define _GLIBCPP_HAVE_SQRTF 1 +# define sqrtf _sqrtf +#endif + +#if defined (_GLIBCPP_HAVE__SINHL) && ! defined (_GLIBCPP_HAVE_SINHL) +# define _GLIBCPP_HAVE_SINHL 1 +# define sinhl _sinhl +#endif + +#if defined (_GLIBCPP_HAVE__TANF) && ! defined (_GLIBCPP_HAVE_TANF) +# define _GLIBCPP_HAVE_TANF 1 +# define tanf _tanf +#endif + +#if defined (_GLIBCPP_HAVE__SQRTL) && ! defined (_GLIBCPP_HAVE_SQRTL) +# define _GLIBCPP_HAVE_SQRTL 1 +# define sqrtl _sqrtl +#endif + +#if defined (_GLIBCPP_HAVE__TANHF) && ! defined (_GLIBCPP_HAVE_TANHF) +# define _GLIBCPP_HAVE_TANHF 1 +# define tanhf _tanhf +#endif + +#if defined (_GLIBCPP_HAVE__TANL) && ! defined (_GLIBCPP_HAVE_TANL) +# define _GLIBCPP_HAVE_TANF 1 +# define tanf _tanf +#endif + +#if defined (_GLIBCPP_HAVE__STRTOF) && ! defined (_GLIBCPP_HAVE_STRTOF) +# define _GLIBCPP_HAVE_STRTOF 1 +# define strtof _strtof +#endif + +#if defined (_GLIBCPP_HAVE__TANHL) && ! defined (_GLIBCPP_HAVE_TANHL) +# define _GLIBCPP_HAVE_TANHL 1 +# define tanhl _tanhl +#endif + +#if defined (_GLIBCPP_HAVE__STRTOLD) && ! defined (_GLIBCPP_HAVE_STRTOLD) +# define _GLIBCPP_HAVE_STRTOLD 1 +# define strtold _strtold +#endif + +#if defined (_GLIBCPP_HAVE__SINCOS) && ! defined (_GLIBCPP_HAVE_SINCOS) +# define _GLIBCPP_HAVE_SINCOS 1 +# define sincos _sincos +#endif + +#if defined (_GLIBCPP_HAVE__SINCOSF) && ! defined (_GLIBCPP_HAVE_SINCOSF) +# define _GLIBCPP_HAVE_SINCOSF 1 +# define sincosf _sincosf +#endif + +#if defined (_GLIBCPP_HAVE__SINCOSL) && ! defined (_GLIBCPP_HAVE_SINCOSL) +# define _GLIBCPP_HAVE_SINCOSL 1 +# define sincosl _sincosl +#endif + +#if defined (_GLIBCPP_HAVE__FINITE) && ! defined (_GLIBCPP_HAVE_FINITE) +# define _GLIBCPP_HAVE_FINITE 1 +# define finite _finite +#endif + +#if defined (_GLIBCPP_HAVE__FINITEF) && ! defined (_GLIBCPP_HAVE_FINITEF) +# define _GLIBCPP_HAVE_FINITEF 1 +# define finitef _finitef +#endif + +#if defined (_GLIBCPP_HAVE__FINITEL) && ! defined (_GLIBCPP_HAVE_FINITEL) +# define _GLIBCPP_HAVE_FINITEL 1 +# define finitel _finitel +#endif + +#if defined (_GLIBCPP_HAVE__QFINITE) && ! defined (_GLIBCPP_HAVE_QFINITE) +# define _GLIBCPP_HAVE_QFINITE 1 +# define qfinite _qfinite +#endif + +#if defined (_GLIBCPP_HAVE__FPCLASS) && ! defined (_GLIBCPP_HAVE_FPCLASS) +# define _GLIBCPP_HAVE_FPCLASS 1 +# define fpclass _fpclass +#endif + +#if defined (_GLIBCPP_HAVE__QFPCLASS) && ! defined (_GLIBCPP_HAVE_QFPCLASS) +# define _GLIBCPP_HAVE_QFPCLASS 1 +# define qfpclass _qfpclass +#endif + +#endif // _CPP_CPPCONFIG_ diff --git a/gnu/lib/libstdc++-v3/arch/arm/defs.mk b/gnu/lib/libstdc++-v3/arch/arm/defs.mk new file mode 100644 index 00000000000..5dbddc912ff --- /dev/null +++ b/gnu/lib/libstdc++-v3/arch/arm/defs.mk @@ -0,0 +1,18 @@ +# This file is automatically generated. DO NOT EDIT! +# Generated from: NetBSD: mknative-gcc,v 1.1 2003/07/25 16:26:53 mrg Exp +# +G_libmath_la_SOURCES=stubs.c +G_libmath_la_LIBADD=nan.lo copysignf.lo signbit.lo signbitf.lo +G_LIBSUPCXX_SOURCES=del_op.cc del_opnt.cc del_opv.cc del_opvnt.cc eh_alloc.cc eh_aux_runtime.cc eh_catch.cc eh_exception.cc eh_globals.cc eh_personality.cc eh_terminate.cc eh_throw.cc eh_type.cc guard.cc new_handler.cc new_op.cc new_opnt.cc new_opv.cc new_opvnt.cc pure.cc tinfo.cc tinfo2.cc vec.cc +G_LIBSUPCXX_C_SOURCES=cxa_demangle.c dyn-string.c +G_SRC_SOURCES=bitset.cc codecvt.cc complex_io.cc concept-inst.cc ctype.cc ext-inst.cc fstream.cc fstream-inst.cc functexcept.cc globals.cc io-inst.cc ios.cc istream-inst.cc limits.cc locale.cc locale-inst.cc localename.cc misc-inst.cc ostream-inst.cc sstream-inst.cc stdexcept.cc stl-inst.cc streambuf-inst.cc string-inst.cc strstream.cc valarray-inst.cc vterminate.cc wstring-inst.cc codecvt_members.cc collate_members.cc ctype_members.cc messages_members.cc monetary_members.cc numeric_members.cc time_members.cc basic_file.cc c++locale.cc +G_SECTION_FLAGS=-ffunction-sections -fdata-sections +G_c_base_headers_rename=cassert cctype cerrno cfloat ciso646 climits clocale cmath csetjmp csignal cstdarg cstddef cstdio cstdlib cstring ctime cwchar cwctype +G_std_headers_rename=algorithm bitset complex deque fstream functional iomanip ios iosfwd iostream istream iterator limits list locale map memory numeric ostream queue set sstream stack stdexcept streambuf string utility valarray vector +G_bits_headers=basic_ios.h basic_ios.tcc basic_string.h basic_string.tcc boost_concept_check.h char_traits.h codecvt.h concept_check.h cpp_type_traits.h deque.tcc fpos.h fstream.tcc functexcept.h gslice.h gslice_array.h indirect_array.h ios_base.h istream.tcc list.tcc locale_classes.h locale_facets.h locale_facets.tcc localefwd.h mask_array.h ostream.tcc pthread_allocimpl.h stream_iterator.h streambuf_iterator.h slice_array.h sstream.tcc stl_algo.h stl_algobase.h stl_alloc.h stl_bvector.h stl_construct.h stl_deque.h stl_function.h stl_heap.h stl_iterator.h stl_iterator_base_funcs.h stl_iterator_base_types.h stl_list.h stl_map.h stl_multimap.h stl_multiset.h stl_numeric.h stl_pair.h stl_pthread_alloc.h stl_queue.h stl_raw_storage_iter.h stl_relops.h stl_set.h stl_stack.h stl_tempbuf.h stl_threads.h stl_tree.h stl_uninitialized.h stl_vector.h streambuf.tcc stringfwd.h type_traits.h valarray_array.h valarray_array.tcc valarray_meta.h vector.tcc +G_backward_headers=complex.h iomanip.h istream.h ostream.h stream.h streambuf.h algo.h algobase.h alloc.h bvector.h defalloc.h deque.h function.h hash_map.h hash_set.h hashtable.h heap.h iostream.h iterator.h list.h map.h multimap.h new.h multiset.h pair.h queue.h rope.h set.h slist.h stack.h tempbuf.h tree.h vector.h fstream.h strstream backward_warning.h +G_ext_headers=algorithm enc_filebuf.h stdio_filebuf.h functional hash_map hash_set iterator memory numeric rb_tree rope ropeimpl.h slist stl_hash_fun.h stl_hashtable.h stl_rope.h +G_c_base_headers_extra=cmath.tcc +G_target_headers=ctype_base.h ctype_inline.h ctype_noninline.h os_defines.h atomicity.h +G_thread_target_headers=gthr.h gthr-single.h gthr-posix.h gthr-default.h +G_target_headers_extra=basic_file.h c++config.h c++io.h c++locale.h messages_members.h time_members.h codecvt_specializations.h diff --git a/gnu/lib/libstdc++-v3/arch/arm/gthr-default.h b/gnu/lib/libstdc++-v3/arch/arm/gthr-default.h new file mode 100644 index 00000000000..6fa2b1ed699 --- /dev/null +++ b/gnu/lib/libstdc++-v3/arch/arm/gthr-default.h @@ -0,0 +1,242 @@ +/* This file is automatically generated. DO NOT EDIT! */ +/* Generated from: NetBSD: mknative-gcc,v 1.1 2003/07/25 16:26:53 mrg Exp */ + +/* Threads compatibility routines for libgcc2 and libobjc. */ +/* Compile this one with gcc. */ +/* Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +GCC 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 General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING. If not, write to the Free +Software Foundation, 59 Temple Place - Suite 330, Boston, MA +02111-1307, USA. */ + +/* As a special exception, if you link this library with other files, + some of which are compiled with GCC, to produce an executable, + this library does not by itself cause the resulting executable + to be covered by the GNU General Public License. + This exception does not however invalidate any other reasons why + the executable file might be covered by the GNU General Public License. */ + +#ifndef _GLIBCPP_GCC_GTHR_SINGLE_H +#define _GLIBCPP_GCC_GTHR_SINGLE_H + +/* Just provide compatibility for mutex handling. */ + +typedef int __gthread_mutex_t; + +#define __GTHREAD_MUTEX_INIT 0 + +#ifdef __cplusplus +#define _GLIBCPP_UNUSED(x) +#else +#define _GLIBCPP_UNUSED(x) x __attribute__((unused)) +#endif + +#ifdef _LIBOBJC + +/* Thread local storage for a single thread */ +static void *thread_local_storage = NULL; + +/* Backend initialization functions */ + +/* Initialize the threads subsystem. */ +static inline int +__gthread_objc_init_thread_system (void) +{ + /* No thread support available */ + return -1; +} + +/* Close the threads subsystem. */ +static inline int +__gthread_objc_close_thread_system (void) +{ + /* No thread support available */ + return -1; +} + +/* Backend thread functions */ + +/* Create a new thread of execution. */ +static inline objc_thread_t +__gthread_objc_thread_detach (void (* func)(void *), void * _GLIBCPP_UNUSED(arg)) +{ + /* No thread support available */ + return NULL; +} + +/* Set the current thread's priority. */ +static inline int +__gthread_objc_thread_set_priority (int _GLIBCPP_UNUSED(priority)) +{ + /* No thread support available */ + return -1; +} + +/* Return the current thread's priority. */ +static inline int +__gthread_objc_thread_get_priority (void) +{ + return OBJC_THREAD_INTERACTIVE_PRIORITY; +} + +/* Yield our process time to another thread. */ +static inline void +__gthread_objc_thread_yield (void) +{ + return; +} + +/* Terminate the current thread. */ +static inline int +__gthread_objc_thread_exit (void) +{ + /* No thread support available */ + /* Should we really exit the program */ + /* exit (&__objc_thread_exit_status); */ + return -1; +} + +/* Returns an integer value which uniquely describes a thread. */ +static inline objc_thread_t +__gthread_objc_thread_id (void) +{ + /* No thread support, use 1. */ + return (objc_thread_t) 1; +} + +/* Sets the thread's local storage pointer. */ +static inline int +__gthread_objc_thread_set_data (void *value) +{ + thread_local_storage = value; + return 0; +} + +/* Returns the thread's local storage pointer. */ +static inline void * +__gthread_objc_thread_get_data (void) +{ + return thread_local_storage; +} + +/* Backend mutex functions */ + +/* Allocate a mutex. */ +static inline int +__gthread_objc_mutex_allocate (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Deallocate a mutex. */ +static inline int +__gthread_objc_mutex_deallocate (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Grab a lock on a mutex. */ +static inline int +__gthread_objc_mutex_lock (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + /* There can only be one thread, so we always get the lock */ + return 0; +} + +/* Try to grab a lock on a mutex. */ +static inline int +__gthread_objc_mutex_trylock (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + /* There can only be one thread, so we always get the lock */ + return 0; +} + +/* Unlock the mutex */ +static inline int +__gthread_objc_mutex_unlock (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Backend condition mutex functions */ + +/* Allocate a condition. */ +static inline int +__gthread_objc_condition_allocate (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +/* Deallocate a condition. */ +static inline int +__gthread_objc_condition_deallocate (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +/* Wait on the condition */ +static inline int +__gthread_objc_condition_wait (objc_condition_t _GLIBCPP_UNUSED(condition), + objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Wake up all threads waiting on this condition. */ +static inline int +__gthread_objc_condition_broadcast (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +/* Wake up one thread waiting on this condition. */ +static inline int +__gthread_objc_condition_signal (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +#else /* _LIBOBJC */ + +static inline int +__gthread_active_p (void) +{ + return 0; +} + +static inline int +__gthread_mutex_lock (__gthread_mutex_t * _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +static inline int +__gthread_mutex_trylock (__gthread_mutex_t * _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +static inline int +__gthread_mutex_unlock (__gthread_mutex_t * _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +#endif /* _LIBOBJC */ + +#undef _GLIBCPP_UNUSED + +#endif /* ! _GLIBCPP_GCC_GTHR_SINGLE_H */ diff --git a/gnu/lib/libstdc++-v3/arch/arm/gthr-posix.h b/gnu/lib/libstdc++-v3/arch/arm/gthr-posix.h new file mode 100644 index 00000000000..205fa9e2190 --- /dev/null +++ b/gnu/lib/libstdc++-v3/arch/arm/gthr-posix.h @@ -0,0 +1,524 @@ +/* This file is automatically generated. DO NOT EDIT! */ +/* Generated from: NetBSD: mknative-gcc,v 1.1 2003/07/25 16:26:53 mrg Exp */ + +/* Threads compatibility routines for libgcc2 and libobjc. */ +/* Compile this one with gcc. */ +/* Copyright (C) 1997, 1999, 2000, 2001 Free Software Foundation, Inc. + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +GCC 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 General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING. If not, write to the Free +Software Foundation, 59 Temple Place - Suite 330, Boston, MA +02111-1307, USA. */ + +/* As a special exception, if you link this library with other files, + some of which are compiled with GCC, to produce an executable, + this library does not by itself cause the resulting executable + to be covered by the GNU General Public License. + This exception does not however invalidate any other reasons why + the executable file might be covered by the GNU General Public License. */ + +#ifndef _GLIBCPP_GCC_GTHR_POSIX_H +#define _GLIBCPP_GCC_GTHR_POSIX_H + +/* POSIX threads specific definitions. + Easy, since the interface is just one-to-one mapping. */ + +#define __GTHREADS 1 + +#include <pthread.h> +#include <unistd.h> + +typedef pthread_key_t __gthread_key_t; +typedef pthread_once_t __gthread_once_t; +typedef pthread_mutex_t __gthread_mutex_t; + +#define __GTHREAD_MUTEX_INIT PTHREAD_MUTEX_INITIALIZER +#define __GTHREAD_ONCE_INIT PTHREAD_ONCE_INIT + +#if _GLIBCPP_SUPPORTS_WEAK && _GLIBCPP_GTHREAD_USE_WEAK + +#pragma weak pthread_once +#pragma weak pthread_key_create +#pragma weak pthread_key_delete +#pragma weak pthread_getspecific +#pragma weak pthread_setspecific +#pragma weak pthread_create + +#pragma weak pthread_mutex_lock +#pragma weak pthread_mutex_trylock +#pragma weak pthread_mutex_unlock + +#ifdef _LIBOBJC +/* Objective-C. */ +#pragma weak pthread_cond_broadcast +#pragma weak pthread_cond_destroy +#pragma weak pthread_cond_init +#pragma weak pthread_cond_signal +#pragma weak pthread_cond_wait +#pragma weak pthread_exit +#pragma weak pthread_mutex_init +#pragma weak pthread_mutex_destroy +#pragma weak pthread_self +/* These really should be protected by _POSIX_PRIORITY_SCHEDULING, but + we use them inside a _POSIX_THREAD_PRIORITY_SCHEDULING block. */ +#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING +#pragma weak sched_get_priority_max +#pragma weak sched_get_priority_min +#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */ +#pragma weak sched_yield +#pragma weak pthread_attr_destroy +#pragma weak pthread_attr_init +#pragma weak pthread_attr_setdetachstate +#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING +#pragma weak pthread_getschedparam +#pragma weak pthread_setschedparam +#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */ +#endif /* _LIBOBJC */ + +static inline int +__gthread_active_p (void) +{ + static void *const __gthread_active_ptr = (void *) &pthread_create; + return __gthread_active_ptr != 0; +} + +#else /* not _GLIBCPP_SUPPORTS_WEAK */ + +static inline int +__gthread_active_p (void) +{ + return 1; +} + +#endif /* _GLIBCPP_SUPPORTS_WEAK */ + +#ifdef _LIBOBJC + +/* This is the config.h file in libobjc/ */ +#include <config.h> + +#ifdef HAVE_SCHED_H +# include <sched.h> +#endif + +/* Key structure for maintaining thread specific storage */ +static pthread_key_t _objc_thread_storage; +static pthread_attr_t _objc_thread_attribs; + +/* Thread local storage for a single thread */ +static void *thread_local_storage = NULL; + +/* Backend initialization functions */ + +/* Initialize the threads subsystem. */ +static inline int +__gthread_objc_init_thread_system (void) +{ + if (__gthread_active_p ()) + { + /* Initialize the thread storage key */ + if (pthread_key_create (&_objc_thread_storage, NULL) == 0) + { + /* The normal default detach state for threads is + * PTHREAD_CREATE_JOINABLE which causes threads to not die + * when you think they should. */ + if (pthread_attr_init (&_objc_thread_attribs) == 0 + && pthread_attr_setdetachstate (&_objc_thread_attribs, + PTHREAD_CREATE_DETACHED) == 0) + return 0; + } + } + + return -1; +} + +/* Close the threads subsystem. */ +static inline int +__gthread_objc_close_thread_system (void) +{ + if (__gthread_active_p () + && pthread_key_delete (_objc_thread_storage) == 0 + && pthread_attr_destroy (&_objc_thread_attribs) == 0) + return 0; + + return -1; +} + +/* Backend thread functions */ + +/* Create a new thread of execution. */ +static inline objc_thread_t +__gthread_objc_thread_detach (void (*func)(void *), void *arg) +{ + objc_thread_t thread_id; + pthread_t new_thread_handle; + + if (!__gthread_active_p ()) + return NULL; + + if (!(pthread_create (&new_thread_handle, NULL, (void *) func, arg))) + thread_id = (objc_thread_t) new_thread_handle; + else + thread_id = NULL; + + return thread_id; +} + +/* Set the current thread's priority. */ +static inline int +__gthread_objc_thread_set_priority (int priority) +{ + if (!__gthread_active_p ()) + return -1; + else + { +#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING + pthread_t thread_id = pthread_self (); + int policy; + struct sched_param params; + int priority_min, priority_max; + + if (pthread_getschedparam (thread_id, &policy, ¶ms) == 0) + { + if ((priority_max = sched_get_priority_max (policy)) == -1) + return -1; + + if ((priority_min = sched_get_priority_min (policy)) == -1) + return -1; + + if (priority > priority_max) + priority = priority_max; + else if (priority < priority_min) + priority = priority_min; + params.sched_priority = priority; + + /* + * The solaris 7 and several other man pages incorrectly state that + * this should be a pointer to policy but pthread.h is universally + * at odds with this. + */ + if (pthread_setschedparam (thread_id, policy, ¶ms) == 0) + return 0; + } +#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */ + return -1; + } +} + +/* Return the current thread's priority. */ +static inline int +__gthread_objc_thread_get_priority (void) +{ +#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING + if (__gthread_active_p ()) + { + int policy; + struct sched_param params; + + if (pthread_getschedparam (pthread_self (), &policy, ¶ms) == 0) + return params.sched_priority; + else + return -1; + } + else +#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */ + return OBJC_THREAD_INTERACTIVE_PRIORITY; +} + +/* Yield our process time to another thread. */ +static inline void +__gthread_objc_thread_yield (void) +{ + if (__gthread_active_p ()) + sched_yield (); +} + +/* Terminate the current thread. */ +static inline int +__gthread_objc_thread_exit (void) +{ + if (__gthread_active_p ()) + /* exit the thread */ + pthread_exit (&__objc_thread_exit_status); + + /* Failed if we reached here */ + return -1; +} + +/* Returns an integer value which uniquely describes a thread. */ +static inline objc_thread_t +__gthread_objc_thread_id (void) +{ + if (__gthread_active_p ()) + return (objc_thread_t) pthread_self (); + else + return (objc_thread_t) 1; +} + +/* Sets the thread's local storage pointer. */ +static inline int +__gthread_objc_thread_set_data (void *value) +{ + if (__gthread_active_p ()) + return pthread_setspecific (_objc_thread_storage, value); + else + { + thread_local_storage = value; + return 0; + } +} + +/* Returns the thread's local storage pointer. */ +static inline void * +__gthread_objc_thread_get_data (void) +{ + if (__gthread_active_p ()) + return pthread_getspecific (_objc_thread_storage); + else + return thread_local_storage; +} + +/* Backend mutex functions */ + +/* Allocate a mutex. */ +static inline int +__gthread_objc_mutex_allocate (objc_mutex_t mutex) +{ + if (__gthread_active_p ()) + { + mutex->backend = objc_malloc (sizeof (pthread_mutex_t)); + + if (pthread_mutex_init ((pthread_mutex_t *) mutex->backend, NULL)) + { + objc_free (mutex->backend); + mutex->backend = NULL; + return -1; + } + } + + return 0; +} + +/* Deallocate a mutex. */ +static inline int +__gthread_objc_mutex_deallocate (objc_mutex_t mutex) +{ + if (__gthread_active_p ()) + { + int count; + + /* + * Posix Threads specifically require that the thread be unlocked + * for pthread_mutex_destroy to work. + */ + + do + { + count = pthread_mutex_unlock ((pthread_mutex_t *) mutex->backend); + if (count < 0) + return -1; + } + while (count); + + if (pthread_mutex_destroy ((pthread_mutex_t *) mutex->backend)) + return -1; + + objc_free (mutex->backend); + mutex->backend = NULL; + } + return 0; +} + +/* Grab a lock on a mutex. */ +static inline int +__gthread_objc_mutex_lock (objc_mutex_t mutex) +{ + if (__gthread_active_p () + && pthread_mutex_lock ((pthread_mutex_t *) mutex->backend) != 0) + { + return -1; + } + + return 0; +} + +/* Try to grab a lock on a mutex. */ +static inline int +__gthread_objc_mutex_trylock (objc_mutex_t mutex) +{ + if (__gthread_active_p () + && pthread_mutex_trylock ((pthread_mutex_t *) mutex->backend) != 0) + { + return -1; + } + + return 0; +} + +/* Unlock the mutex */ +static inline int +__gthread_objc_mutex_unlock (objc_mutex_t mutex) +{ + if (__gthread_active_p () + && pthread_mutex_unlock ((pthread_mutex_t *) mutex->backend) != 0) + { + return -1; + } + + return 0; +} + +/* Backend condition mutex functions */ + +/* Allocate a condition. */ +static inline int +__gthread_objc_condition_allocate (objc_condition_t condition) +{ + if (__gthread_active_p ()) + { + condition->backend = objc_malloc (sizeof (pthread_cond_t)); + + if (pthread_cond_init ((pthread_cond_t *) condition->backend, NULL)) + { + objc_free (condition->backend); + condition->backend = NULL; + return -1; + } + } + + return 0; +} + +/* Deallocate a condition. */ +static inline int +__gthread_objc_condition_deallocate (objc_condition_t condition) +{ + if (__gthread_active_p ()) + { + if (pthread_cond_destroy ((pthread_cond_t *) condition->backend)) + return -1; + + objc_free (condition->backend); + condition->backend = NULL; + } + return 0; +} + +/* Wait on the condition */ +static inline int +__gthread_objc_condition_wait (objc_condition_t condition, objc_mutex_t mutex) +{ + if (__gthread_active_p ()) + return pthread_cond_wait ((pthread_cond_t *) condition->backend, + (pthread_mutex_t *) mutex->backend); + else + return 0; +} + +/* Wake up all threads waiting on this condition. */ +static inline int +__gthread_objc_condition_broadcast (objc_condition_t condition) +{ + if (__gthread_active_p ()) + return pthread_cond_broadcast ((pthread_cond_t *) condition->backend); + else + return 0; +} + +/* Wake up one thread waiting on this condition. */ +static inline int +__gthread_objc_condition_signal (objc_condition_t condition) +{ + if (__gthread_active_p ()) + return pthread_cond_signal ((pthread_cond_t *) condition->backend); + else + return 0; +} + +#else /* _LIBOBJC */ + +static inline int +__gthread_once (__gthread_once_t *once, void (*func) (void)) +{ + if (__gthread_active_p ()) + return pthread_once (once, func); + else + return -1; +} + +static inline int +__gthread_key_create (__gthread_key_t *key, void (*dtor) (void *)) +{ + return pthread_key_create (key, dtor); +} + +static inline int +__gthread_key_dtor (__gthread_key_t key, void *ptr) +{ + /* Just reset the key value to zero. */ + if (ptr) + return pthread_setspecific (key, 0); + else + return 0; +} + +static inline int +__gthread_key_delete (__gthread_key_t key) +{ + return pthread_key_delete (key); +} + +static inline void * +__gthread_getspecific (__gthread_key_t key) +{ + return pthread_getspecific (key); +} + +static inline int +__gthread_setspecific (__gthread_key_t key, const void *ptr) +{ + return pthread_setspecific (key, ptr); +} + +static inline int +__gthread_mutex_lock (__gthread_mutex_t *mutex) +{ + if (__gthread_active_p ()) + return pthread_mutex_lock (mutex); + else + return 0; +} + +static inline int +__gthread_mutex_trylock (__gthread_mutex_t *mutex) +{ + if (__gthread_active_p ()) + return pthread_mutex_trylock (mutex); + else + return 0; +} + +static inline int +__gthread_mutex_unlock (__gthread_mutex_t *mutex) +{ + if (__gthread_active_p ()) + return pthread_mutex_unlock (mutex); + else + return 0; +} + +#endif /* _LIBOBJC */ + +#endif /* ! _GLIBCPP_GCC_GTHR_POSIX_H */ diff --git a/gnu/lib/libstdc++-v3/arch/arm/gthr-single.h b/gnu/lib/libstdc++-v3/arch/arm/gthr-single.h new file mode 100644 index 00000000000..6fa2b1ed699 --- /dev/null +++ b/gnu/lib/libstdc++-v3/arch/arm/gthr-single.h @@ -0,0 +1,242 @@ +/* This file is automatically generated. DO NOT EDIT! */ +/* Generated from: NetBSD: mknative-gcc,v 1.1 2003/07/25 16:26:53 mrg Exp */ + +/* Threads compatibility routines for libgcc2 and libobjc. */ +/* Compile this one with gcc. */ +/* Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +GCC 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 General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING. If not, write to the Free +Software Foundation, 59 Temple Place - Suite 330, Boston, MA +02111-1307, USA. */ + +/* As a special exception, if you link this library with other files, + some of which are compiled with GCC, to produce an executable, + this library does not by itself cause the resulting executable + to be covered by the GNU General Public License. + This exception does not however invalidate any other reasons why + the executable file might be covered by the GNU General Public License. */ + +#ifndef _GLIBCPP_GCC_GTHR_SINGLE_H +#define _GLIBCPP_GCC_GTHR_SINGLE_H + +/* Just provide compatibility for mutex handling. */ + +typedef int __gthread_mutex_t; + +#define __GTHREAD_MUTEX_INIT 0 + +#ifdef __cplusplus +#define _GLIBCPP_UNUSED(x) +#else +#define _GLIBCPP_UNUSED(x) x __attribute__((unused)) +#endif + +#ifdef _LIBOBJC + +/* Thread local storage for a single thread */ +static void *thread_local_storage = NULL; + +/* Backend initialization functions */ + +/* Initialize the threads subsystem. */ +static inline int +__gthread_objc_init_thread_system (void) +{ + /* No thread support available */ + return -1; +} + +/* Close the threads subsystem. */ +static inline int +__gthread_objc_close_thread_system (void) +{ + /* No thread support available */ + return -1; +} + +/* Backend thread functions */ + +/* Create a new thread of execution. */ +static inline objc_thread_t +__gthread_objc_thread_detach (void (* func)(void *), void * _GLIBCPP_UNUSED(arg)) +{ + /* No thread support available */ + return NULL; +} + +/* Set the current thread's priority. */ +static inline int +__gthread_objc_thread_set_priority (int _GLIBCPP_UNUSED(priority)) +{ + /* No thread support available */ + return -1; +} + +/* Return the current thread's priority. */ +static inline int +__gthread_objc_thread_get_priority (void) +{ + return OBJC_THREAD_INTERACTIVE_PRIORITY; +} + +/* Yield our process time to another thread. */ +static inline void +__gthread_objc_thread_yield (void) +{ + return; +} + +/* Terminate the current thread. */ +static inline int +__gthread_objc_thread_exit (void) +{ + /* No thread support available */ + /* Should we really exit the program */ + /* exit (&__objc_thread_exit_status); */ + return -1; +} + +/* Returns an integer value which uniquely describes a thread. */ +static inline objc_thread_t +__gthread_objc_thread_id (void) +{ + /* No thread support, use 1. */ + return (objc_thread_t) 1; +} + +/* Sets the thread's local storage pointer. */ +static inline int +__gthread_objc_thread_set_data (void *value) +{ + thread_local_storage = value; + return 0; +} + +/* Returns the thread's local storage pointer. */ +static inline void * +__gthread_objc_thread_get_data (void) +{ + return thread_local_storage; +} + +/* Backend mutex functions */ + +/* Allocate a mutex. */ +static inline int +__gthread_objc_mutex_allocate (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Deallocate a mutex. */ +static inline int +__gthread_objc_mutex_deallocate (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Grab a lock on a mutex. */ +static inline int +__gthread_objc_mutex_lock (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + /* There can only be one thread, so we always get the lock */ + return 0; +} + +/* Try to grab a lock on a mutex. */ +static inline int +__gthread_objc_mutex_trylock (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + /* There can only be one thread, so we always get the lock */ + return 0; +} + +/* Unlock the mutex */ +static inline int +__gthread_objc_mutex_unlock (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Backend condition mutex functions */ + +/* Allocate a condition. */ +static inline int +__gthread_objc_condition_allocate (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +/* Deallocate a condition. */ +static inline int +__gthread_objc_condition_deallocate (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +/* Wait on the condition */ +static inline int +__gthread_objc_condition_wait (objc_condition_t _GLIBCPP_UNUSED(condition), + objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Wake up all threads waiting on this condition. */ +static inline int +__gthread_objc_condition_broadcast (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +/* Wake up one thread waiting on this condition. */ +static inline int +__gthread_objc_condition_signal (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +#else /* _LIBOBJC */ + +static inline int +__gthread_active_p (void) +{ + return 0; +} + +static inline int +__gthread_mutex_lock (__gthread_mutex_t * _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +static inline int +__gthread_mutex_trylock (__gthread_mutex_t * _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +static inline int +__gthread_mutex_unlock (__gthread_mutex_t * _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +#endif /* _LIBOBJC */ + +#undef _GLIBCPP_UNUSED + +#endif /* ! _GLIBCPP_GCC_GTHR_SINGLE_H */ diff --git a/gnu/lib/libstdc++-v3/arch/arm/gthr.h b/gnu/lib/libstdc++-v3/arch/arm/gthr.h new file mode 100644 index 00000000000..d463cf98ec6 --- /dev/null +++ b/gnu/lib/libstdc++-v3/arch/arm/gthr.h @@ -0,0 +1,108 @@ +/* This file is automatically generated. DO NOT EDIT! */ +/* Generated from: NetBSD: mknative-gcc,v 1.1 2003/07/25 16:26:53 mrg Exp */ + +/* Threads compatibility routines for libgcc2. */ +/* Compile this one with gcc. */ +/* Copyright (C) 1997, 1998 Free Software Foundation, Inc. + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +GCC 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 General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING. If not, write to the Free +Software Foundation, 59 Temple Place - Suite 330, Boston, MA +02111-1307, USA. */ + +/* As a special exception, if you link this library with other files, + some of which are compiled with GCC, to produce an executable, + this library does not by itself cause the resulting executable + to be covered by the GNU General Public License. + This exception does not however invalidate any other reasons why + the executable file might be covered by the GNU General Public License. */ + +#ifndef _GLIBCPP_GCC_GTHR_H +#define _GLIBCPP_GCC_GTHR_H + +/* If this file is compiled with threads support, it must + #define __GTHREADS 1 + to indicate that threads support is present. Also it has define + function + int __gthread_active_p () + that returns 1 if thread system is active, 0 if not. + + The threads interface must define the following types: + __gthread_key_t + __gthread_once_t + __gthread_mutex_t + + The threads interface must define the following macros: + + __GTHREAD_ONCE_INIT + to initialize __gthread_once_t + __GTHREAD_MUTEX_INIT + to initialize __gthread_mutex_t to get a fast + non-recursive mutex. + __GTHREAD_MUTEX_INIT_FUNCTION + some systems can't initialize a mutex without a + function call. On such systems, define this to a + function which looks like this: + void __GTHREAD_MUTEX_INIT_FUNCTION (__gthread_mutex_t *) + Don't define __GTHREAD_MUTEX_INIT in this case + + The threads interface must define the following static functions: + + int __gthread_once (__gthread_once_t *once, void (*func) ()) + + int __gthread_key_create (__gthread_key_t *keyp, void (*dtor) (void *)) + int __gthread_key_delete (__gthread_key_t key) + + int __gthread_key_dtor (__gthread_key_t key, void *ptr) + + void *__gthread_getspecific (__gthread_key_t key) + int __gthread_setspecific (__gthread_key_t key, const void *ptr) + + int __gthread_mutex_lock (__gthread_mutex_t *mutex); + int __gthread_mutex_trylock (__gthread_mutex_t *mutex); + int __gthread_mutex_unlock (__gthread_mutex_t *mutex); + + All functions returning int should return zero on success or the error + number. If the operation is not supported, -1 is returned. + + Currently supported threads packages are + POSIX threads with -D_PTHREADS + DCE threads with -D_DCE_THREADS + Solaris/UI threads with -D_SOLARIS_THREADS +*/ + +/* Check first for thread specific defines. */ +#if _GLIBCPP__PTHREADS +#include <bits/gthr-posix.h> +#elif _GLIBCPP__DCE_THREADS +#include <bits/gthr-dce.h> +#elif _GLIBCPP__SOLARIS_THREADS +#include <bits/gthr-solaris.h> + +/* Include GTHREAD_FILE if one is defined. */ +#elif defined(_GLIBCPP_HAVE_GTHR_DEFAULT) +#if _GLIBCPP_SUPPORTS_WEAK +#ifndef _GLIBCPP_GTHREAD_USE_WEAK +#define _GLIBCPP_GTHREAD_USE_WEAK 1 +#endif +#endif +#include <bits/gthr-default.h> + +/* Fallback to single thread definitions. */ +#else +#include <bits/gthr-single.h> +#endif + +#endif /* ! _GLIBCPP_GCC_GTHR_H */ diff --git a/gnu/lib/libstdc++-v3/arch/sparc64/c++config.h b/gnu/lib/libstdc++-v3/arch/sparc64/c++config.h new file mode 100644 index 00000000000..ce7276697c6 --- /dev/null +++ b/gnu/lib/libstdc++-v3/arch/sparc64/c++config.h @@ -0,0 +1,1228 @@ +/* This file is automatically generated. DO NOT EDIT! */ +/* Generated from: NetBSD: mknative-gcc,v 1.1 2003/07/25 16:26:53 mrg Exp */ + +// Predefined symbols and macros -*- C++ -*- + +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003 +// Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This 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 General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, +// USA. + +// As a special exception, you may use this file as part of a free software +// library without restriction. Specifically, if other files instantiate +// templates or use macros or inline functions from this file, or you compile +// this file and link it with other files to produce an executable, this +// file does not by itself cause the resulting executable to be covered by +// the GNU General Public License. This exception does not however +// invalidate any other reasons why the executable file might be covered by +// the GNU General Public License. + +#ifndef _CPP_CPPCONFIG +#define _CPP_CPPCONFIG 1 + +// Pick up any OS-specific definitions. +#include <bits/os_defines.h> + +// The current version of the C++ library in compressed ISO date format. +#define __GLIBCPP__ 20030720 + +// This is necessary until GCC supports separate template compilation. +#define _GLIBCPP_NO_TEMPLATE_EXPORT 1 + +// This is a hack around not having either pre-compiled headers or +// export compilation. If defined, the io, string, and valarray +// headers will include all the necessary bits. If not defined, the +// implementation optimizes the headers for the most commonly-used +// types. For the io library, this means that larger, out-of-line +// member functions are only declared, and definitions are not parsed +// by the compiler, but instead instantiated into the library binary. +#define _GLIBCPP_FULLY_COMPLIANT_HEADERS 1 + +// Allow use of the GNU syntax extension, "extern template." This +// extension is fully documented in the g++ manual, but in a nutshell, +// it inhibits all implicit instantiations and is used throughout the +// library to avoid multiple weak definitions for required types that +// are already explicitly instantiated in the library binary. This +// substantially reduces the binary size of resulting executables. +#ifndef _GLIBCPP_EXTERN_TEMPLATE +#define _GLIBCPP_EXTERN_TEMPLATE 1 +#endif + +// To enable older, ARM-style iostreams and other anachronisms use this. +//#define _GLIBCPP_DEPRECATED 1 + +// Use corrected code from the committee library group's issues list. +#define _GLIBCPP_RESOLVE_LIB_DEFECTS 1 + +// Hopefully temporary workaround to autoconf/m4 issue with quoting '@'. +#define _GLIBCPP_AT_AT "@@" + +// In those parts of the standard C++ library that use a mutex instead +// of a spin-lock, we now unconditionally use GCC's gthr.h mutex +// abstraction layer. All support to directly map to various +// threading models has been removed. Note: gthr.h may well map to +// gthr-single.h which is a correct way to express no threads support +// in gcc. Support for the undocumented _NOTHREADS has been removed. + +// Default to the typically high-speed, pool-based allocator (as +// libstdc++-v2) instead of the malloc-based allocator (libstdc++-v3 +// snapshots). See libstdc++-v3/docs/html/17_intro/howto.html for +// details on why you don't want to override this setting. Ensure +// that threads are properly configured on your platform before +// assigning blame to the STL container-memory allocator. After doing +// so, please report any possible issues to libstdc++@gcc.gnu.org . +// Do not define __USE_MALLOC on the command line. Enforce it here: +#ifdef __USE_MALLOC +#error __USE_MALLOC should never be defined. Read the release notes. +#endif + +// Create a boolean flag to be used to determine if --fast-math is set. +#ifdef __FAST_MATH__ +#define _GLIBCPP_FAST_MATH 1 +#else +#define _GLIBCPP_FAST_MATH 0 +#endif + +// The remainder of the prewritten config is mostly automatic; all the +// user hooks are listed above. + +// End of prewritten config; the discovered settings follow. +/* config.h. Generated automatically by configure. */ +/* config.h.in. Generated automatically from configure.in by autoheader. */ + +/* Define if you have a working `mmap' system call. */ +#define _GLIBCPP_HAVE_MMAP 1 + +// Define if GCC supports weak symbols. +/* #undef _GLIBCPP_SUPPORTS_WEAK */ + +// Include I/O support for 'long long' and 'unsigned long long'. +/* #undef _GLIBCPP_USE_LONG_LONG */ + +// Define if C99 features such as lldiv_t, llabs, lldiv should be exposed. +/* #undef _GLIBCPP_USE_C99 */ + +// Define if code specialized for wchar_t should be used. +/* #undef _GLIBCPP_USE_WCHAR_T */ + +// Define if using setrlimit to limit memory usage during 'make check'. +/* #undef _GLIBCPP_MEM_LIMITS */ + +// Define to use concept checking code from the boost libraries. +/* #undef _GLIBCPP_CONCEPT_CHECKS */ + +// Define to use symbol versioning in the shared library. +/* #undef _GLIBCPP_SYMVER */ + +// Define symbol versioning in assember directives. If symbol +// versioning is beigng used, and the assembler supports this kind of +// thing, then use it. +// NB: _GLIBCPP_AT_AT is a hack to work around quoting issues in m4. +#if _GLIBCPP_SYMVER + #define _GLIBCPP_ASM_SYMVER(cur, old, version) \ + asm (".symver " #cur "," #old _GLIBCPP_AT_AT #version); +#else + #define _GLIBCPP_ASM_SYMVER(cur, old, version) +#endif + +// Define if gthr-default.h exists (meaning that threading support is enabled). +/* #undef _GLIBCPP_HAVE_GTHR_DEFAULT */ + +// Define if drand48 exists. +/* #undef _GLIBCPP_HAVE_DRAND48 */ + +// Define if getpagesize exists. +/* #undef _GLIBCPP_HAVE_GETPAGESIZE */ + +// Define if setenv exists. +/* #undef _GLIBCPP_HAVE_SETENV */ + +// Define if sigsetjmp exists. +/* #undef _GLIBCPP_HAVE_SIGSETJMP */ + +// Define if mbstate_t exists in wchar.h. +#define _GLIBCPP_HAVE_MBSTATE_T 1 + +// Define if you have the modff function. +#define _GLIBCPP_HAVE_MODFF 1 + +// Define if you have the modfl function. +/* #undef _GLIBCPP_HAVE_MODFL */ + +// Define if you have the expf function. +#define _GLIBCPP_HAVE_EXPF 1 + +// Define if you have the expl function. +/* #undef _GLIBCPP_HAVE_EXPL */ + +// Define if you have the hypotf function. +#define _GLIBCPP_HAVE_HYPOTF 1 + +// Define if you have the hypotl function. +/* #undef _GLIBCPP_HAVE_HYPOTL */ + +// Define if the compiler/host combination has __builtin_abs +/* #undef _GLIBCPP_HAVE___BUILTIN_ABS */ + +// Define if the compiler/host combination has __builtin_labs +/* #undef _GLIBCPP_HAVE___BUILTIN_LABS */ + +// Define if the compiler/host combination has __builtin_cos +/* #undef _GLIBCPP_HAVE___BUILTIN_COS */ + +// Define if the compiler/host combination has __builtin_cosf +/* #undef _GLIBCPP_HAVE___BUILTIN_COSF */ + +// Define if the compiler/host combination has __builtin_cosl +/* #undef _GLIBCPP_HAVE___BUILTIN_COSL */ + +// Define if the compiler/host combination has __builtin_fabs +/* #undef _GLIBCPP_HAVE___BUILTIN_FABS */ + +// Define if the compiler/host combination has __builtin_fabsf +/* #undef _GLIBCPP_HAVE___BUILTIN_FABSF */ + +// Define if the compiler/host combination has __builtin_fabsl +/* #undef _GLIBCPP_HAVE___BUILTIN_FABSL */ + +// Define if the compiler/host combination has __builtin_sin +/* #undef _GLIBCPP_HAVE___BUILTIN_SIN */ + +// Define if the compiler/host combination has __builtin_sinf +/* #undef _GLIBCPP_HAVE___BUILTIN_SINF */ + +// Define if the compiler/host combination has __builtin_sinl +/* #undef _GLIBCPP_HAVE___BUILTIN_SINL */ + +// Define if the compiler/host combination has __builtin_sqrt +/* #undef _GLIBCPP_HAVE___BUILTIN_SQRT */ + +// Define if the compiler/host combination has __builtin_sqrtf +/* #undef _GLIBCPP_HAVE___BUILTIN_SQRTF */ + +// Define if the compiler/host combination has __builtin_sqrtl +/* #undef _GLIBCPP_HAVE___BUILTIN_SQRTL */ + +// Define if poll is available in <poll.h>. +/* #undef _GLIBCPP_HAVE_POLL */ + +// Define if S_ISREG (Posix) is available in <sys/stat.h>. +/* #undef _GLIBCPP_HAVE_S_ISREG */ + +// Define if S_IFREG is available in <sys/stat.h>. +/* #undef _GLIBCPP_HAVE_S_IFREG */ + +// Define if LC_MESSAGES is available in <locale.h>. +/* #undef _GLIBCPP_HAVE_LC_MESSAGES */ + +/* Define if you have the __signbit function. */ +/* #undef _GLIBCPP_HAVE___SIGNBIT */ + +/* Define if you have the __signbitf function. */ +/* #undef _GLIBCPP_HAVE___SIGNBITF */ + +/* Define if you have the __signbitl function. */ +/* #undef _GLIBCPP_HAVE___SIGNBITL */ + +/* Define if you have the _acosf function. */ +/* #undef _GLIBCPP_HAVE__ACOSF */ + +/* Define if you have the _acosl function. */ +/* #undef _GLIBCPP_HAVE__ACOSL */ + +/* Define if you have the _asinf function. */ +/* #undef _GLIBCPP_HAVE__ASINF */ + +/* Define if you have the _asinl function. */ +/* #undef _GLIBCPP_HAVE__ASINL */ + +/* Define if you have the _atan2f function. */ +/* #undef _GLIBCPP_HAVE__ATAN2F */ + +/* Define if you have the _atan2l function. */ +/* #undef _GLIBCPP_HAVE__ATAN2L */ + +/* Define if you have the _atanf function. */ +/* #undef _GLIBCPP_HAVE__ATANF */ + +/* Define if you have the _atanl function. */ +/* #undef _GLIBCPP_HAVE__ATANL */ + +/* Define if you have the _ceilf function. */ +/* #undef _GLIBCPP_HAVE__CEILF */ + +/* Define if you have the _ceill function. */ +/* #undef _GLIBCPP_HAVE__CEILL */ + +/* Define if you have the _copysign function. */ +/* #undef _GLIBCPP_HAVE__COPYSIGN */ + +/* Define if you have the _copysignl function. */ +/* #undef _GLIBCPP_HAVE__COPYSIGNL */ + +/* Define if you have the _cosf function. */ +/* #undef _GLIBCPP_HAVE__COSF */ + +/* Define if you have the _coshf function. */ +/* #undef _GLIBCPP_HAVE__COSHF */ + +/* Define if you have the _coshl function. */ +/* #undef _GLIBCPP_HAVE__COSHL */ + +/* Define if you have the _cosl function. */ +/* #undef _GLIBCPP_HAVE__COSL */ + +/* Define if you have the _expf function. */ +/* #undef _GLIBCPP_HAVE__EXPF */ + +/* Define if you have the _expl function. */ +/* #undef _GLIBCPP_HAVE__EXPL */ + +/* Define if you have the _fabsf function. */ +/* #undef _GLIBCPP_HAVE__FABSF */ + +/* Define if you have the _fabsl function. */ +/* #undef _GLIBCPP_HAVE__FABSL */ + +/* Define if you have the _finite function. */ +/* #undef _GLIBCPP_HAVE__FINITE */ + +/* Define if you have the _finitef function. */ +/* #undef _GLIBCPP_HAVE__FINITEF */ + +/* Define if you have the _finitel function. */ +/* #undef _GLIBCPP_HAVE__FINITEL */ + +/* Define if you have the _floorf function. */ +/* #undef _GLIBCPP_HAVE__FLOORF */ + +/* Define if you have the _floorl function. */ +/* #undef _GLIBCPP_HAVE__FLOORL */ + +/* Define if you have the _fmodf function. */ +/* #undef _GLIBCPP_HAVE__FMODF */ + +/* Define if you have the _fmodl function. */ +/* #undef _GLIBCPP_HAVE__FMODL */ + +/* Define if you have the _fpclass function. */ +/* #undef _GLIBCPP_HAVE__FPCLASS */ + +/* Define if you have the _frexpf function. */ +/* #undef _GLIBCPP_HAVE__FREXPF */ + +/* Define if you have the _frexpl function. */ +/* #undef _GLIBCPP_HAVE__FREXPL */ + +/* Define if you have the _hypot function. */ +/* #undef _GLIBCPP_HAVE__HYPOT */ + +/* Define if you have the _hypotf function. */ +/* #undef _GLIBCPP_HAVE__HYPOTF */ + +/* Define if you have the _hypotl function. */ +/* #undef _GLIBCPP_HAVE__HYPOTL */ + +/* Define if you have the _isinf function. */ +/* #undef _GLIBCPP_HAVE__ISINF */ + +/* Define if you have the _isinff function. */ +/* #undef _GLIBCPP_HAVE__ISINFF */ + +/* Define if you have the _isinfl function. */ +/* #undef _GLIBCPP_HAVE__ISINFL */ + +/* Define if you have the _isnan function. */ +/* #undef _GLIBCPP_HAVE__ISNAN */ + +/* Define if you have the _isnanf function. */ +/* #undef _GLIBCPP_HAVE__ISNANF */ + +/* Define if you have the _isnanl function. */ +/* #undef _GLIBCPP_HAVE__ISNANL */ + +/* Define if you have the _ldexpf function. */ +/* #undef _GLIBCPP_HAVE__LDEXPF */ + +/* Define if you have the _ldexpl function. */ +/* #undef _GLIBCPP_HAVE__LDEXPL */ + +/* Define if you have the _log10f function. */ +/* #undef _GLIBCPP_HAVE__LOG10F */ + +/* Define if you have the _log10l function. */ +/* #undef _GLIBCPP_HAVE__LOG10L */ + +/* Define if you have the _logf function. */ +/* #undef _GLIBCPP_HAVE__LOGF */ + +/* Define if you have the _logl function. */ +/* #undef _GLIBCPP_HAVE__LOGL */ + +/* Define if you have the _modff function. */ +/* #undef _GLIBCPP_HAVE__MODFF */ + +/* Define if you have the _modfl function. */ +/* #undef _GLIBCPP_HAVE__MODFL */ + +/* Define if you have the _powf function. */ +/* #undef _GLIBCPP_HAVE__POWF */ + +/* Define if you have the _powl function. */ +/* #undef _GLIBCPP_HAVE__POWL */ + +/* Define if you have the _qfpclass function. */ +/* #undef _GLIBCPP_HAVE__QFPCLASS */ + +/* Define if you have the _sincos function. */ +/* #undef _GLIBCPP_HAVE__SINCOS */ + +/* Define if you have the _sincosf function. */ +/* #undef _GLIBCPP_HAVE__SINCOSF */ + +/* Define if you have the _sincosl function. */ +/* #undef _GLIBCPP_HAVE__SINCOSL */ + +/* Define if you have the _sinf function. */ +/* #undef _GLIBCPP_HAVE__SINF */ + +/* Define if you have the _sinhf function. */ +/* #undef _GLIBCPP_HAVE__SINHF */ + +/* Define if you have the _sinhl function. */ +/* #undef _GLIBCPP_HAVE__SINHL */ + +/* Define if you have the _sinl function. */ +/* #undef _GLIBCPP_HAVE__SINL */ + +/* Define if you have the _sqrtf function. */ +/* #undef _GLIBCPP_HAVE__SQRTF */ + +/* Define if you have the _sqrtl function. */ +/* #undef _GLIBCPP_HAVE__SQRTL */ + +/* Define if you have the _tanf function. */ +/* #undef _GLIBCPP_HAVE__TANF */ + +/* Define if you have the _tanhf function. */ +/* #undef _GLIBCPP_HAVE__TANHF */ + +/* Define if you have the _tanhl function. */ +/* #undef _GLIBCPP_HAVE__TANHL */ + +/* Define if you have the _tanl function. */ +/* #undef _GLIBCPP_HAVE__TANL */ + +/* Define if you have the acosf function. */ +#define _GLIBCPP_HAVE_ACOSF 1 + +/* Define if you have the acosl function. */ +/* #undef _GLIBCPP_HAVE_ACOSL */ + +/* Define if you have the asinf function. */ +#define _GLIBCPP_HAVE_ASINF 1 + +/* Define if you have the asinl function. */ +/* #undef _GLIBCPP_HAVE_ASINL */ + +/* Define if you have the atan2f function. */ +#define _GLIBCPP_HAVE_ATAN2F 1 + +/* Define if you have the atan2l function. */ +/* #undef _GLIBCPP_HAVE_ATAN2L */ + +/* Define if you have the atanf function. */ +#define _GLIBCPP_HAVE_ATANF 1 + +/* Define if you have the atanl function. */ +/* #undef _GLIBCPP_HAVE_ATANL */ + +/* Define if you have the btowc function. */ +#define _GLIBCPP_HAVE_BTOWC 1 + +/* Define if you have the ceilf function. */ +#define _GLIBCPP_HAVE_CEILF 1 + +/* Define if you have the ceill function. */ +/* #undef _GLIBCPP_HAVE_CEILL */ + +/* Define if you have the copysign function. */ +#define _GLIBCPP_HAVE_COPYSIGN 1 + +/* Define if you have the copysignf function. */ +#define _GLIBCPP_HAVE_COPYSIGNF 1 + +/* Define if you have the copysignl function. */ +/* #undef _GLIBCPP_HAVE_COPYSIGNL */ + +/* Define if you have the cosf function. */ +#define _GLIBCPP_HAVE_COSF 1 + +/* Define if you have the coshf function. */ +#define _GLIBCPP_HAVE_COSHF 1 + +/* Define if you have the coshl function. */ +/* #undef _GLIBCPP_HAVE_COSHL */ + +/* Define if you have the cosl function. */ +/* #undef _GLIBCPP_HAVE_COSL */ + +/* Define if you have the drand48 function. */ +/* #undef _GLIBCPP_HAVE_DRAND48 */ + +/* Define if you have the expf function. */ +#define _GLIBCPP_HAVE_EXPF 1 + +/* Define if you have the expl function. */ +/* #undef _GLIBCPP_HAVE_EXPL */ + +/* Define if you have the fabsf function. */ +#define _GLIBCPP_HAVE_FABSF 1 + +/* Define if you have the fabsl function. */ +/* #undef _GLIBCPP_HAVE_FABSL */ + +/* Define if you have the fgetwc function. */ +#define _GLIBCPP_HAVE_FGETWC 1 + +/* Define if you have the fgetws function. */ +#define _GLIBCPP_HAVE_FGETWS 1 + +/* Define if you have the finite function. */ +#define _GLIBCPP_HAVE_FINITE 1 + +/* Define if you have the finitef function. */ +#define _GLIBCPP_HAVE_FINITEF 1 + +/* Define if you have the finitel function. */ +/* #undef _GLIBCPP_HAVE_FINITEL */ + +/* Define if you have the floorf function. */ +#define _GLIBCPP_HAVE_FLOORF 1 + +/* Define if you have the floorl function. */ +/* #undef _GLIBCPP_HAVE_FLOORL */ + +/* Define if you have the fmodf function. */ +#define _GLIBCPP_HAVE_FMODF 1 + +/* Define if you have the fmodl function. */ +/* #undef _GLIBCPP_HAVE_FMODL */ + +/* Define if you have the fpclass function. */ +/* #undef _GLIBCPP_HAVE_FPCLASS */ + +/* Define if you have the fputwc function. */ +#define _GLIBCPP_HAVE_FPUTWC 1 + +/* Define if you have the fputws function. */ +#define _GLIBCPP_HAVE_FPUTWS 1 + +/* Define if you have the frexpf function. */ +#define _GLIBCPP_HAVE_FREXPF 1 + +/* Define if you have the frexpl function. */ +/* #undef _GLIBCPP_HAVE_FREXPL */ + +/* Define if you have the fwide function. */ +#define _GLIBCPP_HAVE_FWIDE 1 + +/* Define if you have the fwprintf function. */ +/* #undef _GLIBCPP_HAVE_FWPRINTF */ + +/* Define if you have the fwscanf function. */ +/* #undef _GLIBCPP_HAVE_FWSCANF */ + +/* Define if you have the getpagesize function. */ +/* #undef _GLIBCPP_HAVE_GETPAGESIZE */ + +/* Define if you have the getwc function. */ +#define _GLIBCPP_HAVE_GETWC 1 + +/* Define if you have the getwchar function. */ +#define _GLIBCPP_HAVE_GETWCHAR 1 + +/* Define if you have the hypot function. */ +/* #undef _GLIBCPP_HAVE_HYPOT */ + +/* Define if you have the hypotf function. */ +#define _GLIBCPP_HAVE_HYPOTF 1 + +/* Define if you have the hypotl function. */ +/* #undef _GLIBCPP_HAVE_HYPOTL */ + +/* Define if you have the iconv function. */ +#define _GLIBCPP_HAVE_ICONV 1 + +/* Define if you have the iconv_close function. */ +#define _GLIBCPP_HAVE_ICONV_CLOSE 1 + +/* Define if you have the iconv_open function. */ +#define _GLIBCPP_HAVE_ICONV_OPEN 1 + +/* Define if you have the isatty function. */ +/* #undef _GLIBCPP_HAVE_ISATTY */ + +/* Define if you have the isinf function. */ +#define _GLIBCPP_HAVE_ISINF 1 + +/* Define if you have the isinff function. */ +#define _GLIBCPP_HAVE_ISINFF 1 + +/* Define if you have the isinfl function. */ +/* #undef _GLIBCPP_HAVE_ISINFL */ + +/* Define if you have the isnan function. */ +#define _GLIBCPP_HAVE_ISNAN 1 + +/* Define if you have the isnanf function. */ +#define _GLIBCPP_HAVE_ISNANF 1 + +/* Define if you have the isnanl function. */ +/* #undef _GLIBCPP_HAVE_ISNANL */ + +/* Define if you have the ldexpf function. */ +#define _GLIBCPP_HAVE_LDEXPF 1 + +/* Define if you have the ldexpl function. */ +/* #undef _GLIBCPP_HAVE_LDEXPL */ + +/* Define if you have the log10f function. */ +#define _GLIBCPP_HAVE_LOG10F 1 + +/* Define if you have the log10l function. */ +/* #undef _GLIBCPP_HAVE_LOG10L */ + +/* Define if you have the logf function. */ +#define _GLIBCPP_HAVE_LOGF 1 + +/* Define if you have the logl function. */ +/* #undef _GLIBCPP_HAVE_LOGL */ + +/* Define if you have the mbrlen function. */ +#define _GLIBCPP_HAVE_MBRLEN 1 + +/* Define if you have the mbrtowc function. */ +#define _GLIBCPP_HAVE_MBRTOWC 1 + +/* Define if you have the mbsinit function. */ +#define _GLIBCPP_HAVE_MBSINIT 1 + +/* Define if you have the mbsrtowcs function. */ +#define _GLIBCPP_HAVE_MBSRTOWCS 1 + +/* Define if you have the modff function. */ +#define _GLIBCPP_HAVE_MODFF 1 + +/* Define if you have the modfl function. */ +/* #undef _GLIBCPP_HAVE_MODFL */ + +/* Define if you have the nan function. */ +/* #undef _GLIBCPP_HAVE_NAN */ + +/* Define if you have the nl_langinfo function. */ +#define _GLIBCPP_HAVE_NL_LANGINFO 1 + +/* Define if you have the powf function. */ +#define _GLIBCPP_HAVE_POWF 1 + +/* Define if you have the powl function. */ +/* #undef _GLIBCPP_HAVE_POWL */ + +/* Define if you have the putwc function. */ +#define _GLIBCPP_HAVE_PUTWC 1 + +/* Define if you have the putwchar function. */ +#define _GLIBCPP_HAVE_PUTWCHAR 1 + +/* Define if you have the qfpclass function. */ +/* #undef _GLIBCPP_HAVE_QFPCLASS */ + +/* Define if you have the setenv function. */ +/* #undef _GLIBCPP_HAVE_SETENV */ + +/* Define if you have the sincos function. */ +/* #undef _GLIBCPP_HAVE_SINCOS */ + +/* Define if you have the sincosf function. */ +/* #undef _GLIBCPP_HAVE_SINCOSF */ + +/* Define if you have the sincosl function. */ +/* #undef _GLIBCPP_HAVE_SINCOSL */ + +/* Define if you have the sinf function. */ +#define _GLIBCPP_HAVE_SINF 1 + +/* Define if you have the sinhf function. */ +#define _GLIBCPP_HAVE_SINHF 1 + +/* Define if you have the sinhl function. */ +/* #undef _GLIBCPP_HAVE_SINHL */ + +/* Define if you have the sinl function. */ +/* #undef _GLIBCPP_HAVE_SINL */ + +/* Define if you have the sqrtf function. */ +#define _GLIBCPP_HAVE_SQRTF 1 + +/* Define if you have the sqrtl function. */ +/* #undef _GLIBCPP_HAVE_SQRTL */ + +/* Define if you have the strtof function. */ +#define _GLIBCPP_HAVE_STRTOF 1 + +/* Define if you have the strtold function. */ +#define _GLIBCPP_HAVE_STRTOLD 1 + +/* Define if you have the swprintf function. */ +/* #undef _GLIBCPP_HAVE_SWPRINTF */ + +/* Define if you have the swscanf function. */ +/* #undef _GLIBCPP_HAVE_SWSCANF */ + +/* Define if you have the tanf function. */ +#define _GLIBCPP_HAVE_TANF 1 + +/* Define if you have the tanhf function. */ +#define _GLIBCPP_HAVE_TANHF 1 + +/* Define if you have the tanhl function. */ +/* #undef _GLIBCPP_HAVE_TANHL */ + +/* Define if you have the tanl function. */ +/* #undef _GLIBCPP_HAVE_TANL */ + +/* Define if you have the ungetwc function. */ +#define _GLIBCPP_HAVE_UNGETWC 1 + +/* Define if you have the vfwprintf function. */ +/* #undef _GLIBCPP_HAVE_VFWPRINTF */ + +/* Define if you have the vfwscanf function. */ +/* #undef _GLIBCPP_HAVE_VFWSCANF */ + +/* Define if you have the vswprintf function. */ +/* #undef _GLIBCPP_HAVE_VSWPRINTF */ + +/* Define if you have the vswscanf function. */ +/* #undef _GLIBCPP_HAVE_VSWSCANF */ + +/* Define if you have the vwprintf function. */ +/* #undef _GLIBCPP_HAVE_VWPRINTF */ + +/* Define if you have the vwscanf function. */ +/* #undef _GLIBCPP_HAVE_VWSCANF */ + +/* Define if you have the wcrtomb function. */ +#define _GLIBCPP_HAVE_WCRTOMB 1 + +/* Define if you have the wcscat function. */ +#define _GLIBCPP_HAVE_WCSCAT 1 + +/* Define if you have the wcschr function. */ +#define _GLIBCPP_HAVE_WCSCHR 1 + +/* Define if you have the wcscmp function. */ +#define _GLIBCPP_HAVE_WCSCMP 1 + +/* Define if you have the wcscoll function. */ +#define _GLIBCPP_HAVE_WCSCOLL 1 + +/* Define if you have the wcscpy function. */ +#define _GLIBCPP_HAVE_WCSCPY 1 + +/* Define if you have the wcscspn function. */ +#define _GLIBCPP_HAVE_WCSCSPN 1 + +/* Define if you have the wcsftime function. */ +/* #undef _GLIBCPP_HAVE_WCSFTIME */ + +/* Define if you have the wcslen function. */ +#define _GLIBCPP_HAVE_WCSLEN 1 + +/* Define if you have the wcsncat function. */ +#define _GLIBCPP_HAVE_WCSNCAT 1 + +/* Define if you have the wcsncmp function. */ +#define _GLIBCPP_HAVE_WCSNCMP 1 + +/* Define if you have the wcsncpy function. */ +#define _GLIBCPP_HAVE_WCSNCPY 1 + +/* Define if you have the wcspbrk function. */ +#define _GLIBCPP_HAVE_WCSPBRK 1 + +/* Define if you have the wcsrchr function. */ +#define _GLIBCPP_HAVE_WCSRCHR 1 + +/* Define if you have the wcsrtombs function. */ +#define _GLIBCPP_HAVE_WCSRTOMBS 1 + +/* Define if you have the wcsspn function. */ +#define _GLIBCPP_HAVE_WCSSPN 1 + +/* Define if you have the wcsstr function. */ +#define _GLIBCPP_HAVE_WCSSTR 1 + +/* Define if you have the wcstod function. */ +#define _GLIBCPP_HAVE_WCSTOD 1 + +/* Define if you have the wcstof function. */ +/* #undef _GLIBCPP_HAVE_WCSTOF */ + +/* Define if you have the wcstok function. */ +#define _GLIBCPP_HAVE_WCSTOK 1 + +/* Define if you have the wcstol function. */ +#define _GLIBCPP_HAVE_WCSTOL 1 + +/* Define if you have the wcstoul function. */ +#define _GLIBCPP_HAVE_WCSTOUL 1 + +/* Define if you have the wcsxfrm function. */ +#define _GLIBCPP_HAVE_WCSXFRM 1 + +/* Define if you have the wctob function. */ +#define _GLIBCPP_HAVE_WCTOB 1 + +/* Define if you have the wmemchr function. */ +#define _GLIBCPP_HAVE_WMEMCHR 1 + +/* Define if you have the wmemcmp function. */ +#define _GLIBCPP_HAVE_WMEMCMP 1 + +/* Define if you have the wmemcpy function. */ +#define _GLIBCPP_HAVE_WMEMCPY 1 + +/* Define if you have the wmemmove function. */ +#define _GLIBCPP_HAVE_WMEMMOVE 1 + +/* Define if you have the wmemset function. */ +#define _GLIBCPP_HAVE_WMEMSET 1 + +/* Define if you have the wprintf function. */ +/* #undef _GLIBCPP_HAVE_WPRINTF */ + +/* Define if you have the wscanf function. */ +/* #undef _GLIBCPP_HAVE_WSCANF */ + +/* Define if you have the <endian.h> header file. */ +/* #undef _GLIBCPP_HAVE_ENDIAN_H */ + +/* Define if you have the <float.h> header file. */ +#define _GLIBCPP_HAVE_FLOAT_H 1 + +/* Define if you have the <fp.h> header file. */ +/* #undef _GLIBCPP_HAVE_FP_H */ + +/* Define if you have the <gconv.h> header file. */ +/* #undef _GLIBCPP_HAVE_GCONV_H */ + +/* Define if you have the <ieeefp.h> header file. */ +#define _GLIBCPP_HAVE_IEEEFP_H 1 + +/* Define if you have the <inttypes.h> header file. */ +#define _GLIBCPP_HAVE_INTTYPES_H 1 + +/* Define if you have the <locale.h> header file. */ +#define _GLIBCPP_HAVE_LOCALE_H 1 + +/* Define if you have the <machine/endian.h> header file. */ +#define _GLIBCPP_HAVE_MACHINE_ENDIAN_H 1 + +/* Define if you have the <machine/param.h> header file. */ +#define _GLIBCPP_HAVE_MACHINE_PARAM_H 1 + +/* Define if you have the <nan.h> header file. */ +/* #undef _GLIBCPP_HAVE_NAN_H */ + +/* Define if you have the <stdlib.h> header file. */ +#define _GLIBCPP_HAVE_STDLIB_H 1 + +/* Define if you have the <string.h> header file. */ +#define _GLIBCPP_HAVE_STRING_H 1 + +/* Define if you have the <sys/filio.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_FILIO_H */ + +/* Define if you have the <sys/ioctl.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_IOCTL_H */ + +/* Define if you have the <sys/isa_defs.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_ISA_DEFS_H */ + +/* Define if you have the <sys/machine.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_MACHINE_H */ + +/* Define if you have the <sys/resource.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_RESOURCE_H */ + +/* Define if you have the <sys/stat.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_STAT_H */ + +/* Define if you have the <sys/time.h> header file. */ +/* #undef _GLIBCPP_HAVE_SYS_TIME_H */ + +/* Define if you have the <sys/types.h> header file. */ +#define _GLIBCPP_HAVE_SYS_TYPES_H 1 + +/* Define if you have the <unistd.h> header file. */ +/* #undef _GLIBCPP_HAVE_UNISTD_H */ + +/* Define if you have the <wchar.h> header file. */ +#define _GLIBCPP_HAVE_WCHAR_H 1 + +/* Define if you have the <wctype.h> header file. */ +#define _GLIBCPP_HAVE_WCTYPE_H 1 + +/* Define if you have the m library (-lm). */ +/* #undef _GLIBCPP_HAVE_LIBM */ + +/* Name of package */ +#define _GLIBCPP_PACKAGE "libstdc++" + +/* Version number of package */ +#define _GLIBCPP_VERSION "3.3.1" + +/* Define if the compiler is configured for setjmp/longjmp exceptions. */ +/* #undef _GLIBCPP_SJLJ_EXCEPTIONS */ + +/* Define if sigsetjmp is available. */ +/* #undef _GLIBCPP_HAVE_SIGSETJMP */ + +/* Only used in build directory testsuite_hooks.h. */ +/* #undef _GLIBCPP_HAVE_MEMLIMIT_DATA */ + +/* Only used in build directory testsuite_hooks.h. */ +/* #undef _GLIBCPP_HAVE_MEMLIMIT_RSS */ + +/* Only used in build directory testsuite_hooks.h. */ +/* #undef _GLIBCPP_HAVE_MEMLIMIT_VMEM */ + +/* Only used in build directory testsuite_hooks.h. */ +/* #undef _GLIBCPP_HAVE_MEMLIMIT_AS */ + +// +// Systems that have certain non-standard functions prefixed with an +// underscore, we'll handle those here. Must come after config.h.in. +// +#if defined (_GLIBCPP_HAVE__ISNAN) && ! defined (_GLIBCPP_HAVE_ISNAN) +# define _GLIBCPP_HAVE_ISNAN 1 +# define isnan _isnan +#endif + +#if defined (_GLIBCPP_HAVE__ISNANF) && ! defined (_GLIBCPP_HAVE_ISNANF) +# define _GLIBCPP_HAVE_ISNANF 1 +# define isnanf _isnanf +#endif + +#if defined (_GLIBCPP_HAVE__ISNANL) && ! defined (_GLIBCPP_HAVE_ISNANL) +# define _GLIBCPP_HAVE_ISNANL 1 +# define isnanl _isnanl +#endif + +#if defined (_GLIBCPP_HAVE__ISINF) && ! defined (_GLIBCPP_HAVE_ISINF) +# define _GLIBCPP_HAVE_ISINF 1 +# define isinf _isinf +#endif + +#if defined (_GLIBCPP_HAVE__ISINFF) && ! defined (_GLIBCPP_HAVE_ISINFF) +# define _GLIBCPP_HAVE_ISINFF 1 +# define isinff _isinff +#endif + +#if defined (_GLIBCPP_HAVE__ISINFL) && ! defined (_GLIBCPP_HAVE_ISINFL) +# define _GLIBCPP_HAVE_ISINFL 1 +# define isinfl _isinfl +#endif + +#if defined (_GLIBCPP_HAVE__COPYSIGN) && ! defined (_GLIBCPP_HAVE_COPYSIGN) +# define _GLIBCPP_HAVE_COPYSIGN 1 +# define copysign _copysign +#endif + +#if defined (_GLIBCPP_HAVE__COPYSIGNL) && ! defined (_GLIBCPP_HAVE_COPYSIGNL) +# define _GLIBCPP_HAVE_COPYSIGNL 1 +# define copysignl _copysignl +#endif + +#if defined (_GLIBCPP_HAVE__COSF) && ! defined (_GLIBCPP_HAVE_COSF) +# define _GLIBCPP_HAVE_COSF 1 +# define cosf _cosf +#endif + +#if defined (_GLIBCPP_HAVE__ACOSF) && ! defined (_GLIBCPP_HAVE_ACOSF) +# define _GLIBCPP_HAVE_ACOSF 1 +# define acosf _acosf +#endif + +#if defined (_GLIBCPP_HAVE__ACOSL) && ! defined (_GLIBCPP_HAVE_ACOSL) +# define _GLIBCPP_HAVE_ACOSL 1 +# define acosl _acosl +#endif + +#if defined (_GLIBCPP_HAVE__ASINF) && ! defined (_GLIBCPP_HAVE_ASINF) +# define _GLIBCPP_HAVE_ASINF 1 +# define asinf _asinf +#endif + +#if defined (_GLIBCPP_HAVE__ASINL) && ! defined (_GLIBCPP_HAVE_ASINL) +# define _GLIBCPP_HAVE_ASINL 1 +# define asinl _asinl +#endif + +#if defined (_GLIBCPP_HAVE__ATANF) && ! defined (_GLIBCPP_HAVE_ATANF) +# define _GLIBCPP_HAVE_ATANF 1 +# define atanf _atanf +#endif + +#if defined (_GLIBCPP_HAVE__ATANL) && ! defined (_GLIBCPP_HAVE_ATANL) +# define _GLIBCPP_HAVE_ATANL 1 +# define atanl _atanl +#endif + +#if defined (_GLIBCPP_HAVE__CEILF) && ! defined (_GLIBCPP_HAVE_CEILF) +# define _GLIBCPP_HAVE_CEILF 1 +# define aceil _ceilf +#endif + +#if defined (_GLIBCPP_HAVE__CEILL) && ! defined (_GLIBCPP_HAVE_CEILL) +# define _GLIBCPP_HAVE_CEILL 1 +# define aceil _ceill +#endif + +#if defined (_GLIBCPP_HAVE__COSHF) && ! defined (_GLIBCPP_HAVE_COSHF) +# define _GLIBCPP_HAVE_COSHF 1 +# define coshf _coshf +#endif + +#if defined (_GLIBCPP_HAVE__COSL) && ! defined (_GLIBCPP_HAVE_COSL) +# define _GLIBCPP_HAVE_COSL 1 +# define cosl _cosl +#endif + +#if defined (_GLIBCPP_HAVE__LOGF) && ! defined (_GLIBCPP_HAVE_LOGF) +# define _GLIBCPP_HAVE_LOGF 1 +# define logf _logf +#endif + +#if defined (_GLIBCPP_HAVE__COSHL) && ! defined (_GLIBCPP_HAVE_COSHL) +# define _GLIBCPP_HAVE_COSHL 1 +# define coshl _coshl +#endif + +#if defined (_GLIBCPP_HAVE__EXPF) && ! defined (_GLIBCPP_HAVE_EXPF) +# define _GLIBCPP_HAVE_EXPF 1 +# define expf _expf +#endif + +#if defined (_GLIBCPP_HAVE__EXPL) && ! defined (_GLIBCPP_HAVE_EXPL) +# define _GLIBCPP_HAVE_EXPL 1 +# define expl _expl +#endif + +#if defined (_GLIBCPP_HAVE__FABSF) && ! defined (_GLIBCPP_HAVE_FABSF) +# define _GLIBCPP_HAVE_FABSF 1 +# define fabsf _fabsf +#endif + +#if defined (_GLIBCPP_HAVE__FABSL) && ! defined (_GLIBCPP_HAVE_FABSL) +# define _GLIBCPP_HAVE_FABSL 1 +# define fabsl _fabsl +#endif + +#if defined (_GLIBCPP_HAVE__FLOORF) && ! defined (_GLIBCPP_HAVE_FLOORF) +# define _GLIBCPP_HAVE_FLOORF 1 +# define floorf _floorf +#endif + +#if defined (_GLIBCPP_HAVE__FLOORL) && ! defined (_GLIBCPP_HAVE_FLOORL) +# define _GLIBCPP_HAVE_FLOORL 1 +# define floorl _floorl +#endif + +#if defined (_GLIBCPP_HAVE__FMODF) && ! defined (_GLIBCPP_HAVE_FMODF) +# define _GLIBCPP_HAVE_FMODF 1 +# define fmodf _fmodf +#endif + +#if defined (_GLIBCPP_HAVE__FMODL) && ! defined (_GLIBCPP_HAVE_FMODL) +# define _GLIBCPP_HAVE_FMODL 1 +# define fmodl _fmodl +#endif + +#if defined (_GLIBCPP_HAVE__FREXPF) && ! defined (_GLIBCPP_HAVE_FREXPF) +# define _GLIBCPP_HAVE_FREXPF 1 +# define frexpf _frexpf +#endif + +#if defined (_GLIBCPP_HAVE__FREXPL) && ! defined (_GLIBCPP_HAVE_FREXPL) +# define _GLIBCPP_HAVE_FREXPL 1 +# define frexpl _frexpl +#endif + +#if defined (_GLIBCPP_HAVE__LDEXPF) && ! defined (_GLIBCPP_HAVE_LDEXPF) +# define _GLIBCPP_HAVE_LDEXPF 1 +# define ldexpf _ldexpf +#endif + +#if defined (_GLIBCPP_HAVE__LDEXPL) && ! defined (_GLIBCPP_HAVE_LDEXPL) +# define _GLIBCPP_HAVE_LDEXPL 1 +# define ldexpl _ldexpl +#endif + +#if defined (_GLIBCPP_HAVE__LOG10F) && ! defined (_GLIBCPP_HAVE_LOG10F) +# define _GLIBCPP_HAVE_LOG10F 1 +# define log10f _log10f +#endif + +#if defined (_GLIBCPP_HAVE__LOGL) && ! defined (_GLIBCPP_HAVE_LOGL) +# define _GLIBCPP_HAVE_LOGL 1 +# define logl _logl +#endif + +#if defined (_GLIBCPP_HAVE__POWF) && ! defined (_GLIBCPP_HAVE_POWF) +# define _GLIBCPP_HAVE_POWF 1 +# define powf _powf +#endif + +#if defined (_GLIBCPP_HAVE__LOG10L) && ! defined (_GLIBCPP_HAVE_LOG10L) +# define _GLIBCPP_HAVE_LOG10L 1 +# define log10l _log10l +#endif + +#if defined (_GLIBCPP_HAVE__MODF) && ! defined (_GLIBCPP_HAVE_MODF) +# define _GLIBCPP_HAVE_MODF 1 +# define modf _modf +#endif + +#if defined (_GLIBCPP_HAVE__MODL) && ! defined (_GLIBCPP_HAVE_MODL) +# define _GLIBCPP_HAVE_MODL 1 +# define modl _modl +#endif + +#if defined (_GLIBCPP_HAVE__SINF) && ! defined (_GLIBCPP_HAVE_SINF) +# define _GLIBCPP_HAVE_SINF 1 +# define sinf _sinf +#endif + +#if defined (_GLIBCPP_HAVE__POWL) && ! defined (_GLIBCPP_HAVE_POWL) +# define _GLIBCPP_HAVE_POWL 1 +# define powl _powl +#endif + +#if defined (_GLIBCPP_HAVE__SINHF) && ! defined (_GLIBCPP_HAVE_SINHF) +# define _GLIBCPP_HAVE_SINHF 1 +# define sinhf _sinhf +#endif + +#if defined (_GLIBCPP_HAVE__SINL) && ! defined (_GLIBCPP_HAVE_SINL) +# define _GLIBCPP_HAVE_SINL 1 +# define sinl _sinl +#endif + +#if defined (_GLIBCPP_HAVE__SQRTF) && ! defined (_GLIBCPP_HAVE_SQRTF) +# define _GLIBCPP_HAVE_SQRTF 1 +# define sqrtf _sqrtf +#endif + +#if defined (_GLIBCPP_HAVE__SINHL) && ! defined (_GLIBCPP_HAVE_SINHL) +# define _GLIBCPP_HAVE_SINHL 1 +# define sinhl _sinhl +#endif + +#if defined (_GLIBCPP_HAVE__TANF) && ! defined (_GLIBCPP_HAVE_TANF) +# define _GLIBCPP_HAVE_TANF 1 +# define tanf _tanf +#endif + +#if defined (_GLIBCPP_HAVE__SQRTL) && ! defined (_GLIBCPP_HAVE_SQRTL) +# define _GLIBCPP_HAVE_SQRTL 1 +# define sqrtl _sqrtl +#endif + +#if defined (_GLIBCPP_HAVE__TANHF) && ! defined (_GLIBCPP_HAVE_TANHF) +# define _GLIBCPP_HAVE_TANHF 1 +# define tanhf _tanhf +#endif + +#if defined (_GLIBCPP_HAVE__TANL) && ! defined (_GLIBCPP_HAVE_TANL) +# define _GLIBCPP_HAVE_TANF 1 +# define tanf _tanf +#endif + +#if defined (_GLIBCPP_HAVE__STRTOF) && ! defined (_GLIBCPP_HAVE_STRTOF) +# define _GLIBCPP_HAVE_STRTOF 1 +# define strtof _strtof +#endif + +#if defined (_GLIBCPP_HAVE__TANHL) && ! defined (_GLIBCPP_HAVE_TANHL) +# define _GLIBCPP_HAVE_TANHL 1 +# define tanhl _tanhl +#endif + +#if defined (_GLIBCPP_HAVE__STRTOLD) && ! defined (_GLIBCPP_HAVE_STRTOLD) +# define _GLIBCPP_HAVE_STRTOLD 1 +# define strtold _strtold +#endif + +#if defined (_GLIBCPP_HAVE__SINCOS) && ! defined (_GLIBCPP_HAVE_SINCOS) +# define _GLIBCPP_HAVE_SINCOS 1 +# define sincos _sincos +#endif + +#if defined (_GLIBCPP_HAVE__SINCOSF) && ! defined (_GLIBCPP_HAVE_SINCOSF) +# define _GLIBCPP_HAVE_SINCOSF 1 +# define sincosf _sincosf +#endif + +#if defined (_GLIBCPP_HAVE__SINCOSL) && ! defined (_GLIBCPP_HAVE_SINCOSL) +# define _GLIBCPP_HAVE_SINCOSL 1 +# define sincosl _sincosl +#endif + +#if defined (_GLIBCPP_HAVE__FINITE) && ! defined (_GLIBCPP_HAVE_FINITE) +# define _GLIBCPP_HAVE_FINITE 1 +# define finite _finite +#endif + +#if defined (_GLIBCPP_HAVE__FINITEF) && ! defined (_GLIBCPP_HAVE_FINITEF) +# define _GLIBCPP_HAVE_FINITEF 1 +# define finitef _finitef +#endif + +#if defined (_GLIBCPP_HAVE__FINITEL) && ! defined (_GLIBCPP_HAVE_FINITEL) +# define _GLIBCPP_HAVE_FINITEL 1 +# define finitel _finitel +#endif + +#if defined (_GLIBCPP_HAVE__QFINITE) && ! defined (_GLIBCPP_HAVE_QFINITE) +# define _GLIBCPP_HAVE_QFINITE 1 +# define qfinite _qfinite +#endif + +#if defined (_GLIBCPP_HAVE__FPCLASS) && ! defined (_GLIBCPP_HAVE_FPCLASS) +# define _GLIBCPP_HAVE_FPCLASS 1 +# define fpclass _fpclass +#endif + +#if defined (_GLIBCPP_HAVE__QFPCLASS) && ! defined (_GLIBCPP_HAVE_QFPCLASS) +# define _GLIBCPP_HAVE_QFPCLASS 1 +# define qfpclass _qfpclass +#endif + +#endif // _CPP_CPPCONFIG_ diff --git a/gnu/lib/libstdc++-v3/arch/sparc64/defs.mk b/gnu/lib/libstdc++-v3/arch/sparc64/defs.mk new file mode 100644 index 00000000000..5dbddc912ff --- /dev/null +++ b/gnu/lib/libstdc++-v3/arch/sparc64/defs.mk @@ -0,0 +1,18 @@ +# This file is automatically generated. DO NOT EDIT! +# Generated from: NetBSD: mknative-gcc,v 1.1 2003/07/25 16:26:53 mrg Exp +# +G_libmath_la_SOURCES=stubs.c +G_libmath_la_LIBADD=nan.lo copysignf.lo signbit.lo signbitf.lo +G_LIBSUPCXX_SOURCES=del_op.cc del_opnt.cc del_opv.cc del_opvnt.cc eh_alloc.cc eh_aux_runtime.cc eh_catch.cc eh_exception.cc eh_globals.cc eh_personality.cc eh_terminate.cc eh_throw.cc eh_type.cc guard.cc new_handler.cc new_op.cc new_opnt.cc new_opv.cc new_opvnt.cc pure.cc tinfo.cc tinfo2.cc vec.cc +G_LIBSUPCXX_C_SOURCES=cxa_demangle.c dyn-string.c +G_SRC_SOURCES=bitset.cc codecvt.cc complex_io.cc concept-inst.cc ctype.cc ext-inst.cc fstream.cc fstream-inst.cc functexcept.cc globals.cc io-inst.cc ios.cc istream-inst.cc limits.cc locale.cc locale-inst.cc localename.cc misc-inst.cc ostream-inst.cc sstream-inst.cc stdexcept.cc stl-inst.cc streambuf-inst.cc string-inst.cc strstream.cc valarray-inst.cc vterminate.cc wstring-inst.cc codecvt_members.cc collate_members.cc ctype_members.cc messages_members.cc monetary_members.cc numeric_members.cc time_members.cc basic_file.cc c++locale.cc +G_SECTION_FLAGS=-ffunction-sections -fdata-sections +G_c_base_headers_rename=cassert cctype cerrno cfloat ciso646 climits clocale cmath csetjmp csignal cstdarg cstddef cstdio cstdlib cstring ctime cwchar cwctype +G_std_headers_rename=algorithm bitset complex deque fstream functional iomanip ios iosfwd iostream istream iterator limits list locale map memory numeric ostream queue set sstream stack stdexcept streambuf string utility valarray vector +G_bits_headers=basic_ios.h basic_ios.tcc basic_string.h basic_string.tcc boost_concept_check.h char_traits.h codecvt.h concept_check.h cpp_type_traits.h deque.tcc fpos.h fstream.tcc functexcept.h gslice.h gslice_array.h indirect_array.h ios_base.h istream.tcc list.tcc locale_classes.h locale_facets.h locale_facets.tcc localefwd.h mask_array.h ostream.tcc pthread_allocimpl.h stream_iterator.h streambuf_iterator.h slice_array.h sstream.tcc stl_algo.h stl_algobase.h stl_alloc.h stl_bvector.h stl_construct.h stl_deque.h stl_function.h stl_heap.h stl_iterator.h stl_iterator_base_funcs.h stl_iterator_base_types.h stl_list.h stl_map.h stl_multimap.h stl_multiset.h stl_numeric.h stl_pair.h stl_pthread_alloc.h stl_queue.h stl_raw_storage_iter.h stl_relops.h stl_set.h stl_stack.h stl_tempbuf.h stl_threads.h stl_tree.h stl_uninitialized.h stl_vector.h streambuf.tcc stringfwd.h type_traits.h valarray_array.h valarray_array.tcc valarray_meta.h vector.tcc +G_backward_headers=complex.h iomanip.h istream.h ostream.h stream.h streambuf.h algo.h algobase.h alloc.h bvector.h defalloc.h deque.h function.h hash_map.h hash_set.h hashtable.h heap.h iostream.h iterator.h list.h map.h multimap.h new.h multiset.h pair.h queue.h rope.h set.h slist.h stack.h tempbuf.h tree.h vector.h fstream.h strstream backward_warning.h +G_ext_headers=algorithm enc_filebuf.h stdio_filebuf.h functional hash_map hash_set iterator memory numeric rb_tree rope ropeimpl.h slist stl_hash_fun.h stl_hashtable.h stl_rope.h +G_c_base_headers_extra=cmath.tcc +G_target_headers=ctype_base.h ctype_inline.h ctype_noninline.h os_defines.h atomicity.h +G_thread_target_headers=gthr.h gthr-single.h gthr-posix.h gthr-default.h +G_target_headers_extra=basic_file.h c++config.h c++io.h c++locale.h messages_members.h time_members.h codecvt_specializations.h diff --git a/gnu/lib/libstdc++-v3/arch/sparc64/gthr-default.h b/gnu/lib/libstdc++-v3/arch/sparc64/gthr-default.h new file mode 100644 index 00000000000..6fa2b1ed699 --- /dev/null +++ b/gnu/lib/libstdc++-v3/arch/sparc64/gthr-default.h @@ -0,0 +1,242 @@ +/* This file is automatically generated. DO NOT EDIT! */ +/* Generated from: NetBSD: mknative-gcc,v 1.1 2003/07/25 16:26:53 mrg Exp */ + +/* Threads compatibility routines for libgcc2 and libobjc. */ +/* Compile this one with gcc. */ +/* Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +GCC 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 General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING. If not, write to the Free +Software Foundation, 59 Temple Place - Suite 330, Boston, MA +02111-1307, USA. */ + +/* As a special exception, if you link this library with other files, + some of which are compiled with GCC, to produce an executable, + this library does not by itself cause the resulting executable + to be covered by the GNU General Public License. + This exception does not however invalidate any other reasons why + the executable file might be covered by the GNU General Public License. */ + +#ifndef _GLIBCPP_GCC_GTHR_SINGLE_H +#define _GLIBCPP_GCC_GTHR_SINGLE_H + +/* Just provide compatibility for mutex handling. */ + +typedef int __gthread_mutex_t; + +#define __GTHREAD_MUTEX_INIT 0 + +#ifdef __cplusplus +#define _GLIBCPP_UNUSED(x) +#else +#define _GLIBCPP_UNUSED(x) x __attribute__((unused)) +#endif + +#ifdef _LIBOBJC + +/* Thread local storage for a single thread */ +static void *thread_local_storage = NULL; + +/* Backend initialization functions */ + +/* Initialize the threads subsystem. */ +static inline int +__gthread_objc_init_thread_system (void) +{ + /* No thread support available */ + return -1; +} + +/* Close the threads subsystem. */ +static inline int +__gthread_objc_close_thread_system (void) +{ + /* No thread support available */ + return -1; +} + +/* Backend thread functions */ + +/* Create a new thread of execution. */ +static inline objc_thread_t +__gthread_objc_thread_detach (void (* func)(void *), void * _GLIBCPP_UNUSED(arg)) +{ + /* No thread support available */ + return NULL; +} + +/* Set the current thread's priority. */ +static inline int +__gthread_objc_thread_set_priority (int _GLIBCPP_UNUSED(priority)) +{ + /* No thread support available */ + return -1; +} + +/* Return the current thread's priority. */ +static inline int +__gthread_objc_thread_get_priority (void) +{ + return OBJC_THREAD_INTERACTIVE_PRIORITY; +} + +/* Yield our process time to another thread. */ +static inline void +__gthread_objc_thread_yield (void) +{ + return; +} + +/* Terminate the current thread. */ +static inline int +__gthread_objc_thread_exit (void) +{ + /* No thread support available */ + /* Should we really exit the program */ + /* exit (&__objc_thread_exit_status); */ + return -1; +} + +/* Returns an integer value which uniquely describes a thread. */ +static inline objc_thread_t +__gthread_objc_thread_id (void) +{ + /* No thread support, use 1. */ + return (objc_thread_t) 1; +} + +/* Sets the thread's local storage pointer. */ +static inline int +__gthread_objc_thread_set_data (void *value) +{ + thread_local_storage = value; + return 0; +} + +/* Returns the thread's local storage pointer. */ +static inline void * +__gthread_objc_thread_get_data (void) +{ + return thread_local_storage; +} + +/* Backend mutex functions */ + +/* Allocate a mutex. */ +static inline int +__gthread_objc_mutex_allocate (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Deallocate a mutex. */ +static inline int +__gthread_objc_mutex_deallocate (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Grab a lock on a mutex. */ +static inline int +__gthread_objc_mutex_lock (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + /* There can only be one thread, so we always get the lock */ + return 0; +} + +/* Try to grab a lock on a mutex. */ +static inline int +__gthread_objc_mutex_trylock (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + /* There can only be one thread, so we always get the lock */ + return 0; +} + +/* Unlock the mutex */ +static inline int +__gthread_objc_mutex_unlock (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Backend condition mutex functions */ + +/* Allocate a condition. */ +static inline int +__gthread_objc_condition_allocate (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +/* Deallocate a condition. */ +static inline int +__gthread_objc_condition_deallocate (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +/* Wait on the condition */ +static inline int +__gthread_objc_condition_wait (objc_condition_t _GLIBCPP_UNUSED(condition), + objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Wake up all threads waiting on this condition. */ +static inline int +__gthread_objc_condition_broadcast (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +/* Wake up one thread waiting on this condition. */ +static inline int +__gthread_objc_condition_signal (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +#else /* _LIBOBJC */ + +static inline int +__gthread_active_p (void) +{ + return 0; +} + +static inline int +__gthread_mutex_lock (__gthread_mutex_t * _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +static inline int +__gthread_mutex_trylock (__gthread_mutex_t * _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +static inline int +__gthread_mutex_unlock (__gthread_mutex_t * _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +#endif /* _LIBOBJC */ + +#undef _GLIBCPP_UNUSED + +#endif /* ! _GLIBCPP_GCC_GTHR_SINGLE_H */ diff --git a/gnu/lib/libstdc++-v3/arch/sparc64/gthr-posix.h b/gnu/lib/libstdc++-v3/arch/sparc64/gthr-posix.h new file mode 100644 index 00000000000..205fa9e2190 --- /dev/null +++ b/gnu/lib/libstdc++-v3/arch/sparc64/gthr-posix.h @@ -0,0 +1,524 @@ +/* This file is automatically generated. DO NOT EDIT! */ +/* Generated from: NetBSD: mknative-gcc,v 1.1 2003/07/25 16:26:53 mrg Exp */ + +/* Threads compatibility routines for libgcc2 and libobjc. */ +/* Compile this one with gcc. */ +/* Copyright (C) 1997, 1999, 2000, 2001 Free Software Foundation, Inc. + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +GCC 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 General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING. If not, write to the Free +Software Foundation, 59 Temple Place - Suite 330, Boston, MA +02111-1307, USA. */ + +/* As a special exception, if you link this library with other files, + some of which are compiled with GCC, to produce an executable, + this library does not by itself cause the resulting executable + to be covered by the GNU General Public License. + This exception does not however invalidate any other reasons why + the executable file might be covered by the GNU General Public License. */ + +#ifndef _GLIBCPP_GCC_GTHR_POSIX_H +#define _GLIBCPP_GCC_GTHR_POSIX_H + +/* POSIX threads specific definitions. + Easy, since the interface is just one-to-one mapping. */ + +#define __GTHREADS 1 + +#include <pthread.h> +#include <unistd.h> + +typedef pthread_key_t __gthread_key_t; +typedef pthread_once_t __gthread_once_t; +typedef pthread_mutex_t __gthread_mutex_t; + +#define __GTHREAD_MUTEX_INIT PTHREAD_MUTEX_INITIALIZER +#define __GTHREAD_ONCE_INIT PTHREAD_ONCE_INIT + +#if _GLIBCPP_SUPPORTS_WEAK && _GLIBCPP_GTHREAD_USE_WEAK + +#pragma weak pthread_once +#pragma weak pthread_key_create +#pragma weak pthread_key_delete +#pragma weak pthread_getspecific +#pragma weak pthread_setspecific +#pragma weak pthread_create + +#pragma weak pthread_mutex_lock +#pragma weak pthread_mutex_trylock +#pragma weak pthread_mutex_unlock + +#ifdef _LIBOBJC +/* Objective-C. */ +#pragma weak pthread_cond_broadcast +#pragma weak pthread_cond_destroy +#pragma weak pthread_cond_init +#pragma weak pthread_cond_signal +#pragma weak pthread_cond_wait +#pragma weak pthread_exit +#pragma weak pthread_mutex_init +#pragma weak pthread_mutex_destroy +#pragma weak pthread_self +/* These really should be protected by _POSIX_PRIORITY_SCHEDULING, but + we use them inside a _POSIX_THREAD_PRIORITY_SCHEDULING block. */ +#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING +#pragma weak sched_get_priority_max +#pragma weak sched_get_priority_min +#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */ +#pragma weak sched_yield +#pragma weak pthread_attr_destroy +#pragma weak pthread_attr_init +#pragma weak pthread_attr_setdetachstate +#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING +#pragma weak pthread_getschedparam +#pragma weak pthread_setschedparam +#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */ +#endif /* _LIBOBJC */ + +static inline int +__gthread_active_p (void) +{ + static void *const __gthread_active_ptr = (void *) &pthread_create; + return __gthread_active_ptr != 0; +} + +#else /* not _GLIBCPP_SUPPORTS_WEAK */ + +static inline int +__gthread_active_p (void) +{ + return 1; +} + +#endif /* _GLIBCPP_SUPPORTS_WEAK */ + +#ifdef _LIBOBJC + +/* This is the config.h file in libobjc/ */ +#include <config.h> + +#ifdef HAVE_SCHED_H +# include <sched.h> +#endif + +/* Key structure for maintaining thread specific storage */ +static pthread_key_t _objc_thread_storage; +static pthread_attr_t _objc_thread_attribs; + +/* Thread local storage for a single thread */ +static void *thread_local_storage = NULL; + +/* Backend initialization functions */ + +/* Initialize the threads subsystem. */ +static inline int +__gthread_objc_init_thread_system (void) +{ + if (__gthread_active_p ()) + { + /* Initialize the thread storage key */ + if (pthread_key_create (&_objc_thread_storage, NULL) == 0) + { + /* The normal default detach state for threads is + * PTHREAD_CREATE_JOINABLE which causes threads to not die + * when you think they should. */ + if (pthread_attr_init (&_objc_thread_attribs) == 0 + && pthread_attr_setdetachstate (&_objc_thread_attribs, + PTHREAD_CREATE_DETACHED) == 0) + return 0; + } + } + + return -1; +} + +/* Close the threads subsystem. */ +static inline int +__gthread_objc_close_thread_system (void) +{ + if (__gthread_active_p () + && pthread_key_delete (_objc_thread_storage) == 0 + && pthread_attr_destroy (&_objc_thread_attribs) == 0) + return 0; + + return -1; +} + +/* Backend thread functions */ + +/* Create a new thread of execution. */ +static inline objc_thread_t +__gthread_objc_thread_detach (void (*func)(void *), void *arg) +{ + objc_thread_t thread_id; + pthread_t new_thread_handle; + + if (!__gthread_active_p ()) + return NULL; + + if (!(pthread_create (&new_thread_handle, NULL, (void *) func, arg))) + thread_id = (objc_thread_t) new_thread_handle; + else + thread_id = NULL; + + return thread_id; +} + +/* Set the current thread's priority. */ +static inline int +__gthread_objc_thread_set_priority (int priority) +{ + if (!__gthread_active_p ()) + return -1; + else + { +#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING + pthread_t thread_id = pthread_self (); + int policy; + struct sched_param params; + int priority_min, priority_max; + + if (pthread_getschedparam (thread_id, &policy, ¶ms) == 0) + { + if ((priority_max = sched_get_priority_max (policy)) == -1) + return -1; + + if ((priority_min = sched_get_priority_min (policy)) == -1) + return -1; + + if (priority > priority_max) + priority = priority_max; + else if (priority < priority_min) + priority = priority_min; + params.sched_priority = priority; + + /* + * The solaris 7 and several other man pages incorrectly state that + * this should be a pointer to policy but pthread.h is universally + * at odds with this. + */ + if (pthread_setschedparam (thread_id, policy, ¶ms) == 0) + return 0; + } +#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */ + return -1; + } +} + +/* Return the current thread's priority. */ +static inline int +__gthread_objc_thread_get_priority (void) +{ +#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING + if (__gthread_active_p ()) + { + int policy; + struct sched_param params; + + if (pthread_getschedparam (pthread_self (), &policy, ¶ms) == 0) + return params.sched_priority; + else + return -1; + } + else +#endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */ + return OBJC_THREAD_INTERACTIVE_PRIORITY; +} + +/* Yield our process time to another thread. */ +static inline void +__gthread_objc_thread_yield (void) +{ + if (__gthread_active_p ()) + sched_yield (); +} + +/* Terminate the current thread. */ +static inline int +__gthread_objc_thread_exit (void) +{ + if (__gthread_active_p ()) + /* exit the thread */ + pthread_exit (&__objc_thread_exit_status); + + /* Failed if we reached here */ + return -1; +} + +/* Returns an integer value which uniquely describes a thread. */ +static inline objc_thread_t +__gthread_objc_thread_id (void) +{ + if (__gthread_active_p ()) + return (objc_thread_t) pthread_self (); + else + return (objc_thread_t) 1; +} + +/* Sets the thread's local storage pointer. */ +static inline int +__gthread_objc_thread_set_data (void *value) +{ + if (__gthread_active_p ()) + return pthread_setspecific (_objc_thread_storage, value); + else + { + thread_local_storage = value; + return 0; + } +} + +/* Returns the thread's local storage pointer. */ +static inline void * +__gthread_objc_thread_get_data (void) +{ + if (__gthread_active_p ()) + return pthread_getspecific (_objc_thread_storage); + else + return thread_local_storage; +} + +/* Backend mutex functions */ + +/* Allocate a mutex. */ +static inline int +__gthread_objc_mutex_allocate (objc_mutex_t mutex) +{ + if (__gthread_active_p ()) + { + mutex->backend = objc_malloc (sizeof (pthread_mutex_t)); + + if (pthread_mutex_init ((pthread_mutex_t *) mutex->backend, NULL)) + { + objc_free (mutex->backend); + mutex->backend = NULL; + return -1; + } + } + + return 0; +} + +/* Deallocate a mutex. */ +static inline int +__gthread_objc_mutex_deallocate (objc_mutex_t mutex) +{ + if (__gthread_active_p ()) + { + int count; + + /* + * Posix Threads specifically require that the thread be unlocked + * for pthread_mutex_destroy to work. + */ + + do + { + count = pthread_mutex_unlock ((pthread_mutex_t *) mutex->backend); + if (count < 0) + return -1; + } + while (count); + + if (pthread_mutex_destroy ((pthread_mutex_t *) mutex->backend)) + return -1; + + objc_free (mutex->backend); + mutex->backend = NULL; + } + return 0; +} + +/* Grab a lock on a mutex. */ +static inline int +__gthread_objc_mutex_lock (objc_mutex_t mutex) +{ + if (__gthread_active_p () + && pthread_mutex_lock ((pthread_mutex_t *) mutex->backend) != 0) + { + return -1; + } + + return 0; +} + +/* Try to grab a lock on a mutex. */ +static inline int +__gthread_objc_mutex_trylock (objc_mutex_t mutex) +{ + if (__gthread_active_p () + && pthread_mutex_trylock ((pthread_mutex_t *) mutex->backend) != 0) + { + return -1; + } + + return 0; +} + +/* Unlock the mutex */ +static inline int +__gthread_objc_mutex_unlock (objc_mutex_t mutex) +{ + if (__gthread_active_p () + && pthread_mutex_unlock ((pthread_mutex_t *) mutex->backend) != 0) + { + return -1; + } + + return 0; +} + +/* Backend condition mutex functions */ + +/* Allocate a condition. */ +static inline int +__gthread_objc_condition_allocate (objc_condition_t condition) +{ + if (__gthread_active_p ()) + { + condition->backend = objc_malloc (sizeof (pthread_cond_t)); + + if (pthread_cond_init ((pthread_cond_t *) condition->backend, NULL)) + { + objc_free (condition->backend); + condition->backend = NULL; + return -1; + } + } + + return 0; +} + +/* Deallocate a condition. */ +static inline int +__gthread_objc_condition_deallocate (objc_condition_t condition) +{ + if (__gthread_active_p ()) + { + if (pthread_cond_destroy ((pthread_cond_t *) condition->backend)) + return -1; + + objc_free (condition->backend); + condition->backend = NULL; + } + return 0; +} + +/* Wait on the condition */ +static inline int +__gthread_objc_condition_wait (objc_condition_t condition, objc_mutex_t mutex) +{ + if (__gthread_active_p ()) + return pthread_cond_wait ((pthread_cond_t *) condition->backend, + (pthread_mutex_t *) mutex->backend); + else + return 0; +} + +/* Wake up all threads waiting on this condition. */ +static inline int +__gthread_objc_condition_broadcast (objc_condition_t condition) +{ + if (__gthread_active_p ()) + return pthread_cond_broadcast ((pthread_cond_t *) condition->backend); + else + return 0; +} + +/* Wake up one thread waiting on this condition. */ +static inline int +__gthread_objc_condition_signal (objc_condition_t condition) +{ + if (__gthread_active_p ()) + return pthread_cond_signal ((pthread_cond_t *) condition->backend); + else + return 0; +} + +#else /* _LIBOBJC */ + +static inline int +__gthread_once (__gthread_once_t *once, void (*func) (void)) +{ + if (__gthread_active_p ()) + return pthread_once (once, func); + else + return -1; +} + +static inline int +__gthread_key_create (__gthread_key_t *key, void (*dtor) (void *)) +{ + return pthread_key_create (key, dtor); +} + +static inline int +__gthread_key_dtor (__gthread_key_t key, void *ptr) +{ + /* Just reset the key value to zero. */ + if (ptr) + return pthread_setspecific (key, 0); + else + return 0; +} + +static inline int +__gthread_key_delete (__gthread_key_t key) +{ + return pthread_key_delete (key); +} + +static inline void * +__gthread_getspecific (__gthread_key_t key) +{ + return pthread_getspecific (key); +} + +static inline int +__gthread_setspecific (__gthread_key_t key, const void *ptr) +{ + return pthread_setspecific (key, ptr); +} + +static inline int +__gthread_mutex_lock (__gthread_mutex_t *mutex) +{ + if (__gthread_active_p ()) + return pthread_mutex_lock (mutex); + else + return 0; +} + +static inline int +__gthread_mutex_trylock (__gthread_mutex_t *mutex) +{ + if (__gthread_active_p ()) + return pthread_mutex_trylock (mutex); + else + return 0; +} + +static inline int +__gthread_mutex_unlock (__gthread_mutex_t *mutex) +{ + if (__gthread_active_p ()) + return pthread_mutex_unlock (mutex); + else + return 0; +} + +#endif /* _LIBOBJC */ + +#endif /* ! _GLIBCPP_GCC_GTHR_POSIX_H */ diff --git a/gnu/lib/libstdc++-v3/arch/sparc64/gthr-single.h b/gnu/lib/libstdc++-v3/arch/sparc64/gthr-single.h new file mode 100644 index 00000000000..6fa2b1ed699 --- /dev/null +++ b/gnu/lib/libstdc++-v3/arch/sparc64/gthr-single.h @@ -0,0 +1,242 @@ +/* This file is automatically generated. DO NOT EDIT! */ +/* Generated from: NetBSD: mknative-gcc,v 1.1 2003/07/25 16:26:53 mrg Exp */ + +/* Threads compatibility routines for libgcc2 and libobjc. */ +/* Compile this one with gcc. */ +/* Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +GCC 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 General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING. If not, write to the Free +Software Foundation, 59 Temple Place - Suite 330, Boston, MA +02111-1307, USA. */ + +/* As a special exception, if you link this library with other files, + some of which are compiled with GCC, to produce an executable, + this library does not by itself cause the resulting executable + to be covered by the GNU General Public License. + This exception does not however invalidate any other reasons why + the executable file might be covered by the GNU General Public License. */ + +#ifndef _GLIBCPP_GCC_GTHR_SINGLE_H +#define _GLIBCPP_GCC_GTHR_SINGLE_H + +/* Just provide compatibility for mutex handling. */ + +typedef int __gthread_mutex_t; + +#define __GTHREAD_MUTEX_INIT 0 + +#ifdef __cplusplus +#define _GLIBCPP_UNUSED(x) +#else +#define _GLIBCPP_UNUSED(x) x __attribute__((unused)) +#endif + +#ifdef _LIBOBJC + +/* Thread local storage for a single thread */ +static void *thread_local_storage = NULL; + +/* Backend initialization functions */ + +/* Initialize the threads subsystem. */ +static inline int +__gthread_objc_init_thread_system (void) +{ + /* No thread support available */ + return -1; +} + +/* Close the threads subsystem. */ +static inline int +__gthread_objc_close_thread_system (void) +{ + /* No thread support available */ + return -1; +} + +/* Backend thread functions */ + +/* Create a new thread of execution. */ +static inline objc_thread_t +__gthread_objc_thread_detach (void (* func)(void *), void * _GLIBCPP_UNUSED(arg)) +{ + /* No thread support available */ + return NULL; +} + +/* Set the current thread's priority. */ +static inline int +__gthread_objc_thread_set_priority (int _GLIBCPP_UNUSED(priority)) +{ + /* No thread support available */ + return -1; +} + +/* Return the current thread's priority. */ +static inline int +__gthread_objc_thread_get_priority (void) +{ + return OBJC_THREAD_INTERACTIVE_PRIORITY; +} + +/* Yield our process time to another thread. */ +static inline void +__gthread_objc_thread_yield (void) +{ + return; +} + +/* Terminate the current thread. */ +static inline int +__gthread_objc_thread_exit (void) +{ + /* No thread support available */ + /* Should we really exit the program */ + /* exit (&__objc_thread_exit_status); */ + return -1; +} + +/* Returns an integer value which uniquely describes a thread. */ +static inline objc_thread_t +__gthread_objc_thread_id (void) +{ + /* No thread support, use 1. */ + return (objc_thread_t) 1; +} + +/* Sets the thread's local storage pointer. */ +static inline int +__gthread_objc_thread_set_data (void *value) +{ + thread_local_storage = value; + return 0; +} + +/* Returns the thread's local storage pointer. */ +static inline void * +__gthread_objc_thread_get_data (void) +{ + return thread_local_storage; +} + +/* Backend mutex functions */ + +/* Allocate a mutex. */ +static inline int +__gthread_objc_mutex_allocate (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Deallocate a mutex. */ +static inline int +__gthread_objc_mutex_deallocate (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Grab a lock on a mutex. */ +static inline int +__gthread_objc_mutex_lock (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + /* There can only be one thread, so we always get the lock */ + return 0; +} + +/* Try to grab a lock on a mutex. */ +static inline int +__gthread_objc_mutex_trylock (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + /* There can only be one thread, so we always get the lock */ + return 0; +} + +/* Unlock the mutex */ +static inline int +__gthread_objc_mutex_unlock (objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Backend condition mutex functions */ + +/* Allocate a condition. */ +static inline int +__gthread_objc_condition_allocate (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +/* Deallocate a condition. */ +static inline int +__gthread_objc_condition_deallocate (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +/* Wait on the condition */ +static inline int +__gthread_objc_condition_wait (objc_condition_t _GLIBCPP_UNUSED(condition), + objc_mutex_t _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +/* Wake up all threads waiting on this condition. */ +static inline int +__gthread_objc_condition_broadcast (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +/* Wake up one thread waiting on this condition. */ +static inline int +__gthread_objc_condition_signal (objc_condition_t _GLIBCPP_UNUSED(condition)) +{ + return 0; +} + +#else /* _LIBOBJC */ + +static inline int +__gthread_active_p (void) +{ + return 0; +} + +static inline int +__gthread_mutex_lock (__gthread_mutex_t * _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +static inline int +__gthread_mutex_trylock (__gthread_mutex_t * _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +static inline int +__gthread_mutex_unlock (__gthread_mutex_t * _GLIBCPP_UNUSED(mutex)) +{ + return 0; +} + +#endif /* _LIBOBJC */ + +#undef _GLIBCPP_UNUSED + +#endif /* ! _GLIBCPP_GCC_GTHR_SINGLE_H */ diff --git a/gnu/lib/libstdc++-v3/arch/sparc64/gthr.h b/gnu/lib/libstdc++-v3/arch/sparc64/gthr.h new file mode 100644 index 00000000000..d463cf98ec6 --- /dev/null +++ b/gnu/lib/libstdc++-v3/arch/sparc64/gthr.h @@ -0,0 +1,108 @@ +/* This file is automatically generated. DO NOT EDIT! */ +/* Generated from: NetBSD: mknative-gcc,v 1.1 2003/07/25 16:26:53 mrg Exp */ + +/* Threads compatibility routines for libgcc2. */ +/* Compile this one with gcc. */ +/* Copyright (C) 1997, 1998 Free Software Foundation, Inc. + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +GCC 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 General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING. If not, write to the Free +Software Foundation, 59 Temple Place - Suite 330, Boston, MA +02111-1307, USA. */ + +/* As a special exception, if you link this library with other files, + some of which are compiled with GCC, to produce an executable, + this library does not by itself cause the resulting executable + to be covered by the GNU General Public License. + This exception does not however invalidate any other reasons why + the executable file might be covered by the GNU General Public License. */ + +#ifndef _GLIBCPP_GCC_GTHR_H +#define _GLIBCPP_GCC_GTHR_H + +/* If this file is compiled with threads support, it must + #define __GTHREADS 1 + to indicate that threads support is present. Also it has define + function + int __gthread_active_p () + that returns 1 if thread system is active, 0 if not. + + The threads interface must define the following types: + __gthread_key_t + __gthread_once_t + __gthread_mutex_t + + The threads interface must define the following macros: + + __GTHREAD_ONCE_INIT + to initialize __gthread_once_t + __GTHREAD_MUTEX_INIT + to initialize __gthread_mutex_t to get a fast + non-recursive mutex. + __GTHREAD_MUTEX_INIT_FUNCTION + some systems can't initialize a mutex without a + function call. On such systems, define this to a + function which looks like this: + void __GTHREAD_MUTEX_INIT_FUNCTION (__gthread_mutex_t *) + Don't define __GTHREAD_MUTEX_INIT in this case + + The threads interface must define the following static functions: + + int __gthread_once (__gthread_once_t *once, void (*func) ()) + + int __gthread_key_create (__gthread_key_t *keyp, void (*dtor) (void *)) + int __gthread_key_delete (__gthread_key_t key) + + int __gthread_key_dtor (__gthread_key_t key, void *ptr) + + void *__gthread_getspecific (__gthread_key_t key) + int __gthread_setspecific (__gthread_key_t key, const void *ptr) + + int __gthread_mutex_lock (__gthread_mutex_t *mutex); + int __gthread_mutex_trylock (__gthread_mutex_t *mutex); + int __gthread_mutex_unlock (__gthread_mutex_t *mutex); + + All functions returning int should return zero on success or the error + number. If the operation is not supported, -1 is returned. + + Currently supported threads packages are + POSIX threads with -D_PTHREADS + DCE threads with -D_DCE_THREADS + Solaris/UI threads with -D_SOLARIS_THREADS +*/ + +/* Check first for thread specific defines. */ +#if _GLIBCPP__PTHREADS +#include <bits/gthr-posix.h> +#elif _GLIBCPP__DCE_THREADS +#include <bits/gthr-dce.h> +#elif _GLIBCPP__SOLARIS_THREADS +#include <bits/gthr-solaris.h> + +/* Include GTHREAD_FILE if one is defined. */ +#elif defined(_GLIBCPP_HAVE_GTHR_DEFAULT) +#if _GLIBCPP_SUPPORTS_WEAK +#ifndef _GLIBCPP_GTHREAD_USE_WEAK +#define _GLIBCPP_GTHREAD_USE_WEAK 1 +#endif +#endif +#include <bits/gthr-default.h> + +/* Fallback to single thread definitions. */ +#else +#include <bits/gthr-single.h> +#endif + +#endif /* ! _GLIBCPP_GCC_GTHR_H */ |
