changeset 11228:e28663a9f5ef

fixed bug in java.util.zip.CRC32.update(int b) interpreter entry stub and re-enabled CRC32 intrinsics
author Doug Simon <doug.simon@oracle.com>
date Tue, 06 Aug 2013 18:31:23 +0200
parents bd0e589a9a65
children 78da293f6efa
files src/cpu/x86/vm/templateInterpreter_x86_64.cpp src/share/vm/runtime/arguments.cpp
diffstat 2 files changed, 2 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/src/cpu/x86/vm/templateInterpreter_x86_64.cpp	Tue Aug 06 18:10:44 2013 +0200
+++ b/src/cpu/x86/vm/templateInterpreter_x86_64.cpp	Tue Aug 06 18:31:23 2013 +0200
@@ -925,7 +925,7 @@
     address entry = __ pc();
 
     // rbx,: Method*
-    // rsi: senderSP must preserved for slow path, set SP to it on fast path
+    // r13: senderSP must preserved for slow path, set SP to it on fast path
     // rdx: scratch
     // rdi: scratch
 
@@ -956,7 +956,7 @@
 
     // _areturn
     __ pop(rdi);                // get return address
-    __ mov(rsp, rsi);           // set sp to sender sp
+    __ mov(rsp, r13);           // set sp to sender sp
     __ jmp(rdi);
 
     // generate a vanilla native entry as the slow path
--- a/src/share/vm/runtime/arguments.cpp	Tue Aug 06 18:10:44 2013 +0200
+++ b/src/share/vm/runtime/arguments.cpp	Tue Aug 06 18:31:23 2013 +0200
@@ -2218,15 +2218,6 @@
       warning("forcing ScavengeRootsInCode non-zero because Graal is enabled");
       ScavengeRootsInCode = 1;
   }
-
-  if (UseCRC32Intrinsics) {
-    // For some yet to be determined reason, enabling CRC32 intrinsics causes
-    // a Graal compiled call to 'static java.util.zip.CRC32.update(int crc, int b)'
-    // to crash the VM
-    warning("disabling CRC32 intrinsics because Graal is enabled");
-  }
-  // This prevents the flag being set to true by VM_Version::get_processor_features()
-  FLAG_SET_CMDLINE(bool, UseCRC32Intrinsics, false);
 #endif
 
   // Need to limit the extent of the padding to reasonable size.