This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug lto/54794] New: [4.8 regression] tree code 'ïF Hcïïï' is not supported in LTO streams
- From: "dimhen at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 03 Oct 2012 13:37:53 +0000
- Subject: [Bug lto/54794] New: [4.8 regression] tree code 'ïF Hcïïï' is not supported in LTO streams
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54794
Bug #: 54794
Summary: [4.8 regression] tree code 'ïF Hcïïï' is not supported
in LTO streams
Classification: Unclassified
Product: gcc
Version: 4.8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: lto
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: dimhen@gmail.com
err is similar to PR54632, but i cant trigger it with one file. Only while
build library from two dozens files.
tests from PR54632 c#5, c#11 PASS
1. err triggered with '-O1 -ipa-cp' and absent with -O1 only
2. valgrind ... w/o '--param ggc-min-expand=0' say nothing
lto1: internal compiler error: tree code 'ïFHcïïï' is not supported in LTO
streams
3. valgrind ... with '--param ggc-min-expand=0' say
==25840== Invalid read of size 2
==25840== at 0x763D00: lto_output_tree(output_block*, tree_node*, bool,
bool) (lto-streamer-out.c:127)
==25840== by 0x9FB800: streamer_write_tree_body(output_block*, tree_node*,
bool) (tree-streamer-out.c:438)
==25840== by 0x763FE3: lto_output_tree(output_block*, tree_node*, bool,
bool) (lto-streamer-out.c:340)
==25840== by 0x9FC1EF: streamer_write_tree_body(output_block*, tree_node*,
bool) (tree-streamer-out.c:677)
==25840== by 0x763FE3: lto_output_tree(output_block*, tree_node*, bool,
bool) (lto-streamer-out.c:340)
==25840== by 0x9FC153: streamer_write_tree_body(output_block*, tree_node*,
bool) (tree-streamer-out.c:675)
==25840== by 0x763FE3: lto_output_tree(output_block*, tree_node*, bool,
bool) (lto-streamer-out.c:340)
==25840== by 0x75EBD5: output_symtab() (lto-cgraph.c:1416)
==25840== by 0x76545C: lto_output() (lto-streamer-out.c:1018)
==25840== by 0x79C320: ipa_write_optimization_summaries_1(opt_pass*,
lto_out_decl_state*) (passes.c:2388)
==25840== by 0x79D18E:
ipa_write_optimization_summaries(lto_symtab_encoder_d*) (passes.c:2435)
==25840== by 0x4D29E2: lto_main() (lto.c:2637)
==25840== Address 0x1700000000 is not stack'd, malloc'd or (recently) free'd
$ gdb /usr/local/gcc_current/libexec/gcc/x86_64-unknown-linux-gnu/4.8.0/lto1
GNU gdb (GDB) Fedora (7.4.50.20120120-50.fc17)
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from
/usr/local/gcc_current/libexec/gcc/x86_64-unknown-linux-gnu/4.8.0/lto1...done.
(gdb) r -dumpdir ./ -dumpbase libp.so.wpa -m64 -mtune=generic -march=x86-64
-mtune=generic -march=x86-64 -auxbase RI_EncodeAndSign -fPIC
-fltrans-output-list=libp.so.ltrans.out -fwpa -fresolution=-lm.res
@/tmp/cceC92I4 -O1 -fipa-cp --param ggc-min-expand=0
Starting program:
/usr/local/gcc_current/libexec/gcc/x86_64-unknown-linux-gnu/4.8.0/lto1 -dumpdir
./ -dumpbase libp.so.wpa -m64 -mtune=generic -march=x86-64 -mtune=generic
-march=x86-64 -auxbase RI_EncodeAndSign -fPIC
-fltrans-output-list=libp.so.ltrans.out -fwpa -fresolution=-lm.res
@/tmp/cceC92I4 -O1 -fipa-cp --param ggc-min-expand=0
Reading object files: .libs/RI_EncodeAndSign.o {GC 4346k -> 4139k}
.libs/RI_GenerateKeyPair.o {GC 5388k -> 5388k} .libs/RI_DecodeAndVerify.o {GC
8781k -> 8781k} .libs/CA_CMP_Util.o {GC 11906k -> 11906k}
.libs/CA_CMP_ProcessReq.o {GC 13719k -> 13674k} .libs/CA_CMP_Crl.o {GC 14874k
-> 14697k} .libs/CA_CMP_Root.o {GC 16479k -> 15714k}
.libs/CA_CMP_RevAnnContent.o {GC 17342k -> 16108k} .libs/CA_CMP_Chain.o {GC
17600k -> 17277k} .libs/CA_CMP_Store.o {GC 18251k -> 18089k} .libs/1235.o {GC
18815k -> 18686k} .libs/CA_CMP_CrlGen.o {GC 19664k -> 19185k} .libs/ASN1Blob.o
{GC 19768k -> 19075k} .libs/ASN1Util.o {GC 20769k -> 19831k} .libs/StoreUtil.o
{GC 23895k -> 23014k} .libs/ChainUtil.o {GC 25928k -> 23906k} .libs/EncodeAnd.o
{GC 24933k -> 23866k} .libs/Chain.o {GC 27841k -> 25715k} .libs/ChainBase.o {GC
27401k -> 26761k} .libs/ChainCache.o {GC 27811k -> 27551k}
.libs/ChainCandidate.o {GC 28564k -> 28296k} .libs/UrlRetrieve.o {GC 29382k ->
29020k} .libs/ASN1Types.o {GC 32695k -> 31972k} .libs/ASN1Traits.o {GC 34239k
-> 33693k}
Reading the callgraph
Merging declarations
{GC 38144k -> 34488k}Reading summaries
{GC 38236k -> 35369k}Materializing decls:
<whole-program> {GC 35446k -> 35379k} <profile_estimate> <cp> {GC 35493k ->
35487k} <cdtor> {GC 35505k -> 35502k} {GC 35502k -> 35502k} {GC 35502k ->
35502k} {GC 35502k -> 35502k} {GC 35502k -> 35502k} {GC 35502k -> 35502k} {GC
35502k -> 35502k} <inline> {GC 35502k -> 35502k} {GC 35502k -> 35502k} {GC
35916k -> 35710k} {GC 35710k -> 35710k} {GC 35710k -> 35710k} {GC 35710k ->
35710k} {GC 35710k -> 35710k} <pure-const> {GC 35710k -> 35710k} {GC 35710k ->
35710k} {GC 35710k -> 35710k} {GC 35710k -> 35710k} {GC 35710k -> 35710k} {GC
35710k -> 35710k} <static-var> {GC 35710k -> 35710k} {GC 35710k -> 35710k} {GC
35710k -> 35710k} {GC 35710k -> 35710k} {GC 35710k -> 35710k} {GC 35710k ->
35710k}
Streaming out libp.so.ltrans0.o ( 8537 insns) libp.so.ltrans1.o ( 7341 insns)
libp.so.ltrans2.o ( 7290 insns) libp.so.ltrans3.o ( 6141 insns)
libp.so.ltrans4.o ( 6125 insns) libp.so.ltrans5.o ( 5859 insns)
libp.so.ltrans6.o ( 5835 insns) libp.so.ltrans7.o ( 5778 insns)
libp.so.ltrans8.o ( 5741 insns)
Program received signal SIGSEGV, Segmentation fault.
lto_output_tree (ob=0x1c71880, expr=0x1700000000, ref_p=true, this_ref_p=true)
at /home/dimhen/src/gcc-current/gcc/lto-streamer-out.c:389
389 if (this_ref_p && tree_is_indexable (expr))
(gdb) bt
#0 lto_output_tree (ob=0x1c71880, expr=0x1700000000, ref_p=true,
this_ref_p=true) at /home/dimhen/src/gcc-current/gcc/lto-streamer-out.c:389
#1 0x00000000009fb801 in write_ts_common_tree_pointers (ref_p=true,
expr=0x7ffff420f6e0, ob=0x1c71880) at
/home/dimhen/src/gcc-current/gcc/tree-streamer-out.c:438
#2 streamer_write_tree_body (ob=0x1c71880, expr=0x7ffff420f6e0,
ref_p=<optimized out>) at
/home/dimhen/src/gcc-current/gcc/tree-streamer-out.c:821
#3 0x0000000000763fe4 in lto_write_tree (ref_p=<optimized out>,
expr=0x7ffff420f6e0, ob=0x1c71880) at
/home/dimhen/src/gcc-current/gcc/lto-streamer-out.c:340
#4 lto_output_tree (ob=ob@entry=0x1c71880, expr=0x7ffff420f6e0,
ref_p=ref_p@entry=true, this_ref_p=this_ref_p@entry=true) at
/home/dimhen/src/gcc-current/gcc/lto-streamer-out.c:427
#5 0x00000000009fc1f0 in write_ts_exp_tree_pointers (ref_p=true,
expr=0x7ffff6d4b2d0, ob=0x1c71880) at
/home/dimhen/src/gcc-current/gcc/tree-streamer-out.c:677
#6 streamer_write_tree_body (ob=0x1c71880, expr=0x7ffff6d4b2d0,
ref_p=<optimized out>) at
/home/dimhen/src/gcc-current/gcc/tree-streamer-out.c:860
#7 0x0000000000763fe4 in lto_write_tree (ref_p=<optimized out>,
expr=0x7ffff6d4b2d0, ob=0x1c71880) at
/home/dimhen/src/gcc-current/gcc/lto-streamer-out.c:340
#8 lto_output_tree (ob=0x1c71880, expr=0x7ffff6d4b2d0, ref_p=<optimized out>,
this_ref_p=<optimized out>) at
/home/dimhen/src/gcc-current/gcc/lto-streamer-out.c:427
#9 0x00000000009fc154 in write_ts_exp_tree_pointers (ref_p=true,
expr=0x7ffff4205f80, ob=0x1c71880) at
/home/dimhen/src/gcc-current/gcc/tree-streamer-out.c:675
#10 streamer_write_tree_body (ob=0x1c71880, expr=0x7ffff4205f80,
ref_p=<optimized out>) at
/home/dimhen/src/gcc-current/gcc/tree-streamer-out.c:860
#11 0x0000000000763fe4 in lto_write_tree (ref_p=<optimized out>,
expr=0x7ffff4205f80, ob=0x1c71880) at
/home/dimhen/src/gcc-current/gcc/lto-streamer-out.c:340
#12 lto_output_tree (ob=0x1c71880, expr=0x7ffff4205f80, ref_p=<optimized out>,
this_ref_p=<optimized out>) at
/home/dimhen/src/gcc-current/gcc/lto-streamer-out.c:427
#13 0x000000000075ebd6 in output_node_opt_summary (encoder=0x198d650,
node=0x7ffff62b24a0, ob=0x1c71880) at
/home/dimhen/src/gcc-current/gcc/lto-cgraph.c:1416
#14 output_cgraph_opt_summary () at
/home/dimhen/src/gcc-current/gcc/lto-cgraph.c:1459
#15 output_symtab () at /home/dimhen/src/gcc-current/gcc/lto-cgraph.c:767
#16 0x000000000076545d in lto_output () at
/home/dimhen/src/gcc-current/gcc/lto-streamer-out.c:1018
#17 0x000000000079c321 in ipa_write_optimization_summaries_1 (pass=0x1473c40,
state=state@entry=0x1bf65d0) at /home/dimhen/src/gcc-current/gcc/passes.c:2388
#18 0x000000000079d18f in ipa_write_optimization_summaries (encoder=0x198d650)
at /home/dimhen/src/gcc-current/gcc/passes.c:2435
#19 0x00000000004d29e3 in lto_wpa_write_files () at
/home/dimhen/src/gcc-current/gcc/lto/lto.c:2637
#20 do_whole_program_analysis () at
/home/dimhen/src/gcc-current/gcc/lto/lto.c:3180
#21 lto_main () at /home/dimhen/src/gcc-current/gcc/lto/lto.c:3302
#22 0x000000000088b48c in compile_file () at
/home/dimhen/src/gcc-current/gcc/toplev.c:546
#23 0x000000000088d0aa in do_compile () at
/home/dimhen/src/gcc-current/gcc/toplev.c:1863
#24 toplev_main (argc=44, argv=0x1525c60) at
/home/dimhen/src/gcc-current/gcc/toplev.c:1939
#25 0x0000003536621735 in __libc_start_main (main=0x10638a0 <main(int,
char**)>, argc=21, ubp_av=0x7fffffffddb8, init=<optimized out>, fini=<optimized
out>, rtld_fini=<optimized out>,
stack_end=0x7fffffffdda8) at libc-start.c:226
#26 0x00000000004b10e9 in _start ()
$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/gcc_current/libexec/gcc/x86_64-unknown-linux-gnu/4.8.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: /home/dimhen/src/gcc-current/configure
--prefix=/usr/local/gcc_current --with-multilib-list=m64 --enable-__cxa_atexit
--enable-shared --enable-checking=yes,df,fold,rtl,tree
--enable-gnu-unique-object --enable-linker-build-id
--enable-languages=c,c++,lto --enable-plugin
--enable-version-specific-runtime-libs
Thread model: posix
gcc version 4.8.0 20121003 (experimental) [trunk revision 192029] (GCC)