| /arkcompiler/ets_frontend/es2panda/compiler/core/ |
| H A D | pandagen.cpp | 253 void PandaGen::InitializeLexEnv(const ir::AstNode *node) in InitializeLexEnv() argument 258 NewLexicalEnv(node, topScope_->LexicalSlots(), topScope_); in InitializeLexEnv() 262 NewSendableEnv(node, topScope_->SendableSlots()); in InitializeLexEnv() 266 void PandaGen::CopyFunctionArguments(const ir::AstNode *node) in CopyFunctionArguments() argument 273 StoreLexicalVar(node, 0, param->LexIdx(), targetReg++); in CopyFunctionArguments() 276 MoveVreg(node, param->Vreg(), targetReg++); in CopyFunctionArguments() 310 void PandaGen::GetFunctionObject(const ir::AstNode *node) in GetFunctionObject() argument 312 LoadAccFromLexEnv(node, scope_->Find(binder::Binder::MANDATORY_PARAM_FUNC)); in GetFunctionObject() 315 void PandaGen::GetNewTarget(const ir::AstNode *node) in GetNewTarget() argument 317 LoadAccFromLexEnv(node, scope in GetNewTarget() 320 GetThis(const ir::AstNode *node) GetThis() argument 325 SetThis(const ir::AstNode *node) SetThis() argument 330 LoadVar(const ir::Identifier *node, const binder::ScopeFindResult &result) LoadVar() argument 363 StoreVar(const ir::AstNode *node, const binder::ScopeFindResult &result, bool isDeclaration) StoreVar() argument 414 StoreAccumulator(const ir::AstNode *node, VReg vreg) StoreAccumulator() argument 419 LoadAccFromArgs(const ir::AstNode *node) LoadAccFromArgs() argument 434 LoadObjProperty(const ir::AstNode *node, VReg obj, const Operand &prop) LoadObjProperty() argument 451 StoreObjProperty(const ir::AstNode *node, VReg obj, const Operand &prop) StoreObjProperty() argument 467 DefineOwnProperty(const ir::AstNode *node, VReg obj, const Operand &prop) DefineOwnProperty() argument 483 DefineClassPrivateField(const ir::AstNode *node, uint32_t level, uint32_t slot, VReg obj) DefineClassPrivateField() argument 488 StoreOwnProperty(const ir::AstNode *node, VReg obj, const Operand &prop, bool nameSetting) StoreOwnProperty() argument 506 LoadObjByNameViaDebugger(const ir::AstNode *node, const util::StringView &name, bool throwUndefinedIfHole) LoadObjByNameViaDebugger() argument 529 TryLoadGlobalByName(const ir::AstNode *node, const util::StringView &name) TryLoadGlobalByName() argument 539 StoreObjByNameViaDebugger(const ir::AstNode *node, const util::StringView &name) StoreObjByNameViaDebugger() argument 557 TryStoreGlobalByName(const ir::AstNode *node, const util::StringView &name) TryStoreGlobalByName() argument 567 LoadObjByName(const ir::AstNode *node, VReg obj, const util::StringView &prop) LoadObjByName() argument 574 StoreObjByName(const ir::AstNode *node, VReg obj, const util::StringView &prop) StoreObjByName() argument 580 DefineFieldByName(const ir::AstNode *node, VReg obj, const util::StringView &prop) DefineFieldByName() argument 593 LoadObjByIndex(const ir::AstNode *node, VReg obj, int64_t index) LoadObjByIndex() argument 604 LoadObjByValue(const ir::AstNode *node, VReg obj) LoadObjByValue() argument 609 StoreObjByValue(const ir::AstNode *node, VReg obj, VReg prop) StoreObjByValue() argument 614 StoreObjByIndex(const ir::AstNode *node, VReg obj, int64_t index) StoreObjByIndex() argument 624 DefineFieldByValue(const ir::AstNode *node, VReg obj, VReg prop) DefineFieldByValue() argument 629 DefineFieldByIndex(const ir::AstNode *node, VReg obj, int64_t index) DefineFieldByIndex() argument 634 StOwnByName(const ir::AstNode *node, VReg obj, const util::StringView &prop, bool nameSetting) StOwnByName() argument 641 StOwnByValue(const ir::AstNode *node, VReg obj, VReg prop, bool nameSetting) StOwnByValue() argument 647 StOwnByIndex(const ir::AstNode *node, VReg obj, int64_t index) StOwnByIndex() argument 657 DeleteObjProperty(const ir::AstNode *node, VReg obj, const Operand &prop) DeleteObjProperty() argument 671 LoadAccumulator(const ir::AstNode *node, VReg reg) LoadAccumulator() argument 676 LoadGlobalVar(const ir::AstNode *node, const util::StringView &name) LoadGlobalVar() argument 682 StoreGlobalVar(const ir::AstNode *node, const util::StringView &name) StoreGlobalVar() argument 688 LoadAccFromLexEnv(const ir::AstNode *node, const binder::ScopeFindResult &result) LoadAccFromLexEnv() argument 693 StoreAccToLexEnv(const ir::AstNode *node, const binder::ScopeFindResult &result, bool isDeclaration) StoreAccToLexEnv() argument 698 LoadAccumulatorString(const ir::AstNode *node, const util::StringView &str) LoadAccumulatorString() argument 704 LoadAccumulatorFloat(const ir::AstNode *node, double num) LoadAccumulatorFloat() argument 709 LoadAccumulatorInt(const ir::AstNode *node, int32_t num) LoadAccumulatorInt() argument 714 LoadAccumulatorInt(const ir::AstNode *node, size_t num) LoadAccumulatorInt() argument 719 LoadAccumulatorBigInt(const ir::AstNode *node, const util::StringView &num) LoadAccumulatorBigInt() argument 725 StoreConst(const ir::AstNode *node, VReg reg, Constant id) StoreConst() argument 731 LoadConst(const ir::AstNode *node, Constant id) LoadConst() argument 776 MoveVreg(const ir::AstNode *node, VReg vd, VReg vs) MoveVreg() argument 781 SetLabel([[maybe_unused]] const ir::AstNode *node, Label *label) SetLabel() argument 786 Branch(const ir::AstNode *node, Label *label) Branch() argument 866 Condition(const ir::AstNode *node, lexer::TokenType op, VReg lhs, Label *ifFalse) Condition() argument 909 Unary(const ir::AstNode *node, lexer::TokenType op, VReg operand) Unary() argument 951 Binary(const ir::AstNode *node, lexer::TokenType op, VReg lhs) Binary() argument 1060 Equal(const ir::AstNode *node, VReg lhs) Equal() argument 1065 NotEqual(const ir::AstNode *node, VReg lhs) NotEqual() argument 1070 StrictEqual(const ir::AstNode *node, VReg lhs) StrictEqual() argument 1075 StrictNotEqual(const ir::AstNode *node, VReg lhs) StrictNotEqual() argument 1080 LessThan(const ir::AstNode *node, VReg lhs) LessThan() argument 1085 LessEqual(const ir::AstNode *node, VReg lhs) LessEqual() argument 1090 GreaterThan(const ir::AstNode *node, VReg lhs) GreaterThan() argument 1095 GreaterEqual(const ir::AstNode *node, VReg lhs) GreaterEqual() argument 1100 IsTrue(const ir::AstNode *node) IsTrue() argument 1111 BranchIfUndefined(const ir::AstNode *node, Label *target) BranchIfUndefined() argument 1121 BranchIfStrictUndefined(const ir::AstNode *node, class Label *target) BranchIfStrictUndefined() argument 1131 BranchIfNotUndefined(const ir::AstNode *node, Label *target) BranchIfNotUndefined() argument 1141 BranchIfStrictNotUndefined(const ir::AstNode *node, class Label *target) BranchIfStrictNotUndefined() argument 1151 BranchIfTrue(const ir::AstNode *node, Label *target) BranchIfTrue() argument 1157 BranchIfNotTrue(const ir::AstNode *node, Label *target) BranchIfNotTrue() argument 1163 BranchIfFalse(const ir::AstNode *node, Label *target) BranchIfFalse() argument 1176 BranchIfStrictNull(const ir::AstNode *node, class Label *target) BranchIfStrictNull() argument 1186 EmitThrow(const ir::AstNode *node) EmitThrow() argument 1191 EmitRethrow(const ir::AstNode *node) EmitRethrow() argument 1214 EmitReturn(const ir::AstNode *node) EmitReturn() argument 1219 EmitReturnUndefined(const ir::AstNode *node) EmitReturnUndefined() argument 1224 ImplicitReturn(const ir::AstNode *node) ImplicitReturn() argument 1229 DirectReturn(const ir::AstNode *node) DirectReturn() argument 1234 ExplicitReturn(const ir::AstNode *node) ExplicitReturn() argument 1239 ValidateClassDirectReturn(const ir::AstNode *node) ValidateClassDirectReturn() argument 1265 EmitAwait(const ir::AstNode *node) EmitAwait() argument 1270 CallThis(const ir::AstNode *node, VReg startReg, size_t argCount) CallThis() argument 1310 Call(const ir::AstNode *node, VReg startReg, size_t argCount) Call() argument 1349 SuperCall(const ir::AstNode *node, VReg startReg, size_t argCount) SuperCall() argument 1370 SuperCallSpread(const ir::AstNode *node, VReg vs) SuperCallSpread() argument 1375 SuperCallForwardAllArgs(const ir::AstNode *node, VReg funcObj) SuperCallForwardAllArgs() argument 1380 NotifyConcurrentResult(const ir::AstNode *node) NotifyConcurrentResult() argument 1387 CallInit(const ir::AstNode *node, VReg thisReg) CallInit() argument 1393 NewObject(const ir::AstNode *node, VReg startReg, size_t argCount) NewObject() argument 1403 DefineFunction(const ir::AstNode *node, const ir::ScriptFunction *realNode, const util::StringView &name) DefineFunction() argument 1419 TypeOf(const ir::AstNode *node) TypeOf() argument 1424 CallSpread(const ir::AstNode *node, VReg func, VReg thisReg, VReg args) CallSpread() argument 1430 NewObjSpread(const ir::AstNode *node, VReg obj) NewObjSpread() argument 1435 GetUnmappedArgs(const ir::AstNode *node) GetUnmappedArgs() argument 1440 Negate(const ir::AstNode *node) Negate() argument 1452 ToNumber(const ir::AstNode *node, VReg arg) ToNumber() argument 1458 ToNumeric(const ir::AstNode *node, VReg arg) ToNumeric() argument 1464 CreateGeneratorObj(const ir::AstNode *node, VReg funcObj) CreateGeneratorObj() argument 1469 CreateAsyncGeneratorObj(const ir::AstNode *node, VReg funcObj) CreateAsyncGeneratorObj() argument 1474 CreateIterResultObject(const ir::AstNode *node, VReg value, VReg done) CreateIterResultObject() argument 1479 SuspendGenerator(const ir::AstNode *node, VReg genObj) SuspendGenerator() argument 1484 GeneratorYield(const ir::AstNode *node, VReg genObj) GeneratorYield() argument 1490 GeneratorComplete(const ir::AstNode *node, VReg genObj) GeneratorComplete() argument 1496 ResumeGenerator(const ir::AstNode *node, VReg genObj) ResumeGenerator() argument 1502 GetResumeMode(const ir::AstNode *node, VReg genObj) GetResumeMode() argument 1508 AsyncFunctionEnter(const ir::AstNode *node) AsyncFunctionEnter() argument 1513 AsyncFunctionAwait(const ir::AstNode *node, VReg asyncFuncObj) AsyncFunctionAwait() argument 1518 AsyncFunctionResolve(const ir::AstNode *node, VReg asyncFuncObj) AsyncFunctionResolve() argument 1523 AsyncFunctionReject(const ir::AstNode *node, VReg asyncFuncObj) AsyncFunctionReject() argument 1528 AsyncGeneratorResolve(const ir::AstNode *node, VReg asyncGenObj, VReg value, VReg canSuspend) AsyncGeneratorResolve() argument 1533 AsyncGeneratorReject(const ir::AstNode *node, VReg asyncGenObj) AsyncGeneratorReject() argument 1538 GetTemplateObject(const ir::AstNode *node, VReg value) GetTemplateObject() argument 1544 CopyRestArgs(const ir::AstNode *node, uint32_t index) CopyRestArgs() argument 1549 GetPropIterator(const ir::AstNode *node) GetPropIterator() argument 1554 GetNextPropName(const ir::AstNode *node, VReg iter) GetNextPropName() argument 1559 CreateEmptyObject(const ir::AstNode *node) CreateEmptyObject() argument 1564 CreateObjectWithBuffer(const ir::AstNode *node, uint32_t idx) CreateObjectWithBuffer() argument 1572 SetObjectWithProto(const ir::AstNode *node, VReg proto, VReg obj) SetObjectWithProto() argument 1578 CopyDataProperties(const ir::AstNode *node, VReg dst) CopyDataProperties() argument 1583 DefineGetterSetterByValue(const ir::AstNode *node, VReg obj, VReg name, VReg getter, VReg setter, bool setName) DefineGetterSetterByValue() argument 1590 CreateEmptyArray(const ir::AstNode *node) CreateEmptyArray() argument 1595 CreateArrayWithBuffer(const ir::AstNode *node, uint32_t idx) CreateArrayWithBuffer() argument 1603 CreateArray(const ir::AstNode *node, const ArenaVector<ir::Expression *> &elements, VReg obj) CreateArray() argument 1699 StoreArraySpread(const ir::AstNode *node, VReg array, VReg index) StoreArraySpread() argument 1704 ThrowIfNotObject(const ir::AstNode *node, VReg obj) ThrowIfNotObject() argument 1709 ThrowThrowNotExist(const ir::AstNode *node) ThrowThrowNotExist() argument 1714 GetIterator(const ir::AstNode *node) GetIterator() argument 1719 GetAsyncIterator(const ir::AstNode *node) GetAsyncIterator() argument 1724 CreateObjectWithExcludedKeys(const ir::AstNode *node, VReg obj, VReg argStart, size_t argCount) CreateObjectWithExcludedKeys() argument 1742 ThrowObjectNonCoercible(const ir::AstNode *node) ThrowObjectNonCoercible() argument 1747 CloseIterator(const ir::AstNode *node, VReg iter) CloseIterator() argument 1752 DefineClassWithBuffer(const ir::AstNode *node, const util::StringView &ctorId, int32_t litIdx, VReg base) DefineClassWithBuffer() argument 1761 DefineSendableClass(const ir::AstNode *node, const util::StringView &ctorId, int32_t litIdx, VReg base) DefineSendableClass() argument 1770 LoadSendableClass(const ir::AstNode *node, int32_t level) LoadSendableClass() argument 1775 LoadLocalModuleVariable(const ir::AstNode *node, const binder::ModuleVariable *variable) LoadLocalModuleVariable() argument 1782 LoadExternalModuleVariable(const ir::AstNode *node, const binder::ModuleVariable *variable) LoadExternalModuleVariable() argument 1813 StoreModuleVariable(const ir::AstNode *node, const binder::ModuleVariable *variable) StoreModuleVariable() argument 1820 GetModuleNamespace(const ir::AstNode *node, uint32_t index) GetModuleNamespace() argument 1826 DynamicImportCall(const ir::AstNode *node) DynamicImportCall() argument 1831 StSuperByName(const ir::AstNode *node, VReg obj, const util::StringView &key) StSuperByName() argument 1837 LdSuperByName(const ir::AstNode *node, VReg obj, const util::StringView &key) LdSuperByName() argument 1844 StSuperByValue(const ir::AstNode *node, VReg obj, VReg prop) StSuperByValue() argument 1849 LdSuperByValue(const ir::AstNode *node, VReg obj) LdSuperByValue() argument 1854 StoreSuperProperty(const ir::AstNode *node, VReg obj, const Operand &prop) StoreSuperProperty() argument 1878 LoadSuperProperty(const ir::AstNode *node, VReg obj, const Operand &prop) LoadSuperProperty() argument 1897 LoadLexicalVar(const ir::AstNode *node, uint32_t level, uint32_t slot) LoadLexicalVar() argument 1907 LoadSendableVar(const ir::AstNode *node, uint32_t level, uint32_t slot) LoadSendableVar() argument 1917 LoadLexicalVar(const ir::AstNode *node, uint32_t level, uint32_t slot, const util::StringView &name) LoadLexicalVar() argument 1933 StoreLexicalVar(const ir::AstNode *node, uint32_t level, uint32_t slot) StoreLexicalVar() argument 1943 StoreLexicalVar(const ir::AstNode *node, uint32_t level, uint32_t slot, VReg value) StoreLexicalVar() argument 1954 StoreSendableVar(const ir::AstNode *node, uint32_t level, uint32_t slot) StoreSendableVar() argument 1964 StoreLexicalVar(const ir::AstNode *node, uint32_t level, uint32_t slot, const binder::LocalVariable *local) StoreLexicalVar() argument 1978 ThrowIfSuperNotCorrectCall(const ir::AstNode *node, int64_t num) ThrowIfSuperNotCorrectCall() argument 1983 ThrowUndefinedIfHole(const ir::AstNode *node, const util::StringView &name) ThrowUndefinedIfHole() argument 1989 ThrowConstAssignment(const ir::AstNode *node, const util::StringView &name) ThrowConstAssignment() argument 1999 PopLexEnv(const ir::AstNode *node) PopLexEnv() argument 2004 GenDebugger(const ir::AstNode *node) GenDebugger() argument 2011 NewLexicalEnv(const ir::AstNode *node, uint32_t num, binder::VariableScope *scope) NewLexicalEnv() argument 2022 NewLexEnv(const ir::AstNode *node, uint32_t num) NewLexEnv() argument 2027 NewSendableEnv(const ir::AstNode * node, uint32_t num) NewSendableEnv() argument 2033 NewLexEnvWithScopeInfo(const ir::AstNode *node, uint32_t num, int32_t scopeInfoIdx) NewLexEnvWithScopeInfo() argument 2156 ToComputedPropertyKey(const ir::AstNode *node) ToComputedPropertyKey() argument 2161 StLetOrClassToGlobalRecord(const ir::AstNode *node, const util::StringView &name) StLetOrClassToGlobalRecord() argument 2167 StConstToGlobalRecord(const ir::AstNode *node, const util::StringView &name) StConstToGlobalRecord() argument 2237 CreatePrivateProperty(const ir::AstNode *node, uint32_t num, int32_t bufIdx) CreatePrivateProperty() argument 2244 TestIn(const ir::AstNode *node, uint32_t level, uint32_t slot) TestIn() argument 2249 LoadPrivateProperty(const ir::AstNode *node, uint32_t level, uint32_t slot) LoadPrivateProperty() argument 2254 StorePrivateProperty(const ir::AstNode *node, uint32_t level, uint32_t slot, VReg obj) StorePrivateProperty() argument 2258 ThrowTypeErrorIfFalse(const ir::AstNode *node, util::StringView str) ThrowTypeErrorIfFalse() argument 2266 ThrowTypeError(const ir::AstNode *node, util::StringView str) ThrowTypeError() argument [all...] |
| H A D | pandagen.h | 262 void InitializeLexEnv(const ir::AstNode *node); 263 void CopyFunctionArguments(const ir::AstNode *node); 264 void GetFunctionObject(const ir::AstNode *node); 265 void GetNewTarget(const ir::AstNode *node); 266 void GetThis(const ir::AstNode *node); 267 void SetThis(const ir::AstNode *node); 268 void LoadVar(const ir::Identifier *node, const binder::ScopeFindResult &result); 269 void StoreVar(const ir::AstNode *node, const binder::ScopeFindResult &result, bool isDeclaration); 271 void StLetOrClassToGlobalRecord(const ir::AstNode *node, const util::StringView &name); 272 void StConstToGlobalRecord(const ir::AstNode *node, cons [all...] |
| H A D | dynamicContext.cpp | 66 const auto *node = envScope_->Scope()->Node(); in LexEnvContext() local 68 pg_->SetLabel(node, labelSet.TryBegin()); in LexEnvContext() 78 const auto *node = envScope_->Scope()->Node(); in ~LexEnvContext() local 80 pg_->SetLabel(node, labelSet.TryEnd()); in ~LexEnvContext() 81 pg_->Branch(node, labelSet.CatchEnd()); in ~LexEnvContext() 83 pg_->SetLabel(node, labelSet.CatchBegin()); in ~LexEnvContext() 84 pg_->PopLexEnv(node); in ~LexEnvContext() 85 pg_->EmitThrow(node); in ~LexEnvContext() 86 pg_->SetLabel(node, labelSet.CatchEnd()); in ~LexEnvContext() 87 pg_->PopLexEnv(node); in ~LexEnvContext() 102 const auto *node = envScope_->Scope()->Node(); AbortContext() local 120 const auto *node = iterator_.Node(); ~IteratorContext() local 150 const auto *node = iterator_.Node(); ~DestructuringIteratorContext() local [all...] |
| /arkcompiler/ets_frontend/ets2panda/compiler/function/ |
| H A D | functionBuilder.cpp | 36 void FunctionBuilder::DirectReturn(const ir::AstNode *node) const in DirectReturn() 38 pg_->EmitReturn(node); in DirectReturn() 41 void FunctionBuilder::ImplicitReturn(const ir::AstNode *node) const in ImplicitReturn() 46 pg_->EmitReturnUndefined(node); in ImplicitReturn() 52 pg_->EmitReturn(node); in ImplicitReturn() 55 void FunctionBuilder::AsyncYield(const ir::AstNode *node, VReg completionType, VReg completionValue) const in AsyncYield() argument 59 pg_->GeneratorYield(node, funcObj_); in AsyncYield() 60 pg_->SuspendAsyncGenerator(node, funcObj_); in AsyncYield() 62 ResumeGenerator(node, completionType, completionValue); in AsyncYield() 65 void FunctionBuilder::SuspendResumeExecution(const ir::AstNode *node, VRe argument 74 ResumeGenerator(const ir::AstNode *node, VReg completionType, VReg completionValue) const ResumeGenerator() argument 93 Await(const ir::AstNode *node) Await() argument 112 HandleCompletion(const ir::AstNode *node, VReg completionType, VReg completionValue) HandleCompletion() argument 142 YieldStar(const ir::AstNode *node) YieldStar() argument [all...] |
| H A D | asyncGeneratorFunctionBuilder.cpp | 23 void AsyncGeneratorFunctionBuilder::Prepare(const ir::ScriptFunction *node) const in Prepare() 25 VReg callee = FunctionReg(node); in Prepare() 27 pg_->CreateAsyncGeneratorObj(node, callee); in Prepare() 28 pg_->StoreAccumulator(node, funcObj_); in Prepare() 29 pg_->SuspendGenerator(node, funcObj_); in Prepare() 30 pg_->SetLabel(node, catchTable_->LabelSet().TryBegin()); in Prepare() 33 void AsyncGeneratorFunctionBuilder::CleanUp(const ir::ScriptFunction *node) const in CleanUp() 37 pg_->SetLabel(node, labelSet.TryEnd()); in CleanUp() 38 pg_->SetLabel(node, labelSet.CatchBegin()); in CleanUp() 39 pg_->AsyncGeneratorReject(node, funcObj in CleanUp() 56 Yield(const ir::AstNode *node) Yield() argument [all...] |
| H A D | generatorFunctionBuilder.cpp | 23 void GeneratorFunctionBuilder::Prepare(const ir::ScriptFunction *node) const in Prepare() 25 VReg callee = FunctionReg(node); in Prepare() 27 pg_->CreateGeneratorObj(node, callee); in Prepare() 28 pg_->StoreAccumulator(node, funcObj_); in Prepare() 29 pg_->SuspendGenerator(node, funcObj_); in Prepare() 30 pg_->SetLabel(node, catchTable_->LabelSet().TryBegin()); in Prepare() 33 void GeneratorFunctionBuilder::CleanUp(const ir::ScriptFunction *node) const in CleanUp() 37 pg_->SetLabel(node, labelSet.TryEnd()); in CleanUp() 38 pg_->SetLabel(node, labelSet.CatchBegin()); in CleanUp() 39 pg_->GeneratorComplete(node, funcObj in CleanUp() 57 Yield(const ir::AstNode *node) Yield() argument [all...] |
| H A D | asyncFunctionBuilder.cpp | 23 void AsyncFunctionBuilder::DirectReturn(const ir::AstNode *node) const in DirectReturn() 25 pg_->AsyncFunctionResolve(node, funcObj_); in DirectReturn() 26 pg_->EmitReturn(node); in DirectReturn() 29 void AsyncFunctionBuilder::ImplicitReturn(const ir::AstNode *node) const in ImplicitReturn() 31 pg_->LoadConst(node, Constant::JS_UNDEFINED); in ImplicitReturn() 32 DirectReturn(node); in ImplicitReturn() 35 void AsyncFunctionBuilder::Prepare(const ir::ScriptFunction *node) const in Prepare() 37 pg_->AsyncFunctionEnter(node); in Prepare() 38 pg_->StoreAccumulator(node, funcObj_); in Prepare() 39 pg_->SetLabel(node, catchTable in Prepare() [all...] |
| /arkcompiler/ets_frontend/ets2panda/compiler/core/ |
| H A D | pandagen.h | 70 void StoreAccumulator(const ir::AstNode *node, VReg vreg); 71 void LoadAccumulator(const ir::AstNode *node, VReg reg); 73 [[nodiscard]] IRNode *AllocMov(const ir::AstNode *node, VReg vd, VReg vs) override; 74 [[nodiscard]] IRNode *AllocMov(const ir::AstNode *node, OutVReg vd, VReg vs) override; 75 void MoveVreg(const ir::AstNode *node, VReg vd, VReg vs); 77 void LoadAccumulatorDouble(const ir::AstNode *node, double num); 78 void LoadAccumulatorInt(const ir::AstNode *node, size_t num); 80 void LoadConst(const ir::AstNode *node, Constant id); 81 void StoreConst(const ir::AstNode *node, VReg reg, Constant id); 83 void GetFunctionObject(const ir::AstNode *node); [all...] |
| H A D | pandagen.cpp | 49 explicit EcmaDisabled(const ir::AstNode *node, [[maybe_unused]] Args &&...args) : IRNode(node) in EcmaDisabled() argument 331 void PandaGen::StoreAccumulator(const ir::AstNode *node, VReg vreg) in StoreAccumulator() argument 333 Ra().Emit<StaDyn>(node, vreg); in StoreAccumulator() 336 void PandaGen::LoadAccumulator(const ir::AstNode *node, VReg reg) in LoadAccumulator() argument 338 Ra().Emit<LdaDyn>(node, reg); in LoadAccumulator() 341 IRNode *PandaGen::AllocMov(const ir::AstNode *node, const VReg vd, const VReg vs) in AllocMov() argument 343 return Allocator()->New<MovDyn>(node, vd, vs); in AllocMov() 346 IRNode *PandaGen::AllocMov(const ir::AstNode *node, OutVReg vd, const VReg vs) in AllocMov() argument 349 return Allocator()->New<MovDyn>(node, *v in AllocMov() 352 MoveVreg(const ir::AstNode *node, VReg vd, VReg vs) MoveVreg() argument 357 LoadAccumulatorDouble(const ir::AstNode *node, double num) LoadAccumulatorDouble() argument 362 LoadAccumulatorInt(const ir::AstNode *node, size_t num) LoadAccumulatorInt() argument 367 StoreConst(const ir::AstNode *node, VReg reg, Constant id) StoreConst() argument 373 LoadConst(const ir::AstNode *node, Constant id) LoadConst() argument 418 GetFunctionObject(const ir::AstNode *node) GetFunctionObject() argument 423 GetNewTarget(const ir::AstNode *node) GetNewTarget() argument 428 GetThis(const ir::AstNode *node) GetThis() argument 433 SetThis(const ir::AstNode *node) SetThis() argument 438 LoadVar(const ir::Identifier *node, const varbinder::ConstScopeFindResult &result) LoadVar() argument 461 StoreVar(const ir::AstNode *node, const varbinder::ConstScopeFindResult &result, bool isDeclaration) StoreVar() argument 488 LoadAccFromArgs(const ir::AstNode *node) LoadAccFromArgs() argument 501 LoadObjProperty(const ir::AstNode *node, const Operand &prop) LoadObjProperty() argument 517 StoreObjProperty(const ir::AstNode *node, VReg obj, const Operand &prop) StoreObjProperty() argument 533 StoreOwnProperty(const ir::AstNode *node, VReg obj, const Operand &prop) StoreOwnProperty() argument 549 TryLoadGlobalByName(const ir::AstNode *node, const util::StringView &name) TryLoadGlobalByName() argument 554 TryStoreGlobalByName(const ir::AstNode *node, const util::StringView &name) TryStoreGlobalByName() argument 559 LoadObjByName(const ir::AstNode *node, const util::StringView &prop) LoadObjByName() argument 564 StoreObjByName(const ir::AstNode *node, VReg obj, const util::StringView &prop) StoreObjByName() argument 569 LoadObjByIndex(const ir::AstNode *node, int64_t index) LoadObjByIndex() argument 574 LoadObjByValue(const ir::AstNode *node, VReg obj) LoadObjByValue() argument 579 StoreObjByValue(const ir::AstNode *node, VReg obj, VReg prop) StoreObjByValue() argument 584 StoreObjByIndex(const ir::AstNode *node, VReg obj, int64_t index) StoreObjByIndex() argument 589 StOwnByName(const ir::AstNode *node, VReg obj, const util::StringView &prop) StOwnByName() argument 594 StOwnByValue(const ir::AstNode *node, VReg obj, VReg prop) StOwnByValue() argument 599 StOwnByIndex(const ir::AstNode *node, VReg obj, int64_t index) StOwnByIndex() argument 604 DeleteObjProperty(const ir::AstNode *node, VReg obj, VReg prop) DeleteObjProperty() argument 609 LoadGlobalVar(const ir::AstNode *node, const util::StringView &name) LoadGlobalVar() argument 614 StoreGlobalVar(const ir::AstNode *node, const util::StringView &name) StoreGlobalVar() argument 624 LoadAccFromLexEnv(const ir::AstNode *node, const varbinder::ConstScopeFindResult &result) LoadAccFromLexEnv() argument 629 StoreAccToLexEnv(const ir::AstNode *node, const varbinder::ConstScopeFindResult &result, bool isDeclaration) StoreAccToLexEnv() argument 635 LoadAccumulatorBigInt(const ir::AstNode *node, const util::StringView &bigInt) LoadAccumulatorBigInt() argument 640 Condition(const ir::AstNode *node, lexer::TokenType op, VReg lhs, Label *ifFalse) Condition() argument 683 Unary(const ir::AstNode *node, lexer::TokenType op, VReg operand) Unary() argument 721 Binary(const ir::AstNode *node, lexer::TokenType op, VReg lhs) Binary() argument 835 BranchIfUndefined(const ir::AstNode *node, Label *target) BranchIfUndefined() argument 841 BranchIfNotUndefined(const ir::AstNode *node, Label *target) BranchIfNotUndefined() argument 847 BranchIfTrue(const ir::AstNode *node, Label *target) BranchIfTrue() argument 852 BranchIfNotTrue(const ir::AstNode *node, Label *target) BranchIfNotTrue() argument 858 BranchIfFalse(const ir::AstNode *node, Label *target) BranchIfFalse() argument 863 BranchIfCoercible(const ir::AstNode *node, Label *target) BranchIfCoercible() argument 869 EmitThrow(const ir::AstNode *node) EmitThrow() argument 874 EmitRethrow(const ir::AstNode *node) EmitRethrow() argument 879 EmitReturn(const ir::AstNode *node) EmitReturn() argument 884 EmitReturnUndefined(const ir::AstNode *node) EmitReturnUndefined() argument 889 ImplicitReturn(const ir::AstNode *node) ImplicitReturn() argument 894 DirectReturn(const ir::AstNode *node) DirectReturn() argument 899 ValidateClassDirectReturn(const ir::AstNode *node) ValidateClassDirectReturn() argument 925 EmitAwait(const ir::AstNode *node) EmitAwait() argument 930 Call0This(const ir::AstNode *node, VReg callee, VReg thisReg) Call0This() argument 936 Call1This(const ir::AstNode *node, VReg callee, VReg thisReg, VReg arg0) Call1This() argument 1005 Call(const ir::AstNode *node, VReg callee, VReg thisReg, const ArenaVector<ir::Expression *> &arguments) Call() argument 1047 CallArgsTagged(const ir::AstNode *node, VReg callee, VReg thisReg, const ArenaVector<ir::Expression *> &arguments, bool hasThis) CallArgsTagged() argument 1097 CallTagged(const ir::AstNode *node, VReg callee, VReg thisReg, const ArenaVector<ir::Expression *> &arguments) CallTagged() argument 1134 SuperCall(const ir::AstNode *node, VReg startReg, size_t argCount) SuperCall() argument 1139 SuperCallSpread(const ir::AstNode *node, VReg vs) SuperCallSpread() argument 1144 NewObject(const ir::AstNode *node, VReg startReg, size_t argCount) NewObject() argument 1149 LoadHomeObject(const ir::AstNode *node) LoadHomeObject() argument 1154 DefineMethod(const ir::AstNode *node, const util::StringView &name) DefineMethod() argument 1159 DefineFunction(const ir::AstNode *node, const ir::ScriptFunction *realNode, const util::StringView &name) DefineFunction() argument 1179 TypeOf(const ir::AstNode *node) TypeOf() argument 1184 CallSpread(const ir::AstNode *node, VReg func, VReg thisReg, VReg args) CallSpread() argument 1189 NewObjSpread(const ir::AstNode *node, VReg obj, VReg target) NewObjSpread() argument 1194 GetUnmappedArgs(const ir::AstNode *node) GetUnmappedArgs() argument 1199 Negate(const ir::AstNode *node) Negate() argument 1204 ToBoolean(const ir::AstNode *node) ToBoolean() argument 1209 ToNumber(const ir::AstNode *node, VReg arg) ToNumber() argument 1214 GetMethod(const ir::AstNode *node, VReg obj, const util::StringView &name) GetMethod() argument 1219 CreateGeneratorObj(const ir::AstNode *node, VReg funcObj) CreateGeneratorObj() argument 1224 CreateAsyncGeneratorObj(const ir::AstNode *node, VReg funcObj) CreateAsyncGeneratorObj() argument 1229 CreateIterResultObject(const ir::AstNode *node, bool done) CreateIterResultObject() argument 1234 SuspendGenerator(const ir::AstNode *node, VReg genObj) SuspendGenerator() argument 1239 SuspendAsyncGenerator(const ir::AstNode *node, VReg asyncGenObj) SuspendAsyncGenerator() argument 1244 GeneratorYield(const ir::AstNode *node, VReg genObj) GeneratorYield() argument 1249 GeneratorComplete(const ir::AstNode *node, VReg genObj) GeneratorComplete() argument 1254 ResumeGenerator(const ir::AstNode *node, VReg genObj) ResumeGenerator() argument 1259 GetResumeMode(const ir::AstNode *node, VReg genObj) GetResumeMode() argument 1264 AsyncFunctionEnter(const ir::AstNode *node) AsyncFunctionEnter() argument 1269 AsyncFunctionAwait(const ir::AstNode *node, VReg asyncFuncObj) AsyncFunctionAwait() argument 1274 AsyncFunctionResolve(const ir::AstNode *node, VReg asyncFuncObj) AsyncFunctionResolve() argument 1279 AsyncFunctionReject(const ir::AstNode *node, VReg asyncFuncObj) AsyncFunctionReject() argument 1284 AsyncGeneratorResolve(const ir::AstNode *node, VReg asyncGenObj) AsyncGeneratorResolve() argument 1289 AsyncGeneratorReject(const ir::AstNode *node, VReg asyncGenObj) AsyncGeneratorReject() argument 1294 GetTemplateObject(const ir::AstNode *node, VReg value) GetTemplateObject() argument 1299 CopyRestArgs(const ir::AstNode *node, uint32_t index) CopyRestArgs() argument 1304 GetPropIterator(const ir::AstNode *node) GetPropIterator() argument 1309 GetNextPropName(const ir::AstNode *node, VReg iter) GetNextPropName() argument 1314 CreateEmptyObject(const ir::AstNode *node) CreateEmptyObject() argument 1319 CreateObjectWithBuffer(const ir::AstNode *node, uint32_t idx) CreateObjectWithBuffer() argument 1325 CreateObjectHavingMethod(const ir::AstNode *node, uint32_t idx) CreateObjectHavingMethod() argument 1332 SetObjectWithProto(const ir::AstNode *node, VReg proto, VReg obj) SetObjectWithProto() argument 1337 CopyDataProperties(const ir::AstNode *node, VReg dst, VReg src) CopyDataProperties() argument 1342 DefineGetterSetterByValue(const ir::AstNode *node, std::tuple<VReg, VReg, VReg, VReg> registers, bool setName) DefineGetterSetterByValue() argument 1350 CreateEmptyArray(const ir::AstNode *node) CreateEmptyArray() argument 1355 CreateArrayWithBuffer(const ir::AstNode *node, uint32_t idx) CreateArrayWithBuffer() argument 1361 HandleArrayLiterals(const ir::AstNode *node, const ArenaVector<ir::Expression *> &elements) HandleArrayLiterals() argument 1387 HandleArraySpread(const ir::AstNode *node, const ArenaVector<ir::Expression *> &elements, VReg obj) HandleArraySpread() argument 1451 CreateArray(const ir::AstNode *node, const ArenaVector<ir::Expression *> &elements, VReg obj) CreateArray() argument 1472 StoreArraySpread(const ir::AstNode *node, VReg array, VReg index) StoreArraySpread() argument 1477 CreateRegExpWithLiteral(const ir::AstNode *node, const util::StringView &pattern, uint8_t flags) CreateRegExpWithLiteral() argument 1482 ThrowIfNotObject(const ir::AstNode *node) ThrowIfNotObject() argument 1487 ThrowThrowNotExist(const ir::AstNode *node) ThrowThrowNotExist() argument 1492 GetIterator(const ir::AstNode *node) GetIterator() argument 1497 GetAsyncIterator(const ir::AstNode *node) GetAsyncIterator() argument 1502 CreateObjectWithExcludedKeys(const ir::AstNode *node, VReg obj, VReg argStart, size_t argCount) CreateObjectWithExcludedKeys() argument 1513 ThrowObjectNonCoercible(const ir::AstNode *node) ThrowObjectNonCoercible() argument 1518 CloseIterator(const ir::AstNode *node, VReg iter) CloseIterator() argument 1523 ImportModule(const ir::AstNode *node, const util::StringView &name) ImportModule() argument 1528 SetClassComputedFields(const ir::AstNode *node, VReg classReg, VReg computedInstanceFieldArray) SetClassComputedFields() argument 1533 DefineClassWithBuffer(const ir::AstNode *node, const util::StringView &ctorId, uint32_t litIdx, VReg lexenv, VReg base) DefineClassWithBuffer() argument 1539 LoadClassComputedInstanceFields(const ir::AstNode *node, VReg ctor) LoadClassComputedInstanceFields() argument 1544 DefineClassPrivateFields(const ir::AstNode *node, uint32_t privateBufIdx) DefineClassPrivateFields() argument 1549 ClassFieldAdd(const ir::AstNode *node, VReg obj, VReg prop) ClassFieldAdd() argument 1554 ClassPrivateFieldAdd(const ir::AstNode *node, VReg ctor, VReg obj, const util::StringView &prop) ClassPrivateFieldAdd() argument 1559 ClassPrivateMethodOrAccessorAdd(const ir::AstNode *node, VReg ctor, VReg obj) ClassPrivateMethodOrAccessorAdd() argument 1564 ClassPrivateFieldGet(const ir::AstNode *node, VReg ctor, VReg obj, const util::StringView &prop) ClassPrivateFieldGet() argument 1569 ClassPrivateFieldSet(const ir::AstNode *node, VReg ctor, VReg obj, const util::StringView &prop) ClassPrivateFieldSet() argument 1574 ClassPrivateFieldIn(const ir::AstNode *node, VReg ctor, const util::StringView &prop) ClassPrivateFieldIn() argument 1579 LoadModuleVariable(const ir::AstNode *node, VReg module, const util::StringView &name) LoadModuleVariable() argument 1584 StoreModuleVar(const ir::AstNode *node, const util::StringView &name) StoreModuleVar() argument 1589 CopyModule(const ir::AstNode *node, VReg module) CopyModule() argument 1594 StSuperByName(const ir::AstNode *node, VReg obj, const util::StringView &key) StSuperByName() argument 1599 LdSuperByName(const ir::AstNode *node, const util::StringView &key) LdSuperByName() argument 1604 StSuperByValue(const ir::AstNode *node, VReg obj, VReg prop) StSuperByValue() argument 1609 LdSuperByValue(const ir::AstNode *node, VReg obj) LdSuperByValue() argument 1614 StoreSuperProperty(const ir::AstNode *node, VReg obj, const Operand &prop) StoreSuperProperty() argument 1625 LoadSuperProperty(const ir::AstNode *node, const Operand &prop) LoadSuperProperty() argument 1636 LoadLexicalVar(const ir::AstNode *node, uint32_t level, uint32_t slot) LoadLexicalVar() argument 1641 LoadLexical(const ir::AstNode *node, const util::StringView &name, uint32_t level, uint32_t slot) LoadLexical() argument 1646 StoreLexicalVar(const ir::AstNode *node, uint32_t level, uint32_t slot) StoreLexicalVar() argument 1651 StoreLexical(const ir::AstNode *node, const util::StringView &name, uint32_t level, uint32_t slot) StoreLexical() argument 1656 ThrowIfSuperNotCorrectCall(const ir::AstNode *node, int64_t num) ThrowIfSuperNotCorrectCall() argument 1661 ThrowTdz(const ir::AstNode *node, const util::StringView &name) ThrowTdz() argument 1666 ThrowConstAssignment(const ir::AstNode *node, const util::StringView &name) ThrowConstAssignment() argument 1671 PopLexEnv(const ir::AstNode *node) PopLexEnv() argument 1676 CopyLexEnv(const ir::AstNode *node) CopyLexEnv() argument 1681 NewLexEnv(const ir::AstNode *node, uint32_t num) NewLexEnv() argument 1686 LdLexEnv(const ir::AstNode *node) LdLexEnv() argument 1789 LoadEvalVariable(const ir::AstNode *node, const util::StringView &name) LoadEvalVariable() argument 1796 StoreEvalVariable(const ir::AstNode *node, const util::StringView &name) StoreEvalVariable() argument 1805 DirectEval(const ir::AstNode *node, uint32_t parserStatus) DirectEval() argument 1853 LoadLexicalContext(const ir::AstNode *node) LoadLexicalContext() argument [all...] |
| H A D | ETSGen.h | 46 [[nodiscard]] VReg StoreException(const ir::AstNode *node); 47 void ApplyConversionAndStoreAccumulator(const ir::AstNode *node, VReg vreg, const checker::Type *targetType); 48 void StoreAccumulator(const ir::AstNode *node, VReg vreg); 49 void LoadAccumulator(const ir::AstNode *node, VReg vreg); 50 [[nodiscard]] IRNode *AllocMov(const ir::AstNode *node, VReg vd, VReg vs) override; 51 [[nodiscard]] IRNode *AllocMov(const ir::AstNode *node, OutVReg vd, VReg vs) override; 52 void MoveVreg(const ir::AstNode *node, VReg vd, VReg vs); 56 void LoadVar(const ir::Identifier *node, varbinder::Variable const *var); 57 void LoadDynamicModuleVariable(const ir::AstNode *node, varbinder::Variable const *var); 58 void LoadDynamicNamespaceVariable(const ir::AstNode *node, varbinde 110 ResolveConditionalResultFloat(const ir::AstNode *node, Label *realEndLabel) ResolveConditionalResultFloat() argument 136 ResolveConditionalResultNumeric(const ir::AstNode *node, [[maybe_unused]] Label *ifFalse, Label **end) ResolveConditionalResultNumeric() argument 165 ResolveConditionalResultReference(const ir::AstNode *node) ResolveConditionalResultReference() argument 203 ResolveConditionalResult(const ir::AstNode *node, [[maybe_unused]] Label *ifFalse) ResolveConditionalResult() argument 238 ResolveConditionalResultIfFalse(const ir::AstNode *node, Label *ifFalse = nullptr) ResolveConditionalResultIfFalse() argument 244 ResolveConditionalResultIfTrue(const ir::AstNode *node, Label *ifFalse = nullptr) ResolveConditionalResultIfTrue() argument 249 BranchIfFalse(const ir::AstNode *node, Label *ifFalse) BranchIfFalse() argument 254 BranchIfTrue(const ir::AstNode *node, Label *ifTrue) BranchIfTrue() argument 259 BranchIfNull(const ir::AstNode *node, Label *ifNull) BranchIfNull() argument 264 BranchIfUndefined([[maybe_unused]] const ir::AstNode *node, [[maybe_unused]] Label *ifUndefined) BranchIfUndefined() argument 274 BranchIfNotUndefined([[maybe_unused]] const ir::AstNode *node, [[maybe_unused]] Label *ifUndefined) BranchIfNotUndefined() argument 284 BranchIfNotNull(const ir::AstNode *node, Label *ifNotNull) BranchIfNotNull() argument 293 JumpTo(const ir::AstNode *node, Label *labelTo) JumpTo() argument 298 EmitThrow(const ir::AstNode *node, VReg err) EmitThrow() argument 310 LoadAccumulatorByte(const ir::AstNode *node, int8_t number) LoadAccumulatorByte() argument 315 LoadAccumulatorShort(const ir::AstNode *node, int16_t number) LoadAccumulatorShort() argument 320 LoadAccumulatorInt(const ir::AstNode *node, int32_t number) LoadAccumulatorInt() argument 325 LoadAccumulatorWideInt(const ir::AstNode *node, int64_t number) LoadAccumulatorWideInt() argument 330 LoadAccumulatorFloat(const ir::AstNode *node, float number) LoadAccumulatorFloat() argument 335 LoadAccumulatorDouble(const ir::AstNode *node, double number) LoadAccumulatorDouble() argument 340 LoadAccumulatorBoolean(const ir::AstNode *node, bool value) LoadAccumulatorBoolean() argument 347 LoadAccumulatorString(const ir::AstNode *node, util::StringView str) LoadAccumulatorString() argument 353 LoadAccumulatorBigInt(const ir::AstNode *node, util::StringView str) LoadAccumulatorBigInt() argument 359 LoadAccumulatorNull(const ir::AstNode *node, const checker::Type *type) LoadAccumulatorNull() argument 365 LoadAccumulatorUndefined([[maybe_unused]] const ir::AstNode *node) LoadAccumulatorUndefined() argument 375 LoadAccumulatorChar(const ir::AstNode *node, char16_t value) LoadAccumulatorChar() argument 386 ApplyConversion(const ir::AstNode *node) ApplyConversion() argument 407 MoveImmediateToRegister(const ir::AstNode *node, VReg reg, const checker::TypeFlag valueType, T const value) MoveImmediateToRegister() argument 454 IncrementImmediateRegister(const ir::AstNode *node, VReg reg, const checker::TypeFlag valueType, T const value) IncrementImmediateRegister() argument 484 JumpCompareRegister(const ir::AstNode *node, VReg lhs, Label *ifFalse) JumpCompareRegister() argument 527 InitObject(const ir::AstNode *node, checker::Signature const *signature, const ArenaVector<ir::Expression *> &arguments) InitObject() argument 540 CallExact(const ir::AstNode *node, checker::Signature *signature, const ArenaVector<ir::Expression *> &arguments) CallExact() argument 546 CallExact(const ir::AstNode *const node, const checker::Signature *signature, const VReg arg0, const ArenaVector<ir::Expression *> &arguments) CallExact() argument 552 CallExact(const ir::AstNode *const node, const util::StringView name) CallExact() argument 557 CallExact(const ir::AstNode *const node, const util::StringView name, const VReg arg0) CallExact() argument 562 CallExact(const ir::AstNode *const node, const util::StringView name, const VReg arg0, const VReg arg1) CallExact() argument 567 CallExact(const ir::AstNode *const node, const util::StringView name, const VReg arg0, const VReg arg1, const VReg arg2) CallExact() argument 573 CallVirtual(const ir::AstNode *const node, const checker::Signature *signature, const VReg athis, const ArenaVector<ir::Expression *> &arguments) CallVirtual() argument 585 CallVirtual(const ir::AstNode *const node, const checker::Signature *signature, const VReg athis) CallVirtual() argument 594 CallVirtual(const ir::AstNode *const node, const checker::Signature *signature, const VReg athis, const VReg arg0) CallVirtual() argument 604 CallVirtual(const ir::AstNode *const node, const util::StringView name, const VReg athis) CallVirtual() argument 609 CallVirtual(const ir::AstNode *const node, const util::StringView name, const VReg athis, const VReg arg0) CallVirtual() argument 615 const ir::AstNode *node = nullptr; global() member 635 LaunchExact(const ir::AstNode *node, checker::Signature *signature, const ArenaVector<ir::Expression *> &arguments) LaunchExact() argument 641 LaunchVirtual(const ir::AstNode *const node, checker::Signature *const signature, const VReg athis, const ArenaVector<ir::Expression *> &arguments) LaunchVirtual() argument 655 GetType(const ir::AstNode *node, bool isEtsPrimitive) GetType() argument 694 EmitIsUndefined([[maybe_unused]] const ir::AstNode *node) EmitIsUndefined() argument 703 EmitEtsEquals([[maybe_unused]] const ir::AstNode *node, [[maybe_unused]] const VReg lhs, [[maybe_unused]] const VReg rhs) EmitEtsEquals() argument 714 StoreValueIntoArray(const ir::AstNode *const node, const VReg arr, const VReg index) StoreValueIntoArray() argument 720 UpdateOperator(const ir::AstNode *node) UpdateOperator() argument 770 InverseCondition(const ir::AstNode *node, Br const &br, Label *target, bool inverse = true) InverseCondition() argument 786 BinaryNumberComparison(const ir::AstNode *node, VReg lhs, Label *ifFalse) BinaryNumberComparison() argument 793 RefEqualityStrictDynamic(const ir::AstNode *node, VReg lhs, Label *ifFalse) RefEqualityStrictDynamic() argument 802 BinaryEquality(const ir::AstNode *node, VReg lhs, Label *ifFalse) BinaryEquality() argument 810 BinaryEqualityCondition(const ir::AstNode *node, VReg lhs, Label *ifFalse) BinaryEqualityCondition() argument 857 RefEqualityStrict(const ir::AstNode *node, VReg lhs, Label *ifFalse) RefEqualityStrict() argument 870 BinaryRelation(const ir::AstNode *node, VReg lhs, Label *ifFalse) BinaryRelation() argument 878 BinaryRelationCondition(const ir::AstNode *node, VReg lhs, Label *ifFalse) BinaryRelationCondition() argument 912 BinaryFloatingPointComparison(const ir::AstNode *node, VReg lhs, Label *ifFalse) BinaryFloatingPointComparison() argument 922 BinaryArithmetic(const ir::AstNode *node, VReg lhs) BinaryArithmetic() argument 944 BinaryBitwiseArithmetic(const ir::AstNode *node, VReg lhs) BinaryBitwiseArithmetic() argument 989 CallArgStart(const ir::AstNode *const node, const checker::Signature *signature, const VReg argStart, const ArenaVector<ir::Expression *> &arguments) CallArgStart() argument 1030 CallImpl(const ir::AstNode *node, checker::Signature const *signature, const ArenaVector<ir::Expression *> &arguments) CallImpl() argument 1176 SetAccumulatorTargetType(const ir::AstNode *node, checker::TypeFlag typeKind, T number) SetAccumulatorTargetType() argument 1229 LoadAccumulatorNumber(const ir::AstNode *node, T number, checker::TypeFlag targetType) LoadAccumulatorNumber() argument [all...] |
| H A D | ETSGen.cpp | 126 void ETSGen::ApplyConversionAndStoreAccumulator(const ir::AstNode *const node, const VReg vreg, in ApplyConversionAndStoreAccumulator() argument 129 ApplyConversion(node, targetType); in ApplyConversionAndStoreAccumulator() 130 StoreAccumulator(node, vreg); in ApplyConversionAndStoreAccumulator() 133 VReg ETSGen::StoreException(const ir::AstNode *node) in StoreException() argument 136 Ra().Emit<StaObj>(node, exception); in StoreException() 143 void ETSGen::StoreAccumulator(const ir::AstNode *const node, const VReg vreg) in StoreAccumulator() argument 149 Ra().Emit<StaObj>(node, vreg); in StoreAccumulator() 151 Ra().Emit<StaWide>(node, vreg); in StoreAccumulator() 153 Ra().Emit<Sta>(node, vreg); in StoreAccumulator() 159 void ETSGen::LoadAccumulator(const ir::AstNode *node, VRe argument 175 AllocMov(const ir::AstNode *const node, const VReg vd, const VReg vs) AllocMov() argument 193 AllocMov(const ir::AstNode *const node, OutVReg vd, const VReg vs) AllocMov() argument 214 MoveVreg(const ir::AstNode *const node, const VReg vd, const VReg vs) MoveVreg() argument 241 LoadAccumulatorDynamicModule(const ir::AstNode *node, const ir::ETSImportDeclaration *import) LoadAccumulatorDynamicModule() argument 262 LoadDynamicModuleVariable(const ir::AstNode *node, varbinder::Variable const *const var) LoadDynamicModuleVariable() argument 281 LoadDynamicNamespaceVariable(const ir::AstNode *node, varbinder::Variable const *const var) LoadDynamicNamespaceVariable() argument 286 LoadVar(const ir::Identifier *node, varbinder::Variable const *const var) LoadVar() argument 329 StoreVar(const ir::Identifier *node, const varbinder::ConstScopeFindResult &result) StoreVar() argument 384 StoreStaticOwnProperty(const ir::AstNode *node, const checker::Type *propType, const util::StringView &name) StoreStaticOwnProperty() argument 391 StoreStaticProperty(const ir::AstNode *const node, const checker::Type *propType, const util::StringView &fullName) StoreStaticProperty() argument 403 LoadStaticProperty(const ir::AstNode *const node, const checker::Type *propType, const util::StringView &fullName) LoadStaticProperty() argument 417 StoreProperty(const ir::AstNode *const node, const checker::Type *propType, const VReg objReg, const util::StringView &name) StoreProperty() argument 431 LoadProperty(const ir::AstNode *const node, const checker::Type *propType, const VReg objReg, const util::StringView &fullName) LoadProperty() argument 445 StoreUnionProperty([[maybe_unused]] const ir::AstNode *node, [[maybe_unused]] const checker::Type *propType, [[maybe_unused]] VReg objReg, [[maybe_unused]] const util::StringView &propName) StoreUnionProperty() argument 462 LoadUnionProperty([[maybe_unused]] const ir::AstNode *const node, [[maybe_unused]] const checker::Type *propType, [[maybe_unused]] const VReg objReg, [[maybe_unused]] const util::StringView &propName) LoadUnionProperty() argument 480 StorePropertyDynamic(const ir::AstNode *node, const checker::Type *propType, VReg objReg, const util::StringView &propName) StorePropertyDynamic() argument 528 LoadPropertyDynamic(const ir::AstNode *node, const checker::Type *propType, VReg objReg, const util::StringView &propName) LoadPropertyDynamic() argument 575 StoreElementDynamic(const ir::AstNode *node, VReg objectReg, VReg index) StoreElementDynamic() argument 590 LoadElementDynamic(const ir::AstNode *node, VReg objectReg) LoadElementDynamic() argument 605 LoadUndefinedDynamic(const ir::AstNode *node, Language lang) LoadUndefinedDynamic() argument 612 LoadThis(const ir::AstNode *node) LoadThis() argument 617 CreateBigIntObject(const ir::AstNode *node, VReg arg0, std::string_view signature) CreateBigIntObject() argument 628 LoadDefaultValue([[maybe_unused]] const ir::AstNode *node, [[maybe_unused]] const checker::Type *type) LoadDefaultValue() argument 658 EmitReturnVoid(const ir::AstNode *node) EmitReturnVoid() argument 663 ReturnAcc(const ir::AstNode *node) ReturnAcc() argument 688 IsInstanceDynamic(const ir::BinaryExpression *const node, const VReg srcReg, [[maybe_unused]] const VReg tgtReg) IsInstanceDynamic() argument 760 TestIsInstanceConstant(const ir::AstNode *node, Label *ifTrue, VReg srcReg, checker::Type const *target) TestIsInstanceConstant() argument 779 TestIsInstanceConstituent(const ir::AstNode *const node, std::tuple<Label *, Label *> label, VReg srcReg, checker::Type const *target, bool acceptUndefined) TestIsInstanceConstituent() argument 824 BranchIfIsInstance(const ir::AstNode *const node, const VReg srcReg, const checker::Type *target, Label *ifTrue) BranchIfIsInstance() argument 853 IsInstance(const ir::AstNode *const node, const VReg srcReg, const checker::Type *target) IsInstance() argument 885 InternalIsInstance(const ir::AstNode *node, const es2panda::checker::Type *target) InternalIsInstance() argument 897 InternalCheckCast(const ir::AstNode *node, const es2panda::checker::Type *target) InternalCheckCast() argument 907 CheckedReferenceNarrowingObject(const ir::AstNode *node, const checker::Type *target) CheckedReferenceNarrowingObject() argument 945 CheckedReferenceNarrowing(const ir::AstNode *node, const checker::Type *target) CheckedReferenceNarrowing() argument 980 GuardUncheckedType(const ir::AstNode *node, const checker::Type *unchecked, const checker::Type *target) GuardUncheckedType() argument 993 EmitFailedTypeCastException(const ir::AstNode *node, const VReg src, checker::Type const *target) EmitFailedTypeCastException() argument 1005 LoadConstantObject(const ir::Expression *node, const checker::Type *type) LoadConstantObject() argument 1018 TryLoadConstantExpression(const ir::Expression *node) TryLoadConstantExpression() argument 1070 ApplyConversionCast(const ir::AstNode *node, const checker::Type *targetType) ApplyConversionCast() argument 1107 ApplyBoxingConversion(const ir::AstNode *node) ApplyBoxingConversion() argument 1114 ApplyUnboxingConversion(const ir::AstNode *node) ApplyUnboxingConversion() argument 1121 ApplyConversion(const ir::AstNode *node, const checker::Type *targetType) ApplyConversion() argument 1147 ApplyCast(const ir::AstNode *node, const checker::Type *targetType) ApplyCast() argument 1178 ApplyCastToBoxingFlags(const ir::AstNode *node, const ir::BoxingUnboxingFlags targetType) ApplyCastToBoxingFlags() argument 1203 EmitUnboxedCall(const ir::AstNode *node, std::string_view signatureFlag, const checker::Type *const targetType, const checker::Type *const boxedType) EmitUnboxedCall() argument 1227 EmitUnboxEnum(const ir::AstNode *node, const checker::Type *enumType) EmitUnboxEnum() argument 1244 EmitUnboxingConversion(const ir::AstNode *node) EmitUnboxingConversion() argument 1296 EmitBoxedType(ir::BoxingUnboxingFlags boxingFlag, const ir::AstNode *node) EmitBoxedType() argument 1344 EmitBoxingConversion(const ir::AstNode *node) EmitBoxingConversion() argument 1362 SwapBinaryOpArgs(const ir::AstNode *const node, const VReg lhs) SwapBinaryOpArgs() argument 1372 MoveAccToReg(const ir::AstNode *const node) MoveAccToReg() argument 1379 CastToBoolean([[maybe_unused]] const ir::AstNode *node) CastToBoolean() argument 1423 CastToByte([[maybe_unused]] const ir::AstNode *node) CastToByte() argument 1471 CastToChar([[maybe_unused]] const ir::AstNode *node) CastToChar() argument 1518 CastToShort([[maybe_unused]] const ir::AstNode *node) CastToShort() argument 1568 CastToDouble(const ir::AstNode *node) CastToDouble() argument 1610 CastToFloat(const ir::AstNode *node) CastToFloat() argument 1652 CastToLong(const ir::AstNode *node) CastToLong() argument 1694 CastToInt(const ir::AstNode *node) CastToInt() argument 1737 CastToReftype(const ir::AstNode *const node, const checker::Type *const targetType, const bool unchecked) CastToReftype() argument 1766 CastDynamicToObject(const ir::AstNode *node, const checker::Type *targetType) CastDynamicToObject() argument 1819 CastToString(const ir::AstNode *const node) CastToString() argument 1832 CastToDynamic(const ir::AstNode *node, const checker::ETSDynamicType *type) CastToDynamic() argument 1887 CastDynamicTo(const ir::AstNode *node, enum checker::TypeFlag typeFlag) CastDynamicTo() argument 1923 ToBinaryResult(const ir::AstNode *node, Label *ifFalse) ToBinaryResult() argument 1934 BinaryLogic(const ir::AstNode *node, lexer::TokenType op, VReg lhs) BinaryLogic() argument 1985 BinaryArithmLogic(const ir::AstNode *node, lexer::TokenType op, VReg lhs) BinaryArithmLogic() argument 2022 Binary(const ir::AstNode *node, lexer::TokenType op, VReg lhs) Binary() argument 2068 Condition(const ir::AstNode *node, lexer::TokenType op, VReg lhs, Label *ifFalse) Condition() argument 2101 BranchIfNullish([[maybe_unused]] const ir::AstNode *node, [[maybe_unused]] Label *ifNullish) BranchIfNullish() argument 2132 BranchIfNotNullish([[maybe_unused]] const ir::AstNode *node, [[maybe_unused]] Label *ifNotNullish) BranchIfNotNullish() argument 2140 AssumeNonNullish(const ir::AstNode *node, checker::Type const *targetType) AssumeNonNullish() argument 2151 EmitNullishException(const ir::AstNode *node) EmitNullishException() argument 2161 RefEqualityLooseDynamic(const ir::AstNode *node, VReg lhs, VReg rhs, Label *ifFalse) RefEqualityLooseDynamic() argument 2168 HandleLooseNullishEquality(const ir::AstNode *node, VReg lhs, VReg rhs, Label *ifFalse, Label *ifTrue) HandleLooseNullishEquality() argument 2212 RefEqualityLoose(const ir::AstNode *node, VReg lhs, VReg rhs, Label *ifFalse) RefEqualityLoose() argument 2264 Negate(const ir::AstNode *node) Negate() argument 2294 LogicalNot(const ir::AstNode *node) LogicalNot() argument 2302 Unary(const ir::AstNode *node, lexer::TokenType op) Unary() argument 2330 UnaryMinus(const ir::AstNode *node) UnaryMinus() argument 2365 UnaryTilde(const ir::AstNode *node) UnaryTilde() argument 2393 UnaryDollarDollar(const ir::AstNode *node) UnaryDollarDollar() argument 2407 Update(const ir::AstNode *node, lexer::TokenType op) Update() argument 2424 UpdateBigInt(const ir::Expression *node, VReg arg, lexer::TokenType op) UpdateBigInt() argument 2441 StringBuilderAppend(const ir::AstNode *node, VReg builder) StringBuilderAppend() argument 2515 BuildString(const ir::Expression *node) BuildString() argument 2531 CallBigIntUnaryOperator(const ir::Expression *node, VReg arg, const util::StringView signature) CallBigIntUnaryOperator() argument 2538 CallBigIntBinaryOperator(const ir::Expression *node, VReg lhs, VReg rhs, const util::StringView signature) CallBigIntBinaryOperator() argument 2545 CallBigIntBinaryComparison(const ir::Expression *node, VReg lhs, VReg rhs, const util::StringView signature) CallBigIntBinaryComparison() argument 2553 BuildTemplateString(const ir::TemplateLiteral *node) BuildTemplateString() argument 2592 NewObject(const ir::AstNode *const node, const util::StringView name, VReg athis) NewObject() argument 2598 NewArray(const ir::AstNode *const node, const VReg arr, const VReg dim, const checker::Type *const arrType) NewArray() argument 2608 LoadArrayLength(const ir::AstNode *node, VReg arrayReg) LoadArrayLength() argument 2614 LoadArrayElement(const ir::AstNode *node, VReg objectReg) LoadArrayElement() argument 2664 StoreArrayElement(const ir::AstNode *node, VReg objectReg, VReg index, const checker::Type *elementType) StoreArrayElement() argument 2710 LoadStringLength(const ir::AstNode *node) LoadStringLength() argument 2716 FloatIsNaN(const ir::AstNode *node) FloatIsNaN() argument 2722 DoubleIsNaN(const ir::AstNode *node) DoubleIsNaN() argument 2728 LoadStringChar(const ir::AstNode *node, const VReg stringObj, const VReg charIndex) LoadStringChar() argument 2744 ExtendWithFinalizer(ir::AstNode const *node, const ir::AstNode *originalNode, Label *prevFinnaly) ExtendWithFinalizer() argument 2807 CastUnionToFunctionType(const ir::AstNode *node, const checker::ETSUnionType *unionType, checker::Signature *signatureTarget) CastUnionToFunctionType() argument [all...] |
| /arkcompiler/ets_runtime/ecmascript/mem/ |
| H A D | ecma_list.h | 30 explicit EcmaList(T *node) : first_(node), last_(node) in EcmaList() argument 32 node->LinkPrev(nullptr); in EcmaList() 33 node->LinkNext(nullptr); in EcmaList() 38 void AddNode(T *node) in AddNode() argument 40 ASSERT(node != nullptr); in AddNode() 43 node->LinkNext(lastNext); in AddNode() 44 node->LinkPrev(last_); in AddNode() 45 last_->LinkNext(node); in AddNode() 59 AddNodeToFront(T *node) AddNodeToFront() argument 77 T *node = last_; PopBack() local 82 RemoveNode(T *node) RemoveNode() argument 110 HasNode(T *node) HasNode() argument [all...] |
| /arkcompiler/ets_frontend/es2panda/compiler/function/ |
| H A D | asyncGeneratorFunctionBuilder.cpp | 23 void AsyncGeneratorFunctionBuilder::Prepare(const ir::ScriptFunction *node) in Prepare() argument 26 VReg callee = FunctionReg(node); in Prepare() 30 pg_->CreateAsyncGeneratorObj(node, callee); in Prepare() 31 pg_->StoreAccumulator(node, funcObj_); in Prepare() 33 pg_->SetLabel(node, catchTable_->LabelSet().TryBegin()); in Prepare() 35 pg_->LoadConst(node, Constant::JS_UNDEFINED); in Prepare() 36 SuspendResumeExecution(node, completionType, completionValue); in Prepare() 39 void AsyncGeneratorFunctionBuilder::CleanUp(const ir::ScriptFunction *node) const in CleanUp() 46 pg_->SetLabel(node, labelSet.TryEnd()); in CleanUp() 47 pg_->SetLabel(node, labelSe in CleanUp() 95 Yield(const ir::AstNode *node) Yield() argument [all...] |
| H A D | functionBuilder.cpp | 38 void FunctionBuilder::DirectReturn(const ir::AstNode *node) const in DirectReturn() 40 pg_->NotifyConcurrentResult(node); in DirectReturn() 41 pg_->EmitReturn(node); in DirectReturn() 44 void FunctionBuilder::ImplicitReturn(const ir::AstNode *node) const in ImplicitReturn() 50 pg_->NotifyConcurrentResult(node); in ImplicitReturn() 52 pg_->EmitReturn(node); in ImplicitReturn() 55 pg_->LoadConst(node, Constant::JS_UNDEFINED); in ImplicitReturn() 56 pg_->NotifyConcurrentResult(node); in ImplicitReturn() 58 pg_->EmitReturnUndefined(node); in ImplicitReturn() 62 pg_->GetThis(node); in ImplicitReturn() 78 AsyncYield(const ir::AstNode *node, VReg value, VReg completionType, VReg completionValue) const AsyncYield() argument 95 SuspendResumeExecution(const ir::AstNode *node, VReg completionType, VReg completionValue) const SuspendResumeExecution() argument 104 resumeGenerator(const ir::AstNode *node, VReg completionType, VReg completionValue) const resumeGenerator() argument 123 Await(const ir::AstNode *node) Await() argument 141 HandleCompletion(const ir::AstNode *node, VReg completionType, VReg completionValue) HandleCompletion() argument 174 YieldStar(const ir::AstNode *node) YieldStar() argument [all...] |
| H A D | asyncFunctionBuilder.cpp | 24 void AsyncFunctionBuilder::DirectReturn(const ir::AstNode *node) const in DirectReturn() 26 pg_->AsyncFunctionResolve(node, funcObj_); // retVal is in acc in DirectReturn() 27 pg_->NotifyConcurrentResult(node); in DirectReturn() 29 // invokes the DirectReturn method, the EmitReturn needs to be associated with a valid node in DirectReturn() 31 pg_->EmitReturn(node); in DirectReturn() 34 void AsyncFunctionBuilder::ImplicitReturn(const ir::AstNode *node) const in ImplicitReturn() 37 pg_->LoadConst(node, Constant::JS_UNDEFINED); in ImplicitReturn() 38 DirectReturn(node); in ImplicitReturn() 41 void AsyncFunctionBuilder::ExplicitReturn(const ir::AstNode *node) const in ExplicitReturn() 43 DirectReturn(node); in ExplicitReturn() 46 Prepare(const ir::ScriptFunction *node) Prepare() argument [all...] |
| H A D | generatorFunctionBuilder.cpp | 24 void GeneratorFunctionBuilder::Prepare(const ir::ScriptFunction *node) in Prepare() argument 26 VReg callee = FunctionReg(node); in Prepare() 30 pg_->CreateGeneratorObj(node, callee); in Prepare() 31 pg_->StoreAccumulator(node, funcObj_); in Prepare() 32 pg_->LoadConst(node, Constant::JS_UNDEFINED); in Prepare() 33 SuspendResumeExecution(node, completionType, completionValue); in Prepare() 34 HandleCompletion(node, completionType, completionValue); in Prepare() 37 void GeneratorFunctionBuilder::CleanUp(const ir::ScriptFunction *node) const in CleanUp() 41 pg_->SetLabel(node, labelSet.TryEnd()); in CleanUp() 42 pg_->SetLabel(node, labelSe in CleanUp() 65 Yield(const ir::AstNode *node) Yield() argument [all...] |
| /arkcompiler/ets_runtime/ecmascript/ |
| H A D | waiter_list.cpp | 19 void WaiterList::AddNode(WaiterListNode *node) in AddNode() argument 21 ASSERT(node->prev_ == nullptr); in AddNode() 22 ASSERT(node->next_ == nullptr); in AddNode() 23 auto iter = locationListMap_.find(node->waitPointer_); in AddNode() 25 iter->second.pTail->next_ = node; in AddNode() 26 node->prev_ = iter->second.pTail; in AddNode() 27 iter->second.pTail = node; in AddNode() 29 locationListMap_.emplace(node->waitPointer_, HeadAndTail {node, node}); in AddNode() 33 DeleteNode(WaiterListNode *node) DeleteNode() argument [all...] |
| H A D | ecma_global_storage.h | 45 void SetNext(Node *node) in SetNext() argument 47 next_ = node; in SetNext() 55 void SetPrev(Node *node) in SetPrev() argument 57 prev_ = node; in SetPrev() 95 // If isUsing is true, it means that the node is being used, otherwise it means that node is be freed 236 inline static NodeList<T> *NodeToNodeList(T *node) in NodeToNodeList() argument 238 uintptr_t ptr = ToUintPtr(node) - node->GetIndex() * sizeof(T); in NodeToNodeList() 247 T *node in NewNode() local 259 T *node = freeList_; GetFreeNode() local 271 FreeNode(JSThread *thread, T *node) FreeNode() argument 440 T *node = reinterpret_cast<T *>(nodeAddr); DisposeGlobalHandle() local 458 WeakNode *node = reinterpret_cast<WeakNode *>(addr); SetWeak() local 474 T *node = reinterpret_cast<T *>(addr); IsWeak() local 509 DisposeGlobalHandleInner(S *node, NodeList<S> **freeList, NodeList<S> **topNodes, NodeList<S> **lastNodes) DisposeGlobalHandleInner() argument 548 S *node = (*storage)->NewNode(thread_, value); NewGlobalHandleImplement() local 554 S *node = (*freeList)->GetFreeNode(thread_, value); NewGlobalHandleImplement() local 575 S *node = (*storage)->NewNode(thread_, value); NewGlobalHandleImplement() local [all...] |
| /arkcompiler/ets_frontend/es2panda/compiler/base/ |
| H A D | lexenv.cpp | 30 static bool CheckTdz(const ir::AstNode *node) in CheckTdz() argument 32 return node->IsIdentifier() && node->AsIdentifier()->IsTdz(); in CheckTdz() 35 static void CheckConstAssignment(PandaGen *pg, const ir::AstNode *node, binder::Variable *variable) in CheckConstAssignment() argument 41 pg->ThrowConstAssignment(node, variable->Name()); in CheckConstAssignment() 46 static void ExpandLoadLexVar(PandaGen *pg, const ir::AstNode *node, const binder::ScopeFindResult &result) in ExpandLoadLexVar() argument 55 if (classDef == util::Helpers::GetContainingSendableClass(node) && in ExpandLoadLexVar() 57 pg->LoadSendableClass(node, result.lexLevel); in ExpandLoadLexVar() 64 pg->LoadSendableVar(node, result.sendableLevel, local->LexIdx()); in ExpandLoadLexVar() 66 pg->LoadLexicalVar(node, resul in ExpandLoadLexVar() 74 ExpandLoadNormalVar(PandaGen *pg, const ir::AstNode *node, const binder::ScopeFindResult &result) ExpandLoadNormalVar() argument 86 Expand(PandaGen *pg, const ir::AstNode *node, const binder::ScopeFindResult &result) Expand() argument 97 ExpandStoreLexVar(PandaGen *pg, const ir::AstNode *node, const binder::ScopeFindResult &result, bool isDecl) ExpandStoreLexVar() argument 125 ExpandStoreNormalVar(PandaGen *pg, const ir::AstNode *node, const binder::ScopeFindResult &result, bool isDecl) ExpandStoreNormalVar() argument 143 Expand(PandaGen *pg, const ir::AstNode *node, const binder::ScopeFindResult &result, bool isDecl) Expand() argument [all...] |
| /arkcompiler/ets_frontend/ets2panda/checker/ets/ |
| H A D | etsWarningAnalyzer.cpp | 120 void ETSWarningAnalyzer::ETSWarningSuggestFinal(const ir::AstNode *node) in ETSWarningSuggestFinal() argument 122 if (node->IsClassDeclaration() && !program_->NodeContainsETSNolint(node, ETSWarnings::SUGGEST_FINAL)) { in ETSWarningSuggestFinal() 123 if (node->AsClassDeclaration()->Definition()->IsClassDefinition()) { in ETSWarningSuggestFinal() 124 AnalyzeClassDefForFinalModifier(node->AsClassDeclaration()->Definition()); in ETSWarningSuggestFinal() 127 const auto classBody = node->AsClassDeclaration()->Definition()->Body(); in ETSWarningSuggestFinal() 130 AnalyzeClassMethodForFinalModifier(it->AsMethodDefinition(), node->AsClassDeclaration()->Definition()); in ETSWarningSuggestFinal() 134 node->Iterate([&](auto *childNode) { ETSWarningSuggestFinal(childNode); }); in ETSWarningSuggestFinal() 172 void ETSWarningAnalyzer::ETSWarningsProhibitTopLevelStatements(const ir::AstNode *node) in ETSWarningsProhibitTopLevelStatements() argument 174 if (!node in ETSWarningsProhibitTopLevelStatements() 209 ETSWarningBoostEqualityStatement(const ir::AstNode *node) ETSWarningBoostEqualityStatement() argument 225 ETSWarningRemoveAsync(const ir::AstNode *node) ETSWarningRemoveAsync() argument 236 ETSWarningRemoveLambda(const ir::AstNode *node) ETSWarningRemoveLambda() argument 246 CheckTypeOfBoxing(const ir::AstNode *node) CheckTypeOfBoxing() argument 282 CheckTypeOfUnboxing(const ir::AstNode *node) CheckTypeOfUnboxing() argument 318 CheckTypeOfBoxingUnboxing(const ir::AstNode *node) CheckTypeOfBoxingUnboxing() argument 326 GetBoxingUnboxingType(const ir::AstNode *node) GetBoxingUnboxingType() argument 359 ETSWarningImplicitBoxingUnboxing(const ir::AstNode *node) ETSWarningImplicitBoxingUnboxing() argument [all...] |
| H A D | etsWarningAnalyzer.h | 24 ETSWarningAnalyzer(const ir::AstNode *node, parser::Program *program, const ETSWarnings warning, bool etsWerror) in ETSWarningAnalyzer() argument 27 if (node == nullptr) { in ETSWarningAnalyzer() 33 ETSWarningSuggestFinal(node); in ETSWarningAnalyzer() 36 ETSWarningsProhibitTopLevelStatements(node); in ETSWarningAnalyzer() 39 ETSWarningBoostEqualityStatement(node); in ETSWarningAnalyzer() 42 ETSWarningRemoveAsync(node); in ETSWarningAnalyzer() 45 ETSWarningRemoveLambda(node); in ETSWarningAnalyzer() 48 ETSWarningImplicitBoxingUnboxing(node); in ETSWarningAnalyzer() 60 void CheckTypeOfBoxing(const ir::AstNode *node); 61 void CheckTypeOfUnboxing(const ir::AstNode *node); [all...] |
| /arkcompiler/ets_frontend/ets2panda/compiler/base/ |
| H A D | lexenv.cpp | 27 static bool CheckTdz(const ir::AstNode *node) in CheckTdz() argument 29 return node->IsIdentifier() && node->AsIdentifier()->IsTdz(); in CheckTdz() 32 static void CheckConstAssignment(PandaGen *pg, const ir::AstNode *node, varbinder::Variable *variable) in CheckConstAssignment() argument 38 pg->ThrowConstAssignment(node, variable->Name()); in CheckConstAssignment() 43 static void ExpandLoadLexVar(PandaGen *pg, const ir::AstNode *node, const varbinder::ConstScopeFindResult &result) in ExpandLoadLexVar() argument 46 pg->LoadLexicalVar(node, result.lexLevel, result.variable->AsLocalVariable()->LexIdx()); in ExpandLoadLexVar() 48 pg->LoadLexical(node, result.name, result.lexLevel, result.variable->AsLocalVariable()->LexIdx()); in ExpandLoadLexVar() 52 static void ExpandLoadNormalVar(PandaGen *pg, const ir::AstNode *node, const varbinder::ConstScopeFindResult &result) in ExpandLoadNormalVar() argument 56 if (CheckTdz(node)) { in ExpandLoadNormalVar() 63 Expand(PandaGen *pg, const ir::AstNode *node, const varbinder::ConstScopeFindResult &result) Expand() argument 74 StoreLocalExport(PandaGen *pg, const ir::AstNode *node, varbinder::Variable *variable) StoreLocalExport() argument 89 ExpandStoreLexVar(PandaGen *pg, const ir::AstNode *node, const varbinder::ConstScopeFindResult &result, bool isDecl) ExpandStoreLexVar() argument 109 ExpandStoreNormalVar(PandaGen *pg, const ir::AstNode *node, const varbinder::ConstScopeFindResult &result, bool isDecl) ExpandStoreNormalVar() argument 127 Expand(PandaGen *pg, const ir::AstNode *node, const varbinder::ConstScopeFindResult &result, bool isDecl) Expand() argument [all...] |
| /arkcompiler/ets_frontend/ets2panda/evaluate/ |
| H A D | irCheckHelper.cpp | 31 bool IrCheckHelper::CheckNewNode(ir::AstNode *node, varbinder::Scope *scope, ir::AstNode *parentClass, in CheckNewNode() argument 34 ASSERT(node); in CheckNewNode() 43 recursiveDecls_.emplace_back(program, scope, parentClass, node); in CheckNewNode() 72 auto [program, scope, parent, node] = recursiveDecls_.front(); in CheckDecls() 74 helpers::DoScopedAction(checker_, varBinder_, program, scope, parent, [this, node = node, scope = scope]() { in CheckDecls() 75 varBinder_->ResolveReferencesForScope(node, scope); in CheckDecls() 76 node->Check(checker_); in CheckDecls() 88 auto [program, scope, parent, node] = *iter; in HandleCustomNodes() 90 [varBinder = varBinder_, node in HandleCustomNodes() 95 CheckGlobalEntity(parser::Program *program, ir::AstNode *node, bool mustCheck) CheckGlobalEntity() argument 112 CheckLocalEntity(ir::AstNode *node) CheckLocalEntity() argument [all...] |
| /arkcompiler/ets_runtime/ecmascript/js_api/ |
| H A D | js_api_hashmap.cpp | 44 JSTaggedValue node(array[index]); in HasValue() 45 if (node.IsHole()) { in HasValue() 48 if (node.IsLinkedNode()) { in HasValue() 49 if (HasValueLinkedNode(node, taggedValue)) { in HasValue() 53 if (HasValueRBTreeNode(node, taggedValue)) { in HasValue() 61 bool JSAPIHashMap::HasValueLinkedNode(JSTaggedValue node, JSTaggedValue value) in HasValueLinkedNode() argument 63 ASSERT(node.IsLinkedNode()); in HasValueLinkedNode() 64 while (!node.IsHole()) { in HasValueLinkedNode() 65 LinkedNode *p = LinkedNode::Cast(node.GetTaggedObject()); in HasValueLinkedNode() 69 node in HasValueLinkedNode() 74 HasValueRBTreeNode(JSTaggedValue node, JSTaggedValue value) HasValueRBTreeNode() argument 136 JSTaggedValue node = hashArray->GetNode(thread, hash, key); Get() local 164 SetAllLinkedNode(JSThread *thread, JSHandle<JSAPIHashMap> hashMap, JSMutableHandle<LinkedNode> node) SetAllLinkedNode() argument 177 SetAllRBTreeNode(JSThread *thread, JSHandle<JSAPIHashMap> hashMap, JSHandle<RBTreeNode> node) SetAllRBTreeNode() argument [all...] |
| /arkcompiler/runtime_core/static_core/tests/tests-u-runner/runner/reports/ |
| H A D | spec_report.py | 136 lines.append(self.__report_node(self.spec)) # root node - summary line at the bottom 156 node = self.spec 157 self.__update_counters(test, node) 161 last_node = node 168 for _ in range(len(node.children), num): 169 SpecNode("?", "", "", node) 170 node = node.children[num - 1] 171 node.dir = out_dir 172 self.__update_counters(test, node) [all...] |