This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PATCH: Fix 7086


> On Mon, 2003-03-24 at 02:58, Andreas Schwab wrote:
> > Mark Mitchell <mark at codesourcery dot com> writes:
> > 
> > |> PR c++/7086 is a compilation-time issue.  The problem is the quadratic
> > |> behavior in fixup_var_refs.  This patch doesn't fix that problem, but
> > |> it does greatly reduce the number of calls to fixup_var_refs for the
> > |> test case in question, by observing that there is no need to do fixups
> > |> if you have just generated the RTL in question, since there will never
> > |> be anything to fix up.
> > |> 
> > |> It should also be possible to fixup_var_refs run in linear time, but
> > |> that's for another day.
> > |> 
> > |> On the test case in question, this patch improves the compilation time
> > |> from 2.5 minutes to 9 seconds.
> > |> 
> > |> Bootstrapped and tested on i686-pc-linux-gnu, applied on the branch.
> > |> I'll apply on the mainline as soon as I confirm that it builds there.
> > 
> > Breaks bootstrap on ia64.  I'm not sure whether the calls in
> > config/ia64/ia64.c should get true or false as the new parameter, but true
> > is probably safe.  Bootstrapping this patch now:
> 
> Aw, shucks; I didn't think to look in the MD files for calls.
> 
> Yes, the conservative choice is rescan=true.
> 
> I will look for others.

Mark,

this patch is also breaking all native builds, triggering a warning that 
is caught by werror.  You can't have a bool as an argument with K&R-style 
function definitions.

R.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]