1.1 --- a/src/cpu/x86/vm/c1_LIRGenerator_x86.cpp Wed Sep 22 23:51:03 2010 -0700 1.2 +++ b/src/cpu/x86/vm/c1_LIRGenerator_x86.cpp Tue Dec 29 19:08:54 2009 +0100 1.3 @@ -107,7 +107,7 @@ 1.4 return false; 1.5 } 1.6 Constant* c = v->as_Constant(); 1.7 - if (c && c->state() == NULL) { 1.8 + if (c && c->state_before() == NULL) { 1.9 // constants of any type can be stored directly, except for 1.10 // unloaded object constants. 1.11 return true; 1.12 @@ -250,7 +250,7 @@ 1.13 1.14 1.15 void LIRGenerator::do_StoreIndexed(StoreIndexed* x) { 1.16 - assert(x->is_root(),""); 1.17 + assert(x->is_pinned(),""); 1.18 bool needs_range_check = true; 1.19 bool use_length = x->length() != NULL; 1.20 bool obj_store = x->elt_type() == T_ARRAY || x->elt_type() == T_OBJECT; 1.21 @@ -325,7 +325,7 @@ 1.22 1.23 1.24 void LIRGenerator::do_MonitorEnter(MonitorEnter* x) { 1.25 - assert(x->is_root(),""); 1.26 + assert(x->is_pinned(),""); 1.27 LIRItem obj(x->obj(), this); 1.28 obj.load_item(); 1.29 1.30 @@ -341,7 +341,7 @@ 1.31 1.32 CodeEmitInfo* info_for_exception = NULL; 1.33 if (x->needs_null_check()) { 1.34 - info_for_exception = state_for(x, x->lock_stack_before()); 1.35 + info_for_exception = state_for(x); 1.36 } 1.37 // this CodeEmitInfo must not have the xhandlers because here the 1.38 // object is already locked (xhandlers expect object to be unlocked) 1.39 @@ -352,7 +352,7 @@ 1.40 1.41 1.42 void LIRGenerator::do_MonitorExit(MonitorExit* x) { 1.43 - assert(x->is_root(),""); 1.44 + assert(x->is_pinned(),""); 1.45 1.46 LIRItem obj(x->obj(), this); 1.47 obj.dont_load_item(); 1.48 @@ -984,9 +984,11 @@ 1.49 1.50 1.51 void LIRGenerator::do_NewInstance(NewInstance* x) { 1.52 +#ifndef PRODUCT 1.53 if (PrintNotLoaded && !x->klass()->is_loaded()) { 1.54 - tty->print_cr(" ###class not loaded at new bci %d", x->bci()); 1.55 + tty->print_cr(" ###class not loaded at new bci %d", x->printable_bci()); 1.56 } 1.57 +#endif 1.58 CodeEmitInfo* info = state_for(x, x->state()); 1.59 LIR_Opr reg = result_register_for(x->type()); 1.60 LIR_Opr klass_reg = new_register(objectType); 1.61 @@ -1127,7 +1129,7 @@ 1.62 obj.load_item(); 1.63 1.64 // info for exceptions 1.65 - CodeEmitInfo* info_for_exception = state_for(x, x->state()->copy_locks()); 1.66 + CodeEmitInfo* info_for_exception = state_for(x); 1.67 1.68 CodeStub* stub; 1.69 if (x->is_incompatible_class_change_check()) {