Mercurial > hg > graal-compiler
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.