< prev index next >
src/hotspot/cpu/ppc/c1_LIRGenerator_ppc.cpp
Print this page
*** 1066,1076 ****
void LIRGenerator::do_CheckCast(CheckCast* x) {
LIRItem obj(x->obj(), this);
CodeEmitInfo* patching_info = NULL;
! if (!x->klass()->is_loaded() || (PatchALot && !x->is_incompatible_class_change_check())) {
// Must do this before locking the destination register as
// an oop register, and before the obj is loaded (so x->obj()->item()
// is valid for creating a debug info location).
patching_info = state_for(x, x->state_before());
}
--- 1066,1076 ----
void LIRGenerator::do_CheckCast(CheckCast* x) {
LIRItem obj(x->obj(), this);
CodeEmitInfo* patching_info = NULL;
! if (!x->klass()->is_loaded() || (PatchALot && !x->is_incompatible_class_change_check() && !x->is_invokespecial_receiver_check())) {
// Must do this before locking the destination register as
// an oop register, and before the obj is loaded (so x->obj()->item()
// is valid for creating a debug info location).
patching_info = state_for(x, x->state_before());
}
< prev index next >