Branch removal (original) (raw)

Patrick Metzler Patrick.Metzler at gmx.net
Thu Sep 27 09:41:37 PDT 2012


Hi Vladimir,

Thanks for your reply.

Again, I have a question about replacing Phi nodes with CMove nodes. I managed to do this for cases where I delete the corresponding Region; but when I just replace a Phi with a CMove (without deleting the Region), early schedule fails. By delete you mean replace it with control edge of If node. Right? Also you can't delete it if there are other Phis attached to it.

Sorry, I should have been more precise. For example, I want this:

Ctrl   Bool
   \  /
    If
   /  \                ...

IfTrue IfFalse / \ Iffalse \ / \ / Region D1 D2 / / / Phi Phi

be replaced by this:

_____ Ctrl ... | \ / | \ Iffalse | Bool \ / | / \ / || D1 D2 Region || / / / CMove Phi

So it is not possible because there is another Phi at Region?

Best regards, Patrick



More information about the hotspot-compiler-dev mailing list