From f0d61983a5fe28616abf24c5029dfa70b7b6930c Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hongjiu.lu@intel.com>
Date: Mon, 4 Jan 2010 00:52:50 +0000
Subject: [PATCH] Pass -m* and -v to -plugin-opt

gcc/

2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>

	PR lto/42520
	* gcc.c (LINK_COMMAND_SPEC): Pass -m* and -v to -plugin-opt.

lto-plugin/

2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>

	PR lto/42520
	* lto-plugin.c (exec_lto_wrapper): Output lto-wrapper command
	if -v is passed.

From-SVN: r155601
---
 gcc/ChangeLog           |  5 +++++
 gcc/gcc.c               |  2 ++
 lto-plugin/ChangeLog    |  6 ++++++
 lto-plugin/lto-plugin.c | 15 +++++++++++++--
 4 files changed, 26 insertions(+), 2 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 203039f25a2a..6922745d681e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR lto/42520
+	* gcc.c (LINK_COMMAND_SPEC): Pass -m* and -v to -plugin-opt.
+
 2009-01-03  Steven Bosscher  <steven@gcc.gnu.org>
 
 	PR rtl-optimization/41862
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 068671dd7255..a9a10fe7ef00 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -786,6 +786,8 @@ proper position among the other output files.  */
     %{O*:-plugin-opt=-O%*} \
     %{w:-plugin-opt=-w} \
     %{f*:-plugin-opt=-f%*} \
+    %{m*:-plugin-opt=-m%*} \
+    %{v:-plugin-opt=-v} \
     } \
     %{flto} %{fwhopr} %l " LINK_PIE_SPEC \
    "%X %{o*} %{A} %{d} %{e*} %{m} %{N} %{n} %{r}\
diff --git a/lto-plugin/ChangeLog b/lto-plugin/ChangeLog
index 77a8313cd61c..4848e279397b 100644
--- a/lto-plugin/ChangeLog
+++ b/lto-plugin/ChangeLog
@@ -1,3 +1,9 @@
+2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR lto/42520
+	* lto-plugin.c (exec_lto_wrapper): Output lto-wrapper command
+	if -v is passed.
+
 2009-12-05  H.J. Lu  <hongjiu.lu@intel.com>
 
 	PR bootstrap/42306
diff --git a/lto-plugin/lto-plugin.c b/lto-plugin/lto-plugin.c
index 4a8a0ff5b7d9..2fb4f2a77826 100644
--- a/lto-plugin/lto-plugin.c
+++ b/lto-plugin/lto-plugin.c
@@ -369,7 +369,7 @@ add_output_files (FILE *f)
 static void
 exec_lto_wrapper (char *argv[])
 {
-  int t;
+  int t, i;
   int status;
   char *at_args;
   FILE *args;
@@ -394,13 +394,24 @@ exec_lto_wrapper (char *argv[])
   at_args = concat ("@", arguments_file_name, NULL);
   check (at_args, LDPL_FATAL, "could not allocate");
 
+  for (i = 1; argv[i]; i++)
+    {
+      char *a = argv[i];
+      if (a[0] == '-' && a[1] == 'v' && a[2] == '\0')
+	{
+	  for (i = 0; argv[i]; i++)
+	    fprintf (stderr, "%s ", argv[i]);
+	  fprintf (stderr, "\n");
+	  break;
+	}
+    }
+
   new_argv[0] = argv[0];
   new_argv[1] = at_args;
   new_argv[2] = NULL;
 
   if (debug)
     {
-      int i;
       for (i = 0; new_argv[i]; i++)
 	fprintf (stderr, "%s ", new_argv[i]);
       fprintf (stderr, "\n");
-- 
GitLab