--- old/src/hotspot/share/opto/bytecodeInfo.cpp 2019-03-27 17:48:20.100393526 +0800 +++ new/src/hotspot/share/opto/bytecodeInfo.cpp 2019-03-27 17:48:19.908393402 +0800 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2018, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2019, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -374,8 +374,11 @@ // Inlining was forced by CompilerOracle, ciReplay or annotation } else if (profile.count() == 0) { // don't inline unreached call sites - set_msg("call site not reached"); - return false; + // make a not-inline decision more conservatively for callers with loops + if (!caller_method->has_loops() || caller_method->interpreter_invocation_count() > Tier3MinInvocationThreshold) { + set_msg("call site not reached"); + return false; + } } }