changeset 6309:b9d45b765b60

8036898: assert(t != NULL) failed: must set before get Summary: Ignore nodes without a type when checking for speculative types in Compile::remove_speculative_types(...). Reviewed-by: kvn, roland Contributed-by: Tobias Hartmann <tobias.hartmann@oracle.com>
author anoll
date Thu, 10 Apr 2014 09:26:24 +0200
parents b591c31fa391
children b722c15be816
files src/share/vm/opto/compile.cpp
diffstat 1 files changed, 2 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/opto/compile.cpp	Wed Apr 09 19:45:59 2014 +0000
+++ b/src/share/vm/opto/compile.cpp	Thu Apr 10 09:26:24 2014 +0200
@@ -4048,8 +4048,8 @@
     worklist.push(root());
     for (uint next = 0; next < worklist.size(); ++next) {
       Node *n  = worklist.at(next);
-      const Type* t = igvn.type(n);
-      assert(t == t->remove_speculative(), "no more speculative types");
+      const Type* t = igvn.type_or_null(n);
+      assert((t == NULL) || (t == t->remove_speculative()), "no more speculative types");
       if (n->is_Type()) {
         t = n->as_Type()->type();
         assert(t == t->remove_speculative(), "no more speculative types");