Lines Matching refs:ctrl
1329 Node *ctrl, Node *mem, Node *abio,
1340 init_req( TypeFunc::Control , ctrl );
1582 static Node *next_control(Node *ctrl) {
1583 if (ctrl == NULL)
1586 if (ctrl->is_Region()) {
1587 RegionNode *r = ctrl->as_Region();
1592 ctrl = n;
1593 } else if (ctrl->is_Proj()) {
1594 Node *in0 = ctrl->in(0);
1596 ctrl = in0->in(0);
1604 return ctrl;
1610 bool AbstractLockNode::find_matching_unlock(const Node* ctrl, LockNode* lock,
1612 ProjNode *ctrl_proj = (ctrl->is_Proj()) ? ctrl->as_Proj() : NULL;
1634 Node *ctrl = next_control(unlock->in(0));
1636 assert(ctrl != NULL, "invalid control graph");
1637 assert(!ctrl->is_Start(), "missing lock for unlock");
1638 if (ctrl->is_top()) break; // dead control path
1639 if (ctrl->is_Proj()) ctrl = ctrl->in(0);
1640 if (ctrl->is_SafePoint()) {
1642 } else if (ctrl->is_Region()) {
1644 if (ctrl->req() == 3 && ctrl->in(1) != NULL && ctrl->in(2) != NULL) {
1645 Node *in1 = next_control(ctrl->in(1));
1646 Node *in2 = next_control(ctrl->in(2));
1649 ctrl = next_control(in1->in(0)->in(0));
1657 ctrl = next_control(ctrl->in(0)); // keep searching
1660 if (ctrl->is_Lock()) {
1661 LockNode *lock = ctrl->as_Lock();
1810 Node *ctrl = next_control(in(0));
1813 if (find_matching_unlock(ctrl, this, lock_ops)) {
1817 } else if (ctrl->is_Region() ) {
1818 if (find_unlocks_for_region(ctrl->as_Region(), this, lock_ops)) {
1826 if (find_lock_and_unlock_through_if(ctrl, this, lock_ops)) {
1864 } else if (ctrl->is_Region() &&
1865 iter->_worklist.member(ctrl)) {