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: [RFT/RFA] Fix AIX fallout from PR/19653 patch


On Wed, 5 Apr 2006, David Edelsohn wrote:
> 	Paolo's patch, this suggestion, and limiting the SYMBOL_REF test
> to just legitimize_reload_address all work.  However, GCC now produces
> worse code with many more memory accesses for FP constants on PowerPC.

I think its important to find out exactly why code generation on PPC
changed at all.  The meat of Paolo's patch was to extend the functionality
of reload to allow backends to return NO_REGS as the preferred reload
class in some circumstances.  This change therefore should only have
affected x86 which should be the only target using this functionality.

As commented on by Paolo in a previous e-mail, this could be caused by
some functionality written by Dale included in the original patch.

Paolo could you identify the target independent reload changes in your
PR 19653 change (Dale's bits) and bootstrap/regression test a reversion
of them?  Meanwhile someone should figure out exactly how/why this is
adversely affect AIX.  That we're now fixing latent TOC bugs uncovered
by this change is interesting, but not helpful for rationalizing why
they've become exposed.

My understanding of the original patch, and presumably that of the
other reviewers that looked at it before approval, was that there
should have been no impact on non-x86 platforms?, and that the
testing and SPEC benchmarking reported were therefore sufficient.

Hopefully, once the problematic hunk is identified it'll provide more
insights and options.  For example, if reverting just this piece
resolves the AIX performance issues, there'll be no need to revert
the entire change.

Likewise if David can provide some concrete examples of code that
has regressed I'm sure that'll also help the process.

Roger
--


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