diff src/share/vm/graal/graalCompilerToVM.cpp @ 5154:ae72dd38eeb1

bugfix, parallel GC seems stable
author Christian Haeubl <christian.haeubl@oracle.com>
date Fri, 23 Mar 2012 12:12:35 -0700
parents fdd9dd4508fa
children cce31bc56c00
line wrap: on
line diff
--- a/src/share/vm/graal/graalCompilerToVM.cpp	Thu Mar 22 19:06:04 2012 -0700
+++ b/src/share/vm/graal/graalCompilerToVM.cpp	Fri Mar 23 12:12:35 2012 -0700
@@ -62,10 +62,14 @@
   if (RewriteBytecodes || RewriteFrequentPairs) {
     BytecodeStream s(method);
     while(!s.is_last_bytecode()) {
-      jbyte code = s.next();
-      env->SetByteArrayRegion(result, s.bci(), 1, &code);
+      s.next();
+      Bytecodes::Code code = s.raw_code();
+      if (!Bytecodes::is_java_code(code)) {
+        jbyte original_code = Bytecodes::java_code(code);
+        env->SetByteArrayRegion(result, s.bci(), 1, &original_code);
+      }
     }
-  }
+  }  
 
   // replace all breakpoints
   if (method->number_of_breakpoints() > 0) {