< prev index next >
src/cpu/x86/vm/sharedRuntime_x86_64.cpp
Print this page
rev 12152 : [mq]: verification.patch
*** 2367,2376 ****
--- 2367,2377 ----
// 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,2540 ****
--- 2532,2542 ----
__ 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 >