< prev index next >
src/share/vm/runtime/vframe.hpp
Print this page
*** 248,257 ****
--- 248,258 ----
bool _eliminated;
bool _owner_is_scalar_replaced;
public:
// Constructor
MonitorInfo(oop owner, BasicLock* lock, bool eliminated, bool owner_is_scalar_replaced) {
+ assert(owner == oopDesc::bs()->write_barrier(owner), "expect to-space copy");
if (!owner_is_scalar_replaced) {
_owner = owner;
_owner_klass = NULL;
} else {
assert(eliminated, "monitor should be eliminated for scalar replaced object");
*** 263,272 ****
--- 264,274 ----
_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");
+ assert(_owner == oopDesc::bs()->write_barrier(_owner), "expect to-space copy");
return _owner;
}
oop owner_klass() const {
assert(_owner_is_scalar_replaced, "should not be called for not scalar replaced object");
return _owner_klass;
< prev index next >