changeset 20681:4c228230f1d6

8066045: opto/node.hpp:355, assert(i < _max) failed: oob: i=1, _max=1 Summary: code in PhaseIterGVN::add_users_to_worklist() from 8054478 makes incorrect assumption about graph shape Reviewed-by: iveresov
author roland
date Thu, 27 Nov 2014 16:54:49 +0100
parents 5b8e0f84f00f
children b12418b0d05c
files src/share/vm/opto/phaseX.cpp
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/opto/phaseX.cpp	Mon Dec 01 22:27:00 2014 +0100
+++ b/src/share/vm/opto/phaseX.cpp	Thu Nov 27 16:54:49 2014 +0100
@@ -1379,7 +1379,7 @@
             Node* castii = in1->raw_out(i);
             if (castii->in(0) != NULL && castii->in(0)->in(0) != NULL && castii->in(0)->in(0)->is_If()) {
               Node* ifnode = castii->in(0)->in(0);
-              if (ifnode->in(1) != NULL && ifnode->in(1)->in(1) == use) {
+              if (ifnode->in(1) != NULL && ifnode->in(1)->is_Bool() && ifnode->in(1)->in(1) == use) {
                 // Reprocess a CastII node that may depend on an
                 // opaque node value when the opaque node is
                 // removed. In case it carries a dependency we can do