--- a/hotspot/src/cpu/x86/vm/sharedRuntime_x86_32.cpp Tue May 09 13:50:06 2017 -0400
+++ b/hotspot/src/cpu/x86/vm/sharedRuntime_x86_32.cpp Thu Oct 13 11:27:20 2016 +0200
@@ -1998,7 +1998,7 @@
__ movptr(swap_reg, 1);
// Load (object->mark() | 1) into swap_reg %rax,
- __ orptr(swap_reg, Address(obj_reg, 0));
+ __ orptr(swap_reg, Address(obj_reg, oopDesc::mark_offset_in_bytes()));
// Save (object->mark() | 1) into BasicLock's displaced header
__ movptr(Address(lock_reg, mark_word_offset), swap_reg);
@@ -2009,7 +2009,7 @@
// src -> dest iff dest == rax, else rax, <- dest
// *obj_reg = lock_reg iff *obj_reg == rax, else rax, = *(obj_reg)
- __ cmpxchgptr(lock_reg, Address(obj_reg, 0));
+ __ cmpxchgptr(lock_reg, Address(obj_reg, oopDesc::mark_offset_in_bytes()));
__ jcc(Assembler::equal, lock_done);
// Test if the oopMark is an obvious stack pointer, i.e.,
@@ -2204,7 +2204,7 @@
// src -> dest iff dest == rax, else rax, <- dest
// *obj_reg = rbx, iff *obj_reg == rax, else rax, = *(obj_reg)
- __ cmpxchgptr(rbx, Address(obj_reg, 0));
+ __ cmpxchgptr(rbx, Address(obj_reg, oopDesc::mark_offset_in_bytes()));
__ jcc(Assembler::notEqual, slow_path_unlock);
// slow path re-enters here