src/share/vm/ci/ciTypeFlow.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File 6877170 Cdiff src/share/vm/ci/ciTypeFlow.hpp

src/share/vm/ci/ciTypeFlow.hpp

Print this page

        

*** 120,129 **** --- 120,134 ---- // Apply the effect of a single bytecode to the JsrSet. void apply_control(ciTypeFlow* analyzer, ciBytecodeStream* str, StateVector* state); + // Bring this JsrSet into agreement with this state by removing + // any JsrRecords that refer to addresses no longer mentioned in + // the state. + void apply_state(StateVector* state); + // What is the cardinality of this set? int size() const { return _set->length(); } void print_on(outputStream* st) const PRODUCT_RETURN; };
*** 628,637 **** --- 633,646 ---- // Copy the value of our JsrSet into another void copy_jsrs_into(JsrSet* copy) const { _jsrs->copy_into(copy); } + // Remove dead address from the state and also from the JsrSet. + // The reduces useless cloning for complex jsr/ret constructs. + bool delete_dead_addresses(); + // Meets the start state of this block with another state, destructively // modifying this one. Returns true if any modification takes place. bool meet(const StateVector* incoming) { return state()->meet(incoming); }
src/share/vm/ci/ciTypeFlow.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File