--- old/src/share/vm/opto/compile.hpp 2013-10-17 18:54:50.022755860 +0200 +++ new/src/share/vm/opto/compile.hpp 2013-10-17 18:54:49.698656292 +0200 @@ -424,6 +424,8 @@ static int cmp_expensive_nodes(Node** n1, Node** n2); // Expensive nodes list already sorted? bool expensive_nodes_sorted() const; + // Remove the speculative part of types and clean up the graph + void remove_speculative_types(PhaseIterGVN &igvn); // Are we within a PreserveJVMState block? int _preserve_jvm_state; @@ -824,8 +826,8 @@ // Decide how to build a call. // The profile factor is a discount to apply to this site's interp. profile. CallGenerator* call_generator(ciMethod* call_method, int vtable_index, bool call_does_dispatch, - JVMState* jvms, bool allow_inline, float profile_factor, bool allow_intrinsics = true, - bool delayed_forbidden = false); + JVMState* jvms, bool allow_inline, float profile_factor, ciKlass* spec_rcvr_type = NULL, + bool allow_intrinsics = true, bool delayed_forbidden = false); bool should_delay_inlining(ciMethod* call_method, JVMState* jvms) { return should_delay_string_inlining(call_method, jvms) || should_delay_boxing_inlining(call_method, jvms);