Lines Matching refs:condition
64 // Try to use a phi as a branch condition if the control flow from the branch
67 // use the same branch condition. In such case, create a new phi with constant
68 // inputs and let the second branch use the phi as its branch condition. From
72 // condition condition
129 // Replace the branch condition with the new phi.
134 Node* condition = node->InputAt(0);
140 // If we know the condition we can discard the branch.
141 if (from_input.LookupCondition(condition, &branch, &condition_value)) {
158 // the branch condition.
166 // Assuming condition is in control1's path conditions, and !condition is in
169 // control1 control2 condition effect1
177 // condition | / \ | /
188 Node* condition = NodeProperties::GetValueInput(node, 0);
202 if (!from_input.LookupCondition(condition, &previous_branch,
208 condition, NodeProperties::GetEffectInput(effect_input, edge.index()),
235 Node* condition = node->InputAt(0);
253 if (from_input.LookupCondition(condition, &previous_branch,
258 // condition control condition control
275 if (condition == NodeProperties::GetValueInput(branch, 0)) {
306 return UpdateConditions(node, from_input, condition, node,
315 Node* condition = NodeProperties::GetValueInput(node, 0);
329 // If we know the condition we can discard the branch.
330 if (conditions.LookupCondition(condition, &branch, &condition_value)) {
344 return UpdateConditions(node, conditions, condition, node, condition_is_true,
349 // Add the condition to the list arriving from the input branch.
358 Node* condition = branch->InputAt(0);
359 return UpdateConditions(node, from_branch, condition, branch, is_true_branch,
390 // Change the current condition block list to a longest common tail of this
391 // condition list and the other list. (The common tail should correspond to
417 // Only signal that the node has Changed if the condition information has
445 Zone* zone, Node* condition, Node* branch, bool is_true,
447 if (!LookupCondition(condition)) {
448 BranchCondition branch_condition(condition, branch, is_true);
457 conditions_.Set(condition, branch_condition);
463 Zone* zone, Node* condition, Node* branch, bool is_true) {
465 if (!LookupCondition(condition)) {
466 BranchCondition branch_condition(condition, branch, is_true);
468 conditions_.Set(condition, branch_condition);
475 Node* condition) const {
476 return conditions_.Get(condition).IsSet();
480 Node* condition, Node** branch, bool* is_true) const {
481 const BranchCondition& element = conditions_.Get(condition);
495 conditions_.Set(branch_condition.condition, {});
501 conditions_.Set(branch_condition.condition, {});
513 for (BranchCondition condition : block) {
515 if (conditions_copy.Get(condition.condition) != condition) return false;
516 conditions_copy.Set(condition.condition, {});