changeset 20708:d9e22e15d3f6

8066775: opto/node.hpp:355, assert(i < _max) failed: oob: i=1, _max=1 Summary: bad assumption on graph shape in CastIINode::Value if that part of the graph is becoming dead. Reviewed-by: kvn
author roland
date Fri, 05 Dec 2014 18:03:15 +0100
parents e3d0aaab84aa
children 28f116adb50c
files src/share/vm/opto/connode.cpp
diffstat 1 files changed, 2 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/opto/connode.cpp	Tue Dec 09 18:49:13 2014 +0100
+++ b/src/share/vm/opto/connode.cpp	Fri Dec 05 18:03:15 2014 +0100
@@ -462,7 +462,8 @@
   // Try to improve the type of the CastII if we recognize a CmpI/If
   // pattern.
   if (_carry_dependency) {
-    if (in(0) != NULL && (in(0)->is_IfFalse() || in(0)->is_IfTrue())) {
+    if (in(0) != NULL && in(0)->in(0) != NULL && in(0)->in(0)->is_If()) {
+      assert(in(0)->is_IfFalse() || in(0)->is_IfTrue(), "should be If proj");
       Node* proj = in(0);
       if (proj->in(0)->in(1)->is_Bool()) {
         Node* b = proj->in(0)->in(1);