6919069: client compiler needs to capture more profile information for tiered work

Added profiling of instanceof and aastore.

Reviewed-by: kvn, jrose, never
This commit is contained in:
Igor Veresov 2010-09-13 12:10:49 -07:00
parent 0aba89442c
commit aa21a39d97
11 changed files with 305 additions and 265 deletions

View file

@ -1156,10 +1156,10 @@ void LIRGenerator::do_InstanceOf(InstanceOf* x) {
patching_info = state_for(x, x->state_before());
}
obj.load_item();
LIR_Opr tmp = new_register(objectType);
__ instanceof(reg, obj.result(), x->klass(),
tmp, new_register(objectType), LIR_OprFact::illegalOpr,
x->direct_compare(), patching_info);
new_register(objectType), new_register(objectType),
!x->klass()->is_loaded() ? new_register(objectType) : LIR_OprFact::illegalOpr,
x->direct_compare(), patching_info, x->profiled_method(), x->profiled_bci());
}