Bug 62020 - [5 regression] ICE in add_symbol_to_partition
Summary: [5 regression] ICE in add_symbol_to_partition
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: lto (show other bugs)
Version: 5.0
: P3 normal
Target Milestone: 5.0
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-08-05 12:21 UTC by Rainer Orth
Modified: 2014-11-19 14:21 UTC (History)
2 users (show)

See Also:
Host: *-*-solaris2.1[01]
Target: *-*-solaris2.1[01]
Build: *-*-solaris2.1[01]
Known to work:
Known to fail:
Last reconfirmed: 2014-11-19 00:00:00


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rainer Orth 2014-08-05 12:21:25 UTC
Between 20140725 (r213049) and 20140801 (r213453) occured a testsuite regression
on Solaris (both sparc and x86, 32 and 64-bit):

FAIL: g++.dg/lto/20100302 cp_lto_20100302_0.o-cp_lto_20100302_1.o link, -flto -fabi-version=2 (internal compiler error)
UNRESOLVED: g++.dg/lto/20100302 cp_lto_20100302_0.o-cp_lto_20100302_1.o execute -flto -fabi-version=2

The failure boils down to

./lto1 -quiet -fwpa cp_lto_20100302_0.o cp_lto_20100302_1.o
lto1: internal compiler error: in add_symbol_to_partition, at lto/lto-partition.c:232
0x8295962 add_symbol_to_partition
        /vol/gcc/src/hg/trunk/local/gcc/lto/lto-partition.c:232
0x8295582 add_references_to_partition
        /vol/gcc/src/hg/trunk/local/gcc/lto/lto-partition.c:94
0x82956ce add_symbol_to_partition_1
        /vol/gcc/src/hg/trunk/local/gcc/lto/lto-partition.c:168
0x8295de6 lto_balanced_map(int)
        /vol/gcc/src/hg/trunk/local/gcc/lto/lto-partition.c:501
0x82901d2 do_whole_program_analysis
        /vol/gcc/src/hg/trunk/local/gcc/lto/lto.c:3272
0x82901d2 lto_main()
        /vol/gcc/src/hg/trunk/local/gcc/lto/lto.c:3426

gdb finds
#1  0x08295963 in add_symbol_to_partition (part=part@entry=0x9433aa0, 
    node=0xface4040) at /vol/gcc/src/hg/trunk/local/gcc/lto/lto-partition.c:232
232       gcc_assert (node->get_partitioning_class () == SYMBOL_DUPLICATE
(gdb) p node->get_partitioning_class()
$1 = SYMBOL_PARTITION

I can attach the .o files if this helps.

  Rainer
Comment 1 Richard Biener 2014-08-05 13:03:43 UTC
I'm quite sure it's Honzas fault.
Comment 2 Richard Biener 2014-11-19 14:01:18 UTC
Still failing?
Comment 3 Rainer Orth 2014-11-19 14:21:59 UTC
(In reply to Richard Biener from comment #2)
> Still failing?

Gone again since 20140822.

  Rainer