Request for reviews (S): 6923002: assert(false,"this call site should not be polymorphic")

Vladimir Kozlov Vladimir.Kozlov at Sun.COM
Thu Feb 4 09:43:31 PST 2010


http://cr.openjdk.java.net/~kvn/6923002/webrev

Fixed 6923002: assert(false,"this call site should not be polymorphic")

Problem:
After the 6614597 changes C2 expects that the MDO total count at the virtual
call site indicates only polimorphic case and the assert was added for that.
But ReceiverTypeData::follow_weak_refs() may clear a receiver information
in MDO leaving the data at strange state and causing assert.

Solution:
Clear also the total count when a receiver information is cleared.
An additional receiver, if it exists, will be recorded in the cleaned row
during next execution of the call site.
Also add method name for the assert output and record in logs a second
receiver even for polimorphic case.

Reviewed by:

Fix verified (y/n): y, test

Other testing:
JPRT



More information about the hotspot-compiler-dev mailing list