diff options
author | kvn <none@none> | 2009-08-28 11:19:33 -0700 |
---|---|---|
committer | kvn <none@none> | 2009-08-28 11:19:33 -0700 |
commit | 28958ddc54f8b05a5678bc98c7b23e3252a6ca9b (patch) | |
tree | c0efaa82c8347a644ecb2d41600b5f07c8cdeb68 /src/share/vm/opto/graphKit.cpp | |
parent | 97c5d5c2fbc8df65ab42e5a780552cb678d3f550 (diff) |
6875577: CTW fails with /hotspot/src/share/vm/opto/memnode.cpp
Summary: Fix do_null_check to check for unloaded klass for all oop pointers.
Reviewed-by: never, cfang
Diffstat (limited to 'src/share/vm/opto/graphKit.cpp')
-rw-r--r-- | src/share/vm/opto/graphKit.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/share/vm/opto/graphKit.cpp b/src/share/vm/opto/graphKit.cpp index 955b736ee..995ed4e90 100644 --- a/src/share/vm/opto/graphKit.cpp +++ b/src/share/vm/opto/graphKit.cpp @@ -622,11 +622,13 @@ BuildCutout::~BuildCutout() { //---------------------------PreserveReexecuteState---------------------------- PreserveReexecuteState::PreserveReexecuteState(GraphKit* kit) { + assert(!kit->stopped(), "must call stopped() before"); _kit = kit; _sp = kit->sp(); _reexecute = kit->jvms()->_reexecute; } PreserveReexecuteState::~PreserveReexecuteState() { + if (_kit->stopped()) return; _kit->jvms()->_reexecute = _reexecute; _kit->set_sp(_sp); } @@ -1123,7 +1125,7 @@ Node* GraphKit::null_check_common(Node* value, BasicType type, case T_OBJECT : { const Type *t = _gvn.type( value ); - const TypeInstPtr* tp = t->isa_instptr(); + const TypeOopPtr* tp = t->isa_oopptr(); if (tp != NULL && !tp->klass()->is_loaded() // Only for do_null_check, not any of its siblings: && !assert_null && null_control == NULL) { |