[Bug bootstrap/78188] [7 Regression] AIX Bootstrap broken by tree-vrp.c change
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Nov 3 11:56:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78188
--- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> ---
Same w/o -g.
#2 0x00000000014f17a3 in rs6000_xcoff_declare_object_name (file=0x25634c0,
name=0x2aaaacd771b0 "*LDFCM..0", decl=<var_decl 0x2aaaaffe7f30 *LDFCM..0>)
at /space/rguenther/src/gcc-git/gcc/config/rs6000/rs6000.c:35418
35418 &data, true);
(gdb) l
35413 {
35414 struct declare_alias_data data = {file, false};
35415 RS6000_OUTPUT_BASENAME (file, name);
35416 fputs (":\n", file);
35417 symtab_node::get (decl)->call_for_symbol_and_aliases
(rs6000_declare_alias,
35418 &data, true);
35419 }
symtab_node::get (decl) returns NULL.
(gdb) p debug_tree (decl)
<var_decl 0x2aaaaffe7f30 *LDFCM..0
type <pointer_type 0x2aaaac0462a0
type <void_type 0x2aaaac046150 void type_6 VOID
align 8 symtab 0 alias set -1 canonical type 0x2aaaac046150
pointer_to_this <pointer_type 0x2aaaac0462a0>>
sizes-gimplified public unsigned type_6 SI
size <integer_cst 0x2aaaac0334c8 constant 32>
unit size <integer_cst 0x2aaaac0334e0 constant 4>
align 32 symtab 0 alias set 105 canonical type 0x2aaaac0462a0
pointer_to_this <pointer_type 0x2aaaac04f0a8> reference_to_this
<reference_type 0x2aaaacaa8f18>>
readonly asm_written static unsigned ignored SI file (null) line 0 col 0
size <integer_cst 0x2aaaac0334c8 32> unit size <integer_cst 0x2aaaac0334e0 4>
align 32 initial <var_decl 0x2aaaaffe7f30 *LDFCM..0>
(mem/u/f/c:SI (symbol_ref:SI ("*LDFCM..0") [flags 0x2] <var_decl
0x2aaaaffe7f30 *LDFCM..0>) [105 *LDFCM..0+0 S4 A32])>
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 49985f1..72e0f0c 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -35414,7 +35414,7 @@ rs6000_xcoff_declare_object_name (FILE *file, const
char *name, tree decl)
struct declare_alias_data data = {file, false};
RS6000_OUTPUT_BASENAME (file, name);
fputs (":\n", file);
- symtab_node::get (decl)->call_for_symbol_and_aliases (rs6000_declare_alias,
+ symtab_node::get_create (decl)->call_for_symbol_and_aliases
(rs6000_declare_alias,
&data, true);
}
fixes this ICE. But then compilation goes through w/o hitting the
section type conflict.
More information about the Gcc-bugs
mailing list