src/hotspot/share/opto/doCall.cpp
changeset 53393 0bb889c05406
parent 52634 85283f9565da
child 53399 bf806003a4de
equal deleted inserted replaced
53392:cb7347310fa1 53393:0bb889c05406
   259           }
   259           }
   260           CallGenerator* miss_cg;
   260           CallGenerator* miss_cg;
   261           Deoptimization::DeoptReason reason = morphism == 2 ?
   261           Deoptimization::DeoptReason reason = morphism == 2 ?
   262             Deoptimization::Reason_bimorphic : Deoptimization::reason_class_check(speculative_receiver_type != NULL);
   262             Deoptimization::Reason_bimorphic : Deoptimization::reason_class_check(speculative_receiver_type != NULL);
   263           if ((morphism == 1 || (morphism == 2 && next_hit_cg != NULL)) &&
   263           if ((morphism == 1 || (morphism == 2 && next_hit_cg != NULL)) &&
   264               !too_many_traps(caller, bci, reason)
   264               !too_many_traps(caller, bci, reason) &&
       
   265               !too_many_recompiles(caller, bci, reason)
   265              ) {
   266              ) {
   266             // Generate uncommon trap for class check failure path
   267             // Generate uncommon trap for class check failure path
   267             // in case of monomorphic or bimorphic virtual call site.
   268             // in case of monomorphic or bimorphic virtual call site.
   268             miss_cg = CallGenerator::for_uncommon_trap(callee, reason,
   269             miss_cg = CallGenerator::for_uncommon_trap(callee, reason,
   269                         Deoptimization::Action_maybe_recompile);
   270                         Deoptimization::Action_maybe_recompile);