summaryrefslogtreecommitdiff
path: root/gcc/lto-wrapper.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2014-02-05 17:21:07 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2014-02-05 17:21:07 +0000
commit3e17769e0dd1e5b018f36317a5bfff222cd16ee6 (patch)
tree8f49e8a93fe079885ddefa97205d08a6b140ccf3 /gcc/lto-wrapper.c
parenta503c22d36cbbdc5f364942ab47c51c762fb8915 (diff)
downloadgcc-3e17769e0dd1e5b018f36317a5bfff222cd16ee6.tar.gz
* lto-cgraph.c (asm_nodes_output): Make global.
* lto-wrapper.c (run_gcc): Pass down paralelizm to WPA. * gcc.c (AS_NEEDS_DASH_FOR_PIPED_INPUT): Allow WPA parameter (driver_handle_option): Handle OPT_fwpa. * lto.c (lto_parallelism): New static var. (do_stream_out, wait_for_child, stream_out): New static functions. (lto_wpa_write_files): Add support for parallel streaming. (do_whole_program_analysis): Set parallelism. * lang.opt (fwpa): Add parameter. * lto-lang.c (lto_handle_option): Handle flag_wpa. (lto_init): Update use of flag_wpa. * lto-streamer.h (asm_nodes_output): Declare. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207515 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/lto-wrapper.c')
-rw-r--r--gcc/lto-wrapper.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/gcc/lto-wrapper.c b/gcc/lto-wrapper.c
index cc45e33a482..5798a81f958 100644
--- a/gcc/lto-wrapper.c
+++ b/gcc/lto-wrapper.c
@@ -745,7 +745,16 @@ run_gcc (unsigned argc, char *argv[])
tmp += list_option_len;
strcpy (tmp, ltrans_output_file);
- obstack_ptr_grow (&argv_obstack, "-fwpa");
+ if (jobserver)
+ obstack_ptr_grow (&argv_obstack, xstrdup ("-fwpa=jobserver"));
+ else if (parallel > 1)
+ {
+ char buf[256];
+ sprintf (buf, "-fwpa=%i", parallel);
+ obstack_ptr_grow (&argv_obstack, xstrdup (buf));
+ }
+ else
+ obstack_ptr_grow (&argv_obstack, "-fwpa");
}
/* Append the input objects and possible preceding arguments. */