From d9f069ab4f645085b7d439e166b7501b9fb6ce8a Mon Sep 17 00:00:00 2001 From: Rainer Orth Date: Tue, 22 Apr 2014 12:30:59 +0000 Subject: [PATCH] Remove obsolete Solaris 9 support libstdc++-v3: * configure.host: Remove solaris2.9 handling. Change os_include_dir to os/solaris/solaris2.10. * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling. * crossconfig.m4: Remove *-solaris2.9 handling, simplify. * configure: Regenerate. * config/abi/post/solaris2.9: Remove. * config/os/solaris/solaris2.9: Rename to ... * config/os/solaris/solaris2.10: ... this. * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC): Remove. * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Remove Solaris 9 reference. * doc/html/manual/configure.html: Regenerate. * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc: Remove *-*-solaris2.9 xfail. * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc: Likewise. * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9 xfail. libjava: * configure.ac (THREADLIBS, THREADSPEC): Remove *-*-solaris2.9 handling. * configure: Regenerate. libgfortran: * config/fpu-387.h [__sun__ && __svr4__]: Remove SSE execution check. libgcc: * config/i386/crtfastmath.c (set_fast_math): Remove SSE execution check. * config/i386/sol2-unwind.h (x86_fallback_frame_state): Remove Solaris 9 single-threaded support. * config/sparc/sol2-unwind.h (sparc64_is_sighandler): Remove Solaris 9 single-threaded support. Add call_user_handler code sequences. (sparc_is_sighandler): Likewise. libcpp: * lex.c: Remove Solaris 9 reference. gcc/testsuite: * gcc.c-torture/compile/pr28865.c: Remove dg-xfail-if. * gcc.dg/c99-stdint-6.c: Remove dg-options for *-*-solaris2.9. * gcc.dg/lto/20090210_0.c: Remove dg-extra-ld-options for *-*-solaris2.9. * gcc.dg/torture/pr47917.c: Remove dg-options for *-*-solaris2.9. * gcc.target/i386/pr22076.c: Remove i?86-*-solaris2.9 handling from dg-options. * gcc.target/i386/pr22152.c: Remove i?86-*-solaris2.9 handling from dg-additional-options. * gcc.target/i386/vect8-ret.c: Remove i?86-*-solaris2.9 handling from dg-options. * gcc.dg/vect/tree-vect.h (check_vect): Remove Solaris 9 SSE2 execution check. * gcc.target/i386/sse-os-support.h [__sun__ && __svr4__] (sigill_hdlr): Remove. (sse_os_support) [__sun__ && __svr4__]: Remove SSE execution check. * gfortran.dg/erf_3.F90: Remove sparc*-*-solaris2.9* handling. * gfortran.dg/fmt_en.f90: Remove i?86-*-solaris2.9* handling. * gfortran.dg/round_4.f90: Remove *-*-solaris2.9* handling. * lib/target-supports.exp (add_options_for_tls): Remove *-*-solaris2.9* handling. gcc: * config.gcc (enable_obsolete): Remove *-*-solaris2.9*. (*-*-solaris2.[0-9] | *-*-solaris2.[0-9].*): Mark unsupported. (*-*-solaris2*): Simplify. (i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*): Likewise. (i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*): Remove *-*-solaris2.9* handling. * configure.ac (gcc_cv_as_hidden): Remove test for Solaris 9/x86 as bug. (gcc_cv_ld_hidden): Remove *-*-solaris2.9* handling. (ld_tls_support): Remove i?86-*-solaris2.9, sparc*-*-solaris2.9 handling, simplify. (gcc_cv_as_gstabs_flag): Remove workaround for Solaris 9/x86 as bug. * configure: Regenerate. * config/i386/sol2-9.h: Remove. * doc/install.texi (Specific, i?86-*-solaris2.9): Remove. (Specific, *-*-solaris2*): Mention Solaris 9 support removal. Remove Solaris 9 references. fixincludes: * inclhack.def (math_exception): Bypass on *-*-solaris2.1[0-9]*. (solaris_int_types): Remove. (solaris_longjmp_noreturn): Remove. (solaris_mutex_init_2): Remove. (solaris_once_init_2): Remove. (solaris_sys_va_list): Remove. * fixincl.x: Regenerate. * tests/base/iso/setjmp_iso.h: Remove. * tests/base/pthread.h [SOLARIS_MUTEX_INIT_2_CHECK]: Remove. [SOLARIS_ONCE_INIT_1_CHECK]: Remove wrapping done by solaris_once_init_2. [SOLARIS_ONCE_INIT_2_CHECK]: Remove. * tests/base/sys/int_types.h: Remove. * tests/base/sys/va_list.h: Remove. contrib: * config-list.mk (LIST): Remove sparc-sun-solaris2.9, i686-solaris2.9. From-SVN: r209621 --- contrib/ChangeLog | 4 + contrib/config-list.mk | 1 - fixincludes/ChangeLog | 17 + fixincludes/fixincl.x | 268 +- fixincludes/inclhack.def | 136 +- fixincludes/tests/base/iso/setjmp_iso.h | 14 - fixincludes/tests/base/pthread.h | 44 - fixincludes/tests/base/sys/int_types.h | 20 - fixincludes/tests/base/sys/va_list.h | 22 - gcc/ChangeLog | 23 + gcc/config.gcc | 69 +- gcc/config/i386/sol2-9.h | 23 - gcc/configure | 74 +- gcc/configure.ac | 68 +- gcc/doc/install.texi | 49 +- gcc/testsuite/ChangeLog | 29 + gcc/testsuite/gcc.c-torture/compile/pr28865.c | 2 - gcc/testsuite/gcc.dg/c99-stdint-6.c | 1 - gcc/testsuite/gcc.dg/lto/20090210_0.c | 1 - gcc/testsuite/gcc.dg/torture/pr47917.c | 1 - gcc/testsuite/gcc.dg/vect/tree-vect.h | 5 - gcc/testsuite/gcc.target/i386/pr22076.c | 2 +- gcc/testsuite/gcc.target/i386/pr22152.c | 2 +- .../gcc.target/i386/sse-os-support.h | 51 +- gcc/testsuite/gcc.target/i386/vect8-ret.c | 2 +- gcc/testsuite/gfortran.dg/erf_3.F90 | 2 +- gcc/testsuite/gfortran.dg/fmt_en.f90 | 2 +- gcc/testsuite/gfortran.dg/round_4.f90 | 2 +- gcc/testsuite/lib/target-supports.exp | 2 +- libcpp/ChangeLog | 4 + libcpp/lex.c | 4 +- libgcc/ChangeLog | 11 + libgcc/config/i386/crtfastmath.c | 22 - libgcc/config/i386/sol2-unwind.h | 22 +- libgcc/config/sparc/sol2-unwind.h | 162 +- libgfortran/ChangeLog | 5 + libgfortran/config/fpu-387.h | 46 - libjava/ChangeLog | 6 + libjava/configure | 5 - libjava/configure.ac | 5 - libstdc++-v3/ChangeLog | 25 + libstdc++-v3/acinclude.m4 | 20 +- .../abi/post/solaris2.9/baseline_symbols.txt | 3636 ---------------- .../solaris2.9/sparcv9/baseline_symbols.txt | 3688 ----------------- .../{solaris2.9 => solaris2.10}/ctype_base.h | 0 .../ctype_configure_char.cc | 0 .../ctype_inline.h | 0 .../{solaris2.9 => solaris2.10}/os_defines.h | 7 +- libstdc++-v3/configure | 47 +- libstdc++-v3/configure.host | 10 +- libstdc++-v3/crossconfig.m4 | 28 +- libstdc++-v3/doc/xml/manual/configure.xml | 3 +- .../extractors_arithmetic/char/12.cc | 5 +- .../extractors_arithmetic/wchar_t/12.cc | 5 +- .../testsuite/ext/enc_filebuf/char/13598.cc | 2 +- 55 files changed, 270 insertions(+), 8434 deletions(-) delete mode 100644 fixincludes/tests/base/iso/setjmp_iso.h delete mode 100644 fixincludes/tests/base/sys/int_types.h delete mode 100644 fixincludes/tests/base/sys/va_list.h delete mode 100644 gcc/config/i386/sol2-9.h delete mode 100644 libstdc++-v3/config/abi/post/solaris2.9/baseline_symbols.txt delete mode 100644 libstdc++-v3/config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt rename libstdc++-v3/config/os/solaris/{solaris2.9 => solaris2.10}/ctype_base.h (100%) rename libstdc++-v3/config/os/solaris/{solaris2.9 => solaris2.10}/ctype_configure_char.cc (100%) rename libstdc++-v3/config/os/solaris/{solaris2.9 => solaris2.10}/ctype_inline.h (100%) rename libstdc++-v3/config/os/solaris/{solaris2.9 => solaris2.10}/os_defines.h (88%) diff --git a/contrib/ChangeLog b/contrib/ChangeLog index 2347b08957b..4d98be736e5 100644 --- a/contrib/ChangeLog +++ b/contrib/ChangeLog @@ -1,3 +1,7 @@ +2014-04-22 Rainer Orth + + * config-list.mk (LIST): Remove sparc-sun-solaris2.9, i686-solaris2.9. + 2013-04-22 Jakub Jelinek * gennews (files): Add files for GCC 4.9. diff --git a/contrib/config-list.mk b/contrib/config-list.mk index 43454871da2..ddf24a286ef 100644 --- a/contrib/config-list.mk +++ b/contrib/config-list.mk @@ -75,7 +75,6 @@ LIST = aarch64-elf aarch64-linux-gnu \ x86_64-knetbsd-gnu x86_64-w64-mingw32 \ x86_64-mingw32OPT-enable-sjlj-exceptions=yes xstormy16-elf xtensa-elf \ xtensa-linux \ - sparc-sun-solaris2.9OPT-enable-obsolete i686-solaris2.9OPT-enable-obsolete \ i686-interix3OPT-enable-obsolete score-elfOPT-enable-obsolete LOGFILES = $(patsubst %,log/%-make.out,$(LIST)) diff --git a/fixincludes/ChangeLog b/fixincludes/ChangeLog index 9ba5ca9d94d..f7effee7893 100644 --- a/fixincludes/ChangeLog +++ b/fixincludes/ChangeLog @@ -1,3 +1,20 @@ +2014-04-22 Rainer Orth + + * inclhack.def (math_exception): Bypass on *-*-solaris2.1[0-9]*. + (solaris_int_types): Remove. + (solaris_longjmp_noreturn): Remove. + (solaris_mutex_init_2): Remove. + (solaris_once_init_2): Remove. + (solaris_sys_va_list): Remove. + * fixincl.x: Regenerate. + * tests/base/iso/setjmp_iso.h: Remove. + * tests/base/pthread.h [SOLARIS_MUTEX_INIT_2_CHECK]: Remove. + [SOLARIS_ONCE_INIT_1_CHECK]: Remove wrapping done by + solaris_once_init_2. + [SOLARIS_ONCE_INIT_2_CHECK]: Remove. + * tests/base/sys/int_types.h: Remove. + * tests/base/sys/va_list.h: Remove. + 2013-12-20 Bernhard Reutner-Fischer Makefile.in: Use $(FI) instead of fixincl@EXEEXT@. diff --git a/fixincludes/fixincl.x b/fixincludes/fixincl.x index 10b4061f30a..dd458023531 100644 --- a/fixincludes/fixincl.x +++ b/fixincludes/fixincl.x @@ -1,12 +1,12 @@ /* -*- buffer-read-only: t -*- vi: set ro: - * + * * DO NOT EDIT THIS FILE (fixincl.x) - * - * It has been AutoGen-ed December 8, 2013 at 12:24:14 PM by AutoGen 5.18.2 + * + * It has been AutoGen-ed Tuesday January 7, 2014 at 12:02:54 PM MET * From the definitions inclhack.def * and the template file fixincl */ -/* DO NOT SVN-MERGE THIS FILE, EITHER Sun Dec 8 12:24:14 PST 2013 +/* DO NOT SVN-MERGE THIS FILE, EITHER Tue Jan 7 12:02:54 MET 2014 * * 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 229 fixup descriptions. + * This file contains 224 fixup descriptions. * * See README for more information. * @@ -5264,7 +5264,9 @@ tSCC zMath_ExceptionList[] = /* * Machine/OS name selection pattern */ -#define apzMath_ExceptionMachs (const char**)NULL +tSCC* apzMath_ExceptionMachs[] = { + "*-*-solaris2.1[0-9]*", + (const char*)NULL }; /* * content selection pattern - do fix if pattern found @@ -6587,92 +6589,6 @@ static const char* apzSolaris_Int_Limits_3Patch[] = { "#define\tSIZE_MAX\t4294967295U", (char*)NULL }; -/* * * * * * * * * * * * * * * * * * * * * * * * * * - * - * Description of Solaris_Int_Types fix - */ -tSCC zSolaris_Int_TypesName[] = - "solaris_int_types"; - -/* - * File name selection pattern - */ -tSCC zSolaris_Int_TypesList[] = - "sys/int_types.h\0"; -/* - * Machine/OS name selection pattern - */ -#define apzSolaris_Int_TypesMachs (const char**)NULL - -/* - * content selection pattern - do fix if pattern found - */ -tSCC zSolaris_Int_TypesSelect0[] = - "__STDC__ - 0 == 0"; - -/* - * content bypass pattern - skip fix if pattern found - */ -tSCC zSolaris_Int_TypesBypass0[] = - "_LONGLONG_TYPE"; - -#define SOLARIS_INT_TYPES_TEST_CT 2 -static tTestDesc aSolaris_Int_TypesTests[] = { - { TT_NEGREP, zSolaris_Int_TypesBypass0, (regex_t*)NULL }, - { TT_EGREP, zSolaris_Int_TypesSelect0, (regex_t*)NULL }, }; - -/* - * Fix Command Arguments for Solaris_Int_Types - */ -static const char* apzSolaris_Int_TypesPatch[] = { - "format", - "(defined(_STDC_C99) || !defined(_STRICT_STDC) || defined(__GNUC__))", - (char*)NULL }; - -/* * * * * * * * * * * * * * * * * * * * * * * * * * - * - * Description of Solaris_Longjmp_Noreturn fix - */ -tSCC zSolaris_Longjmp_NoreturnName[] = - "solaris_longjmp_noreturn"; - -/* - * File name selection pattern - */ -tSCC zSolaris_Longjmp_NoreturnList[] = - "iso/setjmp_iso.h\0"; -/* - * Machine/OS name selection pattern - */ -tSCC* apzSolaris_Longjmp_NoreturnMachs[] = { - "*-*-solaris2*", - (const char*)NULL }; - -/* - * content selection pattern - do fix if pattern found - */ -tSCC zSolaris_Longjmp_NoreturnSelect0[] = - "(.*longjmp\\(jmp_buf.*[^)]+\\));"; - -/* - * content bypass pattern - skip fix if pattern found - */ -tSCC zSolaris_Longjmp_NoreturnBypass0[] = - "__NORETURN"; - -#define SOLARIS_LONGJMP_NORETURN_TEST_CT 2 -static tTestDesc aSolaris_Longjmp_NoreturnTests[] = { - { TT_NEGREP, zSolaris_Longjmp_NoreturnBypass0, (regex_t*)NULL }, - { TT_EGREP, zSolaris_Longjmp_NoreturnSelect0, (regex_t*)NULL }, }; - -/* - * Fix Command Arguments for Solaris_Longjmp_Noreturn - */ -static const char* apzSolaris_Longjmp_NoreturnPatch[] = { - "format", - "%1 __attribute__ ((__noreturn__));", - (char*)NULL }; - /* * * * * * * * * * * * * * * * * * * * * * * * * * * * Description of Solaris_Math_1 fix @@ -6975,50 +6891,6 @@ static const char* apzSolaris_Math_9Patch[] = { "^#define[ \t]+([a-z]+)\\(x, y\\)([ \t]+)\\(\\(x\\) __builtin_[a-z]+\\(y\\)\\)", (char*)NULL }; -/* * * * * * * * * * * * * * * * * * * * * * * * * * - * - * Description of Solaris_Mutex_Init_2 fix - */ -tSCC zSolaris_Mutex_Init_2Name[] = - "solaris_mutex_init_2"; - -/* - * File name selection pattern - */ -tSCC zSolaris_Mutex_Init_2List[] = - "pthread.h\0"; -/* - * Machine/OS name selection pattern - */ -tSCC* apzSolaris_Mutex_Init_2Machs[] = { - "*-*-solaris2.[0-9]", - "*-*-solaris2.[0-9][!0-9]*", - (const char*)NULL }; - -/* - * content selection pattern - do fix if pattern found - */ -tSCC zSolaris_Mutex_Init_2Select0[] = - "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI"; - -#define SOLARIS_MUTEX_INIT_2_TEST_CT 1 -static tTestDesc aSolaris_Mutex_Init_2Tests[] = { - { TT_EGREP, zSolaris_Mutex_Init_2Select0, (regex_t*)NULL }, }; - -/* - * Fix Command Arguments for Solaris_Mutex_Init_2 - */ -static const char* apzSolaris_Mutex_Init_2Patch[] = { - "format", - "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\ -%0\n\ -#else\n\ -%1, {0}}%4\n\ -#endif", - "(^#define[ \t]+PTHREAD_(MUTEX|COND)_INITIALIZER[ \t]+(|/*.**/[ \t]*\\\\\n\ -[ \t]*)\\{.*),[ \t]*0\\}(|[ \t].*)$", - (char*)NULL }; - /* * * * * * * * * * * * * * * * * * * * * * * * * * * * Description of Solaris_Once_Init_1 fix @@ -7057,49 +6929,6 @@ static const char* apzSolaris_Once_Init_1Patch[] = { "(^#define[ \t]+PTHREAD_ONCE_INIT[ \t]+\\{)([^}]+)(\\})[ \t]*$", (char*)NULL }; -/* * * * * * * * * * * * * * * * * * * * * * * * * * - * - * Description of Solaris_Once_Init_2 fix - */ -tSCC zSolaris_Once_Init_2Name[] = - "solaris_once_init_2"; - -/* - * File name selection pattern - */ -tSCC zSolaris_Once_Init_2List[] = - "pthread.h\0"; -/* - * Machine/OS name selection pattern - */ -tSCC* apzSolaris_Once_Init_2Machs[] = { - "*-*-solaris2.[0-9]", - "*-*-solaris2.[0-9][!0-9]*", - (const char*)NULL }; - -/* - * content selection pattern - do fix if pattern found - */ -tSCC zSolaris_Once_Init_2Select0[] = - "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI"; - -#define SOLARIS_ONCE_INIT_2_TEST_CT 1 -static tTestDesc aSolaris_Once_Init_2Tests[] = { - { TT_EGREP, zSolaris_Once_Init_2Select0, (regex_t*)NULL }, }; - -/* - * Fix Command Arguments for Solaris_Once_Init_2 - */ -static const char* apzSolaris_Once_Init_2Patch[] = { - "format", - "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\ -%0\n\ -#else\n\ -%1{0}, {0}, {0}, {%3}%4\n\ -#endif", - "(^#define[ \t]+PTHREAD_ONCE_INIT[ \t]+\\{\\{)(0, 0, 0, )(PTHREAD_[A-Z_]+)(\\}\\})[ \t]*$", - (char*)NULL }; - /* * * * * * * * * * * * * * * * * * * * * * * * * * * * Description of Solaris_Posix_Spawn_Restrict fix @@ -7309,51 +7138,6 @@ static const char* apzSolaris_Stdio_TagPatch[] = { sed_cmd_z, "-e", "s/defined(__cplusplus) && (__cplusplus < 54321L)/0/", (char*)NULL }; -/* * * * * * * * * * * * * * * * * * * * * * * * * * - * - * Description of Solaris_Sys_Va_List fix - */ -tSCC zSolaris_Sys_Va_ListName[] = - "solaris_sys_va_list"; - -/* - * File name selection pattern - */ -tSCC zSolaris_Sys_Va_ListList[] = - "sys/va_list.h\0"; -/* - * Machine/OS name selection pattern - */ -tSCC* apzSolaris_Sys_Va_ListMachs[] = { - "*-*-solaris2.9", - (const char*)NULL }; - -/* - * content selection pattern - do fix if pattern found - */ -tSCC zSolaris_Sys_Va_ListSelect0[] = - "#if.*__STDC__.*\n\ -typedef void \\*__va_list;\n\ -#else\n\ -typedef char \\*__va_list;\n\ -#endif"; - -#define SOLARIS_SYS_VA_LIST_TEST_CT 1 -static tTestDesc aSolaris_Sys_Va_ListTests[] = { - { TT_EGREP, zSolaris_Sys_Va_ListSelect0, (regex_t*)NULL }, }; - -/* - * Fix Command Arguments for Solaris_Sys_Va_List - */ -static const char* apzSolaris_Sys_Va_ListPatch[] = { - "format", - "#ifdef __GNUC__\n\ -typedef __builtin_va_list __va_list;\n\ -#else\n\ -%0\n\ -#endif", - (char*)NULL }; - /* * * * * * * * * * * * * * * * * * * * * * * * * * * * Description of Statsswtch fix @@ -9403,9 +9187,9 @@ static const char* apzX11_SprintfPatch[] = { * * List of all fixes */ -#define REGEX_COUNT 268 +#define REGEX_COUNT 261 #define MACH_LIST_SIZE_LIMIT 187 -#define FIX_COUNT 229 +#define FIX_COUNT 224 /* * Enumerate the fixes @@ -9570,8 +9354,6 @@ typedef enum { SOLARIS_INT_LIMITS_1_FIXIDX, SOLARIS_INT_LIMITS_2_FIXIDX, SOLARIS_INT_LIMITS_3_FIXIDX, - SOLARIS_INT_TYPES_FIXIDX, - SOLARIS_LONGJMP_NORETURN_FIXIDX, SOLARIS_MATH_1_FIXIDX, SOLARIS_MATH_10_FIXIDX, SOLARIS_MATH_2_FIXIDX, @@ -9579,15 +9361,12 @@ typedef enum { SOLARIS_MATH_4_FIXIDX, SOLARIS_MATH_8_FIXIDX, SOLARIS_MATH_9_FIXIDX, - SOLARIS_MUTEX_INIT_2_FIXIDX, SOLARIS_ONCE_INIT_1_FIXIDX, - SOLARIS_ONCE_INIT_2_FIXIDX, SOLARIS_POSIX_SPAWN_RESTRICT_FIXIDX, SOLARIS_POW_INT_OVERLOAD_FIXIDX, SOLARIS_RWLOCK_INIT_1_FIXIDX, SOLARIS_STD___FILBUF_FIXIDX, SOLARIS_STDIO_TAG_FIXIDX, - SOLARIS_SYS_VA_LIST_FIXIDX, STATSSWTCH_FIXIDX, STDIO_STDARG_H_FIXIDX, STDIO_VA_LIST_FIXIDX, @@ -10270,7 +10049,7 @@ tFixDesc fixDescList[ FIX_COUNT ] = { { zMath_ExceptionName, zMath_ExceptionList, apzMath_ExceptionMachs, - MATH_EXCEPTION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, + MATH_EXCEPTION_TEST_CT, FD_MACH_IFNOT | FD_SUBROUTINE, aMath_ExceptionTests, apzMath_ExceptionPatch, 0 }, { zMath_Huge_Val_From_Dbl_MaxName, zMath_Huge_Val_From_Dbl_MaxList, @@ -10438,16 +10217,6 @@ tFixDesc fixDescList[ FIX_COUNT ] = { SOLARIS_INT_LIMITS_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, aSolaris_Int_Limits_3Tests, apzSolaris_Int_Limits_3Patch, 0 }, - { zSolaris_Int_TypesName, zSolaris_Int_TypesList, - apzSolaris_Int_TypesMachs, - SOLARIS_INT_TYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, - aSolaris_Int_TypesTests, apzSolaris_Int_TypesPatch, 0 }, - - { zSolaris_Longjmp_NoreturnName, zSolaris_Longjmp_NoreturnList, - apzSolaris_Longjmp_NoreturnMachs, - SOLARIS_LONGJMP_NORETURN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, - aSolaris_Longjmp_NoreturnTests, apzSolaris_Longjmp_NoreturnPatch, 0 }, - { zSolaris_Math_1Name, zSolaris_Math_1List, apzSolaris_Math_1Machs, SOLARIS_MATH_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, @@ -10483,21 +10252,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = { SOLARIS_MATH_9_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, aSolaris_Math_9Tests, apzSolaris_Math_9Patch, 0 }, - { zSolaris_Mutex_Init_2Name, zSolaris_Mutex_Init_2List, - apzSolaris_Mutex_Init_2Machs, - SOLARIS_MUTEX_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, - aSolaris_Mutex_Init_2Tests, apzSolaris_Mutex_Init_2Patch, 0 }, - { zSolaris_Once_Init_1Name, zSolaris_Once_Init_1List, apzSolaris_Once_Init_1Machs, SOLARIS_ONCE_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, aSolaris_Once_Init_1Tests, apzSolaris_Once_Init_1Patch, 0 }, - { zSolaris_Once_Init_2Name, zSolaris_Once_Init_2List, - apzSolaris_Once_Init_2Machs, - SOLARIS_ONCE_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, - aSolaris_Once_Init_2Tests, apzSolaris_Once_Init_2Patch, 0 }, - { zSolaris_Posix_Spawn_RestrictName, zSolaris_Posix_Spawn_RestrictList, apzSolaris_Posix_Spawn_RestrictMachs, SOLARIS_POSIX_SPAWN_RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, @@ -10523,11 +10282,6 @@ tFixDesc fixDescList[ FIX_COUNT ] = { SOLARIS_STDIO_TAG_TEST_CT, FD_MACH_ONLY, aSolaris_Stdio_TagTests, apzSolaris_Stdio_TagPatch, 0 }, - { zSolaris_Sys_Va_ListName, zSolaris_Sys_Va_ListList, - apzSolaris_Sys_Va_ListMachs, - SOLARIS_SYS_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, - aSolaris_Sys_Va_ListTests, apzSolaris_Sys_Va_ListPatch, 0 }, - { zStatsswtchName, zStatsswtchList, apzStatsswtchMachs, STATSSWTCH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def index 411300fb2e0..6a1136ce557 100644 --- a/fixincludes/inclhack.def +++ b/fixincludes/inclhack.def @@ -2767,6 +2767,9 @@ fix = { */ bypass = 'We have a problem when using C\+\+|for C\+\+, ' '_[a-z0-9A-Z_]+_exception; for C, exception'; + /* The Solaris 10 headers already get this right. */ + mach = '*-*-solaris2.1[0-9]*'; + not_machine = true; c_fix = wrap; c_fix_arg = "#ifdef __cplusplus\n" @@ -3406,42 +3409,6 @@ fix = { "#define SIZE_MAX 4294967295UL"; }; -/* - * Sun Solaris up to 9 has a version of sys/int_types.h that forbids use - * of Standard C99 64-bit types in 32-bit mode. - */ -fix = { - hackname = solaris_int_types; - select = "__STDC__ - 0 == 0"; - bypass = "_LONGLONG_TYPE"; - files = sys/int_types.h; - c_fix = format; - c_fix_arg = - "(defined(_STDC_C99) || !defined(_STRICT_STDC) || defined(__GNUC__))"; - test_text = - "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n" - "typedef long long int64_t;\n" - "#endif\n\n" - "#if defined(_LP64) || (__STDC__ - 0 == 0 && !defined(_NO_LONGLONG))\n" - "typedef int64_t intmax_t;\n" - "#endif"; -}; - -/* - * Before Solaris 10, doesn't mark longjump noreturn. - */ -fix = { - hackname = solaris_longjmp_noreturn; - mach = "*-*-solaris2*"; - files = "iso/setjmp_iso.h"; - bypass = "__NORETURN"; - select = "(.*longjmp\\(jmp_buf.*[^)]+\\));"; - c_fix = format; - c_fix_arg = "%1 __attribute__ ((__noreturn__));"; - - test_text = "extern void longjmp(jmp_buf, int);"; -}; - /* * Sun Solaris 10 defines several C99 math macros in terms of * builtins specific to the Studio compiler, in particular not @@ -3594,44 +3561,6 @@ fix = { "#define isunordered(x, y) ((x) __builtin_isunordered(y))"; }; -/* - * Sun Solaris defines PTHREAD_MUTEX_INITIALIZER with a trailing - * "0" for the last field of the pthread_mutex_t structure, which is - * of type upad64_t, which itself is typedef'd to int64_t, but with - * __STDC__ defined (e.g. by -ansi) it is a union. So change the - * initializer to "{0}" instead - */ -fix = { - hackname = solaris_mutex_init_2; - select = '@\(#\)pthread.h' "[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI"; - files = pthread.h; - /* - * On Solaris 10, this fix is unnecessary because upad64_t is - * always defined correctly regardless of the definition of the - * __STDC__ macro. The first "mach" pattern matches up to - * solaris9. The second "mach" pattern will not match any two (or - * more) digit solaris version, but it will match e.g. 2.5.1. - */ - mach = '*-*-solaris2.[0-9]', '*-*-solaris2.[0-9][!0-9]*'; - c_fix = format; - c_fix_arg = "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n" - "%0\n" - "#else\n" - "%1, {0}}%4\n" - "#endif"; - c_fix_arg = "(^#define[ \t]+PTHREAD_(MUTEX|COND)_INITIALIZER[ \t]+" - "(|/\*.*\*/[ \t]*\\\\\n[ \t]*)\\{.*)" - ",[ \t]*0\\}" "(|[ \t].*)$"; - test_text = - '#ident "@(#)pthread.h 1.26 98/04/12 SMI"'"\n" - "#define PTHREAD_MUTEX_INITIALIZER\t{{{0},0}, {{{0}}}, 0}\n" - "#define PTHREAD_COND_INITIALIZER\t{{{0}, 0}, 0}\t/* DEFAULTCV */\n" - "#define PTHREAD_MUTEX_INITIALIZER /* = DEFAULTMUTEX */ \\\\\n" - " {{0, 0, 0, DEFAULT_TYPE, _MUTEX_MAGIC}, {{{0}}}, 0}\n" - "#define PTHREAD_COND_INITIALIZER /* = DEFAULTCV */ \\\\\n" - " {{{0, 0, 0, 0}, DEFAULT_TYPE, _COND_MAGIC}, 0}"; -}; - /* * Sun Solaris defines PTHREAD_ONCE_INIT as an array containing a * structure. As such, it need two levels of brackets, but only @@ -3650,38 +3579,6 @@ fix = { "#define PTHREAD_ONCE_INIT\t{0, 0, 0, PTHREAD_ONCE_NOTDONE}"; }; -/* - * Sun Solaris defines PTHREAD_ONCE_INIT with a "0" for some - * fields of the pthread_once_t structure, which are of type - * upad64_t, which itself is typedef'd to int64_t, but with __STDC__ - * defined (e.g. by -ansi) it is a union. So change the initializer - * to "{0}" instead. This test relies on solaris_once_init_1. - */ -fix = { - hackname = solaris_once_init_2; - select = '@\(#\)pthread.h' "[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI"; - files = pthread.h; - /* - * On Solaris 10, this fix is unnecessary because upad64_t is - * always defined correctly regardless of the definition of the - * __STDC__ macro. The first "mach" pattern matches up to - * solaris9. The second "mach" pattern will not match any two (or - * more) digit solaris version, but it will match e.g. 2.5.1. - */ - mach = '*-*-solaris2.[0-9]', '*-*-solaris2.[0-9][!0-9]*'; - c_fix = format; - c_fix_arg = "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n" - "%0\n" - "#else\n" - "%1{0}, {0}, {0}, {%3}%4\n" - "#endif"; - c_fix_arg = "(^#define[ \t]+PTHREAD_ONCE_INIT[ \t]+\\{\\{)" - "(0, 0, 0, )(PTHREAD_[A-Z_]+)(\\}\\})[ \t]*$"; - test_text = - '#ident "@(#)pthread.h 1.26 98/04/12 SMI"'"\n" - "#define PTHREAD_ONCE_INIT\t{{0, 0, 0, PTHREAD_ONCE_NOTDONE}}\n"; -}; - /* * Solaris 10+ uses char *const argv[_RESTRICT_KYWD] in the * posix_spawn declarations, which doesn't work with C++. @@ -3779,33 +3676,6 @@ fix = { test_text = "#if\tdefined(__cplusplus) && (__cplusplus < 54321L)"; }; -/* - * 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.9'; - select = "#if.*__STDC__.*\n" - "typedef void \\*__va_list;\n" - "#else\n" - "typedef char \\*__va_list;\n" - "#endif"; - - c_fix = format; - c_fix_arg = "#ifdef __GNUC__\n" - "typedef __builtin_va_list __va_list;\n" - "#else\n" - "%0\n" - "#endif"; - test_text = "#if defined(__STDC__) && !defined(__ia64)\n" - "typedef void *__va_list;\n" - "#else\n" - "typedef char *__va_list;\n" - "#endif"; -}; - /* * a missing semi-colon at the end of the statsswtch structure definition. */ diff --git a/fixincludes/tests/base/iso/setjmp_iso.h b/fixincludes/tests/base/iso/setjmp_iso.h deleted file mode 100644 index 4cf872007cf..00000000000 --- a/fixincludes/tests/base/iso/setjmp_iso.h +++ /dev/null @@ -1,14 +0,0 @@ -/* DO NOT EDIT THIS FILE. - - It has been auto-edited by fixincludes from: - - "fixinc/tests/inc/iso/setjmp_iso.h" - - This had to be done to correct non-standard usages in the - original, manufacturer supplied header file. */ - - - -#if defined( SOLARIS_LONGJMP_NORETURN_CHECK ) -extern void longjmp(jmp_buf, int) __attribute__ ((__noreturn__)); -#endif /* SOLARIS_LONGJMP_NORETURN_CHECK */ diff --git a/fixincludes/tests/base/pthread.h b/fixincludes/tests/base/pthread.h index c39cd9472dd..5df290965a4 100644 --- a/fixincludes/tests/base/pthread.h +++ b/fixincludes/tests/base/pthread.h @@ -96,56 +96,12 @@ extern int __sigsetjmp (struct __jmp_buf_tag *__env, int __savemask); #endif /* PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_CHECK */ -#if defined( SOLARIS_MUTEX_INIT_2_CHECK ) -#ident "@(#)pthread.h 1.26 98/04/12 SMI" -#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG) -#define PTHREAD_MUTEX_INITIALIZER {{{0},0}, {{{0}}}, 0} -#else -#define PTHREAD_MUTEX_INITIALIZER {{{0},0}, {{{0}}}, {0}} -#endif -#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG) -#define PTHREAD_COND_INITIALIZER {{{0}, 0}, 0} /* DEFAULTCV */ -#else -#define PTHREAD_COND_INITIALIZER {{{0}, 0}, {0}} /* DEFAULTCV */ -#endif -#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG) -#define PTHREAD_MUTEX_INITIALIZER /* = DEFAULTMUTEX */ \ - {{0, 0, 0, DEFAULT_TYPE, _MUTEX_MAGIC}, {{{0}}}, 0} -#else -#define PTHREAD_MUTEX_INITIALIZER /* = DEFAULTMUTEX */ \ - {{0, 0, 0, DEFAULT_TYPE, _MUTEX_MAGIC}, {{{0}}}, {0}} -#endif -#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG) -#define PTHREAD_COND_INITIALIZER /* = DEFAULTCV */ \ - {{{0, 0, 0, 0}, DEFAULT_TYPE, _COND_MAGIC}, 0} -#else -#define PTHREAD_COND_INITIALIZER /* = DEFAULTCV */ \ - {{{0, 0, 0, 0}, DEFAULT_TYPE, _COND_MAGIC}, {0}} -#endif -#endif /* SOLARIS_MUTEX_INIT_2_CHECK */ - - #if defined( SOLARIS_ONCE_INIT_1_CHECK ) #pragma ident "@(#)pthread.h 1.37 04/09/28 SMI" -#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG) #define PTHREAD_ONCE_INIT {{0, 0, 0, PTHREAD_ONCE_NOTDONE}} -#else -#define PTHREAD_ONCE_INIT {{{0}, {0}, {0}, {PTHREAD_ONCE_NOTDONE}}} -#endif #endif /* SOLARIS_ONCE_INIT_1_CHECK */ -#if defined( SOLARIS_ONCE_INIT_2_CHECK ) -#ident "@(#)pthread.h 1.26 98/04/12 SMI" -#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG) -#define PTHREAD_ONCE_INIT {{0, 0, 0, PTHREAD_ONCE_NOTDONE}} -#else -#define PTHREAD_ONCE_INIT {{{0}, {0}, {0}, {PTHREAD_ONCE_NOTDONE}}} -#endif - -#endif /* SOLARIS_ONCE_INIT_2_CHECK */ - - #if defined( SOLARIS_RWLOCK_INIT_1_CHECK ) #ident "@(#)pthread.h 1.26 98/04/12 SMI" #if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG) diff --git a/fixincludes/tests/base/sys/int_types.h b/fixincludes/tests/base/sys/int_types.h deleted file mode 100644 index 39bb68acd78..00000000000 --- a/fixincludes/tests/base/sys/int_types.h +++ /dev/null @@ -1,20 +0,0 @@ -/* DO NOT EDIT THIS FILE. - - It has been auto-edited by fixincludes from: - - "fixinc/tests/inc/sys/int_types.h" - - This had to be done to correct non-standard usages in the - original, manufacturer supplied header file. */ - - - -#if defined( SOLARIS_INT_TYPES_CHECK ) -#if (defined(_STDC_C99) || !defined(_STRICT_STDC) || defined(__GNUC__)) && !defined(_NO_LONGLONG) -typedef long long int64_t; -#endif - -#if defined(_LP64) || ((defined(_STDC_C99) || !defined(_STRICT_STDC) || defined(__GNUC__)) && !defined(_NO_LONGLONG)) -typedef int64_t intmax_t; -#endif -#endif /* SOLARIS_INT_TYPES_CHECK */ diff --git a/fixincludes/tests/base/sys/va_list.h b/fixincludes/tests/base/sys/va_list.h deleted file mode 100644 index 8c69e2d574b..00000000000 --- a/fixincludes/tests/base/sys/va_list.h +++ /dev/null @@ -1,22 +0,0 @@ -/* DO NOT EDIT THIS FILE. - - It has been auto-edited by fixincludes from: - - "fixinc/tests/inc/sys/va_list.h" - - This had to be done to correct non-standard usages in the - original, manufacturer supplied header file. */ - - - -#if defined( SOLARIS_SYS_VA_LIST_CHECK ) -#ifdef __GNUC__ -typedef __builtin_va_list __va_list; -#else -#if defined(__STDC__) && !defined(__ia64) -typedef void *__va_list; -#else -typedef char *__va_list; -#endif -#endif -#endif /* SOLARIS_SYS_VA_LIST_CHECK */ diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 931f8a1eccb..a0220156d8e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,26 @@ +2014-04-22 Rainer Orth + + * config.gcc (enable_obsolete): Remove *-*-solaris2.9*. + (*-*-solaris2.[0-9] | *-*-solaris2.[0-9].*): Mark unsupported. + (*-*-solaris2*): Simplify. + (i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*): Likewise. + (i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*): Remove + *-*-solaris2.9* handling. + + * configure.ac (gcc_cv_as_hidden): Remove test for Solaris 9/x86 + as bug. + (gcc_cv_ld_hidden): Remove *-*-solaris2.9* handling. + (ld_tls_support): Remove i?86-*-solaris2.9, sparc*-*-solaris2.9 + handling, simplify. + (gcc_cv_as_gstabs_flag): Remove workaround for Solaris 9/x86 as bug. + * configure: Regenerate. + + * config/i386/sol2-9.h: Remove. + + * doc/install.texi (Specific, i?86-*-solaris2.9): Remove. + (Specific, *-*-solaris2*): Mention Solaris 9 support removal. + Remove Solaris 9 references. + 2014-04-22 Vidya Praveen * aarch64.md (float2): Remove. diff --git a/gcc/config.gcc b/gcc/config.gcc index 3c55c88af4d..926b1b0758c 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -246,7 +246,6 @@ md_file= case ${target} in picochip-* \ | score-* \ - | *-*-solaris2.9* \ ) if test "x$enable_obsolete" != xyes; then echo "*** Configuration ${target} is obsolete." >&2 @@ -287,8 +286,8 @@ case ${target} in | *-*-rtemsaout* \ | *-*-rtemscoff* \ | *-*-solaris2 \ - | *-*-solaris2.[0-8] \ - | *-*-solaris2.[0-8].* \ + | *-*-solaris2.[0-9] \ + | *-*-solaris2.[0-9].* \ | *-*-sysv* \ | vax-*-vms* \ ) @@ -810,15 +809,8 @@ case ${target} in # i?86-*-solaris2* needs to insert headers between cpu default and # Solaris 2 specific ones. sol2_tm_file="dbxelf.h elfos.h ${cpu_type}/sysv4.h sol2.h ${cpu_type}/sol2.h" - case ${target} in - *-*-solaris2.1[0-9]*) - sol2_tm_file="${sol2_tm_file} sol2-10.h" - use_gcc_stdint=wrap - ;; - *) - use_gcc_stdint=provide - ;; - esac + sol2_tm_file="${sol2_tm_file} sol2-10.h" + use_gcc_stdint=wrap if test x$gnu_ld = xyes; then tm_file="usegld.h ${tm_file}" fi @@ -1526,42 +1518,27 @@ i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*) tm_file="${tm_file} i386/unix.h i386/att.h ${sol2_tm_file}" # 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.9*) - # Solaris 9/x86 cannot execute SSE/SSE2 instructions by default. - with_arch_32=${with_arch_32:-pentiumpro} - ;; - *) - with_arch_32=${with_arch_32:-pentium4} - ;; - esac + with_arch_32=${with_arch_32:-pentium4} with_tune_32=${with_tune_32:-generic} - case ${target} in - *-*-solaris2.9*) - tm_file="${tm_file} i386/sol2-9.h" - ;; - *-*-solaris2.1[0-9]*) - tm_file="${tm_file} i386/x86-64.h i386/sol2-bi.h sol2-bi.h" - tm_defines="${tm_defines} TARGET_BI_ARCH=1" - tmake_file="$tmake_file i386/t-sol2-64" - need_64bit_isa=yes - if test x$with_cpu = x; then - if test x$with_cpu_64 = x; then - with_cpu_64=generic - fi - else - case " $x86_cpus $x86_archs $x86_64_archs " in - *" $with_cpu "*) - ;; - *) - echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2 - echo "$x86_cpus $x86_archs $x86_64_archs" 1>&2 - exit 1 - ;; - esac + tm_file="${tm_file} i386/x86-64.h i386/sol2-bi.h sol2-bi.h" + tm_defines="${tm_defines} TARGET_BI_ARCH=1" + tmake_file="$tmake_file i386/t-sol2-64" + need_64bit_isa=yes + if test x$with_cpu = x; then + if test x$with_cpu_64 = x; then + with_cpu_64=generic fi - ;; - esac + else + case " $x86_cpus $x86_archs $x86_64_archs " in + *" $with_cpu "*) + ;; + *) + echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2 + echo "$x86_cpus $x86_archs $x86_64_archs" 1>&2 + exit 1 + ;; + esac + fi ;; i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae) tm_file="${tm_file} i386/unix.h i386/att.h elfos.h vx-common.h" diff --git a/gcc/config/i386/sol2-9.h b/gcc/config/i386/sol2-9.h deleted file mode 100644 index 9ae88aae5dc..00000000000 --- a/gcc/config/i386/sol2-9.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Target definitions for GCC for Intel 80386 running Solaris 9 - Copyright (C) 2014 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 3, 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 COPYING3. If not see -. */ - -/* Solaris 9 only guarantees 4-byte stack alignment as required by the i386 - psABI, so realign it as necessary for SSE instructions. */ -#undef STACK_REALIGN_DEFAULT -#define STACK_REALIGN_DEFAULT 1 diff --git a/gcc/configure b/gcc/configure index bfb1525db69..fe6f31e77f9 100755 --- a/gcc/configure +++ b/gcc/configure @@ -22191,35 +22191,7 @@ foobar:' > conftest.s $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; } then - -# Solaris 9/x86 as incorrectly emits an alias for a hidden symbol with -# STV_HIDDEN, so disable .hidden support if so. -case "${target}" in - i?86-*-solaris2* | x86_64-*-solaris2.1[0-9]*) - if test x$gcc_cv_as != x && test x$gcc_cv_objdump != x; then - cat > conftest.s <