diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2010-01-04 14:42:38 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2010-01-04 06:42:38 -0800 |
commit | 7152f51efdcd5f6d9643dc182055873f3eb5a4bd (patch) | |
tree | 66507aef63b120549acc39d85f4c1218f17ebada /gcc/collect2.c | |
parent | 45de56481a57d261d6bc81439b6ee5053193a696 (diff) | |
download | gcc-7152f51efdcd5f6d9643dc182055873f3eb5a4bd.tar.gz |
Turn on trace in collect2 if needed
2010-01-04 H.J. Lu <hongjiu.lu@intel.com>
PR lto/42581
* collect2.c (main): Turn on trace in collect2 if -v is passed
to gcc with LTO.
From-SVN: r155616
Diffstat (limited to 'gcc/collect2.c')
-rw-r--r-- | gcc/collect2.c | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/gcc/collect2.c b/gcc/collect2.c index b9bed6be9e0..777510b4e40 100644 --- a/gcc/collect2.c +++ b/gcc/collect2.c @@ -1174,6 +1174,8 @@ main (int argc, char **argv) int num_c_args; char **old_argv; + bool use_verbose = false; + old_argv = argv; expandargv (&argc, &argv); if (argv != old_argv) @@ -1228,12 +1230,19 @@ main (int argc, char **argv) if (! strcmp (argv[i], "-debug")) debug = 1; else if (! strcmp (argv[i], "-flto") && ! use_plugin) - lto_mode = LTO_MODE_LTO; + { + use_verbose = true; + lto_mode = LTO_MODE_LTO; + } else if (! strcmp (argv[i], "-fwhopr") && ! use_plugin) - lto_mode = LTO_MODE_WHOPR; + { + use_verbose = true; + lto_mode = LTO_MODE_WHOPR; + } else if (! strcmp (argv[i], "-plugin")) { use_plugin = true; + use_verbose = true; lto_mode = LTO_MODE_NONE; } #ifdef COLLECT_EXPORT_LIST @@ -1446,6 +1455,11 @@ main (int argc, char **argv) *c_ptr++ = xstrdup (q); } } + if (use_verbose && *q == '-' && q[1] == 'v' && q[2] == 0) + { + /* Turn on trace in collect2 if needed. */ + vflag = 1; + } } obstack_free (&temporary_obstack, temporary_firstobj); *c_ptr++ = "-fno-profile-arcs"; |