passes.c (ipa_write_summaries): Only modify statements if body is in memory.
authorJan Hubicka <hubicka@ucw.cz>
Wed, 30 May 2018 16:42:41 +0000 (18:42 +0200)
committerJan Hubicka <hubicka@gcc.gnu.org>
Wed, 30 May 2018 16:42:41 +0000 (16:42 +0000)
commit5b42d196248425064ca9013f63510834744e169e
treeab2fb9dcd8a2e6aacec01cadb11d9ff8a8525399
parent6c363ddd67f5fc1a44d285100560d830ee04f630
passes.c (ipa_write_summaries): Only modify statements if body is in memory.

* passes.c (ipa_write_summaries): Only modify statements if body
is in memory.
* cgraphunit.c (ipa_passes): Also produce intermeidate code when
incrementally linking.
(ipa_passes): Likewise.
* lto-cgraph.c (lto_output_node): When incrementally linking do not
pass down resolution info.
* common.opt (flag_incremental_link): Update info.
* gcc.c (plugin specs): Turn flinker-output=* to
-plugin-opt=-linker-output-known
* toplev.c (compile_file): Also cut compilation when doing incremental
link.
* flag-types. (enum lto_partition_model): Add
LTO_LINKER_OUTPUT_NOLTOREL.
(invoke.texi): Add -flinker-output docs.
* ipa.c (symbol_table::remove_unreachable_nodes): Handle LTO incremental
link same way as WPA; do not stream in dead initializers.

* dwarf2out.c (dwarf2out_die_ref_for_decl,
darf2out_register_external_decl): Support incremental link.

* lang.opt (lto_linker_output): Add nolto-rel.
* lto-lang.c (lto_post_options): Handle LTO_LINKER_OUTPUT_REL
and LTO_LINKER_OUTPUT_NOLTOREL.
(lto_init): Generate lto when doing incremental link.
* lto.c (lto_precess_name): Add lto1-inclink.

* testsuite/g++.dg/lto/20081109-1_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20081118_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20081119-1_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20081120-1_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20081120-2_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20081123_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20081204-1_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20081219_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20090302_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20090313_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20091002-2_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20091002-3_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20091026-1_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20100724-1_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20101010-4_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20101015-2_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/20110311-1_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/pr45621_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/pr48042_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/pr48354-1_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/pr54625-1_0.c: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/pr54625-2_0.c: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/lto/pr68811_0.C: Add -flinker-output=nolto-rel.
* testsuite/g++.dg/torture/pr43760.C: New test. Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20081120-1_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20081120-2_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20081126_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20081204-1_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20081204-2_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20081212-1_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20081224_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20090116_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20090126-1_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20090126-2_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20090206-1_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20090219_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20091013-1_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20091014-1_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20091015-1_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20091016-1_0.c: Add -flinker-output=nolto-rel.
* testsuite/gcc.dg/lto/20091020-1_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/20091020-2_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/20091027-1_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/20100426_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/20100430-1_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/20100603-1_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/20100603-2_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/20100603-3_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/20111213-1_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/pr45736_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/pr52634_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/pr54702_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/pr59323-2_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/pr59323_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/pr60820_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/pr81406_0.c: Add -flinker-output-nolto-rel.
* testsuite/gcc.dg/lto/pr83388_0.c: Add -flinker-output-nolto-rel.
* testsuite/gfortran.dg/lto/20091016-1_0.f90: Add -flinker-output-nolto-rel.
* testsuite/gfortran.dg/lto/20091028-1_0.f90: Add -flinker-output-nolto-rel.
* testsuite/gfortran.dg/lto/20091028-2_0.f90: Add -flinker-output-nolto-rel.
* testsuite/gfortran.dg/lto/pr46911_0.f: Add -flinker-output-nolto-rel.
* testsuite/gfortran.dg/lto/pr47839_0.f90: Add -flinker-output-nolto-rel.

From-SVN: r260963
77 files changed:
gcc/ChangeLog
gcc/cgraphunit.c
gcc/common.opt
gcc/dwarf2out.c
gcc/flag-types.h
gcc/gcc.c
gcc/ipa.c
gcc/lto-cgraph.c
gcc/lto/ChangeLog
gcc/lto/lang.opt
gcc/lto/lto-lang.c
gcc/lto/lto.c
gcc/passes.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/lto/20081109-1_0.C
gcc/testsuite/g++.dg/lto/20081118_0.C
gcc/testsuite/g++.dg/lto/20081119-1_0.C
gcc/testsuite/g++.dg/lto/20081120-1_0.C
gcc/testsuite/g++.dg/lto/20081120-2_0.C
gcc/testsuite/g++.dg/lto/20081123_0.C
gcc/testsuite/g++.dg/lto/20081204-1_0.C
gcc/testsuite/g++.dg/lto/20081219_0.C
gcc/testsuite/g++.dg/lto/20090302_0.C
gcc/testsuite/g++.dg/lto/20090313_0.C
gcc/testsuite/g++.dg/lto/20091002-2_0.C
gcc/testsuite/g++.dg/lto/20091002-3_0.C
gcc/testsuite/g++.dg/lto/20091026-1_0.C
gcc/testsuite/g++.dg/lto/20100724-1_0.C
gcc/testsuite/g++.dg/lto/20101010-4_0.C
gcc/testsuite/g++.dg/lto/20101015-2_0.C
gcc/testsuite/g++.dg/lto/20110311-1_0.C
gcc/testsuite/g++.dg/lto/pr45621_0.C
gcc/testsuite/g++.dg/lto/pr48042_0.C
gcc/testsuite/g++.dg/lto/pr48354-1_0.C
gcc/testsuite/g++.dg/lto/pr54625-1_0.c
gcc/testsuite/g++.dg/lto/pr54625-2_0.c
gcc/testsuite/g++.dg/lto/pr68811_0.C
gcc/testsuite/g++.dg/torture/pr85583.C [new file with mode: 0644]
gcc/testsuite/gcc.dg/lto/20081120-1_0.c
gcc/testsuite/gcc.dg/lto/20081120-2_0.c
gcc/testsuite/gcc.dg/lto/20081126_0.c
gcc/testsuite/gcc.dg/lto/20081204-1_0.c
gcc/testsuite/gcc.dg/lto/20081204-2_0.c
gcc/testsuite/gcc.dg/lto/20081212-1_0.c
gcc/testsuite/gcc.dg/lto/20081224_0.c
gcc/testsuite/gcc.dg/lto/20090116_0.c
gcc/testsuite/gcc.dg/lto/20090126-1_0.c
gcc/testsuite/gcc.dg/lto/20090126-2_0.c
gcc/testsuite/gcc.dg/lto/20090206-1_0.c
gcc/testsuite/gcc.dg/lto/20090219_0.c
gcc/testsuite/gcc.dg/lto/20091013-1_0.c
gcc/testsuite/gcc.dg/lto/20091014-1_0.c
gcc/testsuite/gcc.dg/lto/20091015-1_0.c
gcc/testsuite/gcc.dg/lto/20091016-1_0.c
gcc/testsuite/gcc.dg/lto/20091020-1_0.c
gcc/testsuite/gcc.dg/lto/20091020-2_0.c
gcc/testsuite/gcc.dg/lto/20091027-1_0.c
gcc/testsuite/gcc.dg/lto/20100426_0.c
gcc/testsuite/gcc.dg/lto/20100430-1_0.c
gcc/testsuite/gcc.dg/lto/20100603-1_0.c
gcc/testsuite/gcc.dg/lto/20100603-2_0.c
gcc/testsuite/gcc.dg/lto/20100603-3_0.c
gcc/testsuite/gcc.dg/lto/20111213-1_0.c
gcc/testsuite/gcc.dg/lto/pr45736_0.c
gcc/testsuite/gcc.dg/lto/pr52634_0.c
gcc/testsuite/gcc.dg/lto/pr54702_0.c
gcc/testsuite/gcc.dg/lto/pr59323-2_0.c
gcc/testsuite/gcc.dg/lto/pr59323_0.c
gcc/testsuite/gcc.dg/lto/pr60820_0.c
gcc/testsuite/gcc.dg/lto/pr81406_0.c
gcc/testsuite/gcc.dg/lto/pr83388_0.c
gcc/testsuite/gfortran.dg/lto/20091016-1_0.f90
gcc/testsuite/gfortran.dg/lto/20091028-1_0.f90
gcc/testsuite/gfortran.dg/lto/20091028-2_0.f90
gcc/testsuite/gfortran.dg/lto/pr46911_0.f
gcc/testsuite/gfortran.dg/lto/pr47839_0.f90
gcc/toplev.c