Mercurial > hg > truffle
diff src/share/vm/runtime/deoptimization.cpp @ 12356:359f7e70ae7f
Reduce HotSpot diff and fix previous merge
author | Gilles Duboscq <duboscq@ssw.jku.at> |
---|---|
date | Fri, 11 Oct 2013 15:41:33 +0200 |
parents | cefad50507d8 |
children | b2882f4ab612 |
line wrap: on
line diff
--- a/src/share/vm/runtime/deoptimization.cpp Fri Oct 11 10:38:03 2013 +0200 +++ b/src/share/vm/runtime/deoptimization.cpp Fri Oct 11 15:41:33 2013 +0200 @@ -869,6 +869,7 @@ } } + // restore fields of an eliminated object array void Deoptimization::reassign_object_array_elements(frame* fr, RegisterMap* reg_map, ObjectValue* sv, objArrayOop obj) { for (int i = 0; i < sv->field_size(); i++) { @@ -1554,6 +1555,7 @@ bool inc_recompile_count = false; ProfileData* pdata = NULL; if (ProfileTraps && update_trap_state && trap_mdo != NULL) { + assert(trap_mdo == get_method_data(thread, profiled_method, false), "sanity"); uint this_trap_count = 0; bool maybe_prior_trap = false; bool maybe_prior_recompile = false; @@ -1711,9 +1713,10 @@ maybe_prior_trap = (prior_trap_count != 0); maybe_prior_recompile = (trap_mdo->decompile_count() != 0); } + ProfileData* pdata = NULL; + // For reasons which are recorded per bytecode, we check per-BCI data. - ProfileData* pdata = NULL; DeoptReason per_bc_reason = reason_recorded_per_bytecode_if_any(reason); assert(per_bc_reason != Reason_none || update_total_trap_count, "must be"); if (per_bc_reason != Reason_none) {