RFR(S): 8205107: assert(c->Opcode() == Op_SafePoint) failed: broken outer loop

Nils Eliasson nils.eliasson at oracle.com
Fri Jun 15 12:34:14 UTC 2018


Hi,

This patch fixes a problem where we eliminate the safepoint of a strip 
mined loop, and later hit an assert.

I add a check in SafepointNode::Identity to not remove the safepoint 
node if it belongs to a OuterStripMinedLoopEndNode. If the loop is 
eliminated, the safepoint will be removed together with the 
OuterStripMinedLoop and OuterStripMinedLoopEnd, maintaining a consistent 
shape until it is gone.

http://cr.openjdk.java.net/~neliasso/8205107/webrev.01/

https://bugs.openjdk.java.net/browse/JDK-8205107

Regards,
Nils Eliasson


More information about the hotspot-compiler-dev mailing list