From f021f1d3a65d46eb0d2d206d52343de79c124d57 Mon Sep 17 00:00:00 2001 From: Rainer Orth Date: Tue, 14 Nov 2017 18:31:01 +0000 Subject: [PATCH] Adapt Solaris 12 references libgcc: * config.host (*-*-solaris2*): Adapt comment for Solaris 12 renaming. * config/sol2/crtpg.c (__start_crt_compiler): Likewise. * configure.ac (libgcc_cv_solaris_crts): Likewise. * configure: Regenerate. gcc: * config.gcc (*-*-solaris2*): Enable default_use_cxa_atexit since Solaris 11. Update comment. * configure.ac (gcc_cv_ld_pid): Adapt comment for Solaris 12 renaming. * config/sol2.h (STARTFILE_SPEC): Likewise. * configure: Regenerate. gcc/testsuite: * lib/target-supports.exp (check_effective_target_pie): Adapt comment for Solaris 12 renaming. * gcc.dg/torture/pr60092.c: Remove *-*-solaris2.11* dg-xfail-run-if. From-SVN: r254737 --- gcc/ChangeLog | 9 +++++++++ gcc/config.gcc | 4 ++-- gcc/config/sol2.h | 4 ++-- gcc/configure | 2 +- gcc/configure.ac | 2 +- gcc/testsuite/ChangeLog | 7 +++++++ gcc/testsuite/gcc.dg/torture/pr60092.c | 1 - gcc/testsuite/lib/target-supports.exp | 4 ++-- libgcc/ChangeLog | 8 ++++++++ libgcc/config.host | 2 +- libgcc/config/sol2/crtpg.c | 9 ++++----- libgcc/configure | 2 +- libgcc/configure.ac | 2 +- libgo/configure | 4 ++-- 14 files changed, 41 insertions(+), 19 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b80a4211c75..3cee433799c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2017-11-14 Rainer Orth + + * config.gcc (*-*-solaris2*): Enable default_use_cxa_atexit since + Solaris 11. Update comment. + * configure.ac (gcc_cv_ld_pid): Adapt comment for Solaris 12 + renaming. + * config/sol2.h (STARTFILE_SPEC): Likewise. + * configure: Regenerate. + 2017-11-14 Carl Love * config/rs6000/rs6000.c (swap_endian_selector_for_mode): Remove diff --git a/gcc/config.gcc b/gcc/config.gcc index 3dace854c95..8ee8e8c7c8b 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -860,8 +860,8 @@ case ${target} in sol2_tm_file_tail="${cpu_type}/sol2.h sol2.h" sol2_tm_file="${sol2_tm_file_head} ${sol2_tm_file_tail}" case ${target} in - *-*-solaris2.1[2-9]*) - # __cxa_atexit was introduced in Solaris 12. + *-*-solaris2.1[1-9]*) + # __cxa_atexit was introduced in Solaris 11.4. default_use_cxa_atexit=yes ;; esac diff --git a/gcc/config/sol2.h b/gcc/config/sol2.h index f6c2fefbbc1..8174cebd104 100644 --- a/gcc/config/sol2.h +++ b/gcc/config/sol2.h @@ -205,8 +205,8 @@ along with GCC; see the file COPYING3. If not see /* We don't use the standard svr4 STARTFILE_SPEC because it's wrong for us. */ #undef STARTFILE_SPEC #ifdef HAVE_SOLARIS_CRTS -/* Since Solaris 11.x and Solaris 12, the OS delivers crt1.o, crti.o, and - crtn.o, with a hook for compiler-dependent stuff like profile handling. */ +/* Since Solaris 11.4, the OS delivers crt1.o, crti.o, and crtn.o, with a hook + for compiler-dependent stuff like profile handling. */ #define STARTFILE_SPEC "%{!shared:%{!symbolic: \ crt1.o%s \ %{p:%e-p is not supported; \ diff --git a/gcc/configure b/gcc/configure index fb40ead9204..30fb208b9b0 100755 --- a/gcc/configure +++ b/gcc/configure @@ -28246,7 +28246,7 @@ elif test x$gcc_cv_ld != x; then else case "$target" in *-*-solaris2.1[1-9]*) - # Solaris 11.x and Solaris 12 added PIE support. + # Solaris 11.3 added PIE support. if $gcc_cv_ld -z help 2>&1 | grep -- type.*pie > /dev/null; then gcc_cv_ld_pie=yes fi diff --git a/gcc/configure.ac b/gcc/configure.ac index 0e5167695a2..d3a31c2c15a 100644 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -5106,7 +5106,7 @@ elif test x$gcc_cv_ld != x; then else case "$target" in *-*-solaris2.1[[1-9]]*) - # Solaris 11.x and Solaris 12 added PIE support. + # Solaris 11.3 added PIE support. if $gcc_cv_ld -z help 2>&1 | grep -- type.*pie > /dev/null; then gcc_cv_ld_pie=yes fi diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 40f788061c0..16836fa4f0e 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2017-11-14 Rainer Orth + + * lib/target-supports.exp (check_effective_target_pie): Adapt + comment for Solaris 12 renaming. + + * gcc.dg/torture/pr60092.c: Remove *-*-solaris2.11* dg-xfail-run-if. + 2017-11-14 Carl Love * builtins-revb-runnable.c (dg-do run): Add lp64 directive. Fix diff --git a/gcc/testsuite/gcc.dg/torture/pr60092.c b/gcc/testsuite/gcc.dg/torture/pr60092.c index c23516c73b4..74e7c174a83 100644 --- a/gcc/testsuite/gcc.dg/torture/pr60092.c +++ b/gcc/testsuite/gcc.dg/torture/pr60092.c @@ -4,7 +4,6 @@ /* { dg-skip-if "No undefined weak" { nvptx-*-* } } */ /* { dg-additional-options "-Wl,-undefined,dynamic_lookup" { target *-*-darwin* } } */ /* { dg-additional-options "-Wl,-flat_namespace" { target *-*-darwin[89]* } } */ -/* { dg-xfail-run-if "posix_memalign modifies first arg on error" { *-*-solaris2.11* } { "-O0" } } */ typedef __SIZE_TYPE__ size_t; extern int posix_memalign(void **memptr, size_t alignment, size_t size) __attribute__((weak)); diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 964bce94006..881f849a388 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -1175,8 +1175,8 @@ proc check_effective_target_pie { } { return 1; } if { [istarget *-*-solaris2.1\[1-9\]*] } { - # Full PIE support was added in Solaris 11.x and Solaris 12, but gcc - # errors out if missing, so check for that. + # Full PIE support was added in Solaris 11.3, but gcc errors out + # if missing, so check for that. return [check_no_compiler_messages pie executable { int main (void) { return 0; } } "-pie -fpie"] diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 315934edc1f..a069cd79511 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,11 @@ +2017-11-14 Rainer Orth + + * config.host (*-*-solaris2*): Adapt comment for Solaris 12 + renaming. + * config/sol2/crtpg.c (__start_crt_compiler): Likewise. + * configure.ac (libgcc_cv_solaris_crts): Likewise. + * configure: Regenerate. + 2017-11-07 Tom de Vries * config/rs6000/aix-unwind.h (REGISTER_CFA_OFFSET_FOR): Remove semicolon diff --git a/libgcc/config.host b/libgcc/config.host index ad5a9ff621f..255612febf4 100644 --- a/libgcc/config.host +++ b/libgcc/config.host @@ -277,7 +277,7 @@ case ${host} in tmake_file="$tmake_file $cpu_type/t-sol2" extra_parts="gmon.o crtbegin.o crtend.o" if test "${libgcc_cv_solaris_crts}" = yes; then - # Solaris 11.x and 12 provide crt1.o, crti.o, and crtn.o as part of the + # Solaris 11.4 provides crt1.o, crti.o, and crtn.o as part of the # base system. crtp.o and crtpg.o implement the compiler-dependent parts. extra_parts="$extra_parts crtp.o crtpg.o" # If the Solaris CRTs are present, both ld and gld will have PIE support. diff --git a/libgcc/config/sol2/crtpg.c b/libgcc/config/sol2/crtpg.c index dcebfcdcdf0..d5966b0226b 100644 --- a/libgcc/config/sol2/crtpg.c +++ b/libgcc/config/sol2/crtpg.c @@ -31,11 +31,10 @@ extern char _start[], _etext[]; int __start_crt_compiler (int, char **); -/* Since Solaris 11.x and Solaris 12, the system-provided CRTs provide a - hook to invoke initialization code early during process startup. - __start_crt_compiler is documented in crt1.o(5). We use it to perform - initialization for profiling as a substitute for the earlier separate - gcrt1.o. */ +/* Since Solaris 11.4, the system-provided CRTs provide a hook to invoke + initialization code early during process startup. __start_crt_compiler + is documented in crt1.o(5). We use it to perform initialization for + profiling as a substitute for the earlier separate gcrt1.o. */ int __start_crt_compiler (int argc __attribute__ ((unused)), diff --git a/libgcc/configure b/libgcc/configure index 63c50c0c7e2..20169b18fe9 100644 --- a/libgcc/configure +++ b/libgcc/configure @@ -4875,7 +4875,7 @@ esac case ${host} in *-*-solaris2*) - # Check for system-provided CRTs on Solaris 11.x and Solaris 12. + # Check for system-provided CRTs on Solaris 11.4. { $as_echo "$as_me:${as_lineno-$LINENO}: checking system-provided CRTs on Solaris" >&5 $as_echo_n "checking system-provided CRTs on Solaris... " >&6; } if test "${libgcc_cv_solaris_crts+set}" = set; then : diff --git a/libgcc/configure.ac b/libgcc/configure.ac index dd60b01d2f8..53e77757aa8 100644 --- a/libgcc/configure.ac +++ b/libgcc/configure.ac @@ -296,7 +296,7 @@ esac case ${host} in *-*-solaris2*) - # Check for system-provided CRTs on Solaris 11.x and Solaris 12. + # Check for system-provided CRTs on Solaris 11.4. AC_CACHE_CHECK([system-provided CRTs on Solaris], [libgcc_cv_solaris_crts], [libgcc_cv_solaris_crts=no diff --git a/libgo/configure b/libgo/configure index 1e5e41bed21..4e838166484 100755 --- a/libgo/configure +++ b/libgo/configure @@ -11114,7 +11114,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11117 "configure" +#line 11118 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11220,7 +11220,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11223 "configure" +#line 11224 "configure" #include "confdefs.h" #if HAVE_DLFCN_H