Branch removal
Patrick Metzler
Patrick.Metzler at gmx.net
Thu Sep 27 01:10:08 PDT 2012
Hi,
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.
I placed the replacement in PhaseIdealLoop::build_and_optimize() after
invocation of super word. I also tried out to place it in
split_if_with_blocks_pre, as an alternative to conditional_move(), but
got also an 'early schedule failed'. I used set_ctrl() as
conditional_move(), but have to admit that I didn't get the concept of that.
I know early schedule fails because of a missing block selection at node
cmovP_reg. How can I correct it?
I would appreciate your help, also a reference if there is no simple answer.
Best regards,
Patrick
More information about the hotspot-compiler-dev
mailing list