[gcc(refs/users/marxin/heads/marxin-gcc-benchmark-branch)] Fix ICE in pa_elf_select_rtx_section.

Martin Liska marxin@gcc.gnu.org
Mon Mar 30 10:39:10 GMT 2020


https://gcc.gnu.org/g:64464e5f369231d2998608138da760274f256581

commit 64464e5f369231d2998608138da760274f256581
Author: John David Anglin <danglin@gcc.gnu.org>
Date:   Thu Jan 30 07:26:58 2020 -0500

    Fix ICE in pa_elf_select_rtx_section.
    
            2020-01-30  John David Anglin  <danglin@gcc.gnu.org>
    
            * config/pa/pa.c (pa_elf_select_rtx_section): Place function pointers
            without a DECL in .data.rel.ro.local.

Diff:
---
 gcc/ChangeLog      | 5 +++++
 gcc/config/pa/pa.c | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a141e0669f0..00d200ecf16 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2020-01-30  John David Anglin  <danglin@gcc.gnu.org>
+
+	* config/pa/pa.c (pa_elf_select_rtx_section): Place function pointers
+	without a DECL in .data.rel.ro.local.
+
 2020-01-30  Jakub Jelinek  <jakub@redhat.com>
 
 	PR target/93494
diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c
index fb7e2ee110f..24b88304637 100644
--- a/gcc/config/pa/pa.c
+++ b/gcc/config/pa/pa.c
@@ -9852,7 +9852,7 @@ pa_elf_select_rtx_section (machine_mode mode, rtx x,
     {
       tree decl = SYMBOL_REF_DECL (x);
 
-      if (DECL_P (decl) && DECL_COMDAT_GROUP (decl))
+      if (!decl || (DECL_P (decl) && DECL_COMDAT_GROUP (decl)))
 	return get_named_section (NULL, ".data.rel.ro.local", 1);
     }


More information about the Gcc-cvs mailing list