changeset 2004:e31d8c656c5b

Merge
author dcubed
date Mon, 10 Jan 2011 09:23:20 -0800
parents e24ab3fa6aaf (current diff) df307487d610 (diff)
children 7246a374a9f2
files src/share/vm/c1/c1_LIRGenerator.cpp
diffstat 1 files changed, 2 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/c1/c1_LIRGenerator.cpp	Fri Jan 07 22:56:35 2011 -0800
+++ b/src/share/vm/c1/c1_LIRGenerator.cpp	Mon Jan 10 09:23:20 2011 -0800
@@ -1990,9 +1990,8 @@
 
   LIR_Opr reg = reg = rlock_result(x, x->basic_type());
 
+  get_Object_unsafe(reg, src.result(), off.result(), type, x->is_volatile());
   if (x->is_volatile() && os::is_MP()) __ membar_acquire();
-  get_Object_unsafe(reg, src.result(), off.result(), type, x->is_volatile());
-  if (x->is_volatile() && os::is_MP()) __ membar();
 }
 
 
@@ -2014,6 +2013,7 @@
 
   if (x->is_volatile() && os::is_MP()) __ membar_release();
   put_Object_unsafe(src.result(), off.result(), data.result(), type, x->is_volatile());
+  if (x->is_volatile() && os::is_MP()) __ membar();
 }