[PATCH] Fix lea_general patterns (take 3)
Jeffrey A Law
Mon Aug 21 07:22:00 GMT 2000
In message < 20000821095339.D24872@devserv.devel.redhat.com >you write:
> On Thu, Aug 03, 2000 at 09:56:40AM -0600, Jeffrey A Law wrote:
> > In message < 20000802212635.Q26939@sunsite.ms.mff.cuni.cz >you write:
> > > On Wed, Aug 02, 2000 at 01:17:31PM +0200, Jan Hubicka wrote:
> > > You're right, that's enough.
> > > This patch bootstrapped, no testsuite regressions, built hundreds of
> MB of
> > > sources (note to Jan, I'm using SImode, not PImode, because lea_0 pat
> > > uses SImode for the result, not Pmode. So it will need some thinking
> > > sledgehammer).
> > > Ok to commit?
> > >
> > > 2000-08-02 Jakub Jelinek <firstname.lastname@example.org>
> > >
> > > * config/i386/i386.md (lea_general_1): Only split
> > > if not already SImode.
> > > (lea_general_2, lea_general_3): Likewise.
> > I would much rather see the split condition match (to the extent possible
> ) the
> > condition for the pattern.
> Ouch, just noticed it is still not fixed in CVS.
> Is this acceptable?
> 2000-08-21 Jakub Jelinek <email@example.com>
> * config/i386/i386.md (lea_general_1): Copy insn condition
> to split condition.
> (lea_general_2, lea_general_3): Likewise.
I believe Richard's suggested way is cleaner -- I believe all you need to do
is "&& reload_completed" in the condition for the splitter which means
all the other conditions + && reload_completed".
More information about the Gcc-patches