< prev index next >

src/cpu/x86/vm/c1_MacroAssembler_x86.cpp

Print this page
rev 12152 : [mq]: verification.patch

@@ -44,10 +44,12 @@
   Label done;
   int null_check_offset = -1;
 
   verify_oop(obj);
 
+  shenandoah_store_addr_check(obj);
+
   // save object being locked into the BasicObjectLock
   movptr(Address(disp_hdr, BasicObjectLock::obj_offset_in_bytes()), obj);
 
   if (UseBiasedLocking) {
     assert(scratch != noreg, "should have scratch register at this point");

@@ -121,10 +123,13 @@
   if (!UseBiasedLocking) {
     // load object
     movptr(obj, Address(disp_hdr, BasicObjectLock::obj_offset_in_bytes()));
   }
   verify_oop(obj);
+
+  shenandoah_store_addr_check(obj);
+
   // test if object header is pointing to the displaced header, and if so, restore
   // the displaced header in the object - if the object header is not pointing to
   // the displaced header, get the object header instead
   if (os::is_MP()) MacroAssembler::lock(); // must be immediately before cmpxchg!
   cmpxchgptr(hdr, Address(obj, hdr_offset));
< prev index next >