[Bug bootstrap/36907] [4.4 Regression]: Gcc failed to bootstrap

gnu at the-meissners dot org gcc-bugzilla@gcc.gnu.org
Thu Jul 24 19:20:00 GMT 2008



------- 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  <gnu@the-meissners.org>

        * 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



More information about the Gcc-bugs mailing list