| /arkcompiler/ets_runtime/ecmascript/compiler/ |
| D | ir_builder.cpp | 19 bool IsAddIntergerType(MachineType machineType) in IsAddIntergerType() 22 case MachineType::I8: in IsAddIntergerType() 23 case MachineType::I16: in IsAddIntergerType() 24 case MachineType::I32: in IsAddIntergerType() 25 case MachineType::I64: in IsAddIntergerType() 26 case MachineType::ARCH: in IsAddIntergerType() 33 bool IsMulIntergerType(MachineType machineType) in IsMulIntergerType() 36 case MachineType::I32: in IsMulIntergerType() 37 case MachineType::I64: in IsMulIntergerType() 38 case MachineType::ARCH: in IsMulIntergerType()
|
| D | variable_type.h | 25 : machineType_(MachineType::NOVALUE), gateType_(GateType::Empty()) in VariableType() 29 VariableType(MachineType machine_type, GateType gate_type) in VariableType() 34 [[nodiscard]] MachineType GetMachineType() const in GetMachineType() 46 return VariableType(MachineType::NOVALUE, GateType::Empty()); in VOID() 51 return VariableType(MachineType::I1, GateType::NJSValue()); in BOOL() 56 return VariableType(MachineType::I8, GateType::NJSValue()); in INT8() 61 return VariableType(MachineType::I16, GateType::NJSValue()); in INT16() 66 return VariableType(MachineType::I32, GateType::NJSValue()); in INT32() 71 return VariableType(MachineType::I64, GateType::NJSValue()); in INT64() 76 return VariableType(MachineType::F32, GateType::NJSValue()); in FLOAT32() [all …]
|
| D | lcr_circuit_builder.cpp | 23 …return GetCircuit()->NewGate(meta, MachineType::I1, { left, right }, GateType::NJSValue(), comment… in BinaryCmp() 26 MachineType CircuitBuilder::GetMachineTypeFromVariableType(VariableType type) in GetMachineTypeFromVariableType() 33 … return GetCircuit()->NewGate(circuit_->Sqrt(), MachineType::F64, {param}, GateType::DoubleType()); in Sqrt() 38 …return GetCircuit()->NewGate(circuit_->AddWithOverflow(), MachineType::I64, {left, right}, GateTyp… in AddWithOverflow() 43 …return GetCircuit()->NewGate(circuit_->SubWithOverflow(), MachineType::I64, {left, right}, GateTyp… in SubWithOverflow() 48 …return GetCircuit()->NewGate(circuit_->MulWithOverflow(), MachineType::I64, {left, right}, GateTyp… in MulWithOverflow() 51 GateRef CircuitBuilder::ExtractValue(MachineType mt, GateRef pointer, GateRef index) in ExtractValue() 54 ASSERT(acc_.GetMachineType(index) == MachineType::I32); in ExtractValue() 60 return circuit_->NewGate(circuit_->ReadSp(), MachineType::I64, GateType::NJSValue()); in ReadSp() 63 MachineType CircuitBuilder::GetMachineTypeOfValueType(ValueType type) in GetMachineTypeOfValueType() [all …]
|
| D | gate_matchers.h | 57 MachineType MachineType() const in MachineType() function 82 …return Is##OPCODEID() && MachineType() == (MACHINETYPEID); … in GATE_META_DATA_LIST_WITH_BOOL() 119 template <typename T, OpCode kOpcode, MachineType kMachineType> struct ValueMatcher : public GateMa… 158 template <typename T, OpCode kOpcode, MachineType kMachineType> 207 using Int32Matcher = IntMatcher<int32_t, OpCode::CONSTANT, MachineType::I32>; 208 using Uint32Matcher = IntMatcher<uint32_t, OpCode::CONSTANT, MachineType::I32>; 209 using Int64Matcher = IntMatcher<int64_t, OpCode::CONSTANT, MachineType::I64>; 210 using Uint64Matcher = IntMatcher<uint64_t, OpCode::CONSTANT, MachineType::I64>; 214 template <typename T, OpCode kOpcode, MachineType kMachineType> 277 using Float32Matcher = FloatMatcher<float, OpCode::CONSTANT, MachineType::F32>; [all …]
|
| D | circuit_builder.h | 58 V(Int16Add, Add, MachineType::I16) \ 59 V(Int32Add, Add, MachineType::I32) \ 60 V(Int64Add, Add, MachineType::I64) \ 61 V(DoubleAdd, Add, MachineType::F64) \ 62 V(PtrAdd, Add, MachineType::ARCH) \ 63 V(Int16Sub, Sub, MachineType::I16) \ 64 V(Int32Sub, Sub, MachineType::I32) \ 65 V(Int64Sub, Sub, MachineType::I64) \ 66 V(DoubleSub, Sub, MachineType::F64) \ 67 V(PtrSub, Sub, MachineType::ARCH) \ [all …]
|
| D | mcr_circuit_builder.cpp | 38 …GateRef ret = GetCircuit()->NewGate(circuit_->ObjectTypeCheck(accessor.ToValue()), MachineType::I1, in ObjectTypeCheck() 52 …teRef ret = GetCircuit()->NewGate(circuit_->ObjectTypeCompare(accessor.ToValue()), MachineType::I1, in ObjectTypeCompare() 65 MachineType::I1, in HeapObjectCheck() 82 MachineType::I1, in ProtoChangeMarkerCheck() 98 MachineType::I1, {currentControl, currentDepend, gate, frameState}, GateType::NJSValue()); in StableArrayCheck() 111 MachineType::I1, {currentControl, currentDepend, gate, frameState}, GateType::NJSValue()); in COWArrayCheck() 124 MachineType::I1, {currentControl, currentDepend, gate, frameState}, GateType::NJSValue()); in EcmaStringCheck() 137 MachineType::I1, {currentControl, currentDepend, gate, frameState}, GateType::NJSValue()); in FlattenTreeStringCheck() 149 MachineType::I1, {currentControl, currentDepend, gate, frameState}, GateType::NJSValue()); in HClassStableArrayCheck() 161 MachineType::I1, {currentControl, currentDepend, frameState}, GateType::NJSValue()); in ArrayGuardianCheck() [all …]
|
| D | circuit.cpp | 56 root_ = NewGate(metaBuilder_.CircuitRoot(), MachineType::NOVALUE, {}, GateType::Empty()); in InitRoot() 57 NewGate(metaBuilder_.StateEntry(), MachineType::NOVALUE, { root_ }, GateType::Empty()); in InitRoot() 58 NewGate(metaBuilder_.DependEntry(), MachineType::NOVALUE, { root_ }, GateType::Empty()); in InitRoot() 59 NewGate(metaBuilder_.ReturnList(), MachineType::NOVALUE, { root_ }, GateType::Empty()); in InitRoot() 60 NewGate(metaBuilder_.ArgList(), MachineType::NOVALUE, { root_ }, GateType::Empty()); in InitRoot() 107 GateRef Circuit::NewGate(const GateMetaData *meta, MachineType machineType, size_t numIns, in NewGate() 137 …return NewGate(meta, MachineType::NOVALUE, inList.size(), inList.data(), GateType::Empty(), commen… in NewGate() 140 GateRef Circuit::NewGate(const GateMetaData *meta, MachineType machineType, in NewGate() 146 GateRef Circuit::NewGate(const GateMetaData *meta, MachineType machineType, in NewGate() 152 GateRef Circuit::NewGate(const GateMetaData *meta, MachineType machineType, GateType type, const ch… in NewGate() [all …]
|
| D | circuit.h | 53 …GateRef NewGate(const GateMetaData *meta, MachineType machineType, GateType type, const char* comm… 54 GateRef NewGate(const GateMetaData *meta, MachineType machineType, 56 GateRef NewGate(const GateMetaData *meta, MachineType machineType, size_t numIns, 58 GateRef NewGate(const GateMetaData *meta, MachineType machineType, 67 GateRef GetConstantGate(MachineType machineType, uint64_t value, GateType type); 68 void ClearConstantCache(MachineType machineType, uint64_t value, GateType type); 69 GateRef GetConstantStringGate(MachineType machineType, std::string_view str, GateType type); 70 GateRef NewArg(MachineType machineType, size_t index, GateType type, GateRef argRoot); 199 dead_ = NewGate(Dead(), MachineType::NOVALUE, GateType::Empty()); in DeadGate() 224 MachineType GetMachineType(GateRef gate) const; [all …]
|
| D | gate.h | 139 … Gate(const GateMetaData* meta, GateId id, Gate *inList[], MachineType machineType, GateType type); 203 MachineType GetMachineType() const in GetMachineType() 207 void SetMachineType(MachineType machineType) in SetMachineType() 260 std::string MachineTypeStr(MachineType machineType) const; 268 void CheckInputMachineType(size_t idx, MachineType expected, bool isArch64) const; 269 void CheckNotInputMachineType(size_t idx, MachineType notExpected) const; 291 MachineType machineType_ { MachineType::NOVALUE }; // uint8_t
|
| D | gate.cpp | 47 void Gate::CheckInputMachineType(size_t idx, MachineType expected, bool isArch64) const in CheckInputMachineType() 49 MachineType actual = GetInGateConst(idx)->GetMachineType(); in CheckInputMachineType() 50 if (expected == MachineType::FLEX) { in CheckInputMachineType() 53 if (expected == MachineType::ARCH) { in CheckInputMachineType() 54 expected = isArch64 ? MachineType::I64 : MachineType::I32; in CheckInputMachineType() 56 if (actual == MachineType::ARCH) { in CheckInputMachineType() 57 actual = isArch64 ? MachineType::I64 : MachineType::I32; in CheckInputMachineType() 65 void Gate::CheckNotInputMachineType(size_t idx, MachineType notExpected) const in CheckNotInputMachineType() 67 MachineType actual = GetInGateConst(idx)->GetMachineType(); in CheckNotInputMachineType() 130 CheckInputMachineType(idx, MachineType::I1, isArch64); in CheckValueInput() [all …]
|
| D | number_speculative_lowering.cpp | 308 acc_.SetMachineType(gate, MachineType::I32); in VisitNumberCalculate() 311 acc_.SetMachineType(gate, MachineType::F64); in VisitNumberCalculate() 340 acc_.SetMachineType(gate, MachineType::I1); in VisitNumberCompare() 352 acc_.SetMachineType(gate, MachineType::I32); in VisitNumberShift() 364 acc_.SetMachineType(gate, MachineType::I32); in VisitNumberLogical() 385 acc_.SetMachineType(gate, MachineType::I32); in VisitNumberDiv() 388 MachineType::F64, left, right, GateType::NJSValue()); in VisitNumberDiv() 389 acc_.SetMachineType(gate, MachineType::F64); in VisitNumberDiv() 422 acc_.SetMachineType(gate, MachineType::I32); in VisitNumberMod() 427 acc_.SetMachineType(gate, MachineType::F64); in VisitNumberMod() [all …]
|
| D | circuit_builder.cpp | 43 GateRef CircuitBuilder::Selector(OpCode opcode, MachineType machineType, GateRef control, in Selector() 66 MachineType machineType = (opcode == OpCode::DEPEND_SELECTOR) ? in Selector() 67 MachineType::NOVALUE : MachineType::FLEX; in Selector() 74 return circuit_->GetConstantGate(MachineType::I64, JSTaggedValue::VALUE_UNDEFINED, type); in UndefineConstant() 162 return GetCircuit()->NewArg(MachineType::I64, index, GateType::NJSValue(), argListOfCircuit); in Arguments() 312 MachineType::I1, { currentControl, condition, in DeoptCheck() 325 auto ret = GetCircuit()->NewGate(circuit_->GetSuperConstructor(), MachineType::ANYVALUE, in GetSuperConstructor() 334 return GetCircuit()->GetConstantGate(MachineType::I8, val, GateType::NJSValue()); in Int8() 339 return GetCircuit()->GetConstantGate(MachineType::I16, val, GateType::NJSValue()); in Int16() 344 …return GetCircuit()->GetConstantGate(MachineType::I32, static_cast<BitField>(val), GateType::NJSVa… in Int32() [all …]
|
| D | instruction_combine.cpp | 353 case MachineType::I32: in VisitADD() 355 case MachineType::I64: in VisitADD() 357 case MachineType::F64: in VisitADD() 369 case MachineType::I32: in VisitSUB() 371 case MachineType::I64: in VisitSUB() 373 case MachineType::F64: in VisitSUB() 385 case MachineType::I32: in VisitMUL() 387 case MachineType::I64: in VisitMUL() 389 case MachineType::F64: in VisitMUL() 401 case MachineType::I32: in VisitSDIV() [all …]
|
| D | lcr_circuit_builder.h | 67 auto ptrSize = env_->Is32Bit() ? MachineType::I32 : MachineType::I64; in IntPtrLSR() 73 auto ptrSize = env_->Is32Bit() ? MachineType::I32 : MachineType::I64; in IntPtrLSL() 79 auto ptrsize = env_->Is32Bit() ? MachineType::I32 : MachineType::I64; in IntPtrOr() 221 MachineType::I64, { x }, GateType::TaggedValue()); in Int64ToTaggedPtr() 293 template<OpCode Op, MachineType Type> 307 template<OpCode Op, MachineType Type>
|
| D | async_function_lowering.cpp | 53 … GateRef contextGate = circuit_->NewGate(circuit_->Load(bit), MachineType::I64, {dependStart, val}, in ProcessJumpTable() 57 …GateRef restoreOffsetGate = circuit_->NewGate(circuit_->Load(bit), MachineType::I32, {contextGate,… in ProcessJumpTable() 96 circuit_->NewGate(circuit_->Return(), MachineType::NOVALUE, in RebuildGeneratorCfg() 107 circuit_->NewGate(circuit_->Return(), MachineType::NOVALUE, in RebuildGeneratorCfg() 121 MachineType::I32, GateType::NJSValue()); in RebuildGeneratorCfg() 127 … GateRef bcOffsetPhiGate = circuit_->NewGate(circuit_->ValueSelector(numIn), MachineType::I32, in RebuildGeneratorCfg() 140 circuit_->NewGate(circuit_->Return(), MachineType::NOVALUE, in RebuildGeneratorCfg() 184 MachineType::I32, GateType::NJSValue()); in UpdateValueSelector() 187 …GateRef valueSelector = circuit_->NewGate(circuit_->ValueSelector(2), MachineType::I32, // 2: num … in UpdateValueSelector()
|
| D | lcr_gate_meta_data.h | 34 enum MachineType : uint8_t { // Bit width enum 80 std::string MachineTypeToStr(MachineType machineType);
|
| D | bytecode_circuit_builder.cpp | 372 argAcc_.NewCommonArg(CommonArgIdx::GLUE, MachineType::I64, GateType::NJSValue()); in BuildCircuitArgs() 374 argAcc_.NewCommonArg(CommonArgIdx::ACTUAL_ARGC, MachineType::I64, GateType::NJSValue()); in BuildCircuitArgs() 422 inList[i + length] = circuit_->GetConstantGate(MachineType::I64, in CreateGateInList() 426 inList[i + length] = circuit_->GetConstantGate(MachineType::I64, in CreateGateInList() 430 inList[i + length] = circuit_->GetConstantGate(MachineType::I16, in CreateGateInList() 453 gate = circuit_->GetConstantGate(MachineType::I64, in NewConst() 458 gate = circuit_->GetConstantGate(MachineType::I64, in NewConst() 463 gate = circuit_->GetConstantGate(MachineType::I64, in NewConst() 468 gate = circuit_->GetConstantGate(MachineType::I64, in NewConst() 473 gate = circuit_->GetConstantGate(MachineType::I64, in NewConst() [all …]
|
| D | stub.cpp | 37 auto type = env_.IsArch64Bit() ? MachineType::I64 : MachineType::I32; in InitializeArguments()
|
| D | argument_accessor.cpp | 19 void ArgumentAccessor::NewCommonArg(const CommonArgIdx argIndex, MachineType machineType, GateType … in NewCommonArg() 26 circuit_->NewArg(MachineType::I64, argIndex, GateType::TaggedValue(), argRoot_); in NewArg() 144 … GateRef actualArgcGate = circuit_->GetConstantGate(MachineType::I64, 0, GateType::NJSValue()); in CollectArgs() 145 …GateRef newTargetGate = circuit_->GetConstantGate(MachineType::I64, JSTaggedValue::VALUE_UNDEFINED, in CollectArgs()
|
| D | constant_folding.cpp | 62 case MachineType::I32: in VisitZEXT() 65 case MachineType::ARCH: in VisitZEXT() 66 case MachineType::I64: in VisitZEXT() 181 return acc_.GetMachineType(gate) == MachineType::I32; in IsInt32Type()
|
| D | hcr_circuit_builder.cpp | 38 MachineType machineType = cs->GetReturnType().GetMachineType(); in NoLabelCallRuntime() 49 auto ret = GetCircuit()->NewGate(circuit_->ToLength(), MachineType::I64, in ToLength() 155 MachineType machineType = cs->GetReturnType().GetMachineType(); in Call() 356 MachineType::I64, in CallGetter() 379 MachineType::I64, in CallSetter() 401 auto callGate = GetCircuit()->NewGate(circuit_->Construct(bitfield, pcOffset), MachineType::I64, in Construct() 414 …GateRef newGate = GetCircuit()->NewGate(circuit_->CreateArray(accessor.ToValue()), MachineType::I6… in CreateArray() 431 MachineType::I64, in CreateArrayWithBuffer() 485 GateRef newGate = GetCircuit()->NewGate(circuit_->StoreModuleVar(), MachineType::I64, in StoreModuleVar() 497 GateRef newGate = GetCircuit()->NewGate(circuit_->LdLocalModuleVar(), MachineType::I64, in LdLocalModuleVar() [all …]
|
| /arkcompiler/ets_runtime/ecmascript/compiler/tests/ |
| D | meta_data_equal_test.cpp | 40 using ecmascript::kungfu::MachineType; 57 …auto stringGate1 = circuit.GetConstantStringGate(MachineType::ARCH, "test1", GateType::NJSValue()); in HWTEST_F_L0() 60 …auto stringGate2 = circuit.GetConstantStringGate(MachineType::ARCH, "test2", GateType::NJSValue()); in HWTEST_F_L0() 64 …auto stringGate3 = circuit.GetConstantStringGate(MachineType::ARCH, "test1", GateType::NJSValue()); in HWTEST_F_L0() 81 auto constantValue1 = circuit.GetConstantGate(MachineType::I64, 2, GateType::NJSValue()); in HWTEST_F_L0() 83 auto constantValue2 = circuit.GetConstantGate(MachineType::I64, 2, GateType::NJSValue()); in HWTEST_F_L0() 87 auto constantValue3 = circuit.GetConstantGate(MachineType::I64, 2, GateType::NJSValue()); in HWTEST_F_L0() 89 auto constantValue4 = circuit.GetConstantGate(MachineType::I64, 3, GateType::NJSValue()); in HWTEST_F_L0() 95 auto constantValue5 = circuit.GetConstantGate(MachineType::I64, 2, GateType::NJSValue()); in HWTEST_F_L0() 97 auto constantValue6 = circuit.GetConstantGate(MachineType::I32, 2, GateType::NJSValue()); in HWTEST_F_L0() [all …]
|
| D | typed_array_lowering_test.cpp | 33 using ecmascript::kungfu::MachineType; 53 acc.SetMachineType(loadLength, MachineType::I32); in HWTEST_F_L0() 66 EXPECT_EQ(acc.GetMachineType(result), MachineType::I32); in HWTEST_F_L0() 83 acc.SetMachineType(loadElement, MachineType::I32); in HWTEST_F_L0() 96 EXPECT_EQ(acc.GetMachineType(result), MachineType::I32); in HWTEST_F_L0() 120 acc.SetMachineType(loadElement, MachineType::I32); in HWTEST_F_L0() 133 EXPECT_EQ(acc.GetMachineType(result), MachineType::I32); in HWTEST_F_L0() 152 acc.SetMachineType(loadElement, MachineType::I32); in HWTEST_F_L0() 165 EXPECT_EQ(acc.GetMachineType(result), MachineType::F64); in HWTEST_F_L0() 184 acc.SetMachineType(loadElement, MachineType::I32); in HWTEST_F_L0() [all …]
|
| D | combined_pass_visitor_test.cpp | 36 using ecmascript::kungfu::MachineType; 56 … auto icmp = circuit.NewGate(circuit.Icmp(1), MachineType::I1, {arg0, arg1}, GateType::NJSValue()); in HWTEST_F_L0() 62 auto load1 = circuit.NewGate(circuit.LoadElement(2), MachineType::I64, in HWTEST_F_L0() 64 auto load2 = circuit.NewGate(circuit.LoadElement(2), MachineType::I64, in HWTEST_F_L0()
|
| D | loop_optimization_test.cpp | 42 using ecmascript::kungfu::MachineType; 83 acc.SetMachineType(loadLength, MachineType::I32); in HWTEST_F_L0() 88 acc.SetMachineType(cmp, MachineType::I1); in HWTEST_F_L0() 92 acc.SetMachineType(loadElement, MachineType::I32); in HWTEST_F_L0() 97 acc.SetMachineType(sumAdd, MachineType::I32); in HWTEST_F_L0() 102 acc.SetMachineType(indexInc, MachineType::I32); in HWTEST_F_L0() 151 acc.SetMachineType(arg, MachineType::I32); in HWTEST_F_L0() 198 acc.SetMachineType(arg2, MachineType::ARCH); in HWTEST_F_L0() 200 GateRef invariant = circuit.NewGate(circuit.Load(bits), MachineType::I32, in HWTEST_F_L0()
|