On Thu, Dec 04, 2014 at 02:57:56PM -0600, Segher Boessenkool wrote:
> Adding a bridge pattern in the target would work; or you can enhance combine
> so it can break up this parallel correctly.

I also investigated that second option.  The enhancement transforms
the combine result

M = XXX  ::  T = XXX

into

M = XXX
T = M

and then the set of T can combine with its later use (the compare), but
it won't ever combine that with the store to M: there is never a link
for memory, only for registers.

Never mind that this is unsuitable for many targets anyway (it creates
a read-after-write hazard).


Segher

Reply via email to