------- Comment #16 from gnu at the-meissners dot org 2008-07-24 19:19 ------- Subject: Re: [4.4 Regression]: Gcc failed to bootstrap
On Thu, Jul 24, 2008 at 05:49:02PM -0000, hjl dot tools at gmail dot com wrote: > > > ------- Comment #15 from hjl dot tools at gmail dot com 2008-07-24 17:49 > ------- > I don't think the middle-end should change optimization options > which have been overridden by the backend. > > > -- > > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36907 > > ------- You are receiving this mail because: ------- > You are on the CC list for the bug, or are watching someone who is. I haven't done a bootstrap built yet, but could you try this patch on the ia-64? When I try it via a cross compiler, it works fine, but I wonder whether random ports will do weird things (like leak memory) if OVERRIDE_OPTIONS is run a second time. I suspect we may need a macro that says whether it is safe to run OVERRIDE_OPTIONS a second time. 2008-07-24 Michael Meissner <[EMAIL PROTECTED]> * opts.c (decode_options): Rerun OVERRIDE_OPTIONS when being run a second time to allow the backend to override the default options. Index: gcc/opts.c =================================================================== --- gcc/opts.c (revision 138117) +++ gcc/opts.c (working copy) @@ -1066,6 +1066,12 @@ decode_options (unsigned int argc, const flag_unwind_tables = targetm.unwind_tables_default; } +#ifdef OVERRIDE_OPTIONS + /* Some machines may reject certain combinations of options. */ + if (! first_time_p) + OVERRIDE_OPTIONS; +#endif + #ifdef OPTIMIZATION_OPTIONS /* Allow default optimizations to be specified on a per-machine basis. */ OPTIMIZATION_OPTIONS (optimize, optimize_size); -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36907