RFR(S): 8210390: C2 still crashes with "assert(mode == ControlAroundStripMined && use == sfpt) failed: missed a node"

Tobias Hartmann tobias.hartmann at oracle.com
Fri Sep 14 13:42:39 UTC 2018


Hi Roland,

that looks good to me.

Best regards,
Tobias

On 14.09.2018 09:49, Roland Westrelin wrote:
> 
> http://cr.openjdk.java.net/~roland/8210390/webrev.00/
> 
> PhaseIdealLoop::reorg_offsets() creates some data nodes on the exit path
> of a counted loop so they are in the outer strip mined loop. Data nodes
> in the outer strip mined loop are expected to be referenced from the
> safepoint node. But that's not the case for these new nodes which have
> all uses outside the outer strip mined loop. This inconsistency causes a
> later attempt at cloning the loop in the same loop opts pass to break.
> 
> The fix is to assign control to the new data nodes that's on the outer
> strip mined loop exit path.
> 
> Roland.
> 


More information about the hotspot-compiler-dev mailing list