src/cpu/sparc/vm/c1_LIRGenerator_sparc.cpp

changeset 2174
f02a8bbe6ed4
parent 2146
3a294e483abc
child 2203
c393f046f4c5
     1.1 --- a/src/cpu/sparc/vm/c1_LIRGenerator_sparc.cpp	Wed Sep 22 23:51:03 2010 -0700
     1.2 +++ b/src/cpu/sparc/vm/c1_LIRGenerator_sparc.cpp	Tue Dec 29 19:08:54 2009 +0100
     1.3 @@ -311,7 +311,7 @@
     1.4  
     1.5  
     1.6  void LIRGenerator::do_StoreIndexed(StoreIndexed* x) {
     1.7 -  assert(x->is_root(),"");
     1.8 +  assert(x->is_pinned(),"");
     1.9    bool needs_range_check = true;
    1.10    bool use_length = x->length() != NULL;
    1.11    bool obj_store = x->elt_type() == T_ARRAY || x->elt_type() == T_OBJECT;
    1.12 @@ -386,7 +386,7 @@
    1.13  
    1.14  
    1.15  void LIRGenerator::do_MonitorEnter(MonitorEnter* x) {
    1.16 -  assert(x->is_root(),"");
    1.17 +  assert(x->is_pinned(),"");
    1.18    LIRItem obj(x->obj(), this);
    1.19    obj.load_item();
    1.20  
    1.21 @@ -398,7 +398,7 @@
    1.22  
    1.23    CodeEmitInfo* info_for_exception = NULL;
    1.24    if (x->needs_null_check()) {
    1.25 -    info_for_exception = state_for(x, x->lock_stack_before());
    1.26 +    info_for_exception = state_for(x);
    1.27    }
    1.28  
    1.29    // this CodeEmitInfo must not have the xhandlers because here the
    1.30 @@ -409,7 +409,7 @@
    1.31  
    1.32  
    1.33  void LIRGenerator::do_MonitorExit(MonitorExit* x) {
    1.34 -  assert(x->is_root(),"");
    1.35 +  assert(x->is_pinned(),"");
    1.36    LIRItem obj(x->obj(), this);
    1.37    obj.dont_load_item();
    1.38  
    1.39 @@ -871,10 +871,11 @@
    1.40    // This instruction can be deoptimized in the slow path : use
    1.41    // O0 as result register.
    1.42    const LIR_Opr reg = result_register_for(x->type());
    1.43 -
    1.44 +#ifndef PRODUCT
    1.45    if (PrintNotLoaded && !x->klass()->is_loaded()) {
    1.46 -    tty->print_cr("   ###class not loaded at new bci %d", x->bci());
    1.47 +    tty->print_cr("   ###class not loaded at new bci %d", x->printable_bci());
    1.48    }
    1.49 +#endif
    1.50    CodeEmitInfo* info = state_for(x, x->state());
    1.51    LIR_Opr tmp1 = FrameMap::G1_oop_opr;
    1.52    LIR_Opr tmp2 = FrameMap::G3_oop_opr;
    1.53 @@ -1018,7 +1019,7 @@
    1.54    obj.load_item();
    1.55    LIR_Opr out_reg = rlock_result(x);
    1.56    CodeStub* stub;
    1.57 -  CodeEmitInfo* info_for_exception = state_for(x, x->state()->copy_locks());
    1.58 +  CodeEmitInfo* info_for_exception = state_for(x);
    1.59  
    1.60    if (x->is_incompatible_class_change_check()) {
    1.61      assert(patching_info == NULL, "can't patch this");

mercurial