RFR(L): 8185556: [MVT] C2 compiler support for non-flattened value type fields
Roland Westrelin
rwestrel at redhat.com
Thu Sep 28 15:24:19 UTC 2017
> In more detail: We need a null check because non-flattened value type fields can be NULL. The null check has two
> branches: in the not_null branch, we load the value type fields from the oop and in the null branch we use the default
> value type. The region then merges both branches. Subsequent code now needs to use the updated ctl when we continue
> parsing because the actual field values are dependent on the null check.
But then you reset the control to the control that is before the null
check?
442 Node* ctl = map->control();
443 arg = ValueTypeNode::make(gvn, ctl, map->memory(), arg);
444 map->set_control(ctl);
Roland.
More information about the valhalla-dev
mailing list