Remove obsolete Solaris 8 support
libstdc++-v3: * config/os/solaris/solaris2.8: Rename to ... * config/os/solaris/solaris2.9: ... this. * config/abi/post/solaris2.8: Rename to ... * config/abi/post/solaris2.9: ... this. * configure.host (os_include_dir): Remove solaris2.8. Reflect renaming. (abi_baseline_pair): Remove *-*-solaris2.8. Reflect renaming. * configure.ac (GLIBCXX_CHECK_MATH_PROTO): Remove (GLIBCXX_CHECK_STDLIB_PROTO): Remove. * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO): Remove (GLIBCXX_CHECK_STDLIB_PROTO): Remove. (GLIBCXX_CHECK_GTHREADS): Remove Solaris 8 handling. * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Remove *-solaris2.8 handling. * configure: Regenerate. * config.h.in: Regenerate. * config/os/solaris/solaris2.9/os_defines.h (__CORRECT_ISO_CPP_MATH_H_PROTO): Define. (__CORRECT_ISO_CPP_STDLIB_H_PROTO): Define. * include/c_global/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1 to __CORRECT_ISO_CPP_MATH_H_PROTO. [!__CORRECT_ISO_CPP_MATH_H_PROTO2]: Remove. * include/tr1/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1 to __CORRECT_ISO_CPP_MATH_H_PROTO. * doc/xml/manual/configure.xml (Configure, --enable-libstdcxx-threads): Remove Solaris 8 reference. * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc: Don't xfail on *-*-solaris2.8. * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc: Likewise. * testsuite/ext/enc_filebuf/char/13598.cc: Don't xfail on *-*-solaris2.8. libjava: * configure.ac (THREADLIBS): Remove *-*-solaris2.8 handling. * configure: Regenerate. libgcc: * config/i386/sol2-unwind.h (x86_fallback_frame_state): Remove Solaris 8 handling. * config/sparc/sol2-unwind.h (sparc64_is_sighandler): Remove Solaris 8 handling. (sparc_is_sighandler): Likewise. libcpp: * lex.c: Remove Solaris 8 reference. gcc/testsuite: * g++.dg/warn/miss-format-1.C: Remove *-*-solaris2.8 handling. * gcc.dg/c99-stdint-6.c: Likewise. * gcc.dg/lto/20090210_0.c: Likewise. * gcc.dg/pr28796-2.c: Don't skip on sparc*-sun-solaris2.8. * gcc.dg/pragma-init-fini.c: Don't skip on i?86-*-solaris2.8. * gcc.dg/pragma-init-fini-2.c: Likewise. * gcc.dg/torture/pr47917.c: Remove *-*-solaris2.8 handling. * gcc.target/i386/pr22076.c: Remove i?86-*-solaris2.8 handling. * gcc.target/i386/pr22152.c: Likewise. * gcc.target/i386/vect8-ret.c: Likewise. * lib/target-supports.exp (add_options_for_tls): Remove Solaris 8 handling. gcc: * config.gcc (enable_obsolete): Remove *-*-solaris2.8*. (*-*-solaris2.[0-8], *-*-solaris2.[0-8].*): Mark unsupported. (i[34567]86-*-solaris2*, x86_64-*-solaris2.1[0-9]*): Remove Solaris 8 support. * configure.ac (gcc_cv_ld_hidden): Remove *-*-solaris2.8*. (ld_tls_support): Remove Solaris 8 references. (lwp_dir, lwp_spec): Remove support for alternate thread library. * acinclude.m4 (gcc_cv_initfini_array): Remove *-*-solaris2.* tests. * configure: Regenerate. * config.in: Regenerate. * config/sol2.h (LINK_SPEC): Remove LIB_THREAD_LDFLAGS_SPEC. * config/i386/sol2.h: Remove Solaris 8 references. * doc/install.texi (Specific, i?86-*-solaris2.[89]): Rename to ... (i?86-*-solaris2.9): ... this. Remove Solaris 8 references. (Specific, *-*-solaris2*): Document Solaris 8 removal. Remove Solaris 8 references. fixincludes: * inclhack.def (math_exception): Remove duplicate. (solaris_cond_init): Remove. (solaris_sys_va_list): Remove Solaris 8 support. * fixincl.x: Regenerate. * tests/base/pthread.h [SOLARIS_COND_INIT_CHECK]: Remove. From-SVN: r185392
This commit is contained in:
parent
9fc4233a7f
commit
7888f2660e
52 changed files with 245 additions and 732 deletions
|
@ -1,3 +1,11 @@
|
|||
2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* inclhack.def (math_exception): Remove duplicate.
|
||||
(solaris_cond_init): Remove.
|
||||
(solaris_sys_va_list): Remove Solaris 8 support.
|
||||
* fixincl.x: Regenerate.
|
||||
* tests/base/pthread.h [SOLARIS_COND_INIT_CHECK]: Remove.
|
||||
|
||||
2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* inclhack.def (broken_cabs): Remove IRIX and SunOS 4 support.
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
*
|
||||
* DO NOT EDIT THIS FILE (fixincl.x)
|
||||
*
|
||||
* It has been AutoGen-ed Wednesday March 14, 2012 at 02:41:19 PM MET
|
||||
* It has been AutoGen-ed Wednesday March 14, 2012 at 03:19:50 PM MET
|
||||
* From the definitions inclhack.def
|
||||
* and the template file fixincl
|
||||
*/
|
||||
/* DO NOT SVN-MERGE THIS FILE, EITHER Wed Mar 14 14:41:19 MET 2012
|
||||
/* DO NOT SVN-MERGE THIS FILE, EITHER Wed Mar 14 15:19:50 MET 2012
|
||||
*
|
||||
* You must regenerate it. Use the ./genfixes script.
|
||||
*
|
||||
|
@ -15,7 +15,7 @@
|
|||
* certain ANSI-incompatible system header files which are fixed to work
|
||||
* correctly with ANSI C and placed in a directory that GNU C will search.
|
||||
*
|
||||
* This file contains 212 fixup descriptions.
|
||||
* This file contains 211 fixup descriptions.
|
||||
*
|
||||
* See README for more information.
|
||||
*
|
||||
|
@ -5718,44 +5718,6 @@ extern \"C\" {\\\n\
|
|||
#endif",
|
||||
(char*)NULL };
|
||||
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Description of Solaris_Cond_Init fix
|
||||
*/
|
||||
tSCC zSolaris_Cond_InitName[] =
|
||||
"solaris_cond_init";
|
||||
|
||||
/*
|
||||
* File name selection pattern
|
||||
*/
|
||||
tSCC zSolaris_Cond_InitList[] =
|
||||
"pthread.h\0";
|
||||
/*
|
||||
* Machine/OS name selection pattern
|
||||
*/
|
||||
tSCC* apzSolaris_Cond_InitMachs[] = {
|
||||
"*-*-solaris2.8",
|
||||
(const char*)NULL };
|
||||
|
||||
/*
|
||||
* content selection pattern - do fix if pattern found
|
||||
*/
|
||||
tSCC zSolaris_Cond_InitSelect0[] =
|
||||
"@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
|
||||
|
||||
#define SOLARIS_COND_INIT_TEST_CT 1
|
||||
static tTestDesc aSolaris_Cond_InitTests[] = {
|
||||
{ TT_EGREP, zSolaris_Cond_InitSelect0, (regex_t*)NULL }, };
|
||||
|
||||
/*
|
||||
* Fix Command Arguments for Solaris_Cond_Init
|
||||
*/
|
||||
static const char* apzSolaris_Cond_InitPatch[] = {
|
||||
"format",
|
||||
"%1, 0x4356%2",
|
||||
"^(#define[ \t]+PTHREAD_COND_INITIALIZER[ \t]+\\{.*0)(\\},[ \t]*0\\}.*)$",
|
||||
(char*)NULL };
|
||||
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Description of Solaris_Cxx_Linkage fix
|
||||
|
@ -6725,7 +6687,7 @@ tSCC zSolaris_Sys_Va_ListList[] =
|
|||
* Machine/OS name selection pattern
|
||||
*/
|
||||
tSCC* apzSolaris_Sys_Va_ListMachs[] = {
|
||||
"*-*-solaris2.[89]",
|
||||
"*-*-solaris2.9",
|
||||
(const char*)NULL };
|
||||
|
||||
/*
|
||||
|
@ -8630,9 +8592,9 @@ static const char* apzX11_SprintfPatch[] = {
|
|||
*
|
||||
* List of all fixes
|
||||
*/
|
||||
#define REGEX_COUNT 255
|
||||
#define REGEX_COUNT 254
|
||||
#define MACH_LIST_SIZE_LIMIT 181
|
||||
#define FIX_COUNT 212
|
||||
#define FIX_COUNT 211
|
||||
|
||||
/*
|
||||
* Enumerate the fixes
|
||||
|
@ -8778,7 +8740,6 @@ typedef enum {
|
|||
SOLARIS___RESTRICT_FIXIDX,
|
||||
SOLARIS_COMPLEX_FIXIDX,
|
||||
SOLARIS_COMPLEX_CXX_FIXIDX,
|
||||
SOLARIS_COND_INIT_FIXIDX,
|
||||
SOLARIS_CXX_LINKAGE_FIXIDX,
|
||||
SOLARIS_GETC_STRICT_STDC_FIXIDX,
|
||||
SOLARIS_LONGJMP_NORETURN_FIXIDX,
|
||||
|
@ -9553,11 +9514,6 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
|
|||
SOLARIS_COMPLEX_CXX_TEST_CT, FD_MACH_ONLY,
|
||||
aSolaris_Complex_CxxTests, apzSolaris_Complex_CxxPatch, 0 },
|
||||
|
||||
{ zSolaris_Cond_InitName, zSolaris_Cond_InitList,
|
||||
apzSolaris_Cond_InitMachs,
|
||||
SOLARIS_COND_INIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
|
||||
aSolaris_Cond_InitTests, apzSolaris_Cond_InitPatch, 0 },
|
||||
|
||||
{ zSolaris_Cxx_LinkageName, zSolaris_Cxx_LinkageList,
|
||||
apzSolaris_Cxx_LinkageMachs,
|
||||
SOLARIS_CXX_LINKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
|
||||
|
|
|
@ -2382,7 +2382,7 @@ fix = {
|
|||
files = math.h;
|
||||
select = "struct exception";
|
||||
/*
|
||||
* This should be bypassed on __cplusplus, but some supposedly C++ C++
|
||||
* This should be bypassed on __cplusplus, but some supposedly C++
|
||||
* aware headers, such as Solaris 8 and 9, don't wrap their struct
|
||||
* exception either. So currently we bypass only for glibc, based on a
|
||||
* comment in the fixed glibc header. Ick.
|
||||
|
@ -2925,26 +2925,6 @@ fix = {
|
|||
};
|
||||
|
||||
|
||||
/*
|
||||
* Solaris 8 PTHREAD_COND_INITIALIZER lacks the __pthread_cond_magic field.
|
||||
* COND_MAGIC is only defined in <synch.h> and pollutes the namespace, so
|
||||
* use the value literally instead.
|
||||
*/
|
||||
fix = {
|
||||
hackname = solaris_cond_init;
|
||||
select = '@\(#\)pthread.h' "[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
|
||||
files = pthread.h;
|
||||
mach = '*-*-solaris2.8';
|
||||
c_fix = format;
|
||||
c_fix_arg = "%1, 0x4356%2";
|
||||
c_fix_arg = "^(#define[ \t]+PTHREAD_COND_INITIALIZER[ \t]+"
|
||||
"\\{.*0)(\\},[ \t]*0\\}.*)$";
|
||||
test_text =
|
||||
'#pragma ident "@(#)pthread.h 1.29 01/07/07 SMI"'"\n"
|
||||
'#define PTHREAD_COND_INITIALIZER {{{0}, 0}, 0} /* = DEFAULTCV */';
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* g++ rejects functions declared with both C and C++ linkage.
|
||||
*/
|
||||
|
@ -3422,13 +3402,13 @@ fix = {
|
|||
|
||||
|
||||
/*
|
||||
* On Solaris 8 and 9, __va_list needs to become a typedef for
|
||||
* On Solaris 9, __va_list needs to become a typedef for
|
||||
* __builtin_va_list to make -Wmissing-format-attribute work.
|
||||
*/
|
||||
fix = {
|
||||
hackname = solaris_sys_va_list;
|
||||
files = sys/va_list.h;
|
||||
mach = '*-*-solaris2.[89]';
|
||||
mach = '*-*-solaris2.9';
|
||||
select = "#if.*__STDC__.*\n"
|
||||
"typedef void \\*__va_list;\n"
|
||||
"#else\n"
|
||||
|
|
|
@ -75,16 +75,6 @@ extern int __sigsetjmp (struct __jmp_buf_tag *__env, int __savemask);
|
|||
#endif /* PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_CHECK */
|
||||
|
||||
|
||||
#if defined( SOLARIS_COND_INIT_CHECK )
|
||||
#pragma ident "@(#)pthread.h 1.29 01/07/07 SMI"
|
||||
#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)
|
||||
#define PTHREAD_COND_INITIALIZER {{{0}, 0, 0x4356}, 0} /* = DEFAULTCV */
|
||||
#else
|
||||
#define PTHREAD_COND_INITIALIZER {{{0}, 0, 0x4356}, {0}} /* = DEFAULTCV */
|
||||
#endif
|
||||
#endif /* SOLARIS_COND_INIT_CHECK */
|
||||
|
||||
|
||||
#if defined( SOLARIS_MUTEX_INIT_2_CHECK )
|
||||
#ident "@(#)pthread.h 1.26 98/04/12 SMI"
|
||||
#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)
|
||||
|
|
|
@ -1,3 +1,26 @@
|
|||
2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* config.gcc (enable_obsolete): Remove *-*-solaris2.8*.
|
||||
(*-*-solaris2.[0-8], *-*-solaris2.[0-8].*): Mark unsupported.
|
||||
(i[34567]86-*-solaris2*, x86_64-*-solaris2.1[0-9]*): Remove
|
||||
Solaris 8 support.
|
||||
* configure.ac (gcc_cv_ld_hidden): Remove *-*-solaris2.8*.
|
||||
(ld_tls_support): Remove Solaris 8 references.
|
||||
(lwp_dir, lwp_spec): Remove support for alternate thread library.
|
||||
* acinclude.m4 (gcc_cv_initfini_array): Remove *-*-solaris2.*
|
||||
tests.
|
||||
* configure: Regenerate.
|
||||
* config.in: Regenerate.
|
||||
|
||||
* config/sol2.h (LINK_SPEC): Remove LIB_THREAD_LDFLAGS_SPEC.
|
||||
* config/i386/sol2.h: Remove Solaris 8 references.
|
||||
|
||||
* doc/install.texi (Specific, i?86-*-solaris2.[89]): Rename to ...
|
||||
(i?86-*-solaris2.9): ... this.
|
||||
Remove Solaris 8 references.
|
||||
(Specific, *-*-solaris2*): Document Solaris 8 removal.
|
||||
Remove Solaris 8 references.
|
||||
|
||||
2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* config.gcc (enable_obsolete): Remove mips-sgi-irix6.5.
|
||||
|
|
|
@ -461,23 +461,7 @@ changequote([,])dnl
|
|||
# error The C library not known to support .init_array/.fini_array
|
||||
# endif
|
||||
#endif
|
||||
])],[
|
||||
case "${target}" in
|
||||
*-*-solaris2.8*)
|
||||
# .init_array/.fini_array support was introduced in Solaris 8
|
||||
# patches 109147-08 (sparc) and 109148-08 (x86). Since ld.so.1 and
|
||||
# ld are guaranteed to be updated in lockstep, we can check ld -V
|
||||
# instead. Unfortunately, proper ld version numbers were only
|
||||
# introduced in rev. -14, so we check for that.
|
||||
if test "$gcc_cv_sun_ld_vers_minor" -lt 272; then
|
||||
gcc_cv_initfini_array=no
|
||||
fi
|
||||
;;
|
||||
*-*-solaris2.9* | *-*-solaris2.1[[0-9]]*)
|
||||
# .init_array/.fini_array support is present since Solaris 9 FCS.
|
||||
;;
|
||||
esac
|
||||
], [gcc_cv_initfini_array=no]);;
|
||||
])],, [gcc_cv_initfini_array=no]);;
|
||||
esac
|
||||
else
|
||||
AC_MSG_CHECKING(cross compile... guessing)
|
||||
|
|
|
@ -251,7 +251,6 @@ case ${target} in
|
|||
| arm*-*-uclinux* \
|
||||
| arm*-wince-pe* \
|
||||
| score-* \
|
||||
| *-*-solaris2.8* \
|
||||
)
|
||||
if test "x$enable_obsolete" != xyes; then
|
||||
echo "*** Configuration ${target} is obsolete." >&2
|
||||
|
@ -282,9 +281,9 @@ case ${target} in
|
|||
| *-*-rtemsaout* \
|
||||
| *-*-rtemscoff* \
|
||||
| *-*-solaris2 \
|
||||
| *-*-solaris2.[0-7] \
|
||||
| *-*-solaris2.[0-7].* \
|
||||
| *-*-sysv* \
|
||||
| *-*-solaris2.[0-8] \
|
||||
| *-*-solaris2.[0-8].* \
|
||||
| *-*-sysv* \
|
||||
| vax-*-vms* \
|
||||
)
|
||||
echo "*** Configuration ${target} not supported" 1>&2
|
||||
|
@ -1321,9 +1320,8 @@ i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
|
|||
# Set default arch_32 to pentium4, tune_32 to generic like the other
|
||||
# i386 targets, although config.guess defaults to i386-pc-solaris2*.
|
||||
case ${target} in
|
||||
*-*-solaris2.[89]*)
|
||||
# Solaris 8 and 9/x86 cannot execute SSE/SSE2 instructions by
|
||||
# default.
|
||||
*-*-solaris2.9*)
|
||||
# Solaris 9/x86 cannot execute SSE/SSE2 instructions by default.
|
||||
with_arch_32=${with_arch_32:-pentiumpro}
|
||||
;;
|
||||
*)
|
||||
|
|
|
@ -1606,12 +1606,6 @@
|
|||
#endif
|
||||
|
||||
|
||||
/* Define to the linker flags to use for -pthread. */
|
||||
#ifndef USED_FOR_TARGET
|
||||
#undef LIB_THREAD_LDFLAGS_SPEC
|
||||
#endif
|
||||
|
||||
|
||||
/* Define to the library containing __tls_get_addr/___tls_get_addr. */
|
||||
#ifndef USED_FOR_TARGET
|
||||
#undef LIB_TLS_SPEC
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/* Target definitions for GCC for Intel 80386 running Solaris 2
|
||||
Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
|
||||
2004, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
|
||||
2004, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
|
||||
Contributed by Fred Fish (fnf@cygnus.com).
|
||||
|
||||
This file is part of GCC.
|
||||
|
@ -21,7 +21,7 @@ along with GCC; see the file COPYING3. If not see
|
|||
|
||||
/* Augment i386/unix.h version to return 8-byte vectors in memory, matching
|
||||
Sun Studio compilers until version 12, the only ones supported on
|
||||
Solaris 8 and 9. */
|
||||
Solaris 9. */
|
||||
#undef TARGET_SUBTARGET_DEFAULT
|
||||
#define TARGET_SUBTARGET_DEFAULT \
|
||||
(MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS | MASK_VECT8_RETURNS)
|
||||
|
@ -63,7 +63,7 @@ along with GCC; see the file COPYING3. If not see
|
|||
|
||||
#define ASM_CPU_SPEC ""
|
||||
|
||||
/* Don't include ASM_PIC_SPEC. While the Solaris 8 and 9 assembler accepts
|
||||
/* Don't include ASM_PIC_SPEC. While the Solaris 9 assembler accepts
|
||||
-K PIC, it gives many warnings:
|
||||
R_386_32 relocation is used for symbol "<symbol>"
|
||||
GNU as doesn't recognize -K at all. */
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/* Operating system specific defines to be used when targeting GCC for any
|
||||
Solaris 2 system.
|
||||
Copyright 2002, 2003, 2004, 2007, 2008, 2009, 2010, 2011
|
||||
Copyright 2002, 2003, 2004, 2007, 2008, 2009, 2010, 2011, 2012
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GCC.
|
||||
|
@ -173,7 +173,6 @@ along with GCC; see the file COPYING3. If not see
|
|||
%{static:-dn -Bstatic} \
|
||||
%{shared:-G -dy %{!mimpure-text:-z text}} \
|
||||
%{symbolic:-Bsymbolic -G -dy -z text} \
|
||||
%{pthreads|pthread|fprofile-generate*:" LIB_THREAD_LDFLAGS_SPEC "} \
|
||||
%(link_arch) \
|
||||
%{Qy:} %{!Qn:-Qy}"
|
||||
|
||||
|
|
74
gcc/configure
vendored
74
gcc/configure
vendored
|
@ -22264,15 +22264,6 @@ else
|
|||
hppa64*-*-hpux* | ia64*-*-hpux*)
|
||||
gcc_cv_ld_hidden=yes
|
||||
;;
|
||||
*-*-solaris2.8*)
|
||||
# .hidden support was backported to Solaris 8, starting with ld
|
||||
# version 1.276.
|
||||
if test "$ld_vers_minor" -ge 276; then
|
||||
gcc_cv_ld_hidden=yes
|
||||
else
|
||||
gcc_cv_ld_hidden=no
|
||||
fi
|
||||
;;
|
||||
*-*-solaris2.9* | *-*-solaris2.1[0-9]*)
|
||||
# Support for .hidden in Sun ld appeared in Solaris 9 FCS, but
|
||||
# .symbolic was only added in Solaris 9 12/02.
|
||||
|
@ -22470,22 +22461,6 @@ EOF
|
|||
_ACEOF
|
||||
if ac_fn_c_try_cpp "$LINENO"; then :
|
||||
|
||||
case "${target}" in
|
||||
*-*-solaris2.8*)
|
||||
# .init_array/.fini_array support was introduced in Solaris 8
|
||||
# patches 109147-08 (sparc) and 109148-08 (x86). Since ld.so.1 and
|
||||
# ld are guaranteed to be updated in lockstep, we can check ld -V
|
||||
# instead. Unfortunately, proper ld version numbers were only
|
||||
# introduced in rev. -14, so we check for that.
|
||||
if test "$gcc_cv_sun_ld_vers_minor" -lt 272; then
|
||||
gcc_cv_initfini_array=no
|
||||
fi
|
||||
;;
|
||||
*-*-solaris2.9* | *-*-solaris2.1[0-9]*)
|
||||
# .init_array/.fini_array support is present since Solaris 9 FCS.
|
||||
;;
|
||||
esac
|
||||
|
||||
else
|
||||
gcc_cv_initfini_array=no
|
||||
fi
|
||||
|
@ -23611,10 +23586,9 @@ if test $gcc_cv_as_tls = yes; then
|
|||
fi
|
||||
fi
|
||||
case "$target" in
|
||||
# TLS was introduced in the Solaris 9 FCS release and backported to
|
||||
# Solaris 8 patches. Support for GNU-style TLS on x86 was only
|
||||
# introduced in Solaris 9 4/04, replacing the earlier Sun style that Sun
|
||||
# ld and GCC don't support any longer.
|
||||
# TLS was introduced in the Solaris 9 FCS release. Support for GNU-style
|
||||
# TLS on x86 was only introduced in Solaris 9 4/04, replacing the earlier
|
||||
# Sun style that Sun ld and GCC don't support any longer.
|
||||
*-*-solaris2.*)
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking linker and ld.so.1 TLS support" >&5
|
||||
$as_echo_n "checking linker and ld.so.1 TLS support... " >&6; }
|
||||
|
@ -23626,14 +23600,6 @@ $as_echo_n "checking linker and ld.so.1 TLS support... " >&6; }
|
|||
ld_tls_support=yes
|
||||
else
|
||||
case "$target" in
|
||||
# Solaris 8/x86 ld has GNU style TLS support since version 1.280.
|
||||
i?86-*-solaris2.8)
|
||||
min_tls_ld_vers_minor=280
|
||||
;;
|
||||
# Solaris 8/SPARC ld has TLS support since version 1.272.
|
||||
sparc*-*-solaris2.8)
|
||||
min_tls_ld_vers_minor=272
|
||||
;;
|
||||
# Solaris 9/x86 ld has GNU style TLS support since version 1.374.
|
||||
i?86-*-solaris2.9)
|
||||
min_tls_ld_vers_minor=374
|
||||
|
@ -23658,33 +23624,6 @@ $as_echo "$ld_tls_support" >&6; }
|
|||
LIBS=
|
||||
LDFLAGS=
|
||||
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking alternate thread library" >&5
|
||||
$as_echo_n "checking alternate thread library... " >&6; }
|
||||
case "$target" in
|
||||
# TLS support was backported to Solaris 8 patches, but only lives in
|
||||
# the alternate thread library which became the default in Solaris 9.
|
||||
# We want to always use that, irrespective of TLS support.
|
||||
*-*-solaris2.8)
|
||||
# Take multilib subdir into account. There's no spec to handle
|
||||
# this. The 64 symlink exists since Solaris 8.
|
||||
lwp_dir=/usr/lib/lwp
|
||||
lwp_spec="-L$lwp_dir%{m64:/64} -R$lwp_dir%{m64:/64}"
|
||||
LDFLAGS="-L$lwp_dir -R$lwp_dir"
|
||||
;;
|
||||
*-*-solaris2*)
|
||||
lwp_dir="none"
|
||||
lwp_spec=""
|
||||
;;
|
||||
esac
|
||||
# Always define LIB_THREAD_LDFLAGS_SPEC, even without TLS support.
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
#define LIB_THREAD_LDFLAGS_SPEC "$lwp_spec"
|
||||
_ACEOF
|
||||
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lwp_dir" >&5
|
||||
$as_echo "$lwp_dir" >&6; }
|
||||
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking library containing $tga_func" >&5
|
||||
$as_echo_n "checking library containing $tga_func... " >&6; }
|
||||
# Before Solaris 10, __tls_get_addr (SPARC/x64) resp. ___tls_get_addr
|
||||
|
@ -23754,13 +23693,6 @@ fi
|
|||
if test $set_have_as_tls = no; then
|
||||
LIBS=
|
||||
fi
|
||||
# Even without TLS support on Solaris 8, explicitly link with libthread
|
||||
# to guarantee that the alternate thread library is used.
|
||||
case "$target" in
|
||||
*-*-solaris2.8)
|
||||
LIBS=-lthread
|
||||
;;
|
||||
esac
|
||||
# Always define LIB_TLS_SPEC, even without TLS support.
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
|
|
|
@ -2345,15 +2345,6 @@ else
|
|||
hppa64*-*-hpux* | ia64*-*-hpux*)
|
||||
gcc_cv_ld_hidden=yes
|
||||
;;
|
||||
*-*-solaris2.8*)
|
||||
# .hidden support was backported to Solaris 8, starting with ld
|
||||
# version 1.276.
|
||||
if test "$ld_vers_minor" -ge 276; then
|
||||
gcc_cv_ld_hidden=yes
|
||||
else
|
||||
gcc_cv_ld_hidden=no
|
||||
fi
|
||||
;;
|
||||
*-*-solaris2.9* | *-*-solaris2.1[0-9]*)
|
||||
# Support for .hidden in Sun ld appeared in Solaris 9 FCS, but
|
||||
# .symbolic was only added in Solaris 9 12/02.
|
||||
|
@ -3170,10 +3161,9 @@ else
|
|||
[set_have_as_tls=yes])
|
||||
fi
|
||||
case "$target" in
|
||||
# TLS was introduced in the Solaris 9 FCS release and backported to
|
||||
# Solaris 8 patches. Support for GNU-style TLS on x86 was only
|
||||
# introduced in Solaris 9 4/04, replacing the earlier Sun style that Sun
|
||||
# ld and GCC don't support any longer.
|
||||
# TLS was introduced in the Solaris 9 FCS release. Support for GNU-style
|
||||
# TLS on x86 was only introduced in Solaris 9 4/04, replacing the earlier
|
||||
# Sun style that Sun ld and GCC don't support any longer.
|
||||
*-*-solaris2.*)
|
||||
AC_MSG_CHECKING(linker and ld.so.1 TLS support)
|
||||
ld_tls_support=no
|
||||
|
@ -3184,14 +3174,6 @@ case "$target" in
|
|||
ld_tls_support=yes
|
||||
else
|
||||
case "$target" in
|
||||
# Solaris 8/x86 ld has GNU style TLS support since version 1.280.
|
||||
i?86-*-solaris2.8)
|
||||
min_tls_ld_vers_minor=280
|
||||
;;
|
||||
# Solaris 8/SPARC ld has TLS support since version 1.272.
|
||||
sparc*-*-solaris2.8)
|
||||
min_tls_ld_vers_minor=272
|
||||
;;
|
||||
# Solaris 9/x86 ld has GNU style TLS support since version 1.374.
|
||||
i?86-*-solaris2.9)
|
||||
min_tls_ld_vers_minor=374
|
||||
|
@ -3215,28 +3197,6 @@ case "$target" in
|
|||
LIBS=
|
||||
LDFLAGS=
|
||||
|
||||
AC_MSG_CHECKING(alternate thread library)
|
||||
case "$target" in
|
||||
# TLS support was backported to Solaris 8 patches, but only lives in
|
||||
# the alternate thread library which became the default in Solaris 9.
|
||||
# We want to always use that, irrespective of TLS support.
|
||||
*-*-solaris2.8)
|
||||
# Take multilib subdir into account. There's no spec to handle
|
||||
# this. The 64 symlink exists since Solaris 8.
|
||||
lwp_dir=/usr/lib/lwp
|
||||
lwp_spec="-L$lwp_dir%{m64:/64} -R$lwp_dir%{m64:/64}"
|
||||
LDFLAGS="-L$lwp_dir -R$lwp_dir"
|
||||
;;
|
||||
*-*-solaris2*)
|
||||
lwp_dir="none"
|
||||
lwp_spec=""
|
||||
;;
|
||||
esac
|
||||
# Always define LIB_THREAD_LDFLAGS_SPEC, even without TLS support.
|
||||
AC_DEFINE_UNQUOTED(LIB_THREAD_LDFLAGS_SPEC, "$lwp_spec",
|
||||
[Define to the linker flags to use for -pthread.])
|
||||
AC_MSG_RESULT($lwp_dir)
|
||||
|
||||
AC_MSG_CHECKING(library containing $tga_func)
|
||||
# Before Solaris 10, __tls_get_addr (SPARC/x64) resp. ___tls_get_addr
|
||||
# (32-bit x86) only lived in libthread, so check for that. Keep
|
||||
|
@ -3246,13 +3206,6 @@ case "$target" in
|
|||
if test $set_have_as_tls = no; then
|
||||
LIBS=
|
||||
fi
|
||||
# Even without TLS support on Solaris 8, explicitly link with libthread
|
||||
# to guarantee that the alternate thread library is used.
|
||||
case "$target" in
|
||||
*-*-solaris2.8)
|
||||
LIBS=-lthread
|
||||
;;
|
||||
esac
|
||||
# Always define LIB_TLS_SPEC, even without TLS support.
|
||||
AC_DEFINE_UNQUOTED(LIB_TLS_SPEC, "$LIBS",
|
||||
[Define to the library containing __tls_get_addr/___tls_get_addr.])
|
||||
|
|
|
@ -3014,7 +3014,7 @@ information are.
|
|||
@item
|
||||
@uref{#ix86-x-linux,,i?86-*-linux*}
|
||||
@item
|
||||
@uref{#ix86-x-solaris289,,i?86-*-solaris2.[89]}
|
||||
@uref{#ix86-x-solaris289,,i?86-*-solaris2.9}
|
||||
@item
|
||||
@uref{#ix86-x-solaris210,,i?86-*-solaris2.10}
|
||||
@item
|
||||
|
@ -3551,8 +3551,8 @@ found on @uref{http://www.bitwizard.nl/sig11/,,www.bitwizard.nl}.
|
|||
@html
|
||||
<hr />
|
||||
@end html
|
||||
@heading @anchor{ix86-x-solaris289}i?86-*-solaris2.[89]
|
||||
The Sun assembler in Solaris 8 and 9 has several bugs and limitations.
|
||||
@heading @anchor{ix86-x-solaris29}i?86-*-solaris2.9
|
||||
The Sun assembler in Solaris 9 has several bugs and limitations.
|
||||
While GCC works around them, several features are missing, so it is
|
||||
@c FIXME: which ones?
|
||||
recommended to use the GNU assembler instead. There is no bundled
|
||||
|
@ -3562,9 +3562,9 @@ work.
|
|||
Solaris@tie{}2/x86 doesn't support the execution of SSE/SSE2 instructions
|
||||
before Solaris@tie{}9 4/04, even if the CPU supports them. Programs will
|
||||
receive @code{SIGILL} if they try. The fix is available both in
|
||||
Solaris@tie{}9 Update@tie{}6 and kernel patch 112234-12 or newer. There is no
|
||||
corresponding patch for Solaris 8. To avoid this problem,
|
||||
@option{-march} defaults to @samp{pentiumpro} on Solaris 8 and 9. If
|
||||
Solaris@tie{}9 Update@tie{}6 and kernel patch 112234-12 or newer. To
|
||||
avoid this problem,
|
||||
@option{-march} defaults to @samp{pentiumpro} on Solaris 9. If
|
||||
you have the patch installed, you can configure GCC with an appropriate
|
||||
@option{--with-arch} option, but need GNU @command{as} for SSE2 support.
|
||||
|
||||
|
@ -4066,9 +4066,8 @@ supported as cross-compilation target only.
|
|||
@c alone is too unspecific and must be avoided.
|
||||
@heading @anchor{x-x-solaris2}*-*-solaris2*
|
||||
|
||||
Support for Solaris 8 has been obsoleted in GCC 4.7, but can still be
|
||||
enabled by configuring with @option{--enable-obsolete}. Support will be
|
||||
removed in GCC 4.8. Support for Solaris 7 has been removed in GCC 4.6.
|
||||
Support for Solaris 8 has removed in GCC 4.8. Support for Solaris 7 has
|
||||
been removed in GCC 4.6.
|
||||
|
||||
Sun does not ship a C compiler with Solaris 2 before Solaris 10, though
|
||||
you can download the Sun Studio compilers for free. In Solaris 10 and
|
||||
|
@ -4141,13 +4140,6 @@ newer: @command{g++} will complain that types are missing. These headers
|
|||
assume that omitting the type means @code{int}; this assumption worked for
|
||||
C90 but is wrong for C++, and is now wrong for C99 also.
|
||||
|
||||
@command{g++} accepts such (invalid) constructs with the option
|
||||
@option{-fpermissive}; it will assume that any missing type is @code{int}
|
||||
(as defined by C90).
|
||||
|
||||
There are patches for Solaris 8 (108652-24 or newer for SPARC,
|
||||
108653-22 for Intel) that fix this bug.
|
||||
|
||||
Sun bug 4927647 sometimes causes random spurious testsuite failures
|
||||
related to missing diagnostic output. This bug doesn't affect GCC
|
||||
itself, rather it is a kernel bug triggered by the @command{expect}
|
||||
|
@ -4155,27 +4147,19 @@ program which is used only by the GCC testsuite driver. When the bug
|
|||
causes the @command{expect} program to miss anticipated output, extra
|
||||
testsuite failures appear.
|
||||
|
||||
There are patches for Solaris 8 (117350-12 or newer for SPARC,
|
||||
117351-12 or newer for Intel) and Solaris 9 (117171-11 or newer for
|
||||
There are patches for Solaris 9 (117171-11 or newer for
|
||||
SPARC, 117172-11 or newer for Intel) that address this problem.
|
||||
|
||||
Solaris@tie{}8 provides an alternate implementation of the thread
|
||||
library @samp{libthread}. It is required for TLS support and has
|
||||
been made the default in Solaris@tie{}9, so it is always used on
|
||||
Solaris@tie{}8.
|
||||
|
||||
Thread-local storage (TLS) is supported in Solaris@tie{}8 and 9, but requires
|
||||
Thread-local storage (TLS) is supported in Solaris@tie{}9, but requires
|
||||
some patches. The @samp{libthread} patches provide the
|
||||
@code{__tls_get_addr} (SPARC, 64-bit x86) resp.@ @code{___tls_get_addr}
|
||||
(32-bit x86) functions. On Solaris@tie{}8, you need 108993-26 or newer on
|
||||
SPARC, 108994-26 or newer on Intel. On Solaris@tie{}9, the necessary support
|
||||
(32-bit x86) functions. On Solaris@tie{}9, the necessary support
|
||||
on SPARC is present since FCS, while 114432-05 or newer is required on
|
||||
Intel. Additionally, on Solaris@tie{}8, patch 109147-14 or newer on SPARC or
|
||||
109148-22 or newer on Intel are required for the Sun @command{ld} and
|
||||
runtime linker (@command{ld.so.1}) support. Again, Solaris@tie{}9/SPARC
|
||||
works since FCS, while 113986-02 is required on Intel. The linker
|
||||
Intel. Additionally, on Solaris@tie{}9/x86, patch 113986-02 or newer is
|
||||
required for the Sun @command{ld} and runtime linker (@command{ld.so.1})
|
||||
support, while Solaris@tie{}9/SPARC works since FCS. The linker
|
||||
patches must be installed even if GNU @command{ld} is used. Sun
|
||||
@command{as} in Solaris@tie{}8 and 9 doesn't support the necessary
|
||||
@command{as} in Solaris@tie{}9 doesn't support the necessary
|
||||
relocations, so GNU @command{as} must be used. The @command{configure}
|
||||
script checks for those prerequisites and automatically enables TLS
|
||||
support if they are met. Although those minimal patch versions should
|
||||
|
|
|
@ -1,3 +1,18 @@
|
|||
2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* g++.dg/warn/miss-format-1.C: Remove *-*-solaris2.8 handling.
|
||||
* gcc.dg/c99-stdint-6.c: Likewise.
|
||||
* gcc.dg/lto/20090210_0.c: Likewise.
|
||||
* gcc.dg/pr28796-2.c: Don't skip on sparc*-sun-solaris2.8.
|
||||
* gcc.dg/pragma-init-fini.c: Don't skip on i?86-*-solaris2.8.
|
||||
* gcc.dg/pragma-init-fini-2.c: Likewise.
|
||||
* gcc.dg/torture/pr47917.c: Remove *-*-solaris2.8 handling.
|
||||
* gcc.target/i386/pr22076.c: Remove i?86-*-solaris2.8 handling.
|
||||
* gcc.target/i386/pr22152.c: Likewise.
|
||||
* gcc.target/i386/vect8-ret.c: Likewise.
|
||||
* lib/target-supports.exp (add_options_for_tls): Remove Solaris 8
|
||||
handling.
|
||||
|
||||
2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* g++.dg/other/anon5.C: Don't skip on mips-sgi-irix*.
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
/* { dg-options "-Wmissing-format-attribute" } */
|
||||
/* { dg-options "-Wmissing-format-attribute -Wno-abi" { target arm_eabi } } */
|
||||
/* VxWorks does not provide vscanf, either in kernel or RTP mode. */
|
||||
/* { dg-error "not declared" "" { target { *-*-solaris2.8 *-*-vxworks* } } 26 } */
|
||||
/* { dg-error "not declared" "" { target *-*-vxworks* } 26 } */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdarg.h>
|
||||
|
@ -23,7 +23,7 @@ bar (const char *fmt, ...)
|
|||
{
|
||||
va_list ap;
|
||||
va_start (ap, fmt);
|
||||
vscanf (fmt, ap); /* { dg-warning "candidate" "scanf attribute warning" { xfail *-*-solaris2.8 *-*-vxworks* } } */
|
||||
vscanf (fmt, ap); /* { dg-warning "candidate" "scanf attribute warning" { xfail *-*-vxworks* } } */
|
||||
va_end (ap);
|
||||
}
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
with any system <inttypes.h> header. */
|
||||
/* { dg-do compile { target inttypes_types } } */
|
||||
/* { dg-options "-std=iso9899:1999 -pedantic-errors" } */
|
||||
/* { dg-options "-std=gnu99 -pedantic-errors -DNO_FAST_TYPES" { target *-*-solaris2.[89]* } } */
|
||||
/* { dg-options "-std=gnu99 -pedantic-errors -DNO_FAST_TYPES" { target *-*-solaris2.9* } } */
|
||||
|
||||
#include <inttypes.h>
|
||||
#ifndef SIGNAL_SUPPRESS
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
/* { dg-require-effective-target fpic } */
|
||||
/* { dg-suppress-ld-options {-fPIC} } */
|
||||
/* { dg-require-effective-target tls_runtime } */
|
||||
/* { dg-extra-ld-options "-pthread" { target *-*-solaris2.[89] } } */
|
||||
/* { dg-extra-ld-options "-pthread" { target *-*-solaris2.9 } } */
|
||||
int foo (int x)
|
||||
{
|
||||
return x;
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
/* { dg-options "-O2 -funsafe-math-optimizations -fno-finite-math-only -DUNSAFE" } */
|
||||
/* { dg-add-options ieee } */
|
||||
/* { dg-skip-if "No Inf/NaN support" { spu-*-* } } */
|
||||
/* { dg-skip-if "Bug in _Q_dtoq" { sparc*-sun-solaris2.8 } } */
|
||||
|
||||
#include "tg-tests.h"
|
||||
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
|
||||
/* { dg-do link { target *-*-solaris2.* } } */
|
||||
/* { dg-options "-fpic" } */
|
||||
/* { dg-xfail-if "no .pushsection/.popsection" { i?86-*-solaris2.8 && { ! gas } } } */
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
/* Tests for #pragma init and #pragma fini. */
|
||||
|
||||
/* { dg-do run { target *-*-solaris2.* } } */
|
||||
/* { dg-skip-if "no .pushsection/.popsection" { i?86-*-solaris2.8 && { ! gas } } } */
|
||||
|
||||
extern void abort ();
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/* { dg-do run } */
|
||||
/* { dg-options "-std=c99" } */
|
||||
/* { dg-options "-std=c99 -D_XOPEN_SOURCE=500" { target *-*-solaris2.[89] } } */
|
||||
/* { dg-options "-std=c99 -D_XOPEN_SOURCE=500" { target *-*-solaris2.9 } } */
|
||||
/* { dg-options "-std=gnu99" { target *-*-hpux* } } */
|
||||
/* { dg-additional-options "-D__USE_MINGW_ANSI_STDIO=1" { target *-*-mingw* } } */
|
||||
/* { dg-xfail-if "no C99 snprintf function" { *-*-hpux10* } } */
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -fomit-frame-pointer -flax-vector-conversions -mmmx" } */
|
||||
/* { dg-options "-O2 -fomit-frame-pointer -flax-vector-conversions -mmmx -mno-vect8-ret-in-mem" { target i?86-*-solaris2.[89] *-*-vxworks* } } */
|
||||
/* { dg-options "-O2 -fomit-frame-pointer -flax-vector-conversions -mmmx -mno-vect8-ret-in-mem" { target i?86-*-solaris2.9 *-*-vxworks* } } */
|
||||
|
||||
#include <mmintrin.h>
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -msse2" } */
|
||||
/* { dg-options "-O2 -msse2 -mno-vect8-ret-in-mem" { target i?86-*-solaris2.[89] *-*-vxworks* } } */
|
||||
/* { dg-options "-O2 -msse2 -mno-vect8-ret-in-mem" { target i?86-*-solaris2.9 *-*-vxworks* } } */
|
||||
/* { dg-additional-options "-mabi=sysv" { target x86_64-*-mingw* } } */
|
||||
|
||||
#include <mmintrin.h>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* { dg-do compile { target ia32 } } */
|
||||
/* { dg-options "-mmmx" { target i?86-*-solaris2.[89] *-*-vxworks* } } */
|
||||
/* { dg-options "-mmmx" { target i?86-*-solaris2.9 *-*-vxworks* } } */
|
||||
/* { dg-options "-mmmx -mvect8-ret-in-mem" } */
|
||||
|
||||
#include <mmintrin.h>
|
||||
|
|
|
@ -569,11 +569,11 @@ proc check_effective_target_pcc_bitfield_type_matters { } {
|
|||
# Add to FLAGS all the target-specific flags needed to use thread-local storage.
|
||||
|
||||
proc add_options_for_tls { flags } {
|
||||
# On Solaris 8 and 9, __tls_get_addr/___tls_get_addr only lives in
|
||||
# On Solaris 9, __tls_get_addr/___tls_get_addr only lives in
|
||||
# libthread, so always pass -pthread for native TLS.
|
||||
# Need to duplicate native TLS check from
|
||||
# check_effective_target_tls_native to avoid recursion.
|
||||
if { [istarget *-*-solaris2.\[89\]*] &&
|
||||
if { [istarget *-*-solaris2.9*] &&
|
||||
[check_no_messages_and_pattern tls_native "!emutls" assembly {
|
||||
__thread int i;
|
||||
int f (void) { return i; }
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* lex.c: Remove Solaris 8 reference.
|
||||
|
||||
2012-02-14 Walter Lee <walt@tilera.com>
|
||||
|
||||
* configure.ac: Require 64-bit hwint for tilegx and tilepro.
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/* CPP Library - lexical analysis.
|
||||
Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010,
|
||||
2011 Free Software Foundation, Inc.
|
||||
2011, 2012 Free Software Foundation, Inc.
|
||||
Contributed by Per Bothner, 1994-95.
|
||||
Based on CCCP program by Paul Rubin, June 1986
|
||||
Adapted to ANSI C, Richard Stallman, Jan 1987
|
||||
|
@ -267,7 +267,6 @@ search_line_acc_char (const uchar *s, const uchar *end ATTRIBUTE_UNUSED)
|
|||
/* Disable on Solaris 2/x86 until the following problems can be properly
|
||||
autoconfed:
|
||||
|
||||
The Solaris 8 assembler cannot assemble SSE2/SSE4.2 insns.
|
||||
The Solaris 9 assembler cannot assemble SSE4.2 insns.
|
||||
Before Solaris 9 Update 6, SSE insns cannot be executed.
|
||||
The Solaris 10+ assembler tags objects with the instruction set
|
||||
|
|
|
@ -1,3 +1,11 @@
|
|||
2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* config/i386/sol2-unwind.h (x86_fallback_frame_state): Remove
|
||||
Solaris 8 handling.
|
||||
* config/sparc/sol2-unwind.h (sparc64_is_sighandler): Remove
|
||||
Solaris 8 handling.
|
||||
(sparc_is_sighandler): Likewise.
|
||||
|
||||
2012-03-13 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* unwind-dw2.c (_Unwind_SetGRValue): Assert DWARF register size
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* DWARF2 EH unwinding support for AMD x86-64 and x86.
|
||||
Copyright (C) 2009, 2010 Free Software Foundation, Inc.
|
||||
Copyright (C) 2009, 2010, 2012 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GCC.
|
||||
|
||||
|
@ -144,55 +144,23 @@ x86_fallback_frame_state (struct _Unwind_Context *context,
|
|||
mcontext_t *mctx;
|
||||
long new_cfa;
|
||||
|
||||
if (/* Solaris 8 - single-threaded
|
||||
if (/* Solaris 9 - single-threaded
|
||||
----------------------------
|
||||
<sigacthandler+17>: mov 0x10(%ebp),%esi
|
||||
<sigacthandler+20>: push %esi
|
||||
<sigacthandler+21>: pushl 0xc(%ebp)
|
||||
<sigacthandler+24>: mov 0x8(%ebp),%ecx
|
||||
<sigacthandler+27>: push %ecx
|
||||
<sigacthandler+28>: mov offset(%ebx),%eax
|
||||
<sigacthandler+34>: call *(%eax,%ecx,4)
|
||||
<sigacthandler+37>: add $0xc,%esp <--- PC
|
||||
<sigacthandler+40>: push %esi ... */
|
||||
(*(unsigned long *)(pc - 20) == 0x5610758b
|
||||
&& *(unsigned long *)(pc - 16) == 0x8b0c75ff
|
||||
&& *(unsigned long *)(pc - 12) == 0x8b51084d
|
||||
&& *(unsigned char *)(pc - 8) == 0x83
|
||||
&& *(unsigned long *)(pc - 4) == 0x8814ff00
|
||||
&& *(unsigned long *)(pc - 0) == 0x560cc483)
|
||||
|
||||
|| /* Solaris 8 - multi-threaded
|
||||
---------------------------
|
||||
<__sighndlr+0>: push %ebp
|
||||
<__sighndlr+1>: mov %esp,%ebp
|
||||
<__sighndlr+3>: pushl 0x10(%ebp)
|
||||
<__sighndlr+6>: pushl 0xc(%ebp)
|
||||
<__sighndlr+9>: pushl 0x8(%ebp)
|
||||
<__sighndlr+12>: call *0x14(%ebp)
|
||||
<__sighndlr+15>: leave <--- PC */
|
||||
(*(unsigned long *)(pc - 15) == 0xffec8b55
|
||||
&& *(unsigned long *)(pc - 11) == 0x75ff1075
|
||||
&& *(unsigned long *)(pc - 7) == 0x0875ff0c
|
||||
&& *(unsigned long *)(pc - 3) == 0xc91455ff)
|
||||
|
||||
|| /* Solaris 9 - single-threaded
|
||||
----------------------------
|
||||
<sigacthandler+16>: mov 0x244(%ebx),%ecx
|
||||
<sigacthandler+22>: mov 0x8(%ebp),%eax
|
||||
<sigacthandler+25>: mov (%ecx,%eax,4),%ecx
|
||||
<sigacthandler+28>: pushl 0x10(%ebp)
|
||||
<sigacthandler+31>: pushl 0xc(%ebp)
|
||||
<sigacthandler+34>: push %eax
|
||||
<sigacthandler+35>: call *%ecx
|
||||
<sigacthandler+37>: add $0xc,%esp <--- PC
|
||||
<sigacthandler+40>: pushl 0x10(%ebp) */
|
||||
(*(unsigned long *)(pc - 21) == 0x2448b8b
|
||||
&& *(unsigned long *)(pc - 17) == 0x458b0000
|
||||
&& *(unsigned long *)(pc - 13) == 0x810c8b08
|
||||
&& *(unsigned long *)(pc - 9) == 0xff1075ff
|
||||
&& *(unsigned long *)(pc - 5) == 0xff500c75
|
||||
&& *(unsigned long *)(pc - 1) == 0xcc483d1)
|
||||
<sigacthandler+16>: mov 0x244(%ebx),%ecx
|
||||
<sigacthandler+22>: mov 0x8(%ebp),%eax
|
||||
<sigacthandler+25>: mov (%ecx,%eax,4),%ecx
|
||||
<sigacthandler+28>: pushl 0x10(%ebp)
|
||||
<sigacthandler+31>: pushl 0xc(%ebp)
|
||||
<sigacthandler+34>: push %eax
|
||||
<sigacthandler+35>: call *%ecx
|
||||
<sigacthandler+37>: add $0xc,%esp <--- PC
|
||||
<sigacthandler+40>: pushl 0x10(%ebp) */
|
||||
(*(unsigned long *)(pc - 21) == 0x2448b8b
|
||||
&& *(unsigned long *)(pc - 17) == 0x458b0000
|
||||
&& *(unsigned long *)(pc - 13) == 0x810c8b08
|
||||
&& *(unsigned long *)(pc - 9) == 0xff1075ff
|
||||
&& *(unsigned long *)(pc - 5) == 0xff500c75
|
||||
&& *(unsigned long *)(pc - 1) == 0xcc483d1)
|
||||
|
||||
|| /* Solaris 9 - multi-threaded, Solaris 10
|
||||
---------------------------------------
|
||||
|
|
|
@ -36,44 +36,25 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
|||
static int
|
||||
sparc64_is_sighandler (unsigned int *pc, void *cfa, int *nframes)
|
||||
{
|
||||
if (/* Solaris 8 - single-threaded
|
||||
if (/* Solaris 9 - single-threaded
|
||||
----------------------------
|
||||
<sigacthandler+24>: add %g5, %o7, %o2
|
||||
<sigacthandler+28>: ldx [ %o2 + 0xfa0 ], %g5
|
||||
<sigacthandler+32>: sra %i0, 0, %o0
|
||||
<sigacthandler+36>: sllx %o0, 3, %g4
|
||||
The pattern changes slightly in different versions of the
|
||||
operating system, so we skip the comparison against pc[-6] for
|
||||
Solaris 9.
|
||||
|
||||
<sigacthandler+24>: sra %i0, 0, %l1
|
||||
|
||||
Solaris 9 5/02:
|
||||
<sigacthandler+28>: ldx [ %o2 + 0xf68 ], %g5
|
||||
Solaris 9 9/05:
|
||||
<sigacthandler+28>: ldx [ %o2 + 0xe50 ], %g5
|
||||
|
||||
<sigacthandler+32>: sllx %l1, 3, %g4
|
||||
<sigacthandler+36>: mov %l1, %o0
|
||||
<sigacthandler+40>: ldx [ %g4 + %g5 ], %l0
|
||||
<sigacthandler+44>: call %l0
|
||||
<sigacthandler+48>: mov %i2, %o2
|
||||
<sigacthandler+52>: cmp %i3, 8 <--- PC */
|
||||
( pc[-7] == 0x9401400f
|
||||
&& pc[-6] == 0xca5aafa0
|
||||
&& pc[-5] == 0x913e2000
|
||||
&& pc[-4] == 0x892a3003
|
||||
&& pc[-3] == 0xe0590005
|
||||
&& pc[-2] == 0x9fc40000
|
||||
&& pc[-1] == 0x9410001a
|
||||
&& pc[ 0] == 0x80a6e008)
|
||||
|
||||
|| /* Solaris 9 - single-threaded
|
||||
----------------------------
|
||||
The pattern changes slightly in different versions of the
|
||||
operating system, so we skip the comparison against pc[-6] for
|
||||
Solaris 9.
|
||||
|
||||
<sigacthandler+24>: sra %i0, 0, %l1
|
||||
|
||||
Solaris 9 5/02:
|
||||
<sigacthandler+28>: ldx [ %o2 + 0xf68 ], %g5
|
||||
Solaris 9 9/05:
|
||||
<sigacthandler+28>: ldx [ %o2 + 0xe50 ], %g5
|
||||
|
||||
<sigacthandler+32>: sllx %l1, 3, %g4
|
||||
<sigacthandler+36>: mov %l1, %o0
|
||||
<sigacthandler+40>: ldx [ %g4 + %g5 ], %l0
|
||||
<sigacthandler+44>: call %l0
|
||||
<sigacthandler+48>: mov %i2, %o2
|
||||
<sigacthandler+52>: cmp %l1, 8 <--- PC */
|
||||
<sigacthandler+52>: cmp %l1, 8 <--- PC */
|
||||
( pc[-7] == 0xa33e2000
|
||||
/* skip pc[-6] */
|
||||
&& pc[-5] == 0x892c7003
|
||||
|
@ -147,8 +128,7 @@ sparc64_is_sighandler (unsigned int *pc, void *cfa, int *nframes)
|
|||
}
|
||||
|
||||
else if (cuh_pattern == 0x9410001a || cuh_pattern == 0x94100013)
|
||||
/* This matches the call_user_handler pattern for Solaris 9 and
|
||||
for Solaris 8 running inside Solaris Containers respectively
|
||||
/* This matches the call_user_handler pattern for Solaris 9.
|
||||
We need to move up three frames:
|
||||
|
||||
<signal handler> <-- context->cfa
|
||||
|
@ -159,17 +139,6 @@ sparc64_is_sighandler (unsigned int *pc, void *cfa, int *nframes)
|
|||
*/
|
||||
*nframes = 3;
|
||||
|
||||
else /* cuh_pattern == 0xe0272010 */
|
||||
/* This is the default Solaris 8 case.
|
||||
We need to move up two frames:
|
||||
|
||||
<signal handler> <-- context->cfa
|
||||
__sighndlr
|
||||
sigacthandler
|
||||
<kernel>
|
||||
*/
|
||||
*nframes = 2;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -211,8 +180,8 @@ sparc64_frob_update_context (struct _Unwind_Context *context,
|
|||
static int
|
||||
sparc_is_sighandler (unsigned int *pc, void *cfa, int *nframes)
|
||||
{
|
||||
if (/* Solaris 8, 9 - single-threaded
|
||||
-------------------------------
|
||||
if (/* Solaris 9 - single-threaded
|
||||
----------------------------
|
||||
The pattern changes slightly in different versions of the operating
|
||||
system, so we skip the comparison against pc[-6].
|
||||
|
||||
|
@ -247,37 +216,6 @@ sparc_is_sighandler (unsigned int *pc, void *cfa, int *nframes)
|
|||
return 1;
|
||||
}
|
||||
|
||||
if (/* Solaris 8 - multi-threaded
|
||||
---------------------------
|
||||
<__libthread_segvhdlr+212>: clr %o2
|
||||
<__libthread_segvhdlr+216>: ld [ %fp + -28 ], %l0
|
||||
<__libthread_segvhdlr+220>: mov %i4, %o0
|
||||
<__libthread_segvhdlr+224>: mov %i1, %o1
|
||||
<__libthread_segvhdlr+228>: call %l0
|
||||
<__libthread_segvhdlr+232>: mov %i2, %o2
|
||||
<__libthread_segvhdlr+236>: ret <--- PC
|
||||
<__libthread_segvhdlr+240>: restore
|
||||
<__libthread_segvhdlr+244>: cmp %o1, 0 */
|
||||
pc[-6] == 0x94102000
|
||||
&& pc[-5] == 0xe007bfe4
|
||||
&& pc[-4] == 0x9010001c
|
||||
&& pc[-3] == 0x92100019
|
||||
&& pc[-2] == 0x9fc40000
|
||||
&& pc[-1] == 0x9410001a
|
||||
&& pc[ 0] == 0x81c7e008
|
||||
&& pc[ 1] == 0x81e80000
|
||||
&& pc[ 2] == 0x80a26000)
|
||||
{
|
||||
/* We need to move up one frame:
|
||||
|
||||
<signal handler> <-- context->cfa
|
||||
__libthread_segvhdlr
|
||||
<kernel>
|
||||
*/
|
||||
*nframes = 1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
if(/* Solaris 8+ - multi-threaded
|
||||
----------------------------
|
||||
<__sighndlr>: save %sp, -96, %sp
|
||||
|
@ -332,8 +270,7 @@ sparc_is_sighandler (unsigned int *pc, void *cfa, int *nframes)
|
|||
}
|
||||
|
||||
else if (cuh_pattern == 0x9410001a || cuh_pattern == 0x9410001b)
|
||||
/* This matches the call_user_handler pattern for Solaris 9 and
|
||||
for Solaris 8 running inside Solaris Containers respectively.
|
||||
/* This matches the call_user_handler pattern for Solaris 9.
|
||||
We need to move up three frames:
|
||||
|
||||
<signal handler> <-- context->cfa
|
||||
|
@ -344,17 +281,6 @@ sparc_is_sighandler (unsigned int *pc, void *cfa, int *nframes)
|
|||
*/
|
||||
*nframes = 3;
|
||||
|
||||
else /* cuh_pattern == 0x90100018 */
|
||||
/* This is the default Solaris 8 case.
|
||||
We need to move up two frames:
|
||||
|
||||
<signal handler> <-- context->cfa
|
||||
__sighndlr
|
||||
sigacthandler
|
||||
<kernel>
|
||||
*/
|
||||
*nframes = 2;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* configure.ac (THREADLIBS): Remove *-*-solaris2.8 handling.
|
||||
* configure: Regenerate.
|
||||
|
||||
2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* configure.ac (libgcj_cv_exidx): Remove IRIX 6 ld workaround.
|
||||
|
|
10
libjava/configure
vendored
10
libjava/configure
vendored
|
@ -20740,16 +20740,8 @@ case "$THREADS" in
|
|||
THREADLIBS='-lpthread -lrt'
|
||||
THREADSPEC='-lpthread -lrt'
|
||||
;;
|
||||
*-*-solaris2.8)
|
||||
# Always use alternate thread library on Solaris 8. Need libthread
|
||||
# for TLS support.
|
||||
# Need -Wl,-R to get it through libtool ...
|
||||
THREADLIBS='-L/usr/lib/lwp$(MULTISUBDIR) -Wl,-R -Wl,/usr/lib/lwp$(MULTISUBDIR) -lpthread -lthread'
|
||||
# ... while ld only accepts -R.
|
||||
THREADSPEC='-L/usr/lib/lwp%{m64:/64} -R/usr/lib/lwp%{m64:/64} -lpthread -lthread'
|
||||
;;
|
||||
*-*-solaris2.9)
|
||||
# As on Solaris 8, need libthread for TLS support.
|
||||
# Need libthread for TLS support.
|
||||
THREADLIBS='-lpthread -lthread'
|
||||
THREADSPEC='-lpthread -lthread'
|
||||
;;
|
||||
|
|
|
@ -1086,16 +1086,8 @@ case "$THREADS" in
|
|||
THREADLIBS='-lpthread -lrt'
|
||||
THREADSPEC='-lpthread -lrt'
|
||||
;;
|
||||
*-*-solaris2.8)
|
||||
# Always use alternate thread library on Solaris 8. Need libthread
|
||||
# for TLS support.
|
||||
# Need -Wl,-R to get it through libtool ...
|
||||
THREADLIBS='-L/usr/lib/lwp$(MULTISUBDIR) -Wl,-R -Wl,/usr/lib/lwp$(MULTISUBDIR) -lpthread -lthread'
|
||||
# ... while ld only accepts -R.
|
||||
THREADSPEC='-L/usr/lib/lwp%{m64:/64} -R/usr/lib/lwp%{m64:/64} -lpthread -lthread'
|
||||
;;
|
||||
*-*-solaris2.9)
|
||||
# As on Solaris 8, need libthread for TLS support.
|
||||
# Need libthread for TLS support.
|
||||
THREADLIBS='-lpthread -lthread'
|
||||
THREADSPEC='-lpthread -lthread'
|
||||
;;
|
||||
|
|
|
@ -1,3 +1,43 @@
|
|||
2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* config/os/solaris/solaris2.8: Rename to ...
|
||||
* config/os/solaris/solaris2.9: ... this.
|
||||
* config/abi/post/solaris2.8: Rename to ...
|
||||
* config/abi/post/solaris2.9: ... this.
|
||||
* configure.host (os_include_dir): Remove solaris2.8.
|
||||
Reflect renaming.
|
||||
(abi_baseline_pair): Remove *-*-solaris2.8.
|
||||
Reflect renaming.
|
||||
|
||||
* configure.ac (GLIBCXX_CHECK_MATH_PROTO): Remove
|
||||
(GLIBCXX_CHECK_STDLIB_PROTO): Remove.
|
||||
* acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO): Remove
|
||||
(GLIBCXX_CHECK_STDLIB_PROTO): Remove.
|
||||
(GLIBCXX_CHECK_GTHREADS): Remove Solaris 8 handling.
|
||||
* crossconfig.m4 (GLIBCXX_CROSSCONFIG): Remove *-solaris2.8
|
||||
handling.
|
||||
* configure: Regenerate.
|
||||
* config.h.in: Regenerate.
|
||||
|
||||
* config/os/solaris/solaris2.9/os_defines.h
|
||||
(__CORRECT_ISO_CPP_MATH_H_PROTO): Define.
|
||||
(__CORRECT_ISO_CPP_STDLIB_H_PROTO): Define.
|
||||
* include/c_global/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
to __CORRECT_ISO_CPP_MATH_H_PROTO.
|
||||
[!__CORRECT_ISO_CPP_MATH_H_PROTO2]: Remove.
|
||||
* include/tr1/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1 to
|
||||
__CORRECT_ISO_CPP_MATH_H_PROTO.
|
||||
|
||||
* doc/xml/manual/configure.xml (Configure, --enable-libstdcxx-threads):
|
||||
Remove Solaris 8 reference.
|
||||
|
||||
* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
|
||||
Don't xfail on *-*-solaris2.8.
|
||||
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
|
||||
Likewise.
|
||||
* testsuite/ext/enc_filebuf/char/13598.cc: Don't xfail on
|
||||
*-*-solaris2.8.
|
||||
|
||||
2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* configure.host (irix6.5*): Remove.
|
||||
|
|
|
@ -1714,100 +1714,6 @@ AC_DEFUN([GLIBCXX_COMPUTE_STDIO_INTEGER_CONSTANTS], [
|
|||
[Define to the value of the SEEK_END integer constant.])
|
||||
])
|
||||
|
||||
dnl
|
||||
dnl Check whether required C++ overloads are present in <math.h>.
|
||||
dnl
|
||||
|
||||
AC_DEFUN([GLIBCXX_CHECK_MATH_PROTO], [
|
||||
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
|
||||
case "$host" in
|
||||
*-*-solaris2.*)
|
||||
# Solaris 8 FCS only had an overload for double std::abs(double) in
|
||||
# <iso/math_iso.h>. Patches 111721-04 (SPARC) and 112757-01 (x86)
|
||||
# introduced the full set also found from Solaris 9 onwards.
|
||||
AC_MSG_CHECKING([for float std::abs(float) overload])
|
||||
AC_CACHE_VAL(glibcxx_cv_abs_float, [
|
||||
AC_COMPILE_IFELSE([AC_LANG_SOURCE(
|
||||
[#include <math.h>
|
||||
namespace std {
|
||||
inline float abs(float __x)
|
||||
{ return __builtin_fabsf(__x); }
|
||||
}
|
||||
])],
|
||||
[glibcxx_cv_abs_float=no],
|
||||
[glibcxx_cv_abs_float=yes]
|
||||
)])
|
||||
|
||||
# autoheader cannot handle indented templates.
|
||||
AH_VERBATIM([__CORRECT_ISO_CPP_MATH_H_PROTO1],
|
||||
[/* Define if all C++ overloads are available in <math.h>. */
|
||||
#if __cplusplus >= 199711L
|
||||
#undef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#endif])
|
||||
AH_VERBATIM([__CORRECT_ISO_CPP_MATH_H_PROTO2],
|
||||
[/* Define if only double std::abs(double) is available in <math.h>. */
|
||||
#if __cplusplus >= 199711L
|
||||
#undef __CORRECT_ISO_CPP_MATH_H_PROTO2
|
||||
#endif])
|
||||
|
||||
if test $glibcxx_cv_abs_float = yes; then
|
||||
AC_DEFINE(__CORRECT_ISO_CPP_MATH_H_PROTO1)
|
||||
else
|
||||
AC_DEFINE(__CORRECT_ISO_CPP_MATH_H_PROTO2)
|
||||
fi
|
||||
AC_MSG_RESULT($glibcxx_cv_abs_float)
|
||||
;;
|
||||
esac
|
||||
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
|
||||
dnl
|
||||
dnl Check whether required C++ overloads are present in <stdlib.h>.
|
||||
dnl
|
||||
|
||||
AC_DEFUN([GLIBCXX_CHECK_STDLIB_PROTO], [
|
||||
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
|
||||
case "$host" in
|
||||
*-*-solaris2.*)
|
||||
# Solaris 8 FCS lacked the overloads for long std::abs(long) and
|
||||
# ldiv_t std::div(long, long) in <iso/stdlib_iso.h>. Patches 109607-02
|
||||
# (SPARC) and 109608-02 (x86) introduced them.
|
||||
AC_MSG_CHECKING([for long std::abs(long) overload])
|
||||
AC_CACHE_VAL(glibcxx_cv_abs_long, [
|
||||
AC_COMPILE_IFELSE([AC_LANG_SOURCE(
|
||||
[#include <stdlib.h>
|
||||
namespace std {
|
||||
inline long
|
||||
abs(long __i) { return labs(__i); }
|
||||
}
|
||||
])],
|
||||
[glibcxx_cv_abs_long=no],
|
||||
[glibcxx_cv_abs_long=yes]
|
||||
)])
|
||||
|
||||
# autoheader cannot handle indented templates.
|
||||
AH_VERBATIM([__CORRECT_ISO_CPP_STDLIB_H_PROTO],
|
||||
[/* Define if all C++ overloads are available in <stdlib.h>. */
|
||||
#if __cplusplus >= 199711L
|
||||
#undef __CORRECT_ISO_CPP_STDLIB_H_PROTO
|
||||
#endif])
|
||||
if test $glibcxx_cv_abs_long = yes; then
|
||||
AC_DEFINE(__CORRECT_ISO_CPP_STDLIB_H_PROTO, 1)
|
||||
fi
|
||||
AC_MSG_RESULT($glibcxx_cv_abs_long)
|
||||
;;
|
||||
esac
|
||||
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
|
||||
dnl
|
||||
dnl Check whether required C++ overloads are present in <stdio.h>.
|
||||
dnl
|
||||
|
@ -3401,9 +3307,9 @@ AC_DEFUN([GLIBCXX_CHECK_GTHREADS], [
|
|||
#error
|
||||
#endif
|
||||
], [case $target_os in
|
||||
# gthreads support breaks symbol versioning on Solaris 8/9 (PR
|
||||
# gthreads support breaks symbol versioning on Solaris 9 (PR
|
||||
# libstdc++/52189).
|
||||
solaris2.[[89]]*)
|
||||
solaris2.9*)
|
||||
if test x$enable_symvers = xno; then
|
||||
ac_has_gthreads=yes
|
||||
elif test x$enable_libstdcxx_threads = xyes; then
|
||||
|
|
|
@ -848,21 +848,6 @@
|
|||
/* Define to 1 if mutex_timedlock is available. */
|
||||
#undef _GTHREAD_USE_MUTEX_TIMEDLOCK
|
||||
|
||||
/* Define if all C++ overloads are available in <math.h>. */
|
||||
#if __cplusplus >= 199711L
|
||||
#undef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#endif
|
||||
|
||||
/* Define if only double std::abs(double) is available in <math.h>. */
|
||||
#if __cplusplus >= 199711L
|
||||
#undef __CORRECT_ISO_CPP_MATH_H_PROTO2
|
||||
#endif
|
||||
|
||||
/* Define if all C++ overloads are available in <stdlib.h>. */
|
||||
#if __cplusplus >= 199711L
|
||||
#undef __CORRECT_ISO_CPP_STDLIB_H_PROTO
|
||||
#endif
|
||||
|
||||
#if defined (HAVE__ACOSF) && ! defined (HAVE_ACOSF)
|
||||
# define HAVE_ACOSF 1
|
||||
# define acosf _acosf
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
// Specific definitions for Solaris 8+ -*- C++ -*-
|
||||
// Specific definitions for Solaris 9+ -*- C++ -*-
|
||||
|
||||
// Copyright (C) 2000, 2002, 2005, 2009, 2011 Free Software Foundation, Inc.
|
||||
// Copyright (C) 2000, 2002, 2005, 2009, 2011, 2012
|
||||
// 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
|
||||
|
@ -29,11 +30,8 @@
|
|||
// file will come before all others.
|
||||
|
||||
#if __cplusplus >= 199711L
|
||||
// Overloads in <iso/math_iso.h> and <iso/stdlib_iso.h> changed with
|
||||
// Solaris 8 patches. Since <bits/c++config.h> includes
|
||||
// <bits/os_defines.h> before configure results,
|
||||
// __CORRECT_ISO_CPP_MATH_H_PROTO[12] and __CORRECT_ISO_CPP_STDLIB_H_PROTO
|
||||
// must be defined via acinclude.m4.
|
||||
#define __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
#define __CORRECT_ISO_CPP_STDLIB_H_PROTO
|
||||
#define __CORRECT_ISO_CPP_STRING_H_PROTO
|
||||
#define __CORRECT_ISO_CPP_WCHAR_H_PROTO
|
||||
#endif
|
127
libstdc++-v3/configure
vendored
127
libstdc++-v3/configure
vendored
|
@ -17295,127 +17295,6 @@ $as_echo "$enable_werror" >&6; }
|
|||
|
||||
|
||||
|
||||
ac_ext=cpp
|
||||
ac_cpp='$CXXCPP $CPPFLAGS'
|
||||
ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
||||
ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
|
||||
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
|
||||
|
||||
|
||||
case "$host" in
|
||||
*-*-solaris2.*)
|
||||
# Solaris 8 FCS only had an overload for double std::abs(double) in
|
||||
# <iso/math_iso.h>. Patches 111721-04 (SPARC) and 112757-01 (x86)
|
||||
# introduced the full set also found from Solaris 9 onwards.
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for float std::abs(float) overload" >&5
|
||||
$as_echo_n "checking for float std::abs(float) overload... " >&6; }
|
||||
if test "${glibcxx_cv_abs_float+set}" = set; then :
|
||||
$as_echo_n "(cached) " >&6
|
||||
else
|
||||
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
#include <math.h>
|
||||
namespace std {
|
||||
inline float abs(float __x)
|
||||
{ return __builtin_fabsf(__x); }
|
||||
}
|
||||
|
||||
_ACEOF
|
||||
if ac_fn_cxx_try_compile "$LINENO"; then :
|
||||
glibcxx_cv_abs_float=no
|
||||
else
|
||||
glibcxx_cv_abs_float=yes
|
||||
|
||||
fi
|
||||
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||
fi
|
||||
|
||||
|
||||
# autoheader cannot handle indented templates.
|
||||
|
||||
|
||||
|
||||
if test $glibcxx_cv_abs_float = yes; then
|
||||
$as_echo "#define __CORRECT_ISO_CPP_MATH_H_PROTO1 1" >>confdefs.h
|
||||
|
||||
else
|
||||
$as_echo "#define __CORRECT_ISO_CPP_MATH_H_PROTO2 1" >>confdefs.h
|
||||
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $glibcxx_cv_abs_float" >&5
|
||||
$as_echo "$glibcxx_cv_abs_float" >&6; }
|
||||
;;
|
||||
esac
|
||||
|
||||
ac_ext=c
|
||||
ac_cpp='$CPP $CPPFLAGS'
|
||||
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
||||
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
|
||||
ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
ac_ext=cpp
|
||||
ac_cpp='$CXXCPP $CPPFLAGS'
|
||||
ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
||||
ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
|
||||
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
|
||||
|
||||
|
||||
case "$host" in
|
||||
*-*-solaris2.*)
|
||||
# Solaris 8 FCS lacked the overloads for long std::abs(long) and
|
||||
# ldiv_t std::div(long, long) in <iso/stdlib_iso.h>. Patches 109607-02
|
||||
# (SPARC) and 109608-02 (x86) introduced them.
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for long std::abs(long) overload" >&5
|
||||
$as_echo_n "checking for long std::abs(long) overload... " >&6; }
|
||||
if test "${glibcxx_cv_abs_long+set}" = set; then :
|
||||
$as_echo_n "(cached) " >&6
|
||||
else
|
||||
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
#include <stdlib.h>
|
||||
namespace std {
|
||||
inline long
|
||||
abs(long __i) { return labs(__i); }
|
||||
}
|
||||
|
||||
_ACEOF
|
||||
if ac_fn_cxx_try_compile "$LINENO"; then :
|
||||
glibcxx_cv_abs_long=no
|
||||
else
|
||||
glibcxx_cv_abs_long=yes
|
||||
|
||||
fi
|
||||
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||
fi
|
||||
|
||||
|
||||
# autoheader cannot handle indented templates.
|
||||
|
||||
if test $glibcxx_cv_abs_long = yes; then
|
||||
$as_echo "#define __CORRECT_ISO_CPP_STDLIB_H_PROTO 1" >>confdefs.h
|
||||
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $glibcxx_cv_abs_long" >&5
|
||||
$as_echo "$glibcxx_cv_abs_long" >&6; }
|
||||
;;
|
||||
esac
|
||||
|
||||
ac_ext=c
|
||||
ac_cpp='$CPP $CPPFLAGS'
|
||||
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
||||
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
|
||||
ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
ac_ext=cpp
|
||||
ac_cpp='$CXXCPP $CPPFLAGS'
|
||||
ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
||||
|
@ -63713,7 +63592,7 @@ done
|
|||
;;
|
||||
*-solaris*)
|
||||
case "$target" in
|
||||
*-solaris2.8 | *-solaris2.9 | *-solaris2.10)
|
||||
*-solaris2.9 | *-solaris2.10)
|
||||
|
||||
# If we're not using GNU ld, then there's no point in even trying these
|
||||
# tests. Check for that first. We should have already tested for gld
|
||||
|
@ -65622,9 +65501,9 @@ main ()
|
|||
_ACEOF
|
||||
if ac_fn_cxx_try_compile "$LINENO"; then :
|
||||
case $target_os in
|
||||
# gthreads support breaks symbol versioning on Solaris 8/9 (PR
|
||||
# gthreads support breaks symbol versioning on Solaris 9 (PR
|
||||
# libstdc++/52189).
|
||||
solaris2.[89]*)
|
||||
solaris2.9*)
|
||||
if test x$enable_symvers = xno; then
|
||||
ac_has_gthreads=yes
|
||||
elif test x$enable_libstdcxx_threads = xyes; then
|
||||
|
|
|
@ -134,8 +134,6 @@ GLIBCXX_ENABLE_PYTHON
|
|||
GLIBCXX_ENABLE_WERROR([yes])
|
||||
|
||||
# Checks for operating systems support that doesn't require linking.
|
||||
GLIBCXX_CHECK_MATH_PROTO
|
||||
GLIBCXX_CHECK_STDLIB_PROTO
|
||||
GLIBCXX_CHECK_STDIO_PROTO
|
||||
GLIBCXX_CHECK_SYSTEM_ERROR
|
||||
|
||||
|
|
|
@ -280,8 +280,8 @@ case "${host_os}" in
|
|||
echo "Please specify the full version of Solaris, ie. solaris2.9 " 1>&2
|
||||
exit 1
|
||||
;;
|
||||
solaris2.[89] | solaris2.1[0-9])
|
||||
os_include_dir="os/solaris/solaris2.8"
|
||||
solaris2.9 | solaris2.1[0-9])
|
||||
os_include_dir="os/solaris/solaris2.9"
|
||||
;;
|
||||
tpf)
|
||||
os_include_dir="os/tpf"
|
||||
|
@ -332,8 +332,8 @@ case "${host}" in
|
|||
powerpc*-*-darwin*)
|
||||
port_specific_symbol_files="\$(srcdir)/../config/os/bsd/darwin/ppc-extra.ver"
|
||||
;;
|
||||
*-*-solaris2.[89])
|
||||
abi_baseline_pair=solaris2.8
|
||||
*-*-solaris2.9)
|
||||
abi_baseline_pair=solaris2.9
|
||||
abi_baseline_subdir_switch=--print-multi-os-directory
|
||||
;;
|
||||
*-*-solaris2.1[0-9])
|
||||
|
|
|
@ -198,7 +198,7 @@ case "${host}" in
|
|||
;;
|
||||
*-solaris*)
|
||||
case "$target" in
|
||||
*-solaris2.8 | *-solaris2.9 | *-solaris2.10)
|
||||
*-solaris2.9 | *-solaris2.10)
|
||||
GLIBCXX_CHECK_LINKER_FEATURES
|
||||
AC_DEFINE(HAVE_MBSTATE_T)
|
||||
AC_DEFINE(HAVE_FINITE)
|
||||
|
|
|
@ -164,7 +164,7 @@
|
|||
<varlistentry><term><code>--enable-libstdcxx-threads</code></term>
|
||||
<listitem><para>Enable C++11 threads support. If not explicitly specified,
|
||||
the configure process enables it if possible. It defaults to 'off'
|
||||
on Solaris 8 and 9, where it would break symbol versioning. This
|
||||
on Solaris 9, where it would break symbol versioning. This
|
||||
option can change the library ABI.
|
||||
</para>
|
||||
</listitem></varlistentry>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// -*- C++ -*- C forwarding header.
|
||||
|
||||
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
|
||||
// 2006, 2007, 2008, 2009, 2010, 2011
|
||||
// 2006, 2007, 2008, 2009, 2010, 2011, 2012
|
||||
// Free Software Foundation, Inc.
|
||||
//
|
||||
// This file is part of the GNU ISO C++ Library. This library is free
|
||||
|
@ -78,14 +78,13 @@ namespace std _GLIBCXX_VISIBILITY(default)
|
|||
{
|
||||
_GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||
|
||||
#if !defined(__CORRECT_ISO_CPP_MATH_H_PROTO1) \
|
||||
&& !defined(__CORRECT_ISO_CPP_MATH_H_PROTO2)
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR double
|
||||
abs(double __x)
|
||||
{ return __builtin_fabs(__x); }
|
||||
#endif
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
abs(float __x)
|
||||
{ return __builtin_fabsf(__x); }
|
||||
|
@ -104,7 +103,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::acos;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
acos(float __x)
|
||||
{ return __builtin_acosf(__x); }
|
||||
|
@ -123,7 +122,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::asin;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
asin(float __x)
|
||||
{ return __builtin_asinf(__x); }
|
||||
|
@ -142,7 +141,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::atan;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
atan(float __x)
|
||||
{ return __builtin_atanf(__x); }
|
||||
|
@ -161,7 +160,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::atan2;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
atan2(float __y, float __x)
|
||||
{ return __builtin_atan2f(__y, __x); }
|
||||
|
@ -182,7 +181,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::ceil;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
ceil(float __x)
|
||||
{ return __builtin_ceilf(__x); }
|
||||
|
@ -201,7 +200,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::cos;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
cos(float __x)
|
||||
{ return __builtin_cosf(__x); }
|
||||
|
@ -220,7 +219,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::cosh;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
cosh(float __x)
|
||||
{ return __builtin_coshf(__x); }
|
||||
|
@ -239,7 +238,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::exp;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
exp(float __x)
|
||||
{ return __builtin_expf(__x); }
|
||||
|
@ -258,7 +257,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::fabs;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
fabs(float __x)
|
||||
{ return __builtin_fabsf(__x); }
|
||||
|
@ -277,7 +276,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::floor;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
floor(float __x)
|
||||
{ return __builtin_floorf(__x); }
|
||||
|
@ -296,7 +295,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::fmod;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
fmod(float __x, float __y)
|
||||
{ return __builtin_fmodf(__x, __y); }
|
||||
|
@ -317,7 +316,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::frexp;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline float
|
||||
frexp(float __x, int* __exp)
|
||||
{ return __builtin_frexpf(__x, __exp); }
|
||||
|
@ -336,7 +335,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::ldexp;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
ldexp(float __x, int __exp)
|
||||
{ return __builtin_ldexpf(__x, __exp); }
|
||||
|
@ -355,7 +354,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::log;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
log(float __x)
|
||||
{ return __builtin_logf(__x); }
|
||||
|
@ -374,7 +373,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::log10;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
log10(float __x)
|
||||
{ return __builtin_log10f(__x); }
|
||||
|
@ -393,7 +392,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::modf;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline float
|
||||
modf(float __x, float* __iptr)
|
||||
{ return __builtin_modff(__x, __iptr); }
|
||||
|
@ -405,7 +404,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::pow;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
pow(float __x, float __y)
|
||||
{ return __builtin_powf(__x, __y); }
|
||||
|
@ -442,7 +441,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::sin;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
sin(float __x)
|
||||
{ return __builtin_sinf(__x); }
|
||||
|
@ -461,7 +460,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::sinh;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
sinh(float __x)
|
||||
{ return __builtin_sinhf(__x); }
|
||||
|
@ -480,7 +479,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::sqrt;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
sqrt(float __x)
|
||||
{ return __builtin_sqrtf(__x); }
|
||||
|
@ -499,7 +498,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::tan;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
tan(float __x)
|
||||
{ return __builtin_tanf(__x); }
|
||||
|
@ -518,7 +517,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
|
||||
using ::tanh;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline _GLIBCXX_CONSTEXPR float
|
||||
tanh(float __x)
|
||||
{ return __builtin_tanhf(__x); }
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
// TR1 cmath -*- C++ -*-
|
||||
|
||||
// Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011
|
||||
// Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012
|
||||
// Free Software Foundation, Inc.
|
||||
//
|
||||
// This file is part of the GNU ISO C++ Library. This library is free
|
||||
|
@ -563,12 +563,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
// Note: we deal with fabs in a special way, because an using std::fabs
|
||||
// would bring in also the overloads for complex types, which in C++0x
|
||||
// mode have a different return type.
|
||||
// With __CORRECT_ISO_CPP_MATH_H_PROTO1, math.h imports std::fabs in the
|
||||
// With __CORRECT_ISO_CPP_MATH_H_PROTO, math.h imports std::fabs in the
|
||||
// global namespace after the declarations of the float / double / long
|
||||
// double overloads but before the std::complex overloads.
|
||||
using ::fabs;
|
||||
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO1
|
||||
#ifndef __CORRECT_ISO_CPP_MATH_H_PROTO
|
||||
inline float
|
||||
fabs(float __x)
|
||||
{ return __builtin_fabsf(__x); }
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// 1999-04-12 bkoz
|
||||
|
||||
// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009,
|
||||
// 2010
|
||||
// 2010, 2012
|
||||
// Free Software Foundation, Inc.
|
||||
//
|
||||
// This file is part of the GNU ISO C++ Library. This library is free
|
||||
|
@ -21,10 +21,10 @@
|
|||
|
||||
// 27.6.1.2.2 arithmetic extractors
|
||||
|
||||
// XXX This test fails on Solaris 8 and 9 because of a bug in libc
|
||||
// XXX This test fails on Solaris 9 because of a bug in libc
|
||||
// XXX sscanf for very long input. See:
|
||||
// XXX http://gcc.gnu.org/ml/gcc/2002-12/msg01422.html
|
||||
// { dg-do run { xfail { { *-*-solaris2.[89] } || lax_strtofp } } }
|
||||
// { dg-do run { xfail { { *-*-solaris2.9 } || lax_strtofp } } }
|
||||
|
||||
#include <istream>
|
||||
#include <sstream>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010
|
||||
// Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010, 2012
|
||||
// Free Software Foundation, Inc.
|
||||
//
|
||||
// This file is part of the GNU ISO C++ Library. This library is free
|
||||
|
@ -18,10 +18,10 @@
|
|||
|
||||
// 27.6.1.2.2 arithmetic extractors
|
||||
|
||||
// XXX This test fails on Solaris 8 and 9 because of a bug in libc
|
||||
// XXX This test fails on Solaris 9 because of a bug in libc
|
||||
// XXX sscanf for very long input. See:
|
||||
// XXX http://gcc.gnu.org/ml/gcc/2002-12/msg01422.html
|
||||
// { dg-do run { xfail { { *-*-solaris2.[89] } || lax_strtofp } } }
|
||||
// { dg-do run { xfail { { *-*-solaris2.9 } || lax_strtofp } } }
|
||||
|
||||
#include <istream>
|
||||
#include <sstream>
|
||||
|
|
|
@ -1,10 +1,11 @@
|
|||
// Before Solaris 11, iconv -f ISO-8859-1 -t ISO-8859-1 fails with
|
||||
// Not supported ISO-8859-1 to ISO-8859-1
|
||||
//
|
||||
// { dg-do run { xfail *-*-solaris2.[89] *-*-solaris2.10 } }
|
||||
// { dg-do run { xfail *-*-solaris2.9 *-*-solaris2.10 } }
|
||||
// { dg-require-iconv "ISO-8859-1" }
|
||||
|
||||
// Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010 Free Software Foundation
|
||||
// Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010, 2012
|
||||
// Free Software Foundation
|
||||
//
|
||||
// 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
|
||||
|
|
Loading…
Add table
Reference in a new issue