1520 const TypePtr* adr_type, |
1520 const TypePtr* adr_type, |
1521 Node* val, |
1521 Node* val, |
1522 const TypeOopPtr* val_type, |
1522 const TypeOopPtr* val_type, |
1523 BasicType bt, |
1523 BasicType bt, |
1524 bool use_precise) { |
1524 bool use_precise) { |
|
1525 // Transformation of a value which could be NULL pointer (CastPP #NULL) |
|
1526 // could be delayed during Parse (for example, in adjust_map_after_if()). |
|
1527 // Execute transformation here to avoid barrier generation in such case. |
|
1528 if (_gvn.type(val) == TypePtr::NULL_PTR) |
|
1529 val = _gvn.makecon(TypePtr::NULL_PTR); |
1525 |
1530 |
1526 set_control(ctl); |
1531 set_control(ctl); |
1527 if (stopped()) return top(); // Dead path ? |
1532 if (stopped()) return top(); // Dead path ? |
1528 |
1533 |
1529 assert(bt == T_OBJECT, "sanity"); |
1534 assert(bt == T_OBJECT, "sanity"); |