< prev index next >
src/hotspot/share/runtime/vframe.hpp
Print this page
rev 60253 : imported patch 8249192-coleenp-review
*** 247,269 ****
Handle _owner_klass; // klass (mirror) if owner was scalar replaced
bool _eliminated;
bool _owner_is_scalar_replaced;
public:
// Constructor
! MonitorInfo(oop owner, BasicLock* lock, bool eliminated, bool owner_is_scalar_replaced, TRAPS) {
! if (!owner_is_scalar_replaced) {
! _owner = Handle(THREAD, owner);
! _owner_klass = Handle();
! } else {
! assert(eliminated, "monitor should be eliminated for scalar replaced object");
! _owner = Handle();
! _owner_klass = Handle(THREAD, owner);
! }
! _lock = lock;
! _eliminated = eliminated;
! _owner_is_scalar_replaced = owner_is_scalar_replaced;
! }
// Accessors
oop owner() const {
assert(!_owner_is_scalar_replaced, "should not be called for scalar replaced object");
return _owner();
}
--- 247,257 ----
Handle _owner_klass; // klass (mirror) if owner was scalar replaced
bool _eliminated;
bool _owner_is_scalar_replaced;
public:
// Constructor
! MonitorInfo(oop owner, BasicLock* lock, bool eliminated, bool owner_is_scalar_replaced);
// Accessors
oop owner() const {
assert(!_owner_is_scalar_replaced, "should not be called for scalar replaced object");
return _owner();
}
< prev index next >