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] Improve write-only heuristics for SFT generation


On Thu, 2 Mar 2006, Daniel Berlin wrote:

> On Thu, 2006-03-02 at 11:09 +0100, Richard Guenther wrote:
> > This patch improves the heuristics for not generating SFTs for structures
> > that are written to only.  Originally these heuristics had been introduced
> > to fix a gfortran compile performance regression.  While retaining this
> > fix, the following patch improves the heuristic, so that for C++ with
> > inlining (like tramp3d), where uses of the original variables are scarce
> > and accesses are through chains of tmp = &foo; *tmp = ... temporaries.
> > 
> > The simple solution is to treat tmp = &foo; as a use of foo that makes
> > it (possibly) read/write.  I verified that this re-gains runtime 
> > performance for tramp3d due to SFTing of iterators with arrays and that
> > the compile-times for Polyhedron are unchanged.
> > 
> > Bootstrapped and regtested on x86_64-unknown-linux-gnu.
> > 
> > Ok for mainline?
> 
> Okay.
> 
> Though i'm still not particularly fond of the write-only heuristic, for
> the reasons i mentioned to you a while ago.  This is just one symptom.

Yep - it works around either overzealous call-clobbering or frontend
stupidity.  Though from a principle point of view it makes sense - still
we cannot really tell write-onlyness before going to SSA.

Richard.


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