aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authoranoll <none@none>2014-04-23 10:35:15 +0200
committeranoll <none@none>2014-04-23 10:35:15 +0200
commit7e7ceebd06b390b6e8da533e1142b4bd55b90268 (patch)
tree23d049a9f42daf267603934c61b4e29ad0b3b61d /src
parentd6f263d5a7104072f89f909bb13c2817a82f3ea4 (diff)
8038921: 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>
Diffstat (limited to 'src')
-rw-r--r--src/share/vm/opto/compile.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/share/vm/opto/compile.cpp b/src/share/vm/opto/compile.cpp
index 9c77dd0cf..23ecdfc11 100644
--- a/src/share/vm/opto/compile.cpp
+++ b/src/share/vm/opto/compile.cpp
@@ -3961,8 +3961,8 @@ void Compile::remove_speculative_types(PhaseIterGVN &igvn) {
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");