Bug 65844 - [5/6 Regression] ICE (verify_cgraph_node failed) on i686-linux-gnu
Summary: [5/6 Regression] ICE (verify_cgraph_node failed) on i686-linux-gnu
Status: RESOLVED INVALID
Alias: None
Product: gcc
Classification: Unclassified
Component: ipa (show other bugs)
Version: 5.1.0
: P3 normal
Target Milestone: 5.4
Assignee: Martin Liška
URL:
Keywords: ice-checking, ice-on-valid-code, lto
Depends on:
Blocks:
 
Reported: 2015-04-22 11:26 UTC by Matthias Klose
Modified: 2015-12-29 01:45 UTC (History)
1 user (show)

See Also:
Host:
Target: i686-linux-gnu
Build:
Known to work: 4.9.2
Known to fail: 5.0
Last reconfirmed: 2015-06-30 00:00:00


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matthias Klose 2015-04-22 11:26:27 UTC
seen with 5.1 rc2 on i686-linux-gnu, works on x86_64, arm, ppc64le, arm64, powerpc.

building python 3.5 alpha 4 with lto and pgo (using the testsuite to collect the perf data):

lto1: error: indirect call frequency 1001 does not match BB frequency 1000
bytes_dealloc/5157 (bytes_dealloc) @0xf6b660e4
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  previous sharing asm name: 57969
  Address is taken.
  References: 
  Referring: PyBytes_Type/5273 (addr)_textiowrapper_writeflush/54957 (addr) (speculative)code_dealloc/6404 (addr) (speculative)_io_FileIO___init___impl/53523 (addr) (speculative)match_dealloc/48926 (addr) (speculative)os_stat/46510 (addr) (speculative)PyBuffer_Release/59115 (addr) (speculative)bytesio_dealloc/59792 (addr) (speculative)_Pickler_ClearBuffer/39048 (addr) (speculative)s_dealloc/37732 (addr) (speculative)assemble_free/22984 (addr) (speculative)code_dealloc/6404 (addr) (speculative)decode_unicode.isra.8/21159 (addr) (speculative)
  Availability: available
  Profile id: 1495503281
  First run: 402
  Function flags: body icf_merged hot
  Called by: 
  Calls: 
   Indirect call(1.00 per call) 
lto1: internal compiler error: verify_cgraph_node failed
0x82a24dc cgraph_node::verify_node()
	../../src/gcc/cgraph.c:3151
0x8296e88 symtab_node::verify()
	../../src/gcc/symtab.c:1103
0x82982a4 symtab_node::verify_symtab_nodes()
	../../src/gcc/symtab.c:1123
0x84cd553 symbol_table::remove_unreachable_nodes(_IO_FILE*)
	../../src/gcc/ipa.c:686
0x8596895 execute_todo
	../../src/gcc/passes.c:2025
Please submit a full bug report,
with preprocessed source if appropriate.
Comment 1 Martin Liška 2015-04-23 10:59:51 UTC
Hello.

Is it possible to reproduce the ICE on x86_64 by adding '-m32' to {C,LD}FLAGS.

I face following SEGFAULT (with -fprofile-generate -lto -m32) in:

gdb --args ./Programs/_freeze_importlib ./Lib/importlib/_bootstrap.py Python/importlib.h


(gdb) r
Starting program: /home/marxin/Programming/Python-3.5.0a4/Programs/_freeze_importlib ./Lib/importlib/_bootstrap.py Python/importlib.h
Got object file from memory but can't read symbols: File truncated.
Missing separate debuginfos, use: zypper install glibc-32bit-debuginfo-2.19-16.9.1.x86_64
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
va_build_value (flags=0, va=0xffffcb34 ":\321\071\bt_9\bt_9\b\340\215T\b", format=0x839d142 "(szz)") at Python/modsupport.c:455
455	        Py_VA_COPY(lva, va);
Missing separate debuginfos, use: zypper install libgcc_s1-32bit-debuginfo-4.8.3+r212056-2.2.4.x86_64
(gdb) bt
#0  va_build_value (flags=0, va=0xffffcb34 ":\321\071\bt_9\bt_9\b\340\215T\b", format=0x839d142 "(szz)") at Python/modsupport.c:455
#1  Py_BuildValue (format=0x839d142 "(szz)") at Python/modsupport.c:420
#2  0x0814c1d7 in _PySys_Init () at ./Python/sysmodule.c:1713
#3  0x0819dad0 in _Py_InitializeEx_Private (install_sigs=1, install_importlib=0) at Python/pylifecycle.c:377
#4  0x08365fee in main (argc=3, argv=0xffffcd74) at Programs/_freeze_importlib.c:83

Thanks,
Martin
Comment 2 Richard Biener 2015-06-30 10:28:03 UTC
Waiting for a testcase.
Comment 3 Martin Liška 2015-07-01 10:30:48 UTC
Even with fixed configure script, I am unable to reproduce the issue on x86_64-linux-pc with -m32 option added.

Martin
Comment 4 Richard Biener 2015-07-16 09:14:00 UTC
GCC 5.2 is being released, adjusting target milestone to 5.3.
Comment 5 Richard Biener 2015-12-04 10:47:20 UTC
GCC 5.3 is being released, adjusting target milestone.
Comment 6 Andrew Pinski 2015-12-29 01:45:12 UTC
No testcase in 6 months so closing.