< prev index next >

src/hotspot/share/c1/c1_LIRAssembler.cpp

Print this page

        

@@ -104,10 +104,11 @@
  , _compilation(c)
  , _frame_map(c->frame_map())
  , _current_block(NULL)
  , _pending_non_safepoint(NULL)
  , _pending_non_safepoint_offset(0)
+ , _immediate_oops_patched(0)
 {
   _slow_case_stubs = new CodeStubList();
 }
 
 

@@ -125,10 +126,11 @@
   }
 }
 
 
 void LIR_Assembler::append_code_stub(CodeStub* stub) {
+  _immediate_oops_patched += stub->nr_immediate_oops_patched();
   _slow_case_stubs->append(stub);
 }
 
 void LIR_Assembler::emit_stubs(CodeStubList* stub_list) {
   for (int m = 0; m < stub_list->length(); m++) {

@@ -472,10 +474,11 @@
     break;
   default:
     fatal("unexpected op code: %s", op->name());
     break;
   }
+  // oopmap_metadata(-1); // TODO: maybe here instead of in call and ic_call ?
 
   // JSR 292
   // Record if this method has MethodHandle invokes.
   if (op->is_method_handle_invoke()) {
     compilation()->set_has_method_handle_invokes(true);

@@ -686,10 +689,19 @@
 
     case lir_on_spin_wait:
       on_spin_wait();
       break;
 
+    case lir_getfp:
+      getfp(op->result_opr());
+      break;
+
+    case lir_getsp:
+      getsp(op->result_opr());
+      break;
+
+
     default:
       ShouldNotReachHere();
       break;
   }
 }
< prev index next >