aboutsummaryrefslogtreecommitdiff
path: root/gcc/lto
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2018-11-16 13:49:32 +0100
committerMartin Liska <marxin@gcc.gnu.org>2018-11-16 12:49:32 +0000
commit12eac2321bb613a447197e7a1308d4ce4a266dd5 (patch)
tree0bb4e956c2dd5a9145afc71667fe9dbcad7f0a08 /gcc/lto
parentf6dee9fef9bd27698e66fb8a15d90cceb2fbe5a3 (diff)
downloadgcc-12eac2321bb613a447197e7a1308d4ce4a266dd5.zip
gcc-12eac2321bb613a447197e7a1308d4ce4a266dd5.tar.gz
gcc-12eac2321bb613a447197e7a1308d4ce4a266dd5.tar.bz2
Fix ICE in lto_symtab_merge_symbols_1 (PR lto/88004).
2018-11-16 Martin Liska <mliska@suse.cz> PR lto/88004 * lto-symtab.c (lto_symtab_merge_symbols_1): Do not call lto_symtab_symbol_p as it does checking of transparent alias. These needs to be also merged in the function. From-SVN: r266207
Diffstat (limited to 'gcc/lto')
-rw-r--r--gcc/lto/ChangeLog7
-rw-r--r--gcc/lto/lto-symtab.c5
2 files changed, 10 insertions, 2 deletions
diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog
index a31b7de..4798663 100644
--- a/gcc/lto/ChangeLog
+++ b/gcc/lto/ChangeLog
@@ -1,3 +1,10 @@
+2018-11-16 Martin Liska <mliska@suse.cz>
+
+ PR lto/88004
+ * lto-symtab.c (lto_symtab_merge_symbols_1): Do not call
+ lto_symtab_symbol_p as it does checking of transparent alias.
+ These needs to be also merged in the function.
+
2018-10-30 Michael Ploujnikov <michael.ploujnikov@oracle.com>
* lto-partition.c (privatize_symbol_name_1): Use
diff --git a/gcc/lto/lto-symtab.c b/gcc/lto/lto-symtab.c
index 4b24b84..18437eb 100644
--- a/gcc/lto/lto-symtab.c
+++ b/gcc/lto/lto-symtab.c
@@ -894,10 +894,11 @@ lto_symtab_merge_symbols_1 (symtab_node *prevailing)
e = next)
{
next = e->next_sharing_asm_name;
+ cgraph_node *ce = dyn_cast <cgraph_node *> (e);
- if (!lto_symtab_symbol_p (e))
+ if ((!TREE_PUBLIC (e->decl) && !DECL_EXTERNAL (e->decl))
+ || (ce != NULL && ce->global.inlined_to))
continue;
- cgraph_node *ce = dyn_cast <cgraph_node *> (e);
symtab_node *to = symtab_node::get (lto_symtab_prevailing_decl (e->decl));
/* No matter how we are going to deal with resolution, we will ultimately