RFR(S): 8210390: C2 still crashes with "assert(mode == ControlAroundStripMined && use == sfpt) failed: missed a node"
Vladimir Kozlov
vladimir.kozlov at oracle.com
Fri Sep 14 16:13:01 UTC 2018
+1
Vladimir
On 9/14/18 6:42 AM, Tobias Hartmann wrote:
> 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