< prev index next >
src/share/vm/runtime/vframe.hpp
Print this page
rev 8961 : [mq]: diff-shenandoah.patch
@@ -248,10 +248,11 @@
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()->resolve_and_maybe_copy_oop(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,10 +264,11 @@
_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()->resolve_and_maybe_copy_oop(_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 >