This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
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.