diff src/cpu/x86/vm/graalRuntime_x86.cpp @ 9232:bb2447c64055

strings used in compiled stubs are lowered to malloc'ed C strings so that there are no embedded oops (for the strings) in the resulting installed code
author Doug Simon <doug.simon@oracle.com>
date Mon, 22 Apr 2013 17:59:14 +0200
parents 4fc644c79b9f
children 3a94641c9e69
line wrap: on
line diff
--- a/src/cpu/x86/vm/graalRuntime_x86.cpp	Mon Apr 22 17:09:02 2013 +0200
+++ b/src/cpu/x86/vm/graalRuntime_x86.cpp	Mon Apr 22 17:59:14 2013 +0200
@@ -972,6 +972,18 @@
       break;
     }
 
+    case stub_printf_id: {
+      __ enter();
+      oop_maps = new OopMapSet();
+      OopMap* oop_map = save_live_registers(sasm, 4);
+      int call_offset = __ call_RT(noreg, noreg, (address)stub_printf, j_rarg0, j_rarg1, j_rarg2, j_rarg3);
+      oop_maps->add_gc_map(call_offset, oop_map);
+      restore_live_registers(sasm);
+      __ leave();
+      __ ret(0);
+      break;
+    }
+
     case log_primitive_id: {
       __ enter();
       oop_maps = new OopMapSet();