src/cpu/x86/vm/c1_LIRGenerator_x86.cpp

changeset 3153
5cceda753a4a
parent 2781
e1162778c1c8
child 3787
6759698e3140
     1.1 --- a/src/cpu/x86/vm/c1_LIRGenerator_x86.cpp	Fri Sep 16 21:35:06 2011 -0700
     1.2 +++ b/src/cpu/x86/vm/c1_LIRGenerator_x86.cpp	Mon Sep 19 15:21:03 2011 -0700
     1.3 @@ -267,7 +267,8 @@
     1.4    bool use_length = x->length() != NULL;
     1.5    bool obj_store = x->elt_type() == T_ARRAY || x->elt_type() == T_OBJECT;
     1.6    bool needs_store_check = obj_store && (x->value()->as_Constant() == NULL ||
     1.7 -                                         !get_jobject_constant(x->value())->is_null_object());
     1.8 +                                         !get_jobject_constant(x->value())->is_null_object() ||
     1.9 +                                         x->should_profile());
    1.10  
    1.11    LIRItem array(x->array(), this);
    1.12    LIRItem index(x->index(), this);
    1.13 @@ -321,7 +322,7 @@
    1.14      LIR_Opr tmp3 = new_register(objectType);
    1.15  
    1.16      CodeEmitInfo* store_check_info = new CodeEmitInfo(range_check_info);
    1.17 -    __ store_check(value.result(), array.result(), tmp1, tmp2, tmp3, store_check_info);
    1.18 +    __ store_check(value.result(), array.result(), tmp1, tmp2, tmp3, store_check_info, x->profiled_method(), x->profiled_bci());
    1.19    }
    1.20  
    1.21    if (obj_store) {

mercurial