Request for reviews (S): 6889300: assert(i != k || is_new || i->outcnt() > 0, "don't return dead nodes")
Vladimir Kozlov
Vladimir.Kozlov at Sun.COM
Fri Oct 9 09:16:36 PDT 2009
Thanks, Tom
Vladimir
Tom Rodriguez wrote:
> Looks good.
>
> tom
>
> On Oct 9, 2009, at 8:48 AM, Vladimir Kozlov wrote:
>
>>
>> http://cr.openjdk.java.net/~kvn/6889300/webrev.00
>>
>> Fixed 6889300: assert(i != k || is_new || i->outcnt() > 0, "don't
>> return dead nodes")
>>
>> Problem:
>> Customer hit this assert in transform_old() when
>> PhiNode::Ideal() method returns Phi node with no users
>> when before the Ideal() call it only references itself
>> with the edge corresponding to the dead control path.
>>
>> Solution:
>> Return TOP for such case if it is IGVN transformation.
>> Add verification that during IGVN new Phi nodes should
>> be hooked before calling transform(). We need this
>> restriction to catch dead paths. The only place
>> which missed it was split_if() and I fixed it.
>>
>> Reviewed by:
>>
>> Other testing:
>> JPRT, CTW, NSK
>>
>
More information about the hotspot-compiler-dev
mailing list