summaryrefslogtreecommitdiff
path: root/gcc/lto-wrapper.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2010-11-11 22:54:53 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2010-11-11 22:54:53 +0000
commitcbcf2791c3640e072116c0e2a0613d0dfc3c1b38 (patch)
tree221f841982a24ff9937fc8b4ba3db8b7597a075e /gcc/lto-wrapper.c
parent3d5f815b529fe4b8b79d4f2a04e6eb670faee04d (diff)
downloadgcc-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.c20
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)
{