diff --git a/src/cpu/x86/vm/assembler_x86.cpp b/src/cpu/x86/vm/assembler_x86.cpp index d6433f0e17617b2a12284f982a4adfc0606f2c6d..e36823ccd2aa53718f43eb11ab22ad3d024a55d5 100644 --- a/src/cpu/x86/vm/assembler_x86.cpp +++ b/src/cpu/x86/vm/assembler_x86.cpp @@ -6463,7 +6463,8 @@ void MacroAssembler::serialize_memory(Register thread, Register tmp) { Address index(noreg, tmp, Address::times_1); ExternalAddress page(os::get_memory_serialize_page()); - movptr(ArrayAddress(page, index), tmp); + // Size of store must match masking code above + movl(as_Address(ArrayAddress(page, index)), tmp); } // Calls to C land