8167300: Scheduling failures during gcm should be fatal
authorroland
Mon, 10 Oct 2016 17:04:42 +0200
changeset 42081 30a0176b8af3
parent 42080 1e906304457b
child 42082 c8efadafe85c
child 42083 24fbf2db5efe
8167300: Scheduling failures during gcm should be fatal Reviewed-by: kvn, mcberg
hotspot/src/share/vm/opto/gcm.cpp
hotspot/src/share/vm/opto/lcm.cpp
--- a/hotspot/src/share/vm/opto/gcm.cpp	Thu Oct 13 12:27:39 2016 +0200
+++ b/hotspot/src/share/vm/opto/gcm.cpp	Mon Oct 10 17:04:42 2016 +0200
@@ -297,6 +297,7 @@
         int is_visited = visited.test_set(in->_idx);
         if (!has_block(in)) {
           if (is_visited) {
+            assert(false, "graph should be schedulable");
             return false;
           }
           // Save parent node and next input's index.
@@ -1129,6 +1130,7 @@
 
     if (LCA == NULL) {
       // Bailout without retry
+      assert(false, "graph should be schedulable");
       C->record_method_not_compilable("late schedule failed: LCA == NULL");
       return least;
     }
@@ -1283,6 +1285,7 @@
         C->record_failure(C2Compiler::retry_no_subsuming_loads());
       } else {
         // Bailout without retry when (early->_dom_depth > LCA->_dom_depth)
+        assert(false, "graph should be schedulable");
         C->record_method_not_compilable("late schedule failed: incorrect graph");
       }
       return;
--- a/hotspot/src/share/vm/opto/lcm.cpp	Thu Oct 13 12:27:39 2016 +0200
+++ b/hotspot/src/share/vm/opto/lcm.cpp	Mon Oct 10 17:04:42 2016 +0200
@@ -1147,6 +1147,8 @@
       // If this is the first failure, the sentinel string will "stick"
       // to the Compile object, and the C2Compiler will see it and retry.
       C->record_failure(C2Compiler::retry_no_subsuming_loads());
+    } else {
+      assert(false, "graph should be schedulable");
     }
     // assert( phi_cnt == end_idx(), "did not schedule all" );
     return false;