--- a/hotspot/src/share/vm/opto/compile.hpp Wed Oct 23 10:00:39 2013 +0200
+++ b/hotspot/src/share/vm/opto/compile.hpp Wed Oct 23 12:40:23 2013 +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* speculative_receiver_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);