Request for reviews (S): 7129618: assert(obj_node->eqv_uncast(obj),"");

Vladimir Kozlov vladimir.kozlov at oracle.com
Fri Jan 13 11:19:40 PST 2012


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

7129618: assert(obj_node->eqv_uncast(obj),"");

Relax verification and locks elimination checks for new implementation 
(EliminateNestedLocks).

Don't verify safepoints monitor info in is_simple_lock_region() since the 
referenced node could be different from the locked object. It could be Phi node 
of different cast nodes which point to this locked object. We assume that no 
other objects could be referenced in monitor info associated with this BoxLock 
node because in verified case all associated locks and unlocks are referencing 
only this one object.

New implementation has separate BoxLock node for each locked region so mark all 
associated locks/unlocks as eliminated in mark_eliminated_box() even if 
different objects are referenced in one locked region (for example, OSR 
compilation of nested loop inside locked scope).

Verified with failed tests.

Thanks,
Vladimir


More information about the hotspot-compiler-dev mailing list