diff src/share/vm/c1/c1_LIRGenerator.cpp @ 7425:1e41b0bc58a0

8004318: JEP-171: Support Unsafe fences intrinsics Summary: Add three memory-ordering intrinsics to the sun.misc.Unsafe class. Reviewed-by: twisti, kvn Contributed-by: Aleksey Shipilev <aleksey.shipilev@oracle.com>
author kvn
date Tue, 18 Dec 2012 17:37:44 -0800
parents 8e47bac5643a
children 989155e2d07a db9981fd3124
line wrap: on
line diff
--- a/src/share/vm/c1/c1_LIRGenerator.cpp	Tue Dec 18 10:47:23 2012 -0800
+++ b/src/share/vm/c1/c1_LIRGenerator.cpp	Tue Dec 18 17:37:44 2012 -0800
@@ -2977,6 +2977,16 @@
     do_CompareAndSwap(x, longType);
     break;
 
+  case vmIntrinsics::_loadFence :
+    if (os::is_MP()) __ membar_acquire();
+    break;
+  case vmIntrinsics::_storeFence:
+    if (os::is_MP()) __ membar_release();
+    break;
+  case vmIntrinsics::_fullFence :
+    if (os::is_MP()) __ membar();
+    break;
+
   case vmIntrinsics::_Reference_get:
     do_Reference_get(x);
     break;