aboutsummaryrefslogtreecommitdiff
path: root/src/share/vm
diff options
context:
space:
mode:
authorkvn <none@none>2014-12-02 12:24:31 -0800
committerkvn <none@none>2014-12-02 12:24:31 -0800
commit4d9f94b13b7bdb3b055b14f7975f65ef0a7239e8 (patch)
tree30272b1abb0673df96ddb969b1e10eb6c1a753cf /src/share/vm
parentd03dd2db81824ff71ee9acf6f1e4483eaa7af407 (diff)
downloadjdk8u_hotspot-4d9f94b13b7bdb3b055b14f7975f65ef0a7239e8.tar.gz
8066199: C2 escape analysis prevents VM from exiting quickly
Summary: Check for safepoint and block during EA Connection graph construction. Reviewed-by: roland, vlivanov, shade
Diffstat (limited to 'src/share/vm')
-rw-r--r--src/share/vm/opto/escape.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/share/vm/opto/escape.cpp b/src/share/vm/opto/escape.cpp
index 4af344928..384fe0810 100644
--- a/src/share/vm/opto/escape.cpp
+++ b/src/share/vm/opto/escape.cpp
@@ -1106,6 +1106,9 @@ bool ConnectionGraph::complete_connection_graph(
// Each 4 iterations calculate how much time it will take
// to complete graph construction.
time.stop();
+ // Poll for requests from shutdown mechanism to quiesce compiler
+ // because Connection graph construction may take long time.
+ CompileBroker::maybe_block();
double stop_time = time.seconds();
double time_per_iter = (stop_time - start_time) / (double)SAMPLE_SIZE;
double time_until_end = time_per_iter * (double)(java_objects_length - next);