< prev index next >
src/share/vm/opto/valuetypenode.cpp
Print this page
*** 345,359 ****
const Type* oop_type = in_oop->bottom_type();
SafePointNode* sfpt = u->as_SafePoint();
JVMState* jvms = sfpt->jvms();
int start = jvms->debug_start();
int end = jvms->debug_end();
! if (oop_type->meet(TypePtr::NULL_PTR) != oop_type) {
! // Replace safepoint edge by oop
! int nb = sfpt->replace_edges_in_range(this, in_oop, start, end);
! --i; imax -= nb;
! } else {
// Replace safepoint edge by SafePointScalarObjectNode and add field values
assert(jvms != NULL, "missing JVMS");
uint first_ind = (sfpt->req() - jvms->scloff());
SafePointScalarObjectNode* sobj = new SafePointScalarObjectNode(res_type,
#ifdef ASSERT
--- 345,355 ----
const Type* oop_type = in_oop->bottom_type();
SafePointNode* sfpt = u->as_SafePoint();
JVMState* jvms = sfpt->jvms();
int start = jvms->debug_start();
int end = jvms->debug_end();
! assert(oop_type->meet(TypePtr::NULL_PTR) == oop_type, "already available object should be linked directly");
// Replace safepoint edge by SafePointScalarObjectNode and add field values
assert(jvms != NULL, "missing JVMS");
uint first_ind = (sfpt->req() - jvms->scloff());
SafePointScalarObjectNode* sobj = new SafePointScalarObjectNode(res_type,
#ifdef ASSERT
*** 371,381 ****
jvms->set_endoff(sfpt->req());
int nb = sfpt->replace_edges_in_range(this, sobj, start, end);
--i; imax -= nb;
}
}
- }
}
uint ValueTypeNode::set_arguments_for_java_call(CallJavaNode* call, int base_input, const GraphKit& kit, ciValueKlass* base_vk, int base_offset) {
ciValueKlass* vk = value_klass();
if (base_vk == NULL) {
--- 367,376 ----
< prev index next >