Request for reviews (S): 7128352: assert(obj_node == obj) failed

Vladimir Kozlov vladimir.kozlov at oracle.com
Mon Jan 9 16:53:56 PST 2012


Thank you, Tom

Tom Rodriguez wrote:
> On Jan 9, 2012, at 2:08 PM, Vladimir Kozlov wrote:
> 
>> http://cr.openjdk.java.net/~kvn/7128352/webrev
>>
>> 7128352: assert(obj_node == obj) failed
>>
>> The assert was added in 7125896 changes. Object reference in monitor info could be CheckCastPP of the locked object. Compare uncasted object nodes.
> 
> The change looks fine though it duplicates PhaseTransform::eqv_uncast.  Maybe that should be removed in favor of the new one?  It doesn't make a lot of sense that it's in PhaseTransform in the first place.

Replaced.

> Oddly, uncast is depth limited, which might be ok for existing uses, but does your use require that it doesn't give up?

It is s problem. It also problem for EA where it is heavy used. Other places may 
also expecting full uncast. I changed it to be unlimited but in debug mode added 
dead loop check for 1000 iterations which is "reasonable", I think.

I updated webrev.

Thanks,
Vladimir

> 
> tom
> 
>> Also added missing "public" for 7116216/StackOverflow.java.
>>
>> Tested with full CTW and compiler regression tests.
>>
>> Thanks,
>> Vladimir
> 


More information about the hotspot-compiler-dev mailing list