< 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 >