This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PR driver/91130 Use CL_DRIVER when handling of COLLECT_GCC_OPTIONS in lto-wrapper.c
On Mon, 12 Aug 2019, Richard Biener wrote:
> On Wed, 7 Aug 2019, Richard Earnshaw (lists) wrote:
>
> > On 07/08/2019 17:15, Jakub Jelinek wrote:
> > > On Wed, Aug 07, 2019 at 05:08:28PM +0100, Richard Earnshaw (lists) wrote:
> > > > > Though, I'm fine if you commit your patch now as a fix and Richi's patch
> > > > > with the above incremental change is applied on top of it incrementally
> > > > > as a cleanup.
> > > > >
> > > > > Jakub
> > > > >
> > > >
> > > > Ok, I'll do that.
> > >
> > > Thanks.
> > >
> > > > Do you want it on the gcc-9 branch as well? I'm running
> > > > a bootstrap of it right now.
> > >
> > > Yes, but can you defer for 9.2.1, i.e. Tuesday+ next week?
> > >
> > > Jakub
> > >
> >
> > I'm OoO next week, but can do it when I get back.
>
> I installed the following followup after testing on
> x86_64-unknown-linux-gnu.
And dealing with the backporting now.
Richard.
> Richard.
>
> 2019-08-12 Richard Biener <rguenther@suse.de>
>
> PR driver/91130
> * lto-wrapper.c (get_options_from_collect_gcc_options): Remove
> lang_mask option, always use CL_DRIVER.
> (get_options_from_collect_gcc_options): Adjust.
> (find_and_merge_options): Likewise.
> (run_gcc): Likewise.
>
> Index: gcc/lto-wrapper.c
> ===================================================================
> --- gcc/lto-wrapper.c (revision 274235)
> +++ gcc/lto-wrapper.c (working copy)
> @@ -128,12 +128,11 @@ maybe_unlink (const char *file)
> #define DUMPBASE_SUFFIX ".ltrans18446744073709551615"
>
> /* Create decoded options from the COLLECT_GCC and COLLECT_GCC_OPTIONS
> - environment according to LANG_MASK. */
> + environment. */
>
> static void
> get_options_from_collect_gcc_options (const char *collect_gcc,
> const char *collect_gcc_options,
> - unsigned int lang_mask,
> struct cl_decoded_option **decoded_options,
> unsigned int *decoded_options_count)
> {
> @@ -176,8 +175,7 @@ get_options_from_collect_gcc_options (co
> argc = obstack_object_size (&argv_obstack) / sizeof (void *) - 1;
> argv = XOBFINISH (&argv_obstack, const char **);
>
> - decode_cmdline_options_to_array (argc, (const char **)argv,
> - lang_mask,
> + decode_cmdline_options_to_array (argc, (const char **)argv, CL_DRIVER,
> decoded_options, decoded_options_count);
> obstack_free (&argv_obstack, NULL);
> }
> @@ -1009,8 +1007,7 @@ find_and_merge_options (int fd, off_t fi
> {
> struct cl_decoded_option *f2decoded_options;
> unsigned int f2decoded_options_count;
> - get_options_from_collect_gcc_options (collect_gcc,
> - fopts, CL_DRIVER,
> + get_options_from_collect_gcc_options (collect_gcc, fopts,
> &f2decoded_options,
> &f2decoded_options_count);
> if (!fdecoded_options)
> @@ -1282,7 +1279,6 @@ run_gcc (unsigned argc, char *argv[])
> fatal_error (input_location,
> "environment variable %<COLLECT_GCC_OPTIONS%> must be set");
> get_options_from_collect_gcc_options (collect_gcc, collect_gcc_options,
> - CL_DRIVER,
> &decoded_options,
> &decoded_options_count);
>
>
--
Richard Biener <rguenther@suse.de>
SUSE Linux GmbH, Maxfeldstrasse 5, 90409 Nuernberg, Germany;
GF: Felix Imendörffer, Mary Higgins, Sri Rasiah; HRB 21284 (AG Nürnberg)