[RFC 0/6] Flags outputs for asms

Segher Boessenkool segher@kernel.crashing.org
Fri May 8 22:10:00 GMT 2015


On Fri, May 08, 2015 at 03:32:58PM -0600, Jeff Law wrote:
> On 05/08/2015 02:15 PM, Richard Henderson wrote:
> >
> >But it *does* try to match an intermediate pattern,
> >
> >(set (reg:CCGC 17 flags)
> >     (compare:CCGC (reg:CCGC 17 flags)
> >         (const_int 0 [0])))
> >
> >which can be considered a no-op move.  If I add the attached pattern, then 
> >the
> >combination happens in two steps -- 9->12, 12->13 -- and we get what we 
> >hoped:
> So what happens if that pattern is actually recognized as a nop-move by 
> set_noop_p?  That would allow recog_for_combine to see it as a nop and 
> "recognize" it as valid.

It's not valid RTL though, so it is a bit more work than that.


Segher



More information about the Gcc-patches mailing list