LRB midpath code quality
Roman Kennke
rkennke at redhat.com
Wed Mar 6 11:15:04 UTC 2019
Roland:
in this path:
Node* new_val = uncasted_val;
if (unc_ctrl != NULL) {
// Clone the null check in this branch to allow implicit null check
new_val = clone_null_check(ctrl, val, unc_ctrl, phase);
fix_null_check(unc, unc_ctrl, ctrl->in(0)->as_If()->proj_out(0),
uses, phase);
IfNode* iff = unc_ctrl->in(0)->as_If();
phase->igvn().replace_input_of(iff, 1, phase->igvn().intcon(1));
}
what is this replacement with constant 1 doing there?
Roman
>> Also, any idea how we could turn that explicit null-check into an
>> implicit one?
>
> That should happen in PhaseCFG::implicit_null_check(). So something's
> not going the way it should there.
>
> Roland.
>
More information about the shenandoah-dev
mailing list