changeset 53868:528843c34ccd lworld

8217284: [lworld][c1] TestLWorld.test60 fails to throw IllegalMonitorStateException
author iklam
date Thu, 17 Jan 2019 20:59:19 -0800
parents a423e5ca5bf5
children 5be8e80b52d1
files src/hotspot/cpu/x86/c1_MacroAssembler_x86.cpp
diffstat 1 files changed, 2 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/hotspot/cpu/x86/c1_MacroAssembler_x86.cpp	Thu Jan 17 17:04:08 2019 +0100
+++ b/src/hotspot/cpu/x86/c1_MacroAssembler_x86.cpp	Thu Jan 17 20:59:19 2019 -0800
@@ -154,7 +154,8 @@
 
 void C1_MacroAssembler::initialize_header(Register obj, Register klass, Register len, Register t1, Register t2) {
   assert_different_registers(obj, klass, len);
-  if (UseBiasedLocking && !len->is_valid()) {
+  if ((UseBiasedLocking || EnableValhalla) && !len->is_valid()) {
+    // Need to copy markOopDesc::always_locked_pattern for values.
     assert_different_registers(obj, klass, len, t1, t2);
     movptr(t1, Address(klass, Klass::prototype_header_offset()));
     movptr(Address(obj, oopDesc::mark_offset_in_bytes()), t1);