--- a/hotspot/src/cpu/sparc/vm/c1_LIRGenerator_sparc.cpp Wed Sep 22 23:51:03 2010 -0700
+++ b/hotspot/src/cpu/sparc/vm/c1_LIRGenerator_sparc.cpp Tue Dec 29 19:08:54 2009 +0100
@@ -311,7 +311,7 @@
void LIRGenerator::do_StoreIndexed(StoreIndexed* x) {
- assert(x->is_root(),"");
+ assert(x->is_pinned(),"");
bool needs_range_check = true;
bool use_length = x->length() != NULL;
bool obj_store = x->elt_type() == T_ARRAY || x->elt_type() == T_OBJECT;
@@ -386,7 +386,7 @@
void LIRGenerator::do_MonitorEnter(MonitorEnter* x) {
- assert(x->is_root(),"");
+ assert(x->is_pinned(),"");
LIRItem obj(x->obj(), this);
obj.load_item();
@@ -398,7 +398,7 @@
CodeEmitInfo* info_for_exception = NULL;
if (x->needs_null_check()) {
- info_for_exception = state_for(x, x->lock_stack_before());
+ info_for_exception = state_for(x);
}
// this CodeEmitInfo must not have the xhandlers because here the
@@ -409,7 +409,7 @@
void LIRGenerator::do_MonitorExit(MonitorExit* x) {
- assert(x->is_root(),"");
+ assert(x->is_pinned(),"");
LIRItem obj(x->obj(), this);
obj.dont_load_item();
@@ -871,10 +871,11 @@
// This instruction can be deoptimized in the slow path : use
// O0 as result register.
const LIR_Opr reg = result_register_for(x->type());
-
+#ifndef PRODUCT
if (PrintNotLoaded && !x->klass()->is_loaded()) {
- tty->print_cr(" ###class not loaded at new bci %d", x->bci());
+ tty->print_cr(" ###class not loaded at new bci %d", x->printable_bci());
}
+#endif
CodeEmitInfo* info = state_for(x, x->state());
LIR_Opr tmp1 = FrameMap::G1_oop_opr;
LIR_Opr tmp2 = FrameMap::G3_oop_opr;
@@ -1018,7 +1019,7 @@
obj.load_item();
LIR_Opr out_reg = rlock_result(x);
CodeStub* stub;
- CodeEmitInfo* info_for_exception = state_for(x, x->state()->copy_locks());
+ CodeEmitInfo* info_for_exception = state_for(x);
if (x->is_incompatible_class_change_check()) {
assert(patching_info == NULL, "can't patch this");