Disable SHF_MERGE on Solaris 10/x86 (PR bootstrap/84017)
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Tue, 30 Jan 2018 09:53:29 +0000 (09:53 +0000)
committerRainer Orth <ro@gcc.gnu.org>
Tue, 30 Jan 2018 09:53:29 +0000 (09:53 +0000)
gcc/testsuite:
PR bootstrap/84017
* gcc.dg/debug/dwarf2/prod-options.c: Add -fno-merge-debug-strings
to dg-options.
Simplify DW_AT_producer scan.

gcc:
PR bootstrap/84017
* configure.ac (gcc_cv_as_shf_merge): Disable on Solaris 10/x86.
* configure: Regenerate.

From-SVN: r257179

gcc/ChangeLog
gcc/configure
gcc/configure.ac
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/debug/dwarf2/prod-options.c

index 119be1b6c019d5fe7949dfc4102b010628dca392..eca095027fd577ed42e5c12a7a913c5e1776567e 100644 (file)
@@ -1,3 +1,9 @@
+2018-01-30  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       PR bootstrap/84017
+       * configure.ac (gcc_cv_as_shf_merge): Disable on Solaris 10/x86.
+       * configure: Regenerate.
+
 2018-01-30  Richard Sandiford  <richard.sandiford@linaro.org>
 
        * config/aarch64/aarch64-sve.md (*vec_extract<mode><Vel>_0): New
index f3695adc945ac354a6c0f3bb42c51d53a99ae9b4..6db8c805f81ef672417755b89e20257d639b7a80 100755 (executable)
@@ -23571,6 +23571,14 @@ $as_echo "$gcc_cv_as_shf_merge" >&6; }
 
 
 fi
+case "$target" in
+  i?86-*-solaris2.10* | x86_64-*-solaris2.10*)
+    # SHF_MERGE support in Solaris 10/x86 ld is broken.
+    if test x"$gnu_ld" = xno; then
+      gcc_cv_as_shf_merge=no
+    fi
+    ;;
+esac
 
 cat >>confdefs.h <<_ACEOF
 #define HAVE_GAS_SHF_MERGE `if test $gcc_cv_as_shf_merge = yes; then echo 1; else echo 0; fi`
index b7f972868f68ef1e1e66d025edc2bce2c12bd5ab..f8b0e5a6606693d79631fb8f0ef1e40fd2222ec6 100644 (file)
@@ -2954,6 +2954,14 @@ if test $gcc_cv_as_shf_merge = no; then
     [elf,2,12,0], [--fatal-warnings],
     [.section .rodata.str, "aMS", %progbits, 1])
 fi
+case "$target" in
+  i?86-*-solaris2.10* | x86_64-*-solaris2.10*)
+    # SHF_MERGE support in Solaris 10/x86 ld is broken.
+    if test x"$gnu_ld" = xno; then
+      gcc_cv_as_shf_merge=no
+    fi
+    ;;
+esac
 AC_DEFINE_UNQUOTED(HAVE_GAS_SHF_MERGE,
   [`if test $gcc_cv_as_shf_merge = yes; then echo 1; else echo 0; fi`],
 [Define 0/1 if your assembler supports marking sections with SHF_MERGE flag.])
index 8e68df6c379754366d922c043c4465d373e9573c..bfc849ebf89aaaac5b6ecfd6dcad044c6822f3fe 100644 (file)
@@ -1,3 +1,10 @@
+2018-01-30  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       PR bootstrap/84017
+       * gcc.dg/debug/dwarf2/prod-options.c: Add -fno-merge-debug-strings
+       to dg-options.
+       Simplify DW_AT_producer scan.
+
 2018-01-30  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
 
        * gcc.dg/tree-ssa/ssa-dom-cse-2.c: XFAIL on !arm_neon arm targets.
index 6577eff3548d3b8ea24a31cb0621aaed601a1c14..19457173eb3f301daf8ccdfb6e6d8a3353c4d0a6 100644 (file)
@@ -3,9 +3,8 @@
    the build not reproducible.  Other skipped options could be tested here
    as well.  */
 /* { dg-do compile } */
-/* { dg-options "-O2 -gdwarf -dA -fdebug-prefix-map=a=b" } */
-/* { dg-final { scan-assembler "DW_AT_producer: \"GNU C" { target { { { ! *-*-solaris2* } || gas } && { { ! hppa*64*-*-* } && { ! powerpc-ibm-aix* } } } } } } */
-/* { dg-final { scan-assembler "\"GNU C\[^\\n\\r\]+ DW_AT_producer" { target { { *-*-solaris2* && { ! gas } } || { hppa*64*-*-* } } } } } */
+/* { dg-options "-O2 -gdwarf -dA -fno-merge-debug-strings -fdebug-prefix-map=a=b" } */
+/* { dg-final { scan-assembler "\"GNU C\[^\\n\\r\]+ DW_AT_producer" } } */
 /* { dg-final { scan-assembler-not "debug-prefix-map" } } */
 
 void func (void)