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