< prev index next >
src/cpu/x86/vm/sharedRuntime_x86_64.cpp
Print this page
rev 12152 : [mq]: verification.patch
@@ -2367,10 +2367,11 @@
// Load immediate 1 into swap_reg %rax
__ movl(swap_reg, 1);
// Load (object->mark() | 1) into swap_reg %rax
+ __ shenandoah_store_addr_check(obj_reg); // Access mark word
__ orptr(swap_reg, Address(obj_reg, 0));
// Save (object->mark() | 1) into BasicLock's displaced header
__ movptr(Address(lock_reg, mark_word_offset), swap_reg);
@@ -2531,10 +2532,11 @@
__ movptr(obj_reg, Address(oop_handle_reg, 0));
oopDesc::bs()->interpreter_write_barrier(masm, obj_reg);
Label done;
+ __ shenandoah_store_addr_check(obj_reg);
if (UseBiasedLocking) {
__ biased_locking_exit(obj_reg, old_hdr, done);
}
// Simple recursive lock?
< prev index next >