[Bug lto/88081] [7/8/9 Regression] ICE in lto_varpool_replace_node, at lto/lto-symtab.c:109
hubicka at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sun Dec 23 19:35:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88081
--- Comment #1 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
The checks that we do replace definition by non-defition in symbol merging.
=Would be possible to bisect this? GCC 8 produces:
_ZTVN10__cxxabiv117__class_type_infoE/1 (_ZTVN10__cxxabiv117__class_type_infoE)
@0x7ffff69e1180
Type: variable
Body removed by symtab_remove_unreachable_nodes
Visibility: externally_visible no_reorder undef external public weak comdat
comdat_group:_ZTVN10__cxxabiv117__class_type_infoE one_only virtual artificial
next sharing asm name: 12
References:
Referring: _ZTI1b/4 (addr)
Read from file: 1.o
Availability: not-ready
Varpool flags: initialized read-only const-value-known
_ZTVN10__cxxabiv117__class_type_infoE/12
(_ZTVN10__cxxabiv117__class_type_infoE) @0x7ffff69e1380
Type: variable definition analyzed
Visibility: externally_visible undef external public weak comdat
comdat_group:_ZTVN10__cxxabiv117__class_type_infoE one_only virtual artificial
previous sharing asm name: 1
References: _ZTIN10__cxxabiv117__class_type_infoE/14 (addr)_ZN1a1bEv/18
(addr)
Referring: _ZTI1c/15 (addr)
Read from file: 2.o
Availability: not-ready
Varpool flags: initialized read-only const-value-known
and has resolution info
2
1.o 6
221 4a2d2cb92dbf08ab PREVAILING_DEF_IRONLY _ZNK1b1cEv
235 4a2d2cb92dbf08ab PREVAILING_DEF_IRONLY _ZTS1b
251 4a2d2cb92dbf08ab PREVAILING_DEF_IRONLY _ZTI1b
275 4a2d2cb92dbf08ab PREVAILING_DEF_IRONLY _ZTV1b
201 4a2d2cb92dbf08ab UNDEF __gxx_personality_v0
270 4a2d2cb92dbf08ab UNDEF _ZTVN10__cxxabiv117__class_type_infoE
2.o 5
230 6b69d9d40039828d PREVAILING_DEF_IRONLY _ZNK1c5m_fn2Ev
259 6b69d9d40039828d PREVAILING_DEF_IRONLY _ZTS1c
274 6b69d9d40039828d PREVAILING_DEF_IRONLY _ZTI1c
210 6b69d9d40039828d PREVAILING_DEF_IRONLY _ZTV1c
282 6b69d9d40039828d UNDEF _ZTVN10__cxxabiv117__class_type_infoE
same happens for trunk but it happens to work.
so it may be just wrong handling of UNDEF symbol in the symtab.
More information about the Gcc-bugs
mailing list