diff src/cpu/x86/vm/stubGenerator_x86_64.cpp @ 11246:2d4df4c43ae2

fixed bug in java.util.zip.CRC32.updateBytes stub: non-scratch register c_arg3 (i.e. rcx on Unix) was being used, overwriting a live value
author Doug Simon <doug.simon@oracle.com>
date Wed, 07 Aug 2013 16:35:16 +0200
parents 6b0fd0964b87
children abba25b953a2
line wrap: on
line diff
--- a/src/cpu/x86/vm/stubGenerator_x86_64.cpp	Wed Aug 07 10:59:10 2013 +0200
+++ b/src/cpu/x86/vm/stubGenerator_x86_64.cpp	Wed Aug 07 16:35:16 2013 +0200
@@ -3647,8 +3647,8 @@
     const Register crc   = c_rarg0;  // crc
     const Register buf   = c_rarg1;  // source java byte array address
     const Register len   = c_rarg2;  // length
-    const Register table = c_rarg3;  // crc_table address (reuse register)
-    const Register tmp   = r11;
+    const Register table = rscratch1;// crc_table address
+    const Register tmp   = rscratch2;
     assert_different_registers(crc, buf, len, table, tmp, rax);
 
     BLOCK_COMMENT("Entry:");