Mercurial > hg > openjdk > jdk8u > hotspot
changeset 9318:1dde8affa7e6
8212070: Introduce diagnostic flag to abort VM on failed JIT compilation
Reviewed-by: mikael, thartmann
author | shade |
---|---|
date | Mon, 19 Nov 2018 11:51:27 +0100 |
parents | bc185d95c9f5 |
children | 3c4577d95636 |
files | src/share/vm/compiler/compileBroker.cpp src/share/vm/runtime/globals.hpp |
diffstat | 2 files changed, 12 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/share/vm/compiler/compileBroker.cpp Tue Sep 22 08:33:42 2020 +0000 +++ b/src/share/vm/compiler/compileBroker.cpp Mon Nov 19 11:51:27 2018 +0100 @@ -2042,6 +2042,15 @@ event.set_failureMessage(failure_reason); event.commit(); } + + if (AbortVMOnCompilationFailure) { + if (compilable == ciEnv::MethodCompilable_not_at_tier) { + fatal(err_msg("Not compilable at tier %d: %s", task_level, failure_reason)); + } + if (compilable == ciEnv::MethodCompilable_never) { + fatal(err_msg("Never compilable: %s", failure_reason)); + } + } } else { task->mark_success(); task->set_num_inlined_bytecodes(ci_env.num_inlined_bytecodes());
--- a/src/share/vm/runtime/globals.hpp Tue Sep 22 08:33:42 2020 +0000 +++ b/src/share/vm/runtime/globals.hpp Mon Nov 19 11:51:27 2018 +0100 @@ -3484,6 +3484,9 @@ notproduct(bool, CIObjectFactoryVerify, false, \ "enable potentially expensive verification in ciObjectFactory") \ \ + diagnostic(bool, AbortVMOnCompilationFailure, false, \ + "Abort VM when method had failed to compile.") \ + \ /* Priorities */ \ product_pd(bool, UseThreadPriorities, "Use native thread priorities") \ \