src/cpu/x86/vm/c1_CodeStubs_x86.cpp
Print this page
rev 2893 : 7121756: Improve C1 inlining policy by using profiling at call sites
Summary: profile based recompilation of methods with C1 with more inlining.
Reviewed-by:
@@ -399,10 +399,21 @@
__ call(RuntimeAddress(Runtime1::entry_for(Runtime1::throw_null_pointer_exception_id)));
ce->add_call_info_here(_info);
debug_only(__ should_not_reach_here());
}
+void InvalidateProfileInliningStub::emit_code(LIR_Assembler* ce) {
+ __ bind(_entry);
+
+ ce->store_parameter(_obj->as_register(), 0);
+ assert(_klass->is_loaded(), "class should be loaded");
+ ce->store_parameter(_klass->constant_encoding(), 1);
+
+ __ call(RuntimeAddress(Runtime1::entry_for(Runtime1::invalidate_profile_inlining_id)));
+ ce->add_call_info_here(_info);
+ debug_only(__ should_not_reach_here());
+}
void SimpleExceptionStub::emit_code(LIR_Assembler* ce) {
assert(__ rsp_offset() == 0, "frame size should be fixed");
__ bind(_entry);