Mercurial > hg > truffle
diff src/share/vm/opto/graphKit.cpp @ 950:8fe1963e3964
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
author | kvn |
---|---|
date | Fri, 28 Aug 2009 11:19:33 -0700 |
parents | 9987d9d5eb0e |
children | 0f1c19b7a52d |
line wrap: on
line diff
--- a/src/share/vm/opto/graphKit.cpp Thu Aug 27 06:17:23 2009 -0700 +++ b/src/share/vm/opto/graphKit.cpp Fri Aug 28 11:19:33 2009 -0700 @@ -622,11 +622,13 @@ //---------------------------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 @@ 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) {