diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-11-11 22:54:53 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-11-11 22:54:53 +0000 |
commit | cbcf2791c3640e072116c0e2a0613d0dfc3c1b38 (patch) | |
tree | 221f841982a24ff9937fc8b4ba3db8b7597a075e /gcc/lto-wrapper.c | |
parent | 3d5f815b529fe4b8b79d4f2a04e6eb670faee04d (diff) | |
download | gcc-cbcf2791c3640e072116c0e2a0613d0dfc3c1b38.tar.gz |
* doc/invoke.texi (-fwhopr): Merge into -flto section.
(-flto-partition): Document none.
* gcc.c (LINK_COMMAND_SPEC): Remove -fwhopr.
* lto-wrapper.c: Update comment.
(run_gcc): Update LTO option parsing.
* opts.c (finish_options): add support -flto-partition=none
(common_handle_option): Remove fwhopr.
* common.opt: Turn fwhopr into flto.
* collect2.c (main): Update option handling.
* cgraphunit.c (cgraph_decide_is_function_needed): Remove flag_whopr.
* ipa-split.c (execute_split_functions): Remove flag_whopr.
* ipa.c (function_and_variable_visibility): Remove flag_whopr.
* ipa-prop.c (ipa_compute_jump_functions): Remove flag_whopr.
* varpool.c (decide_is_variable_needed): Remove flag_whopr.
* gcc.dg/20081223-1.c: Update LTO options.
* gcc.dg/lto/20090206-1_0.c: Update LTO options.
* gcc.dg/lto/20081118_0.c: Update LTO options.
* gcc.dg/lto/ipareference_0.c: Update LTO options.
* gcc.dg/lto/20100423-2_0.c: Update LTO options.
* gcc.dg/lto/20081201-1_0.c: Update LTO options.
* gcc.dg/lto/ipacp_0.c: Update LTO options.
* gcc.dg/lto/20090116_0.c: Update LTO options.
* gcc.dg/lto/20091015-1_0.c: Update LTO options.
* gcc.dg/lto/20090126-2_0.c: Update LTO options.
* gcc.dg/lto/20081202-2_0.c: Update LTO options.
* gcc.dg/lto/20081204-1_0.c: Update LTO options.
* gcc.dg/lto/const-uniq_0.c: Update LTO options.
* gcc.dg/lto/20081224_0.c: Update LTO options.
* gcc.dg/lto/20090219_0.c: Update LTO options.
* gcc.dg/lto/ipareference2_0.c: Update LTO options.
* gcc.dg/lto/20090206-2_0.c: Update LTO options.
* gcc.dg/lto/20081115_0.c: Update LTO options.
* gcc.dg/lto/20081201-2_0.c: Update LTO options.
* gcc.dg/lto/20081120-2_0.c: Update LTO options.
* gcc.dg/lto/materialize-1_0.c: Update LTO options.
* gcc.dg/lto/20090126-1_0.c: Update LTO options.
* gcc.dg/lto/20081202-1_0.c: Update LTO options.
* gcc.dg/lto/noreturn-1_0.c: Update LTO options.
* g++.dg/20090107-1.C: Update LTO options.
* g++.dg/lto/pr45679-2_0.C: Update LTO options.
* g++.dg/lto/20081123_0.C: Update LTO options.
* g++.dg/lto/20090313_0.C: Update LTO options.
* g++.dg/lto/20081125_0.C: Update LTO options.
* g++.dg/lto/20081109-1_0.C: Update LTO options.
* g++.dg/lto/20081219_0.C: Update LTO options.
* g++.dg/lto/20100724-1_0.C: Update LTO options.
* g++.dg/lto/20081204-1_0.C: Update LTO options.
* g++.dg/lto/20090303_0.C: Update LTO options.
* g++.dg/lto/20100723-1_0.C: Update LTO options.
* g++.dg/lto/pr45679-1_0.C: Update LTO options.
* g++.dg/lto/20090128_0.C: Update LTO options.
* g++.dg/lto/20081204-2_0.C: Update LTO options.
* g++.dg/lto/20090302_0.C: Update LTO options.
* g++.dg/lto/20081119-1_0.C: Update LTO options.
* g++.dg/lto/20081118_0.C: Update LTO options.
* g++.dg/20090121-1.C: Update LTO options.
* objc.dg/lto/lto.exp: Update LTO options.
* lib/lto.exp: Update LTO options.
* lib/gcc-dg.exp: Update LTO options.
* lib/c-torture.exp: Update LTO options.
* obj-c++.dg/lto/lto.exp: Update LTO options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166625 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/lto-wrapper.c')
-rw-r--r-- | gcc/lto-wrapper.c | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/gcc/lto-wrapper.c b/gcc/lto-wrapper.c index 540101773ef..dea51b07c73 100644 --- a/gcc/lto-wrapper.c +++ b/gcc/lto-wrapper.c @@ -32,7 +32,7 @@ along with GCC; see the file COPYING3. If not see The above will print something like /tmp/ccwbQ8B2.lto.o - If -fwhopr is used instead, more than one file might be produced + If WHOPR is used instead, more than one file might be produced ./ccXj2DTk.lto.ltrans.o ./ccCJuXGv.lto.ltrans.o */ @@ -304,6 +304,7 @@ run_gcc (unsigned argc, char *argv[]) bool seen_o = false; int parallel = 0; int jobserver = 0; + bool no_partition = false; /* Get the driver and options. */ collect_gcc = getenv ("COLLECT_GCC"); @@ -366,15 +367,16 @@ run_gcc (unsigned argc, char *argv[]) if (strcmp (option, "-v") == 0) verbose = 1; + if (strcmp (option, "-flto-partition=none") == 0) + no_partition = true; /* We've handled these LTO options, do not pass them on. */ - if (strcmp (option, "-flto") == 0) - lto_mode = LTO_MODE_LTO; - else if (strncmp (option, "-fwhopr", 7) == 0) + if (strncmp (option, "-flto=", 6) == 0 + || !strcmp (option, "-flto")) { lto_mode = LTO_MODE_WHOPR; - if (option[7] == '=') + if (option[5] == '=') { - if (!strcmp (option + 8, "jobserver")) + if (!strcmp (option + 6, "jobserver")) { jobserver = 1; parallel = 1; @@ -390,6 +392,12 @@ run_gcc (unsigned argc, char *argv[]) else *argv_ptr++ = option; } + if (no_partition) + { + lto_mode = LTO_MODE_LTO; + jobserver = 0; + parallel = 0; + } if (linker_output) { |