Lines Matching full:control

5 #include "src/compiler/effect-control-linearizer.h"
44 Node* current_control = nullptr; // New control.
96 Node* control = block->NodeAt(0); in UpdateBlockControl() local
97 DCHECK(NodeProperties::IsControl(control)); in UpdateBlockControl()
100 if (control->opcode() == IrOpcode::kEnd) return; in UpdateBlockControl()
102 // Update all inputs to the given control node with the correct control. in UpdateBlockControl()
103 DCHECK(control->opcode() == IrOpcode::kMerge || in UpdateBlockControl()
104 static_cast<size_t>(control->op()->ControlInputCount()) == in UpdateBlockControl()
106 if (static_cast<size_t>(control->op()->ControlInputCount()) != in UpdateBlockControl()
108 return; // We already re-wired the control inputs of this node. in UpdateBlockControl()
110 for (int i = 0; i < control->op()->ControlInputCount(); i++) { in UpdateBlockControl()
111 Node* input = NodeProperties::GetControlInput(control, i); in UpdateBlockControl()
116 NodeProperties::ReplaceControlInput(control, block_effect.current_control, in UpdateBlockControl()
162 // EffectPhi nodes whose uses have either the IfTrue or IfFalse as control in TryCloneBranch()
227 // directly control-dependend on either the IfTrue or the IfFalse in TryCloneBranch()
230 Node* control = NodeProperties::GetControlInput(edge.from()); in TryCloneBranch() local
232 control = NodeProperties::GetControlInput(control, edge.index()); in TryCloneBranch()
234 if (control != matcher.IfTrue() && control != matcher.IfFalse()) return; in TryCloneBranch()
280 Node* control = NodeProperties::GetControlInput(edge.from()); in TryCloneBranch() local
282 control = NodeProperties::GetControlInput(control, edge.index()); in TryCloneBranch()
284 DCHECK(control == matcher.IfTrue() || control == matcher.IfFalse()); in TryCloneBranch()
285 edge.UpdateTo((control == matcher.IfTrue()) ? phi_true : phi_false); in TryCloneBranch()
314 // The control node should be the first. in Run()
315 Node* control = block->NodeAt(instr); in Run() local
316 DCHECK(NodeProperties::IsControl(control)); in Run()
317 // Update the control inputs. in Run()
320 // computed the control yet. This should only happen for loops. in Run()
321 DCHECK_EQ(IrOpcode::kLoop, control->opcode()); in Run()
339 DCHECK_NE(IrOpcode::kIfException, control->opcode()); in Run()
366 DCHECK_EQ(graph()->start(), control); in Run()
368 } else if (control->opcode() == IrOpcode::kEnd) { in Run()
370 DCHECK_EQ(BasicBlock::kNone, block->control()); in Run()
386 DCHECK_NE(IrOpcode::kIfException, control->opcode()); in Run()
391 inputs_buffer.push_back(control); in Run()
396 if (control->opcode() == IrOpcode::kLoop) { in Run()
401 } else if (control->opcode() == IrOpcode::kIfException) { in Run()
404 NodeProperties::ReplaceEffectInput(control, effect); in Run()
405 effect = control; in Run()
438 ProcessNode(node, &frame_state, &effect, &control); in Run()
441 switch (block->control()) { in Run()
452 ProcessNode(block->control_input(), &frame_state, &effect, &control); in Run()
456 ProcessNode(block->control_input(), &frame_state, &effect, &control); in Run()
462 // Store the effect, control and frame state for later use. in Run()
469 data->current_control = control; in Run()
488 void TryScheduleCallIfSuccess(Node* node, Node** control) { in TryScheduleCallIfSuccess() argument
494 *control = edge.from(); in TryScheduleCallIfSuccess()
503 Node** effect, Node** control) { in ProcessNode() argument
507 // If the node needs to be wired into the effect/control chain, do this in ProcessNode()
509 if (TryWireInStateEffect(node, *frame_state, effect, control)) { in ProcessNode()
581 // Rewire control inputs. in ProcessNode()
583 NodeProperties::ReplaceControlInput(node, *control, i); in ProcessNode()
585 // Update the current control and wire IfSuccess right after calls. in ProcessNode()
587 *control = node; in ProcessNode()
590 TryScheduleCallIfSuccess(node, control); in ProcessNode()
598 Node** control) { in TryWireInStateEffect() argument
602 state = LowerChangeBitToTagged(node, *effect, *control); in TryWireInStateEffect()
605 state = LowerChangeInt31ToTaggedSigned(node, *effect, *control); in TryWireInStateEffect()
608 state = LowerChangeInt32ToTagged(node, *effect, *control); in TryWireInStateEffect()
611 state = LowerChangeUint32ToTagged(node, *effect, *control); in TryWireInStateEffect()
614 state = LowerChangeFloat64ToTagged(node, *effect, *control); in TryWireInStateEffect()
617 state = LowerChangeFloat64ToTaggedPointer(node, *effect, *control); in TryWireInStateEffect()
620 state = LowerChangeTaggedSignedToInt32(node, *effect, *control); in TryWireInStateEffect()
623 state = LowerChangeTaggedToBit(node, *effect, *control); in TryWireInStateEffect()
626 state = LowerChangeTaggedToInt32(node, *effect, *control); in TryWireInStateEffect()
629 state = LowerChangeTaggedToUint32(node, *effect, *control); in TryWireInStateEffect()
632 state = LowerChangeTaggedToFloat64(node, *effect, *control); in TryWireInStateEffect()
635 state = LowerTruncateTaggedToBit(node, *effect, *control); in TryWireInStateEffect()
638 state = LowerTruncateTaggedToFloat64(node, *effect, *control); in TryWireInStateEffect()
641 state = LowerCheckBounds(node, frame_state, *effect, *control); in TryWireInStateEffect()
644 state = LowerCheckMaps(node, frame_state, *effect, *control); in TryWireInStateEffect()
647 state = LowerCheckNumber(node, frame_state, *effect, *control); in TryWireInStateEffect()
650 state = LowerCheckString(node, frame_state, *effect, *control); in TryWireInStateEffect()
653 state = LowerCheckIf(node, frame_state, *effect, *control); in TryWireInStateEffect()
656 state = LowerCheckedInt32Add(node, frame_state, *effect, *control); in TryWireInStateEffect()
659 state = LowerCheckedInt32Sub(node, frame_state, *effect, *control); in TryWireInStateEffect()
662 state = LowerCheckedInt32Div(node, frame_state, *effect, *control); in TryWireInStateEffect()
665 state = LowerCheckedInt32Mod(node, frame_state, *effect, *control); in TryWireInStateEffect()
668 state = LowerCheckedUint32Div(node, frame_state, *effect, *control); in TryWireInStateEffect()
671 state = LowerCheckedUint32Mod(node, frame_state, *effect, *control); in TryWireInStateEffect()
674 state = LowerCheckedInt32Mul(node, frame_state, *effect, *control); in TryWireInStateEffect()
678 LowerCheckedInt32ToTaggedSigned(node, frame_state, *effect, *control); in TryWireInStateEffect()
681 state = LowerCheckedUint32ToInt32(node, frame_state, *effect, *control); in TryWireInStateEffect()
685 *control); in TryWireInStateEffect()
688 state = LowerCheckedFloat64ToInt32(node, frame_state, *effect, *control); in TryWireInStateEffect()
692 LowerCheckedTaggedSignedToInt32(node, frame_state, *effect, *control); in TryWireInStateEffect()
695 state = LowerCheckedTaggedToInt32(node, frame_state, *effect, *control); in TryWireInStateEffect()
698 state = LowerCheckedTaggedToFloat64(node, frame_state, *effect, *control); in TryWireInStateEffect()
702 *control); in TryWireInStateEffect()
706 *control); in TryWireInStateEffect()
709 state = LowerTruncateTaggedToWord32(node, *effect, *control); in TryWireInStateEffect()
713 *control); in TryWireInStateEffect()
716 state = LowerObjectIsCallable(node, *effect, *control); in TryWireInStateEffect()
719 state = LowerObjectIsNumber(node, *effect, *control); in TryWireInStateEffect()
722 state = LowerObjectIsReceiver(node, *effect, *control); in TryWireInStateEffect()
725 state = LowerObjectIsSmi(node, *effect, *control); in TryWireInStateEffect()
728 state = LowerObjectIsString(node, *effect, *control); in TryWireInStateEffect()
731 state = LowerObjectIsUndetectable(node, *effect, *control); in TryWireInStateEffect()
734 state = LowerArrayBufferWasNeutered(node, *effect, *control); in TryWireInStateEffect()
737 state = LowerStringFromCharCode(node, *effect, *control); in TryWireInStateEffect()
740 state = LowerStringFromCodePoint(node, *effect, *control); in TryWireInStateEffect()
743 state = LowerStringCharCodeAt(node, *effect, *control); in TryWireInStateEffect()
746 state = LowerStringEqual(node, *effect, *control); in TryWireInStateEffect()
749 state = LowerStringLessThan(node, *effect, *control); in TryWireInStateEffect()
752 state = LowerStringLessThanOrEqual(node, *effect, *control); in TryWireInStateEffect()
755 state = LowerCheckFloat64Hole(node, frame_state, *effect, *control); in TryWireInStateEffect()
758 state = LowerCheckTaggedHole(node, frame_state, *effect, *control); in TryWireInStateEffect()
761 state = LowerConvertTaggedHoleToUndefined(node, *effect, *control); in TryWireInStateEffect()
764 state = LowerPlainPrimitiveToNumber(node, *effect, *control); in TryWireInStateEffect()
767 state = LowerPlainPrimitiveToWord32(node, *effect, *control); in TryWireInStateEffect()
770 state = LowerPlainPrimitiveToFloat64(node, *effect, *control); in TryWireInStateEffect()
773 state = LowerEnsureWritableFastElements(node, *effect, *control); in TryWireInStateEffect()
776 state = LowerMaybeGrowFastElements(node, frame_state, *effect, *control); in TryWireInStateEffect()
779 state = LowerTransitionElementsKind(node, *effect, *control); in TryWireInStateEffect()
782 state = LowerLoadTypedElement(node, *effect, *control); in TryWireInStateEffect()
785 state = LowerStoreTypedElement(node, *effect, *control); in TryWireInStateEffect()
788 state = LowerFloat64RoundUp(node, *effect, *control); in TryWireInStateEffect()
791 state = LowerFloat64RoundDown(node, *effect, *control); in TryWireInStateEffect()
794 state = LowerFloat64RoundTruncate(node, *effect, *control); in TryWireInStateEffect()
797 state = LowerFloat64RoundTiesEven(node, *effect, *control); in TryWireInStateEffect()
802 NodeProperties::ReplaceUses(node, state.value, state.effect, state.control); in TryWireInStateEffect()
804 *control = state.control; in TryWireInStateEffect()
810 Node* control) { in LowerChangeFloat64ToTagged() argument
812 return AllocateHeapNumberWithValue(value, effect, control); in LowerChangeFloat64ToTagged()
818 Node* control) { in LowerChangeFloat64ToTaggedPointer() argument
820 return AllocateHeapNumberWithValue(value, effect, control); in LowerChangeFloat64ToTaggedPointer()
825 Node* control) { in LowerChangeBitToTagged() argument
828 Node* branch = graph()->NewNode(common()->Branch(), value, control); in LowerChangeBitToTagged()
836 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerChangeBitToTagged()
838 vtrue, vfalse, control); in LowerChangeBitToTagged()
840 return ValueEffectControl(value, effect, control); in LowerChangeBitToTagged()
846 Node* control) { in LowerChangeInt31ToTaggedSigned() argument
849 return ValueEffectControl(value, effect, control); in LowerChangeInt31ToTaggedSigned()
854 Node* control) { in LowerChangeInt32ToTagged() argument
858 return ValueEffectControl(ChangeInt32ToSmi(value), effect, control); in LowerChangeInt32ToTagged()
862 control); in LowerChangeInt32ToTagged()
864 Node* ovf = graph()->NewNode(common()->Projection(1), add, control); in LowerChangeInt32ToTagged()
866 graph()->NewNode(common()->Branch(BranchHint::kFalse), ovf, control); in LowerChangeInt32ToTagged()
875 Node* merge = graph()->NewNode(common()->Merge(2), alloc.control, if_false); in LowerChangeInt32ToTagged()
886 Node* control) { in LowerChangeUint32ToTagged() argument
892 graph()->NewNode(common()->Branch(BranchHint::kTrue), check, control); in LowerChangeUint32ToTagged()
901 Node* merge = graph()->NewNode(common()->Merge(2), if_true, alloc.control); in LowerChangeUint32ToTagged()
913 Node* control) { in LowerChangeTaggedSignedToInt32() argument
916 return ValueEffectControl(value, effect, control); in LowerChangeTaggedSignedToInt32()
921 Node* control) { in LowerChangeTaggedToBit() argument
925 return ValueEffectControl(value, effect, control); in LowerChangeTaggedToBit()
930 Node* control) { in LowerTruncateTaggedToBit() argument
935 // Collect effect/control/value triples. in LowerTruncateTaggedToBit()
944 check_smi, control); in LowerTruncateTaggedToBit()
959 control = graph()->NewNode(common()->IfFalse(), branch_smi); in LowerTruncateTaggedToBit()
963 simplified()->LoadField(AccessBuilder::ForMap()), value, effect, control); in LowerTruncateTaggedToBit()
966 effect, control); in LowerTruncateTaggedToBit()
973 check_oddball, control); in LowerTruncateTaggedToBit()
985 control = graph()->NewNode(common()->IfFalse(), branch_oddball); in LowerTruncateTaggedToBit()
992 graph()->NewNode(common()->Branch(), check_string, control); in LowerTruncateTaggedToBit()
1012 control = graph()->NewNode(common()->IfFalse(), branch_string); in LowerTruncateTaggedToBit()
1019 graph()->NewNode(common()->Branch(), check_heapnumber, control); in LowerTruncateTaggedToBit()
1038 control = graph()->NewNode(common()->IfFalse(), branch_heapnumber); in LowerTruncateTaggedToBit()
1047 effect, control); in LowerTruncateTaggedToBit()
1049 controls[count] = control; in LowerTruncateTaggedToBit()
1060 control = graph()->NewNode(common()->Merge(count), count, controls); in LowerTruncateTaggedToBit()
1061 effects[count] = control; in LowerTruncateTaggedToBit()
1063 values[count] = control; in LowerTruncateTaggedToBit()
1067 return ValueEffectControl(value, effect, control); in LowerTruncateTaggedToBit()
1072 Node* control) { in LowerChangeTaggedToInt32() argument
1077 graph()->NewNode(common()->Branch(BranchHint::kTrue), check, control); in LowerChangeTaggedToInt32()
1094 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerChangeTaggedToInt32()
1095 effect = graph()->NewNode(common()->EffectPhi(2), etrue, efalse, control); in LowerChangeTaggedToInt32()
1097 vtrue, vfalse, control); in LowerChangeTaggedToInt32()
1099 return ValueEffectControl(value, effect, control); in LowerChangeTaggedToInt32()
1104 Node* control) { in LowerChangeTaggedToUint32() argument
1109 graph()->NewNode(common()->Branch(BranchHint::kTrue), check, control); in LowerChangeTaggedToUint32()
1126 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerChangeTaggedToUint32()
1127 effect = graph()->NewNode(common()->EffectPhi(2), etrue, efalse, control); in LowerChangeTaggedToUint32()
1129 vtrue, vfalse, control); in LowerChangeTaggedToUint32()
1131 return ValueEffectControl(value, effect, control); in LowerChangeTaggedToUint32()
1136 Node* control) { in LowerChangeTaggedToFloat64() argument
1137 return LowerTruncateTaggedToFloat64(node, effect, control); in LowerChangeTaggedToFloat64()
1142 Node* control) { in LowerTruncateTaggedToFloat64() argument
1147 graph()->NewNode(common()->Branch(BranchHint::kTrue), check, control); in LowerTruncateTaggedToFloat64()
1167 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerTruncateTaggedToFloat64()
1168 effect = graph()->NewNode(common()->EffectPhi(2), etrue, efalse, control); in LowerTruncateTaggedToFloat64()
1170 vtrue, vfalse, control); in LowerTruncateTaggedToFloat64()
1172 return ValueEffectControl(value, effect, control); in LowerTruncateTaggedToFloat64()
1177 Node* effect, Node* control) { in LowerCheckBounds() argument
1182 control = effect = graph()->NewNode( in LowerCheckBounds()
1184 frame_state, effect, control); in LowerCheckBounds()
1186 return ValueEffectControl(index, effect, control); in LowerCheckBounds()
1191 Node* effect, Node* control) { in LowerCheckMaps() argument
1196 simplified()->LoadField(AccessBuilder::ForMap()), value, effect, control); in LowerCheckMaps()
1209 frame_state, effect, control); in LowerCheckMaps()
1211 control = graph()->NewNode(common()->Branch(), check, control); in LowerCheckMaps()
1212 controls[i] = graph()->NewNode(common()->IfTrue(), control); in LowerCheckMaps()
1213 control = graph()->NewNode(common()->IfFalse(), control); in LowerCheckMaps()
1218 control = graph()->NewNode(common()->Merge(map_count), map_count, controls); in LowerCheckMaps()
1219 effects[map_count] = control; in LowerCheckMaps()
1223 return ValueEffectControl(value, effect, control); in LowerCheckMaps()
1228 Node* effect, Node* control) { in LowerCheckNumber() argument
1233 graph()->NewNode(common()->Branch(BranchHint::kTrue), check0, control); in LowerCheckNumber()
1251 control = graph()->NewNode(common()->Merge(2), if_true0, if_false0); in LowerCheckNumber()
1252 effect = graph()->NewNode(common()->EffectPhi(2), etrue0, efalse0, control); in LowerCheckNumber()
1254 return ValueEffectControl(value, effect, control); in LowerCheckNumber()
1259 Node* effect, Node* control) { in LowerCheckString() argument
1263 control = effect = in LowerCheckString()
1265 frame_state, effect, control); in LowerCheckString()
1268 simplified()->LoadField(AccessBuilder::ForMap()), value, effect, control); in LowerCheckString()
1271 effect, control); in LowerCheckString()
1276 control = effect = graph()->NewNode( in LowerCheckString()
1278 frame_state, effect, control); in LowerCheckString()
1280 return ValueEffectControl(value, effect, control); in LowerCheckString()
1285 Node* effect, Node* control) { in LowerCheckIf() argument
1288 control = effect = in LowerCheckIf()
1290 value, frame_state, effect, control); in LowerCheckIf()
1292 return ValueEffectControl(value, effect, control); in LowerCheckIf()
1297 Node* effect, Node* control) { in LowerCheckedInt32Add() argument
1302 graph()->NewNode(machine()->Int32AddWithOverflow(), lhs, rhs, control); in LowerCheckedInt32Add()
1304 Node* check = graph()->NewNode(common()->Projection(1), value, control); in LowerCheckedInt32Add()
1305 control = effect = in LowerCheckedInt32Add()
1307 check, frame_state, effect, control); in LowerCheckedInt32Add()
1309 value = graph()->NewNode(common()->Projection(0), value, control); in LowerCheckedInt32Add()
1311 return ValueEffectControl(value, effect, control); in LowerCheckedInt32Add()
1316 Node* effect, Node* control) { in LowerCheckedInt32Sub() argument
1321 graph()->NewNode(machine()->Int32SubWithOverflow(), lhs, rhs, control); in LowerCheckedInt32Sub()
1323 Node* check = graph()->NewNode(common()->Projection(1), value, control); in LowerCheckedInt32Sub()
1324 control = effect = in LowerCheckedInt32Sub()
1326 check, frame_state, effect, control); in LowerCheckedInt32Sub()
1328 value = graph()->NewNode(common()->Projection(0), value, control); in LowerCheckedInt32Sub()
1330 return ValueEffectControl(value, effect, control); in LowerCheckedInt32Sub()
1335 Node* effect, Node* control) { in LowerCheckedInt32Div() argument
1346 graph()->NewNode(common()->Branch(BranchHint::kTrue), check0, control); in LowerCheckedInt32Div()
1399 control = graph()->NewNode(common()->Merge(2), if_true0, if_false0); in LowerCheckedInt32Div()
1400 effect = graph()->NewNode(common()->EffectPhi(2), etrue0, efalse0, control); in LowerCheckedInt32Div()
1403 vfalse0, control); in LowerCheckedInt32Div()
1409 control = effect = graph()->NewNode( in LowerCheckedInt32Div()
1411 frame_state, effect, control); in LowerCheckedInt32Div()
1413 return ValueEffectControl(value, effect, control); in LowerCheckedInt32Div()
1418 Node* effect, Node* control) { in LowerCheckedInt32Mod() argument
1445 graph()->NewNode(common()->Branch(BranchHint::kFalse), check0, control); in LowerCheckedInt32Mod()
1468 control = graph()->NewNode(common()->Merge(2), if_true0, if_false0); in LowerCheckedInt32Mod()
1469 effect = graph()->NewNode(common()->EffectPhi(2), etrue0, efalse0, control); in LowerCheckedInt32Mod()
1471 vtrue0, vfalse0, control); in LowerCheckedInt32Mod()
1476 graph()->NewNode(common()->Branch(BranchHint::kFalse), check1, control); in LowerCheckedInt32Mod()
1518 control = graph()->NewNode(common()->Merge(2), if_true1, if_false1); in LowerCheckedInt32Mod()
1519 effect = graph()->NewNode(common()->EffectPhi(2), etrue1, efalse1, control); in LowerCheckedInt32Mod()
1522 vfalse1, control); in LowerCheckedInt32Mod()
1524 return ValueEffectControl(value, effect, control); in LowerCheckedInt32Mod()
1529 Node* effect, Node* control) { in LowerCheckedUint32Div() argument
1537 control = effect = graph()->NewNode( in LowerCheckedUint32Div()
1539 frame_state, effect, control); in LowerCheckedUint32Div()
1542 Node* value = graph()->NewNode(machine()->Uint32Div(), lhs, rhs, control); in LowerCheckedUint32Div()
1547 control = effect = graph()->NewNode( in LowerCheckedUint32Div()
1549 frame_state, effect, control); in LowerCheckedUint32Div()
1551 return ValueEffectControl(value, effect, control); in LowerCheckedUint32Div()
1556 Node* effect, Node* control) { in LowerCheckedUint32Mod() argument
1564 control = effect = graph()->NewNode( in LowerCheckedUint32Mod()
1566 frame_state, effect, control); in LowerCheckedUint32Mod()
1569 Node* value = graph()->NewNode(machine()->Uint32Mod(), lhs, rhs, control); in LowerCheckedUint32Mod()
1571 return ValueEffectControl(value, effect, control); in LowerCheckedUint32Mod()
1576 Node* effect, Node* control) { in LowerCheckedInt32Mul() argument
1583 graph()->NewNode(machine()->Int32MulWithOverflow(), lhs, rhs, control); in LowerCheckedInt32Mul()
1585 Node* check = graph()->NewNode(common()->Projection(1), projection, control); in LowerCheckedInt32Mul()
1586 control = effect = in LowerCheckedInt32Mul()
1588 check, frame_state, effect, control); in LowerCheckedInt32Mul()
1590 Node* value = graph()->NewNode(common()->Projection(0), projection, control); in LowerCheckedInt32Mul()
1595 check_zero, control); in LowerCheckedInt32Mul()
1612 control = graph()->NewNode(common()->Merge(2), if_zero, if_not_zero); in LowerCheckedInt32Mul()
1614 control); in LowerCheckedInt32Mul()
1617 return ValueEffectControl(value, effect, control); in LowerCheckedInt32Mul()
1624 Node* control) { in LowerCheckedInt32ToTaggedSigned() argument
1629 control); in LowerCheckedInt32ToTaggedSigned()
1631 Node* check = graph()->NewNode(common()->Projection(1), add, control); in LowerCheckedInt32ToTaggedSigned()
1632 control = effect = in LowerCheckedInt32ToTaggedSigned()
1634 check, frame_state, effect, control); in LowerCheckedInt32ToTaggedSigned()
1636 value = graph()->NewNode(common()->Projection(0), add, control); in LowerCheckedInt32ToTaggedSigned()
1638 return ValueEffectControl(value, effect, control); in LowerCheckedInt32ToTaggedSigned()
1645 Node* control) { in LowerCheckedUint32ToInt32() argument
1650 control = effect = graph()->NewNode( in LowerCheckedUint32ToInt32()
1652 frame_state, effect, control); in LowerCheckedUint32ToInt32()
1654 return ValueEffectControl(value, effect, control); in LowerCheckedUint32ToInt32()
1661 Node* control) { in LowerCheckedUint32ToTaggedSigned() argument
1665 control = effect = graph()->NewNode( in LowerCheckedUint32ToTaggedSigned()
1667 frame_state, effect, control); in LowerCheckedUint32ToTaggedSigned()
1670 return ValueEffectControl(value, effect, control); in LowerCheckedUint32ToTaggedSigned()
1678 Node* control) { in BuildCheckedFloat64ToInt32() argument
1683 control = effect = graph()->NewNode( in BuildCheckedFloat64ToInt32()
1685 check_same, frame_state, effect, control); in BuildCheckedFloat64ToInt32()
1692 check_zero, control); in BuildCheckedFloat64ToInt32()
1707 control = in BuildCheckedFloat64ToInt32()
1710 control); in BuildCheckedFloat64ToInt32()
1713 return ValueEffectControl(value32, effect, control); in BuildCheckedFloat64ToInt32()
1720 Node* control) { in LowerCheckedFloat64ToInt32() argument
1724 return BuildCheckedFloat64ToInt32(mode, value, frame_state, effect, control); in LowerCheckedFloat64ToInt32()
1731 Node* control) { in LowerCheckedTaggedSignedToInt32() argument
1735 control = effect = in LowerCheckedTaggedSignedToInt32()
1737 check, frame_state, effect, control); in LowerCheckedTaggedSignedToInt32()
1740 return ValueEffectControl(value, effect, control); in LowerCheckedTaggedSignedToInt32()
1747 Node* control) { in LowerCheckedTaggedToInt32() argument
1753 graph()->NewNode(common()->Branch(BranchHint::kTrue), check, control); in LowerCheckedTaggedToInt32()
1779 if_false = state.control; in LowerCheckedTaggedToInt32()
1784 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerCheckedTaggedToInt32()
1785 effect = graph()->NewNode(common()->EffectPhi(2), etrue, efalse, control); in LowerCheckedTaggedToInt32()
1787 vtrue, vfalse, control); in LowerCheckedTaggedToInt32()
1789 return ValueEffectControl(value, effect, control); in LowerCheckedTaggedToInt32()
1795 Node* control) { in BuildCheckedHeapNumberOrOddballToFloat64() argument
1797 simplified()->LoadField(AccessBuilder::ForMap()), value, effect, control); in BuildCheckedHeapNumberOrOddballToFloat64()
1804 control = effect = graph()->NewNode( in BuildCheckedHeapNumberOrOddballToFloat64()
1806 check_number, frame_state, effect, control); in BuildCheckedHeapNumberOrOddballToFloat64()
1811 graph()->NewNode(common()->Branch(), check_number, control); in BuildCheckedHeapNumberOrOddballToFloat64()
1831 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in BuildCheckedHeapNumberOrOddballToFloat64()
1832 effect = graph()->NewNode(common()->EffectPhi(2), etrue, efalse, control); in BuildCheckedHeapNumberOrOddballToFloat64()
1839 effect, control); in BuildCheckedHeapNumberOrOddballToFloat64()
1840 return ValueEffectControl(value, effect, control); in BuildCheckedHeapNumberOrOddballToFloat64()
1847 Node* control) { in LowerCheckedTaggedToFloat64() argument
1852 Node* branch = graph()->NewNode(common()->Branch(), check, control); in LowerCheckedTaggedToFloat64()
1866 graph()->NewNode(common()->Merge(2), if_true, number_state.control); in LowerCheckedTaggedToFloat64()
1880 Node* control) { in LowerCheckedTaggedToTaggedSigned() argument
1884 control = effect = in LowerCheckedTaggedToTaggedSigned()
1886 check, frame_state, effect, control); in LowerCheckedTaggedToTaggedSigned()
1888 return ValueEffectControl(value, effect, control); in LowerCheckedTaggedToTaggedSigned()
1895 Node* control) { in LowerCheckedTaggedToTaggedPointer() argument
1899 control = effect = in LowerCheckedTaggedToTaggedPointer()
1901 frame_state, effect, control); in LowerCheckedTaggedToTaggedPointer()
1903 return ValueEffectControl(value, effect, control); in LowerCheckedTaggedToTaggedPointer()
1908 Node* control) { in LowerTruncateTaggedToWord32() argument
1913 graph()->NewNode(common()->Branch(BranchHint::kTrue), check, control); in LowerTruncateTaggedToWord32()
1930 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerTruncateTaggedToWord32()
1931 effect = graph()->NewNode(common()->EffectPhi(2), etrue, efalse, control); in LowerTruncateTaggedToWord32()
1933 vtrue, vfalse, control); in LowerTruncateTaggedToWord32()
1935 return ValueEffectControl(value, effect, control); in LowerTruncateTaggedToWord32()
1942 Node* control) { in LowerCheckedTruncateTaggedToWord32() argument
1947 graph()->NewNode(common()->Branch(BranchHint::kTrue), check, control); in LowerCheckedTruncateTaggedToWord32()
1964 graph()->NewNode(common()->Merge(2), if_true, false_state.control); in LowerCheckedTruncateTaggedToWord32()
1976 Node* control) { in LowerObjectIsCallable() argument
1981 graph()->NewNode(common()->Branch(BranchHint::kFalse), check, control); in LowerObjectIsCallable()
2006 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerObjectIsCallable()
2007 effect = graph()->NewNode(common()->EffectPhi(2), etrue, efalse, control); in LowerObjectIsCallable()
2009 vfalse, control); in LowerObjectIsCallable()
2011 return ValueEffectControl(value, effect, control); in LowerObjectIsCallable()
2016 Node* control) { in LowerObjectIsNumber() argument
2020 Node* branch = graph()->NewNode(common()->Branch(), check, control); in LowerObjectIsNumber()
2037 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerObjectIsNumber()
2038 effect = graph()->NewNode(common()->EffectPhi(2), etrue, efalse, control); in LowerObjectIsNumber()
2040 vfalse, control); in LowerObjectIsNumber()
2042 return ValueEffectControl(value, effect, control); in LowerObjectIsNumber()
2047 Node* control) { in LowerObjectIsReceiver() argument
2052 graph()->NewNode(common()->Branch(BranchHint::kFalse), check, control); in LowerObjectIsReceiver()
2074 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerObjectIsReceiver()
2075 effect = graph()->NewNode(common()->EffectPhi(2), etrue, efalse, control); in LowerObjectIsReceiver()
2077 vfalse, control); in LowerObjectIsReceiver()
2079 return ValueEffectControl(value, effect, control); in LowerObjectIsReceiver()
2084 Node* control) { in LowerObjectIsSmi() argument
2087 return ValueEffectControl(value, effect, control); in LowerObjectIsSmi()
2092 Node* control) { in LowerObjectIsString() argument
2097 graph()->NewNode(common()->Branch(BranchHint::kFalse), check, control); in LowerObjectIsString()
2117 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerObjectIsString()
2118 effect = graph()->NewNode(common()->EffectPhi(2), etrue, efalse, control); in LowerObjectIsString()
2120 vfalse, control); in LowerObjectIsString()
2122 return ValueEffectControl(value, effect, control); in LowerObjectIsString()
2127 Node* control) { in LowerObjectIsUndetectable() argument
2132 graph()->NewNode(common()->Branch(BranchHint::kFalse), check, control); in LowerObjectIsUndetectable()
2158 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerObjectIsUndetectable()
2159 effect = graph()->NewNode(common()->EffectPhi(2), etrue, efalse, control); in LowerObjectIsUndetectable()
2161 vfalse, control); in LowerObjectIsUndetectable()
2163 return ValueEffectControl(value, effect, control); in LowerObjectIsUndetectable()
2168 Node* control) { in LowerArrayBufferWasNeutered() argument
2173 effect, control); in LowerArrayBufferWasNeutered()
2183 return ValueEffectControl(value, effect, control); in LowerArrayBufferWasNeutered()
2188 Node* control) { in LowerStringCharCodeAt() argument
2194 graph()->NewNode(common()->Loop(4), control, control, control, control); in LowerStringCharCodeAt()
2204 control = loop; in LowerStringCharCodeAt()
2210 lsubject, effect, control); in LowerStringCharCodeAt()
2213 lsubject_map, effect, control); in LowerStringCharCodeAt()
2221 Node* branch0 = graph()->NewNode(common()->Branch(), check0, control); in LowerStringCharCodeAt()
2444 control = graph()->NewNode(common()->Merge(2), if_true0, if_false0); in LowerStringCharCodeAt()
2445 effect = graph()->NewNode(common()->EffectPhi(2), etrue0, efalse0, control); in LowerStringCharCodeAt()
2448 vfalse0, control); in LowerStringCharCodeAt()
2450 return ValueEffectControl(value, effect, control); in LowerStringCharCodeAt()
2455 Node* control) { in LowerStringFromCharCode() argument
2468 graph()->NewNode(common()->Branch(BranchHint::kTrue), check0, control); in LowerStringFromCharCode()
2523 control = graph()->NewNode(common()->Merge(2), if_true1, if_false1); in LowerStringFromCharCode()
2524 effect = graph()->NewNode(common()->EffectPhi(2), etrue1, efalse1, control); in LowerStringFromCharCode()
2526 vtrue1, vfalse1, control); in LowerStringFromCharCode()
2528 return ValueEffectControl(value, effect, control); in LowerStringFromCharCode()
2533 Node* control) { in LowerStringFromCodePoint() argument
2544 graph()->NewNode(common()->Branch(BranchHint::kTrue), check0, control); in LowerStringFromCodePoint()
2716 control = graph()->NewNode(common()->Merge(2), if_true0, if_false0); in LowerStringFromCodePoint()
2717 effect = graph()->NewNode(common()->EffectPhi(2), etrue0, efalse0, control); in LowerStringFromCodePoint()
2719 vtrue0, vfalse0, control); in LowerStringFromCodePoint()
2721 return ValueEffectControl(value, effect, control); in LowerStringFromCodePoint()
2727 Node* control) { in LowerStringComparison() argument
2737 return ValueEffectControl(node, node, control); in LowerStringComparison()
2742 Node* control) { in LowerStringEqual() argument
2744 effect, control); in LowerStringEqual()
2749 Node* control) { in LowerStringLessThan() argument
2751 effect, control); in LowerStringLessThan()
2756 Node* control) { in LowerStringLessThanOrEqual() argument
2758 node, effect, control); in LowerStringLessThanOrEqual()
2763 Node* effect, Node* control) { in LowerCheckFloat64Hole() argument
2772 control = effect = in LowerCheckFloat64Hole()
2774 frame_state, effect, control); in LowerCheckFloat64Hole()
2776 return ValueEffectControl(value, effect, control); in LowerCheckFloat64Hole()
2781 Node* effect, Node* control) { in LowerCheckTaggedHole() argument
2785 control = effect = in LowerCheckTaggedHole()
2787 frame_state, effect, control); in LowerCheckTaggedHole()
2789 return ValueEffectControl(value, effect, control); in LowerCheckTaggedHole()
2795 Node* control) { in LowerConvertTaggedHoleToUndefined() argument
2800 graph()->NewNode(common()->Branch(BranchHint::kFalse), check, control); in LowerConvertTaggedHoleToUndefined()
2808 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerConvertTaggedHoleToUndefined()
2810 vtrue, vfalse, control); in LowerConvertTaggedHoleToUndefined()
2812 return ValueEffectControl(value, effect, control); in LowerConvertTaggedHoleToUndefined()
2817 Node* control) { in AllocateHeapNumberWithValue() argument
2820 jsgraph()->Int32Constant(HeapNumber::kSize), effect, control); in AllocateHeapNumberWithValue()
2823 control); in AllocateHeapNumberWithValue()
2826 value, effect, control); in AllocateHeapNumberWithValue()
2827 return ValueEffectControl(result, effect, control); in AllocateHeapNumberWithValue()
2877 Node* control) { in LowerPlainPrimitiveToNumber() argument
2882 return ValueEffectControl(result, effect, control); in LowerPlainPrimitiveToNumber()
2887 Node* control) { in LowerPlainPrimitiveToWord32() argument
2892 graph()->NewNode(common()->Branch(BranchHint::kTrue), check0, control); in LowerPlainPrimitiveToWord32()
2930 control = graph()->NewNode(common()->Merge(2), if_true0, if_false0); in LowerPlainPrimitiveToWord32()
2931 effect = graph()->NewNode(common()->EffectPhi(2), etrue0, efalse0, control); in LowerPlainPrimitiveToWord32()
2933 vtrue0, vfalse0, control); in LowerPlainPrimitiveToWord32()
2934 return ValueEffectControl(value, effect, control); in LowerPlainPrimitiveToWord32()
2939 Node* control) { in LowerPlainPrimitiveToFloat64() argument
2944 graph()->NewNode(common()->Branch(BranchHint::kTrue), check0, control); in LowerPlainPrimitiveToFloat64()
2990 control = graph()->NewNode(common()->Merge(2), if_true0, if_false0); in LowerPlainPrimitiveToFloat64()
2991 effect = graph()->NewNode(common()->EffectPhi(2), etrue0, efalse0, control); in LowerPlainPrimitiveToFloat64()
2993 vtrue0, vfalse0, control); in LowerPlainPrimitiveToFloat64()
2994 return ValueEffectControl(value, effect, control); in LowerPlainPrimitiveToFloat64()
3000 Node* control) { in LowerEnsureWritableFastElements() argument
3007 elements, effect, control); in LowerEnsureWritableFastElements()
3013 graph()->NewNode(common()->Branch(BranchHint::kTrue), check, control); in LowerEnsureWritableFastElements()
3037 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerEnsureWritableFastElements()
3038 effect = graph()->NewNode(common()->EffectPhi(2), etrue, efalse, control); in LowerEnsureWritableFastElements()
3040 common()->Phi(MachineRepresentation::kTagged, 2), vtrue, vfalse, control); in LowerEnsureWritableFastElements()
3042 return ValueEffectControl(value, effect, control); in LowerEnsureWritableFastElements()
3049 Node* control) { in LowerMaybeGrowFastElements() argument
3060 Node* branch0 = graph()->NewNode(common()->Branch(), check0, control); in LowerMaybeGrowFastElements()
3145 control = graph()->NewNode(common()->Merge(2), if_true0, if_false0); in LowerMaybeGrowFastElements()
3146 effect = graph()->NewNode(common()->EffectPhi(2), etrue0, efalse0, control); in LowerMaybeGrowFastElements()
3149 vfalse0, control); in LowerMaybeGrowFastElements()
3151 return ValueEffectControl(value, effect, control); in LowerMaybeGrowFastElements()
3156 Node* control) { in LowerTransitionElementsKind() argument
3165 effect, control); in LowerTransitionElementsKind()
3171 graph()->NewNode(common()->Branch(BranchHint::kFalse), check, control); in LowerTransitionElementsKind()
3207 control = graph()->NewNode(common()->Merge(2), if_true, if_false); in LowerTransitionElementsKind()
3208 effect = graph()->NewNode(common()->EffectPhi(2), etrue, efalse, control); in LowerTransitionElementsKind()
3210 return ValueEffectControl(nullptr, effect, control); in LowerTransitionElementsKind()
3215 Node* control) { in LowerLoadTypedElement() argument
3228 external, effect, control); in LowerLoadTypedElement()
3234 storage, index, effect, control); in LowerLoadTypedElement()
3236 return ValueEffectControl(value, effect, control); in LowerLoadTypedElement()
3241 Node* control) { in LowerStoreTypedElement() argument
3255 external, effect, control); in LowerStoreTypedElement()
3261 storage, index, value, effect, control); in LowerStoreTypedElement()
3263 return ValueEffectControl(nullptr, effect, control); in LowerStoreTypedElement()
3268 Node* control) { in LowerFloat64RoundUp() argument
3271 return ValueEffectControl(node, effect, control); in LowerFloat64RoundUp()
3309 graph()->NewNode(common()->Branch(BranchHint::kTrue), check0, control); in LowerFloat64RoundUp()
3395 Node* control) { in BuildFloat64RoundDown() argument
3439 graph()->NewNode(common()->Branch(BranchHint::kTrue), check0, control); in BuildFloat64RoundDown()
3517 control = graph()->NewNode(common()->Merge(2), if_true0, if_false0); in BuildFloat64RoundDown()
3519 vtrue0, vfalse0, control); in BuildFloat64RoundDown()
3521 return ValueEffectControl(value, effect, control); in BuildFloat64RoundDown()
3526 Node* control) { in LowerFloat64RoundDown() argument
3529 return ValueEffectControl(node, effect, control); in LowerFloat64RoundDown()
3533 return BuildFloat64RoundDown(input, effect, control); in LowerFloat64RoundDown()
3538 Node* control) { in LowerFloat64RoundTiesEven() argument
3541 return ValueEffectControl(node, effect, control); in LowerFloat64RoundTiesEven()
3569 BuildFloat64RoundDown(input, effect, control); in LowerFloat64RoundTiesEven()
3572 control = continuation.control; in LowerFloat64RoundTiesEven()
3577 Node* branch0 = graph()->NewNode(common()->Branch(), check0, control); in LowerFloat64RoundTiesEven()
3617 control = graph()->NewNode(common()->Merge(2), if_true0, if_false0); in LowerFloat64RoundTiesEven()
3619 vtrue0, vfalse0, control); in LowerFloat64RoundTiesEven()
3621 return ValueEffectControl(value, effect, control); in LowerFloat64RoundTiesEven()
3626 Node* control) { in LowerFloat64RoundTruncate() argument
3629 return ValueEffectControl(node, effect, control); in LowerFloat64RoundTruncate()
3667 graph()->NewNode(common()->Branch(BranchHint::kTrue), check0, control); in LowerFloat64RoundTruncate()