< prev index next >

src/hotspot/cpu/x86/templateTable_x86.cpp

Print this page
rev 50715 : 8205523: Explicit barriers for interpreter

@@ -4322,10 +4322,12 @@
   transition(atos, vtos);
 
   // check for NULL object
   __ null_check(rax);
 
+  __ resolve_for_write(OOP_NOT_NULL, rax);
+
   const Address monitor_block_top(
         rbp, frame::interpreter_frame_monitor_block_top_offset * wordSize);
   const Address monitor_block_bot(
         rbp, frame::interpreter_frame_initial_sp_offset * wordSize);
   const int entry_size = frame::interpreter_frame_monitor_size() * wordSize;

@@ -4419,10 +4421,12 @@
   transition(atos, vtos);
 
   // check for NULL object
   __ null_check(rax);
 
+  __ resolve_for_write(OOP_NOT_NULL, rax);
+
   const Address monitor_block_top(
         rbp, frame::interpreter_frame_monitor_block_top_offset * wordSize);
   const Address monitor_block_bot(
         rbp, frame::interpreter_frame_initial_sp_offset * wordSize);
   const int entry_size = frame::interpreter_frame_monitor_size() * wordSize;
< prev index next >