src/share/vm/runtime/deoptimization.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot-comp-hsx Cdiff src/share/vm/runtime/deoptimization.cpp

src/share/vm/runtime/deoptimization.cpp

Print this page

        

*** 1486,1495 **** --- 1486,1498 ---- // one hot trap site, but begins to get fuzzy if there are // many sites. For example, if there are ten sites each // trapping two or more times, they each get the blame for // all of their traps. make_not_entrant = true; + if (per_bc_reason == Reason_unhandled) { + make_not_compilable = true; + } } // Detect repeated recompilation at the same BCI, and enforce a limit. if (make_not_entrant && maybe_prior_recompile) { // More than one recompile at this point.
*** 1605,1615 **** // (pessimistically) to be the culprit. bool maybe_prior_trap = (prior_trap_count != 0); bool maybe_prior_recompile = (trap_mdo->decompile_count() != 0); ProfileData* pdata = NULL; - // For reasons which are recorded per bytecode, we check per-BCI data. DeoptReason per_bc_reason = reason_recorded_per_bytecode_if_any(reason); if (per_bc_reason != Reason_none) { // Find the profile data for this BCI. If there isn't one, // try to allocate one from the MDO's set of spares. --- 1608,1617 ----
src/share/vm/runtime/deoptimization.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File