diff options
author | Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> | 2014-04-22 12:30:59 +0000 |
---|---|---|
committer | Rainer Orth <ro@gcc.gnu.org> | 2014-04-22 12:30:59 +0000 |
commit | d9f069ab4f645085b7d439e166b7501b9fb6ce8a (patch) | |
tree | dc262938d0bcc70f7ed2959c307bd2e93a046b3b /gcc | |
parent | 0d35c5c2708d881e731a276b93caecc068f5678d (diff) | |
download | gcc-d9f069ab4f645085b7d439e166b7501b9fb6ce8a.zip gcc-d9f069ab4f645085b7d439e166b7501b9fb6ce8a.tar.gz gcc-d9f069ab4f645085b7d439e166b7501b9fb6ce8a.tar.bz2 |
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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 23 | ||||
-rw-r--r-- | gcc/config.gcc | 69 | ||||
-rw-r--r-- | gcc/config/i386/sol2-9.h | 23 | ||||
-rwxr-xr-x | gcc/configure | 74 | ||||
-rw-r--r-- | gcc/configure.ac | 68 | ||||
-rw-r--r-- | gcc/doc/install.texi | 49 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 29 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr28865.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/c99-stdint-6.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20090210_0.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/torture/pr47917.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/vect/tree-vect.h | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/pr22076.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/pr22152.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/sse-os-support.h | 51 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/vect8-ret.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/erf_3.F90 | 2 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/fmt_en.f90 | 2 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/round_4.f90 | 2 | ||||
-rw-r--r-- | gcc/testsuite/lib/target-supports.exp | 2 |
20 files changed, 95 insertions, 315 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 931f8a1..a0220156 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,26 @@ +2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * 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 <vidyapraveen@arm.com> * aarch64.md (float<GPI:mode><GPF:mode>2): Remove. diff --git a/gcc/config.gcc b/gcc/config.gcc index 3c55c88..926b1b0 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 9ae88aa..0000000 --- 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 -<http://www.gnu.org/licenses/>. */ - -/* 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 bfb1525..fe6f31e 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 <<EOF -.globl hidden - .hidden hidden -hidden: -.globl default - .set default,hidden -EOF - if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1 \ - && $gcc_cv_objdump -t conftest.o 2>/dev/null | \ - grep '\.hidden default' > /dev/null; then - gcc_cv_as_hidden=no - else - gcc_cv_as_hidden=yes - fi - else - # Assume bug is present if objdump is missing. - gcc_cv_as_hidden=no - fi - ;; - *) - gcc_cv_as_hidden=yes - ;; -esac + gcc_cv_as_hidden=yes else echo "configure: failed program was" >&5 cat conftest.s >&5 @@ -22352,7 +22324,7 @@ else hppa64*-*-hpux* | ia64*-*-hpux*) gcc_cv_ld_hidden=yes ;; - *-*-solaris2.9* | *-*-solaris2.1[0-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. gcc_cv_ld_hidden=yes @@ -23739,34 +23711,7 @@ case "$target" in # 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; } - ld_tls_support=no - # Check ld and ld.so.1 TLS support. - if echo "$ld_ver" | grep GNU > /dev/null; then - # Assume all interesting versions of GNU ld have TLS support. - # FIXME: still need ld.so.1 support, i.e. ld version checks below. - ld_tls_support=yes - else - case "$target" in - # Solaris 9/x86 ld has GNU style TLS support since version 1.374. - i?86-*-solaris2.9) - min_tls_ld_vers_minor=374 - ;; - # Solaris 9/SPARC and Solaris 10+ ld have TLS support since FCS. - sparc*-*-solaris2.9 | *-*-solaris2.1[0-9]*) - min_tls_ld_vers_minor=343 - ;; - esac - if test "$ld_vers_major" -gt 1 || \ - test "$ld_vers_minor" -ge "$min_tls_ld_vers_minor"; then - ld_tls_support=yes - else - set_have_as_tls=no - fi - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_tls_support" >&5 -$as_echo "$ld_tls_support" >&6; } + ld_tls_support=yes save_LIBS="$LIBS" save_LDFLAGS="$LDFLAGS" @@ -26568,18 +26513,7 @@ fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; } then - # The native Solaris 9/Intel assembler doesn't understand --gstabs - # and warns about it, but still exits successfully. So check for - # this. - if { ac_try='$gcc_cv_as --gstabs -o conftest.o conftest.s 2>&1 | grep -i warning > /dev/null' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } - then : - else gcc_cv_as_gstabs_flag=yes - fi + gcc_cv_as_gstabs_flag=yes else echo "configure: failed program was" >&5 cat conftest.s >&5 diff --git a/gcc/configure.ac b/gcc/configure.ac index d7cae6c..d789557 100644 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -2316,35 +2316,7 @@ gcc_GAS_CHECK_FEATURE([.nsubspa comdat], gcc_cv_as_nsubspa_comdat, gcc_GAS_CHECK_FEATURE([.hidden], gcc_cv_as_hidden, [elf,2,13,0],, [ .hidden foobar -foobar:],[ -# 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 <<EOF -.globl hidden - .hidden hidden -hidden: -.globl default - .set default,hidden -EOF - if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1 \ - && $gcc_cv_objdump -t conftest.o 2>/dev/null | \ - grep '\.hidden default' > /dev/null; then - gcc_cv_as_hidden=no - else - gcc_cv_as_hidden=yes - fi - else - # Assume bug is present if objdump is missing. - gcc_cv_as_hidden=no - fi - ;; - *) - gcc_cv_as_hidden=yes - ;; -esac]) +foobar:]) case "${target}" in *-*-darwin*) # Darwin as has some visibility support, though with a different syntax. @@ -2460,7 +2432,7 @@ else hppa64*-*-hpux* | ia64*-*-hpux*) gcc_cv_ld_hidden=yes ;; - *-*-solaris2.9* | *-*-solaris2.1[0-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. gcc_cv_ld_hidden=yes @@ -3341,32 +3313,7 @@ case "$target" in # 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 - # Check ld and ld.so.1 TLS support. - if echo "$ld_ver" | grep GNU > /dev/null; then - # Assume all interesting versions of GNU ld have TLS support. - # FIXME: still need ld.so.1 support, i.e. ld version checks below. - ld_tls_support=yes - else - case "$target" in - # Solaris 9/x86 ld has GNU style TLS support since version 1.374. - i?86-*-solaris2.9) - min_tls_ld_vers_minor=374 - ;; - # Solaris 9/SPARC and Solaris 10+ ld have TLS support since FCS. - sparc*-*-solaris2.9 | *-*-solaris2.1[[0-9]]*) - min_tls_ld_vers_minor=343 - ;; - esac - if test "$ld_vers_major" -gt 1 || \ - test "$ld_vers_minor" -ge "$min_tls_ld_vers_minor"; then - ld_tls_support=yes - else - set_have_as_tls=no - fi - fi - AC_MSG_RESULT($ld_tls_support) + ld_tls_support=yes save_LIBS="$LIBS" save_LDFLAGS="$LDFLAGS" @@ -4433,14 +4380,7 @@ if test x"$insn" != x; then gcc_GAS_CHECK_FEATURE([--gstabs option], gcc_cv_as_gstabs_flag, - [elf,2,11,0], [--gstabs], [$insn], - [# The native Solaris 9/Intel assembler doesn't understand --gstabs - # and warns about it, but still exits successfully. So check for - # this. - if AC_TRY_COMMAND([$gcc_cv_as --gstabs -o conftest.o conftest.s 2>&1 | grep -i warning > /dev/null]) - then : - else gcc_cv_as_gstabs_flag=yes - fi], + [elf,2,11,0], [--gstabs], [$insn],, [AC_DEFINE(HAVE_AS_GSTABS_DEBUG_FLAG, 1, [Define if your assembler supports the --gstabs option.])]) diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi index c32f1f9..0b2b365 100644 --- a/gcc/doc/install.texi +++ b/gcc/doc/install.texi @@ -3110,8 +3110,6 @@ information have to. @item @uref{#ix86-x-linux,,i?86-*-linux*} @item -@uref{#ix86-x-solaris289,,i?86-*-solaris2.9} -@item @uref{#ix86-x-solaris210,,i?86-*-solaris2.10} @item @uref{#ia64-x-linux,,ia64-*-linux} @@ -3676,27 +3674,6 @@ found on @uref{http://www.bitwizard.nl/sig11/,,www.bitwizard.nl}. @html <hr /> @end html -@anchor{ix86-x-solaris29} -@heading 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 -version, but the current version, from GNU binutils 2.22, is known to -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. 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. - -@html -<hr /> -@end html @anchor{ix86-x-solaris210} @heading i?86-*-solaris2.10 Use this for Solaris 10 or later on x86 and x86-64 systems. Starting @@ -4250,10 +4227,9 @@ supported as cross-compilation target only. @c alone is too unspecific and must be avoided. @anchor{x-x-solaris2} @heading *-*-solaris2* -Support for Solaris 9 has been obsoleted in GCC 4.9, but can still be -enabled by configuring with @option{--enable-obsolete}. Support will be -removed in GCC 4.10. Support for Solaris 8 has removed in GCC 4.8. -Support for Solaris 7 has been removed in GCC 4.6. +Support for Solaris 9 has been removed in GCC 4.10. Support for Solaris +8 has been 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 @@ -4333,25 +4309,6 @@ 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 9 (117171-11 or newer for -SPARC, 117172-11 or newer for Intel) that address this problem. - -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{}9, the necessary support -on SPARC is present since FCS, while 114432-05 or newer is required on -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{}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 -work, it is recommended to use the latest patch versions which include -additional bug fixes. - @html <hr /> @end html diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6d5dd4f..a721c7b 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,32 @@ +2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * 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. + 2014-04-22 Vidya Praveen <vidyapraveen@arm.com> * gcc.target/aarch64/vect_cvtf_1.c: New. diff --git a/gcc/testsuite/gcc.c-torture/compile/pr28865.c b/gcc/testsuite/gcc.c-torture/compile/pr28865.c index 4ad0f5c..aa6ae07 100644 --- a/gcc/testsuite/gcc.c-torture/compile/pr28865.c +++ b/gcc/testsuite/gcc.c-torture/compile/pr28865.c @@ -1,5 +1,3 @@ -/* { dg-xfail-if "PR target/60602" { sparc*-*-solaris2.9* && { ! gas } } { "-O0" } } */ - struct var_len { int field1; diff --git a/gcc/testsuite/gcc.dg/c99-stdint-6.c b/gcc/testsuite/gcc.dg/c99-stdint-6.c index b5727ee..150666c 100644 --- a/gcc/testsuite/gcc.dg/c99-stdint-6.c +++ b/gcc/testsuite/gcc.dg/c99-stdint-6.c @@ -2,7 +2,6 @@ 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.9* } } */ #include <inttypes.h> #ifndef SIGNAL_SUPPRESS diff --git a/gcc/testsuite/gcc.dg/lto/20090210_0.c b/gcc/testsuite/gcc.dg/lto/20090210_0.c index ce9dfac..78e7d03 100644 --- a/gcc/testsuite/gcc.dg/lto/20090210_0.c +++ b/gcc/testsuite/gcc.dg/lto/20090210_0.c @@ -2,7 +2,6 @@ /* { dg-require-effective-target fpic } */ /* { dg-suppress-ld-options {-fPIC} } */ /* { dg-require-effective-target tls_runtime } */ -/* { dg-extra-ld-options "-pthread" { target *-*-solaris2.9 } } */ int foo (int x) { return x; diff --git a/gcc/testsuite/gcc.dg/torture/pr47917.c b/gcc/testsuite/gcc.dg/torture/pr47917.c index f89d449..0b45e06 100644 --- a/gcc/testsuite/gcc.dg/torture/pr47917.c +++ b/gcc/testsuite/gcc.dg/torture/pr47917.c @@ -1,6 +1,5 @@ /* { dg-do run } */ /* { dg-options "-std=c99" } */ -/* { 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-run-if "no C99 snprintf function" { *-*-hpux10* } } */ diff --git a/gcc/testsuite/gcc.dg/vect/tree-vect.h b/gcc/testsuite/gcc.dg/vect/tree-vect.h index ed59d79..2f21c2b 100644 --- a/gcc/testsuite/gcc.dg/vect/tree-vect.h +++ b/gcc/testsuite/gcc.dg/vect/tree-vect.h @@ -41,11 +41,6 @@ check_vect (void) want_level = 1, want_c = bit_SSSE3, want_d = 0; # else want_level = 1, want_c = 0, want_d = bit_SSE2; -# if defined(__sun__) && defined(__svr4__) - /* Before Solaris 9 4/04, trying to execute an SSE2 instruction gives - SIGILL even if the CPU can handle them. */ - asm volatile ("unpcklpd %xmm0,%xmm2"); -# endif # endif if (!__get_cpuid (want_level, &a, &b, &c, &d) diff --git a/gcc/testsuite/gcc.target/i386/pr22076.c b/gcc/testsuite/gcc.target/i386/pr22076.c index 38b40a2..e9916c9 100644 --- a/gcc/testsuite/gcc.target/i386/pr22076.c +++ b/gcc/testsuite/gcc.target/i386/pr22076.c @@ -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.9 *-*-vxworks* } } */ +/* { dg-options "-O2 -fomit-frame-pointer -flax-vector-conversions -mmmx -mno-vect8-ret-in-mem" { target *-*-vxworks* } } */ #include <mmintrin.h> diff --git a/gcc/testsuite/gcc.target/i386/pr22152.c b/gcc/testsuite/gcc.target/i386/pr22152.c index b20a22a..5e2d4ac 100644 --- a/gcc/testsuite/gcc.target/i386/pr22152.c +++ b/gcc/testsuite/gcc.target/i386/pr22152.c @@ -1,6 +1,6 @@ /* { dg-do compile } */ /* { dg-options "-O2 -msse2 -mtune=core2" } */ -/* { dg-additional-options "-mno-vect8-ret-in-mem" { target i?86-*-solaris2.9 *-*-vxworks* } } */ +/* { dg-additional-options "-mno-vect8-ret-in-mem" { target *-*-vxworks* } } */ /* { dg-additional-options "-mabi=sysv" { target x86_64-*-mingw* } } */ #include <mmintrin.h> diff --git a/gcc/testsuite/gcc.target/i386/sse-os-support.h b/gcc/testsuite/gcc.target/i386/sse-os-support.h index a2b4e2d..4830b7e 100644 --- a/gcc/testsuite/gcc.target/i386/sse-os-support.h +++ b/gcc/testsuite/gcc.target/i386/sse-os-support.h @@ -1,55 +1,8 @@ -#if defined(__sun__) && defined(__svr4__) -/* Make sure sigaction() is declared even with -std=c99. */ -#define __EXTENSIONS__ -#include <signal.h> -#include <ucontext.h> - -static volatile sig_atomic_t sigill_caught; - -static void -sigill_hdlr (int sig __attribute((unused)), - siginfo_t *sip __attribute__((unused)), - ucontext_t *ucp) -{ - sigill_caught = 1; - /* Set PC to the instruction after the faulting one to skip over it, - otherwise we enter an infinite loop. */ - ucp->uc_mcontext.gregs[EIP] += 4; - setcontext (ucp); -} -#endif - -/* Check if the OS supports executing SSE instructions. This function is - only used in sse-check.h, sse2-check.h, and sse3-check.h so far since - Solaris 8 and 9 won't run on newer CPUs anyway. */ +/* Check if the OS supports executing SSE instructions. */ static int sse_os_support (void) { -#if defined(__sun__) && defined(__svr4__) - /* Solaris 2 before Solaris 9 4/04 cannot execute SSE instructions - even if the CPU supports them. Programs receive SIGILL instead, so - check for that at runtime. */ - - struct sigaction act, oact; - - act.sa_handler = sigill_hdlr; - sigemptyset (&act.sa_mask); - /* Need to set SA_SIGINFO so a ucontext_t * is passed to the handler. */ - act.sa_flags = SA_SIGINFO; - sigaction (SIGILL, &act, &oact); - - /* We need a single SSE instruction here so the handler can safely skip - over it. */ - __asm__ volatile ("movss %xmm2,%xmm1"); - - sigaction (SIGILL, &oact, NULL); - - if (sigill_caught) - exit (0); - else - return 1; -#else + /* All currently supported OSes do. */ return 1; -#endif /* __sun__ && __svr4__ */ } diff --git a/gcc/testsuite/gcc.target/i386/vect8-ret.c b/gcc/testsuite/gcc.target/i386/vect8-ret.c index 513369d..09283d7 100644 --- a/gcc/testsuite/gcc.target/i386/vect8-ret.c +++ b/gcc/testsuite/gcc.target/i386/vect8-ret.c @@ -1,5 +1,5 @@ /* { dg-do compile { target ia32 } } */ -/* { dg-options "-mmmx" { target i?86-*-solaris2.9 *-*-vxworks* } } */ +/* { dg-options "-mmmx" { target *-*-vxworks* } } */ /* { dg-options "-mmmx -mvect8-ret-in-mem" } */ #include <mmintrin.h> diff --git a/gcc/testsuite/gfortran.dg/erf_3.F90 b/gcc/testsuite/gfortran.dg/erf_3.F90 index 32c1ba6..df82e12 100644 --- a/gcc/testsuite/gfortran.dg/erf_3.F90 +++ b/gcc/testsuite/gfortran.dg/erf_3.F90 @@ -1,7 +1,7 @@ ! { dg-do run { xfail spu-*-* ia64-*-linux* } } ! { dg-options "-fno-range-check -ffree-line-length-none -O0" } ! { dg-add-options ieee } -! { dg-skip-if "PR libfortran/59313" { sparc*-*-solaris2.9* hppa*-*-hpux* } } +! { dg-skip-if "PR libfortran/59313" { hppa*-*-hpux* } } ! ! Check that simplification functions and runtime library agree on ERF, ! ERFC and ERFC_SCALED, for quadruple-precision. diff --git a/gcc/testsuite/gfortran.dg/fmt_en.f90 b/gcc/testsuite/gfortran.dg/fmt_en.f90 index 4c5b721..89a6d95 100644 --- a/gcc/testsuite/gfortran.dg/fmt_en.f90 +++ b/gcc/testsuite/gfortran.dg/fmt_en.f90 @@ -182,5 +182,5 @@ contains end subroutine end program -! { dg-final { scan-file fmt_en.res "All kinds rounded to nearest" { xfail { i?86-*-solaris2.9* hppa*-*-hpux* } } } } +! { dg-final { scan-file fmt_en.res "All kinds rounded to nearest" { xfail hppa*-*-hpux* } } } ! { dg-final { cleanup-saved-temps } } diff --git a/gcc/testsuite/gfortran.dg/round_4.f90 b/gcc/testsuite/gfortran.dg/round_4.f90 index 975cb20..ffeb950 100644 --- a/gcc/testsuite/gfortran.dg/round_4.f90 +++ b/gcc/testsuite/gfortran.dg/round_4.f90 @@ -1,6 +1,6 @@ ! { dg-do run } ! { dg-add-options ieee } -! { dg-skip-if "PR libfortran/58015" { *-*-solaris2.9* hppa*-*-hpux* } } +! { dg-skip-if "PR libfortran/58015" { hppa*-*-hpux* } } ! ! PR fortran/35862 ! diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 57b10d0a..541a428 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -593,7 +593,7 @@ proc add_options_for_tls { flags } { # libthread, so always pass -pthread for native TLS. Same for AIX. # Need to duplicate native TLS check from # check_effective_target_tls_native to avoid recursion. - if { ([istarget *-*-solaris2.9*] || [istarget powerpc-ibm-aix*]) && + if { ([istarget powerpc-ibm-aix*]) && [check_no_messages_and_pattern tls_native "!emutls" assembly { __thread int i; int f (void) { return i; } |