From 9d69847d6ea68145f1b065d5d4a1cafadebf0d37 Mon Sep 17 00:00:00 2001 From: Richard Guenther Date: Thu, 15 Dec 2011 14:50:25 +0000 Subject: lto-wrapper.c (run_gcc): In non-parallel mode remove ltrans inputs immediately after processing them. 2011-12-15 Richard Guenther * lto-wrapper.c (run_gcc): In non-parallel mode remove ltrans inputs immediately after processing them. In parallel mode truncate the ltrans inputs in the make rule that processes them if temporary files are not to be preserved. From-SVN: r182370 --- gcc/lto-wrapper.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'gcc/lto-wrapper.c') diff --git a/gcc/lto-wrapper.c b/gcc/lto-wrapper.c index 5fb3762..1cc7bfb 100644 --- a/gcc/lto-wrapper.c +++ b/gcc/lto-wrapper.c @@ -811,9 +811,19 @@ cont: for (j = 1; new_argv[j] != NULL; ++j) fprintf (mstream, " '%s'", new_argv[j]); fprintf (mstream, "\n"); + /* If we are not preserving the ltrans input files then + truncate them as soon as we have processed it. This + reduces temporary disk-space usage. */ + if (! debug) + fprintf (mstream, "\t@-touch -r %s %s.tem > /dev/null 2>&1 " + "&& mv %s.tem %s\n", + input_name, input_name, input_name, input_name); } else - fork_execute (CONST_CAST (char **, new_argv)); + { + fork_execute (CONST_CAST (char **, new_argv)); + maybe_unlink_file (input_name); + } output_names[i] = output_name; } @@ -851,12 +861,13 @@ cont: collect_wait (new_argv[0], pex); maybe_unlink_file (makefile); makefile = NULL; + for (i = 0; i < nr; ++i) + maybe_unlink_file (input_names[i]); } for (i = 0; i < nr; ++i) { fputs (output_names[i], stdout); putc ('\n', stdout); - maybe_unlink_file (input_names[i]); free (input_names[i]); } nr = 0; -- cgit v1.1