< prev index next >
src/share/vm/opto/live.cpp
Print this page
*** 345,366 ****
assert(check->Opcode() == Op_ConP &&
check->bottom_type()->is_ptr()->ptr() == TypePtr::Null,"Bad base pointer");
}
}
} else if( check->bottom_type()->is_ptr()->_offset == 0 ) {
! if(check->is_Proj() || check->is_Mach() &&
(check->as_Mach()->ideal_Opcode() == Op_CreateEx ||
check->as_Mach()->ideal_Opcode() == Op_ThreadLocal ||
check->as_Mach()->ideal_Opcode() == Op_CMoveP ||
check->as_Mach()->ideal_Opcode() == Op_CheckCastPP ||
#ifdef _LP64
! UseCompressedOops && check->as_Mach()->ideal_Opcode() == Op_CastPP ||
! UseCompressedOops && check->as_Mach()->ideal_Opcode() == Op_DecodeN ||
! UseCompressedClassPointers && check->as_Mach()->ideal_Opcode() == Op_DecodeNKlass ||
#endif
check->as_Mach()->ideal_Opcode() == Op_LoadP ||
! check->as_Mach()->ideal_Opcode() == Op_LoadKlass)) {
// Valid nodes
} else {
check->dump();
assert(false,"Bad base or derived pointer");
}
--- 345,366 ----
assert(check->Opcode() == Op_ConP &&
check->bottom_type()->is_ptr()->ptr() == TypePtr::Null,"Bad base pointer");
}
}
} else if( check->bottom_type()->is_ptr()->_offset == 0 ) {
! if(check->is_Proj() || (check->is_Mach() &&
(check->as_Mach()->ideal_Opcode() == Op_CreateEx ||
check->as_Mach()->ideal_Opcode() == Op_ThreadLocal ||
check->as_Mach()->ideal_Opcode() == Op_CMoveP ||
check->as_Mach()->ideal_Opcode() == Op_CheckCastPP ||
#ifdef _LP64
! (UseCompressedOops && check->as_Mach()->ideal_Opcode() == Op_CastPP) ||
! (UseCompressedOops && check->as_Mach()->ideal_Opcode() == Op_DecodeN) ||
! (UseCompressedClassPointers && check->as_Mach()->ideal_Opcode() == Op_DecodeNKlass) ||
#endif
check->as_Mach()->ideal_Opcode() == Op_LoadP ||
! check->as_Mach()->ideal_Opcode() == Op_LoadKlass))) {
// Valid nodes
} else {
check->dump();
assert(false,"Bad base or derived pointer");
}
< prev index next >