Lines Matching refs:builder_

120     Environment env(gate, circuit_, &builder_);
251 Environment env(gate, circuit_, &builder_);
285 Environment env(gate, circuit_, &builder_);
312 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
331 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
343 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
355 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
367 result = builder_.Int32DivWithCheck(left, right);
370 result = builder_.BinaryArithmetic(circuit_->Fdiv(),
375 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
389 builder_.Int32CheckRightIsZero(right);
393 builder_.RemainderIsNegativeZero(left, right);
400 result = builder_.CallNGCRuntime(glue, RTSTUB_ID(FloatMod),
405 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
418 builder_.ValueCheckNegOverflow(value);
428 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
435 GateRef result = builder_.Int32Not(value);
439 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
447 result = builder_.BoolNot(value);
451 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
464 condition = builder_.BoolNot(condition);
466 GateRef ifBranch = builder_.Branch(acc_.GetState(gate), condition, trueWeight, falseWeight, "booleanJump");
479 result = builder_.Equal(left, right);
481 result = builder_.NotEqual(left, right);
486 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
499 result = builder_.TaggedIsUndefinedOrNullOrHole(valueGate);
501 result = builder_.TaggedIsNotUndefinedAndNullAndHole(valueGate);
503 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
518 acc_.UpdateAllUses(gate, builder_.Double(value));
619 Environment env(gate, circuit_, &builder_);
630 result = builder_.LoadConstOffset(VariableType::FLOAT64(), receiver, plr.GetOffset());
633 builder_.LoadConstOffset(VariableType::JS_ANY(), receiver, JSObject::PROPERTIES_OFFSET);
634 result = builder_.GetValueFromTaggedArray(
635 VariableType::FLOAT64(), properties, builder_.Int32(plr.GetOffset()));
640 result = builder_.LoadConstOffset(VariableType::INT32(), receiver, plr.GetOffset());
643 builder_.LoadConstOffset(VariableType::JS_ANY(), receiver, JSObject::PROPERTIES_OFFSET);
644 result = builder_.GetValueFromTaggedArray(
645 VariableType::INT32(), properties, builder_.Int32(plr.GetOffset()));
650 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
656 Environment env(gate, circuit_, &builder_);
658 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), inputLength);
670 return builder_.Int32Add(left, right, GateType::NJSValue());
672 res = builder_.AddWithOverflow(left, right);
677 return builder_.Int32Sub(left, right, GateType::NJSValue());
679 res = builder_.SubWithOverflow(left, right);
684 return builder_.Int32Mul(left, right);
686 res = builder_.MulWithOverflow(left, right);
689 return builder_.BinaryArithmetic(circuit_->Smod(),
697 builder_.OverflowCheck(res);
698 return builder_.ExtractValue(MachineType::I32, res, GetConstInt32(0));
707 res = builder_.DoubleAdd(left, right, GateType::NJSValue());
710 res = builder_.DoubleSub(left, right, GateType::NJSValue());
713 res = builder_.DoubleMul(left, right, GateType::NJSValue());
727 condition = builder_.Int32LessThan(left, right);
730 condition = builder_.Int32LessThanOrEqual(left, right);
733 condition = builder_.Int32GreaterThan(left, right);
736 condition = builder_.Int32GreaterThanOrEqual(left, right);
740 condition = builder_.Int32Equal(left, right);
744 condition = builder_.Int32NotEqual(left, right);
758 condition = builder_.DoubleLessThan(left, right);
761 condition = builder_.DoubleLessThanOrEqual(left, right);
764 condition = builder_.DoubleGreaterThan(left, right);
767 condition = builder_.DoubleGreaterThanOrEqual(left, right);
771 condition = LogicAndBuilder(builder_.GetCurrentEnvironment())
772 .And(builder_.BoolNot(builder_.DoubleIsNAN(left)))
773 .And(builder_.BoolNot(builder_.DoubleIsNAN(right)))
774 .And(builder_.DoubleEqual(left, right))
780 condition = LogicOrBuilder(builder_.GetCurrentEnvironment())
781 .Or(builder_.DoubleIsNAN(left))
782 .Or(builder_.DoubleIsNAN(right))
783 .Or(builder_.DoubleNotEqual(left, right))
798 GateRef shift = builder_.Int32And(right, bitmask, GateType::NJSValue());
801 value = builder_.Int32LSL(left, shift, GateType::NJSValue());
805 value = builder_.Int32LSR(left, shift, GateType::NJSValue());
811 builder_.Int32UnsignedUpperBoundCheck(value, builder_.Int32(INT32_MAX));
815 value = builder_.Int32ASR(left, shift, GateType::NJSValue());
832 value = builder_.Int32And(left, right, GateType::NJSValue());
836 value = builder_.Int32Or(left, right, GateType::NJSValue());
840 value = builder_.Int32Xor(left, right, GateType::NJSValue());
863 res = builder_.Int32Sub(GetConstInt32(0), value, GateType::NJSValue());
912 auto val = builder_.Int32(v);
919 auto val = builder_.Double(v);
950 result = builder_.StringEqual(left, right);
954 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
965 result = builder_.StringAdd(left, right);
969 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);
976 Environment env(gate, circuit_, &builder_);
986 auto receiverHC = builder_.LoadConstOffset(VariableType::JS_POINTER(), receiver, TaggedObject::HCLASS_OFFSET);
987 auto prototype = builder_.LoadConstOffset(VariableType::JS_ANY(), receiverHC, JSHClass::PROTOTYPE_OFFSET);
989 auto holderHC = builder_.LoadHClassFromConstpool(unsharedConstPool, acc_.GetConstantValue(hclassIndex));
990 DEFVALUE(current, (&builder_), VariableType::JS_ANY(), prototype);
991 Label exit(&builder_);
992 Label loopHead(&builder_);
993 Label loadHolder(&builder_);
994 Label lookUpProto(&builder_);
995 builder_.Jump(&loopHead);
997 builder_.LoopBegin(&loopHead);
998 builder_.DeoptCheck(builder_.TaggedIsNotNull(*current), frameState, DeoptType::INCONSISTENTHCLASS7);
999 auto curHC = builder_.LoadConstOffset(VariableType::JS_POINTER(), *current, TaggedObject::HCLASS_OFFSET);
1000 BRANCH_CIR(builder_.Equal(curHC, holderHC), &loadHolder, &lookUpProto);
1002 builder_.Bind(&lookUpProto);
1003 current = builder_.LoadConstOffset(VariableType::JS_ANY(), curHC, JSHClass::PROTOTYPE_OFFSET);
1004 builder_.LoopEnd(&loopHead);
1006 builder_.Bind(&loadHolder);
1009 result = builder_.LoadConstOffset(VariableType::FLOAT64(), *current, plr.GetOffset());
1012 builder_.LoadConstOffset(VariableType::JS_ANY(), *current, JSObject::PROPERTIES_OFFSET);
1013 result = builder_.GetValueFromTaggedArray(
1014 VariableType::FLOAT64(), properties, builder_.Int32(plr.GetOffset()));
1019 result = builder_.LoadConstOffset(VariableType::INT32(), *current, plr.GetOffset());
1022 builder_.LoadConstOffset(VariableType::JS_ANY(), *current, JSObject::PROPERTIES_OFFSET);
1023 result = builder_.GetValueFromTaggedArray(
1024 VariableType::INT32(), properties, builder_.Int32(plr.GetOffset()));
1028 builder_.Jump(&exit);
1029 builder_.Bind(&exit);
1031 acc_.ReplaceGate(gate, builder_.GetState(), builder_.GetDepend(), result);