This is the mail archive of the
gcc-testresults@gcc.gnu.org
mailing list for the GCC project.
Results for 4.8.0 20130212 (experimental) (GCC) testsuite on powerpc-unknown-rtems4.11
- From: Sebastian Huber <sebastian dot huber at embedded-brains dot de>
- To: gcc-testresults at gcc dot gnu dot org
- Date: Tue, 12 Feb 2013 16:20:56 +0100
- Subject: Results for 4.8.0 20130212 (experimental) (GCC) testsuite on powerpc-unknown-rtems4.11
New test case for PR55033 passes with the patch from Alan Modra:
Executing on host: /scratch/git-rtems-testing/gcc/b-powerpc-gcc/gcc/xgcc
-B/scratch/git-rtems-testing/gcc/b-powerpc-gcc/gcc/
/home/sh/archive/gcc-git/gcc/testsuite/gcc.target/powerpc/pr55033.c
-fno-diagnostics-show-caret -mcpu=8540 -msoft-float -msdata=eabi -G 8
-fno-common -DSTACK_SIZE=2048 -S -isystem
/scratch/git-rtems-testing/gcc/b-powerpc-gcc/powerpc-rtems4.11/./newlib/targ-include
-isystem /home/sh/archive/gcc-git/newlib/libc/include
-B/scratch/git-rtems-testing/gcc/install-git/powerpc-rtems4.11/psim/lib/ -specs
bsp_specs -qrtems -o pr55033.s (timeout = 300)
spawn /scratch/git-rtems-testing/gcc/b-powerpc-gcc/gcc/xgcc
-B/scratch/git-rtems-testing/gcc/b-powerpc-gcc/gcc/
/home/sh/archive/gcc-git/gcc/testsuite/gcc.target/powerpc/pr55033.c
-fno-diagnostics-show-caret -mcpu=8540 -msoft-float -msdata=eabi -G 8
-fno-common -DSTACK_SIZE=2048 -S -isystem
/scratch/git-rtems-testing/gcc/b-powerpc-gcc/powerpc-rtems4.11/./newlib/targ-include
-isystem /home/sh/archive/gcc-git/newlib/libc/include
-B/scratch/git-rtems-testing/gcc/install-git/powerpc-rtems4.11/psim/lib/ -specs
bsp_specs -qrtems -o pr55033.s
PASS: gcc.target/powerpc/pr55033.c (test for excess errors)
LAST_UPDATED: Tue Feb 12 09:22:25 UTC 2013 (revision
022fc2d:bffd767:fd457cef14f3bc6673e90a2de80005feea743ab7)
Target is powerpc-unknown-rtems4.11
Host is x86_64-unknown-linux-gnu
=== gcc tests ===
Running target rtems-powerpc-psim
FAIL: gcc.c-torture/execute/builtins/20010124-1.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/20010124-1.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/memchr.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/memchr.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/memcmp.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/memcmp.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/memcpy-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/memcpy-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/memmove-2.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/memmove-2.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/memmove-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/memmove-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/memmove.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/memmove.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/memops-asm.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/memops-asm.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/mempcpy-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/mempcpy-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/memset-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/memset-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/memset.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/memset.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/pr22237.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/pr22237.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/pr23484-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/pr23484-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/printf.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/printf.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/snprintf-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/snprintf-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/sprintf-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/sprintf-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/stpcpy-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/stpcpy-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/stpncpy-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/stpncpy-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strcat-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strcat-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strcat.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strcat.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strchr.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strchr.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strcmp.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strcmp.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strcpy-2.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strcpy-2.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strcpy-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strcpy-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strcpy.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strcpy.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strlen-2.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strlen-2.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strlen-3.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strlen-3.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strlen.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strlen.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strncat-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strncat-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strncmp-2.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strncmp-2.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strncmp.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strncmp.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strncpy-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strncpy-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/strncpy.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/strncpy.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/vsnprintf-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/vsnprintf-chk.c execution, -O2
-flto -fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/builtins/vsprintf-chk.c compilation, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
UNRESOLVED: gcc.c-torture/execute/builtins/vsprintf-chk.c execution, -O2 -flto
-fuse-linker-plugin -fno-fat-lto-objects
FAIL: gcc.c-torture/execute/nest-align-1.c execution, -O0
FAIL: gcc.c-torture/execute/nest-align-1.c execution, -Og -g
FAIL: gcc.c-torture/execute/ieee/inf-1.c execution, -O0
FAIL: gcc.dg/and-1.c scan-assembler-not nand
FAIL: gcc.dg/initpri1.c execution test
FAIL: gcc.dg/initpri3.c execution test
FAIL: gcc.dg/lto/pr54709 c_lto_pr54709_0.o-c_lto_pr54709_1.o link, -fPIC
-fvisibility=hidden -flto
UNRESOLVED: gcc.dg/lto/pr54709 c_lto_pr54709_0.o-c_lto_pr54709_1.o execute
-fPIC -fvisibility=hidden -flto
FAIL: gcc.dg/special/gcsec-1.c execution test
FAIL: gcc.dg/torture/vec-cvt-1.c -O0 execution test
FAIL: gcc.dg/torture/vec-cvt-1.c -O1 execution test
FAIL: gcc.dg/torture/vec-cvt-1.c -O2 execution test
FAIL: gcc.dg/torture/vec-cvt-1.c -O3 -fomit-frame-pointer execution test
FAIL: gcc.dg/torture/vec-cvt-1.c -O3 -fomit-frame-pointer -funroll-loops
execution test
FAIL: gcc.dg/torture/vec-cvt-1.c -O3 -fomit-frame-pointer -funroll-all-loops
-finline-functions execution test
FAIL: gcc.dg/torture/vec-cvt-1.c -O3 -g execution test
FAIL: gcc.dg/torture/vec-cvt-1.c -Os execution test
FAIL: gcc.dg/torture/vec-cvt-1.c -O2 -flto -fno-use-linker-plugin
-flto-partition=none execution test
FAIL: gcc.dg/torture/vec-cvt-1.c -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects execution test
FAIL: gcc.dg/tree-ssa/sra-12.c scan-tree-dump-times release_ssa "l;" 0
FAIL: gcc.dg/tree-ssa/ssa-dom-thread-4.c scan-tree-dump-times dom1 "Threaded" 3
FAIL: gcc.dg/tree-ssa/vrp47.c scan-tree-dump-times vrp1 "[xy][^ ]* !=" 0
FAIL: gcc.dg/tree-ssa/vrp47.c scan-tree-dump-times dom2 "x[^ ]* & y" 1
FAIL: gcc.target/powerpc/20020118-1.c execution test
FAIL: gcc.target/powerpc/405-dlmzb-strlen-1.c scan-assembler dlmzb\\\\.
FAIL: gcc.target/powerpc/440-dlmzb-strlen-1.c scan-assembler dlmzb\\\\.
FAIL: gcc.target/powerpc/ppc-vector-memcpy.c scan-assembler lvx
FAIL: gcc.target/powerpc/pr46728-10.c execution test
FAIL: gcc.target/powerpc/pr46728-11.c execution test
FAIL: gcc.target/powerpc/pr46728-14.c execution test
FAIL: gcc.target/powerpc/pr46728-4.c scan-assembler-times cbrt 2
FAIL: gcc.target/powerpc/pr46728-5.c scan-assembler-times cbrt 2
FAIL: gcc.target/powerpc/pr46728-5.c scan-assembler-not bl[\\\\. ]+pow
FAIL: gcc.target/powerpc/pr46728-8.c scan-assembler-times cbrt 5
FAIL: gcc.target/powerpc/pr47862.c scan-assembler-not stfd
FAIL: gcc.target/powerpc/spe-vector-memcpy.c scan-assembler evstdd
FAIL: gcc.target/powerpc/tfmode_off.c (test for excess errors)
UNRESOLVED: gcc.target/powerpc/tfmode_off.c object-size text == 544
=== gcc Summary ===
# of expected passes 82035
# of unexpected failures 71
# of expected failures 214
# of unresolved testcases 37
# of unsupported tests 1649
/scratch/git-rtems-testing/gcc/b-powerpc-gcc/gcc/xgcc version 4.8.0 20130212
(experimental) [master revision
022fc2d:bffd767:fd457cef14f3bc6673e90a2de80005feea743ab7] (GCC)
Host is x86_64-unknown-linux-gnu
=== g++ tests ===
Running target rtems-powerpc-psim
FAIL: g++.dg/eh/gcsec1.C -std=gnu++98 execution test
FAIL: g++.dg/eh/gcsec1.C -std=gnu++11 execution test
FAIL: g++.dg/ext/mv12-aux.C -std=c++98 (test for excess errors)
FAIL: g++.dg/ext/mv12-aux.C -std=c++11 (test for excess errors)
FAIL: g++.dg/ext/spe1.C -std=gnu++98 (test for excess errors)
FAIL: g++.dg/ext/spe1.C -std=gnu++11 (test for excess errors)
FAIL: g++.dg/other/opaque-1.C -std=gnu++98 execution test
FAIL: g++.dg/other/opaque-1.C -std=gnu++11 execution test
FAIL: g++.dg/special/conpr-1.C execution test
FAIL: g++.dg/special/conpr-2.C execution test
FAIL: g++.dg/special/conpr-3.C execution test
FAIL: g++.dg/special/conpr-4.C execution test
FAIL: g++.dg/special/initp1.C execution test
FAIL: g++.dg/special/initpri1.C execution test
XPASS: g++.old-deja/g++.other/init19.C -std=c++98 execution test
XPASS: g++.old-deja/g++.other/init19.C -std=c++11 execution test
=== g++ Summary ===
# of expected passes 48101
# of unexpected failures 14
# of unexpected successes 2
# of expected failures 283
# of unsupported tests 957
/scratch/git-rtems-testing/gcc/b-powerpc-gcc/gcc/testsuite/g++/../../xg++
version 4.8.0 20130212 (experimental) [master revision
022fc2d:bffd767:fd457cef14f3bc6673e90a2de80005feea743ab7] (GCC)
Compiler version: 4.8.0 20130212 (experimental) [master revision
022fc2d:bffd767:fd457cef14f3bc6673e90a2de80005feea743ab7] (GCC)
Platform: powerpc-unknown-rtems4.11
configure flags: --disable-werror --enable-threads=rtems --with-gnu-as
--disable-multilib --enable-newlib-mb --enable-newlib-iconv --with-gnu-ld
--with-newlib --verbose --with-system-zlib --disable-nls
--enable-version-specific-runtime-libs --enable-languages=c,c++
--target=powerpc-rtems4.11 --prefix=/scratch/git-rtems-testing/gcc/install-git
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.huber@embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
>From 93c3b36dcd3a622595e51ddcccee6eb8d8f7883e Mon Sep 17 00:00:00 2001
From: Sebastian Huber <sebastian.huber@embedded-brains.de>
Date: Tue, 23 Oct 2012 12:27:05 +0200
Subject: [PATCH 1/2] PR55033: Test case
2013-02-12 Sebastian Huber <sebastian.huber@embedded-brains.de>
PR target/55033
* gcc.target/powerpc/pr55033.c: New.
---
gcc/testsuite/gcc.target/powerpc/pr55033.c | 21 +++++++++++++++++++++
1 files changed, 21 insertions(+), 0 deletions(-)
create mode 100644 gcc/testsuite/gcc.target/powerpc/pr55033.c
diff --git a/gcc/testsuite/gcc.target/powerpc/pr55033.c b/gcc/testsuite/gcc.target/powerpc/pr55033.c
new file mode 100644
index 0000000..cd8abcb
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/pr55033.c
@@ -0,0 +1,21 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target powerpc_eabi_ok } */
+/* { dg-options "-mcpu=8540 -msoft-float -msdata=eabi -G 8 -fno-common" } */
+
+void f(void);
+
+struct s {
+ int *p;
+ int *q;
+};
+
+extern int a;
+
+extern const struct s c;
+
+const struct s c = { &a, 0 };
+
+void f(void)
+{
+ char buf[4] = { 0, 1, 2, 3 };
+}
--
1.7.7
>From a1252161683511a15f5eac5380e1752228e01e5a Mon Sep 17 00:00:00 2001
From: Sebastian Huber <sebastian.huber@embedded-brains.de>
Date: Tue, 30 Oct 2012 09:34:33 +0100
Subject: [PATCH 2/2] PR55033: Fix
This patch from Alan Modra fixes a section type conflict error. See also
http://gcc.gnu.org/ml/gcc-patches/2012-10/msg02172.html
Test results without this patch:
http://gcc.gnu.org/ml/gcc-testresults/2013-02/msg01351.html
Alan Modra
* varasm.c (default_elf_select_section): Move !DECL_P check..
(get_named_section): ..to here before calling get_section_name.
Adjust assertion.
(default_section_type_flags): Add DECL_P check.
* config/i386/winnt.c (i386_pe_section_type_flags): Likewise.
* config/rs6000/rs6000.c (rs6000_xcoff_section_type_flags):
* Likewise.
---
gcc/config/i386/winnt.c | 2 +-
gcc/config/rs6000/rs6000.c | 2 +-
gcc/varasm.c | 12 +++++++-----
3 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/gcc/config/i386/winnt.c b/gcc/config/i386/winnt.c
index 118b1ec..7e7c155 100644
--- a/gcc/config/i386/winnt.c
+++ b/gcc/config/i386/winnt.c
@@ -476,7 +476,7 @@ i386_pe_section_type_flags (tree decl, const char *name, int reloc)
flags |= SECTION_PE_SHARED;
}
- if (decl && DECL_ONE_ONLY (decl))
+ if (decl && DECL_P (decl) && DECL_ONE_ONLY (decl))
flags |= SECTION_LINKONCE;
/* See if we already have an entry for this section. */
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index fbf57be..bf0cacb 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -25913,7 +25913,7 @@ rs6000_xcoff_section_type_flags (tree decl, const char *name, int reloc)
unsigned int flags = default_section_type_flags (decl, name, reloc);
/* Align to at least UNIT size. */
- if (flags & SECTION_CODE || !decl)
+ if ((flags & SECTION_CODE) != 0 || !decl || !DECL_P (decl))
align = MIN_UNITS_PER_WORD;
else
/* Increase alignment of large objects if not already stricter. */
diff --git a/gcc/varasm.c b/gcc/varasm.c
index 6648103..ea709fd 100644
--- a/gcc/varasm.c
+++ b/gcc/varasm.c
@@ -402,12 +402,16 @@ get_named_section (tree decl, const char *name, int reloc)
{
unsigned int flags;
- gcc_assert (!decl || DECL_P (decl));
if (name == NULL)
- name = TREE_STRING_POINTER (DECL_SECTION_NAME (decl));
+ {
+ gcc_assert (decl && DECL_P (decl) && DECL_SECTION_NAME (decl));
+ name = TREE_STRING_POINTER (DECL_SECTION_NAME (decl));
+ }
flags = targetm.section_type_flags (decl, name, reloc);
+ if (decl && !DECL_P (decl))
+ decl = NULL_TREE;
return get_section (name, flags, decl);
}
@@ -5989,7 +5993,7 @@ default_section_type_flags (tree decl, const char *name, int reloc)
flags |= SECTION_RELRO;
}
- if (decl && DECL_ONE_ONLY (decl))
+ if (decl && DECL_P (decl) && DECL_ONE_ONLY (decl))
flags |= SECTION_LINKONCE;
if (decl && TREE_CODE (decl) == VAR_DECL && DECL_THREAD_LOCAL_P (decl))
@@ -6348,8 +6352,6 @@ default_elf_select_section (tree decl, int reloc,
gcc_unreachable ();
}
- if (!DECL_P (decl))
- decl = NULL_TREE;
return get_named_section (decl, sname, reloc);
}
--
1.7.7