/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_be/src/be/ |
H A D | switch_lowerer.cpp | 60 int32 length = static_cast<int>(stmt->GetSwitchTable().size()); in FindClusters() 65 float tmp2 = static_cast<float>(stmt->GetCasePair(static_cast<size_t>(static_cast<uint32>(j))).first) - in FindClusters() 66 static_cast<float>(stmt->GetCasePair(static_cast<size_t>(static_cast<uint32>(i))).first); in FindClusters() 83 for (int32 i = 0; i < static_cast<int>(stmt->GetSwitchTable().size()); ++i) { in InitSwitchItems() 89 for (int32 i = 0; i < static_cast<int>(stmt->GetSwitchTable().size()); ++i) { in InitSwitchItems() 107 node->SetOpnd(stmt->GetSwitchOpnd(), 0); in BuildRangeGotoNode() 110 node->SetTagOffset(static_cast<int32>(stmt->GetCasePair(static_cast<size_t>(startIdx)).first)); in BuildRangeGotoNode() 112 node->AddRangeGoto(curTag, stmt->GetCasePair(startIdx).second); in BuildRangeGotoNode() 113 int64 lastCaseTag = stmt->GetSwitchTable().at(startIdx).first; in BuildRangeGotoNode() 119 while ((stmt in BuildRangeGotoNode() [all...] |
H A D | lower.cpp | 143 void CGLowerer::LowerCallStmt(StmtNode &stmt, StmtNode *&nextStmt, BlockNode &newBlk, MIRType *retty, bool uselvar, in LowerCallStmt() argument 147 if (stmt.GetOpCode() == OP_intrinsiccall) { in LowerCallStmt() 148 auto &intrnNode = static_cast<IntrinsiccallNode &>(stmt); in LowerCallStmt() 154 newStmt = &stmt; in LowerCallStmt() 169 newStmt->SetSrcPos(stmt.GetSrcPos()); in LowerCallStmt() 173 StmtNode *CGLowerer::GenCallNode(const StmtNode &stmt, PUIdx &funcCalled, CallNode &origCall) in GenCallNode() argument 176 if (stmt.GetOpCode() == OP_callassigned) { in GenCallNode() 181 newCall->SetSrcPos(stmt.GetSrcPos()); in GenCallNode() 185 newCall->SetStmtAttrs(stmt.GetStmtAttrs()); in GenCallNode() 189 StmtNode *CGLowerer::GenIntrinsiccallNode(const StmtNode &stmt, PUId argument 339 LowerCallAssignedStmt(StmtNode &stmt, bool uselvar) LowerCallAssignedStmt() argument 385 LowerIntrinsiccallToIntrinsicop(StmtNode &stmt) LowerIntrinsiccallToIntrinsicop() argument 390 LowerStmt(StmtNode &stmt, BlockNode &newBlk) LowerStmt() argument 398 LowerSwitchOpnd(StmtNode &stmt, BlockNode &newBlk) LowerSwitchOpnd() argument 426 StmtNode *stmt = nextStmt; LowerBlock() local 791 LowerDassignToThreadLocal(StmtNode &stmt, const BlockNode &block) LowerDassignToThreadLocal() argument [all...] |
/arkcompiler/ets_frontend/ets2panda/compiler/lowering/ets/topLevelStmts/ |
H A D | importExportDecls.cpp | 35 * @brief checks if `prog` matches with the path in `stmt` (an ImportDeclaration statement) 63 void ImportExportDecls::CollectImportedProgramsFromStmts(ark::es2panda::ir::ETSImportDeclaration *stmt, in CollectImportedProgramsFromStmts() argument 70 if (MatchResolvedPathWithProgram(stmt->ResolvedSource()->Str().Utf8(), first)) { in CollectImportedProgramsFromStmts() 88 for (auto stmt : program->Ast()->Statements()) { in HandleGlobalStmts() 91 if (stmt->IsETSImportDeclaration() && !stmt->AsETSImportDeclaration()->IsTypeKind() && in HandleGlobalStmts() 93 CollectImportedProgramsFromStmts(stmt->AsETSImportDeclaration(), program, &moduleDependencies); in HandleGlobalStmts() 95 stmt->Accept(this); in HandleGlobalStmts() 96 if (stmt->IsExportNamedDeclaration()) { in HandleGlobalStmts() 97 PopulateAliasMap(stmt in HandleGlobalStmts() 216 HandleSimpleType(std::set<util::StringView> &exportedTypes, std::set<util::StringView> &exportedStatements, ir::Statement *stmt, util::StringView name, parser::Program *program, lexer::SourcePosition pos) HandleSimpleType() argument 253 VerifyType(ir::Statement *stmt, parser::Program *program, std::set<util::StringView> &exportedTypes, std::set<util::StringView> &exportedStatements, std::map<util::StringView, ir::AstNode *> &typesMap) VerifyType() argument [all...] |
H A D | globalDeclTransformer.cpp | 35 for (auto stmt : stmts) { in TransformStatements() 36 stmt->Accept(this); in TransformStatements() 80 if (auto stmt = InitTopLevelProperty(field); stmt != nullptr) { in VisitVariableDeclaration() 81 result_.initStatements.emplace_back(stmt); in VisitVariableDeclaration()
|
H A D | importExportDecls.h | 60 void VerifyType(ir::Statement *stmt, parser::Program *program, std::set<util::StringView> &exportedTypes, 64 ir::Statement *stmt, util::StringView name, parser::Program *program, 74 void CollectImportedProgramsFromStmts(ark::es2panda::ir::ETSImportDeclaration *stmt, parser::Program *program,
|
/arkcompiler/ets_frontend/ets2panda/ast_verifier/ |
H A D | checkInfiniteLoop.cpp | 69 const ir::WhileStatement *const stmt) const in HandleWhileStatement() 71 auto const *body = stmt->Body(); in HandleWhileStatement() 72 auto const *test = stmt->Test(); in HandleWhileStatement() 79 ctx.AddCheckMessage("INFINITE LOOP", *stmt, stmt->Start()); in HandleWhileStatement() 87 const ir::DoWhileStatement *const stmt) const in HandleDoWhileStatement() 89 auto const *body = stmt->Body(); in HandleDoWhileStatement() 90 auto const *test = stmt->Test(); in HandleDoWhileStatement() 97 ctx.AddCheckMessage("INFINITE LOOP", *stmt, stmt in HandleDoWhileStatement() [all...] |
H A D | checkInfiniteLoop.h | 31 [[nodiscard]] CheckResult HandleWhileStatement(CheckContext &ctx, const ir::WhileStatement *const stmt) const; 32 [[nodiscard]] CheckResult HandleDoWhileStatement(CheckContext &ctx, const ir::DoWhileStatement *const stmt) const; 34 const ir::ForUpdateStatement *const stmt) const;
|
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_ir/src/ |
H A D | mir_builder.cpp | 310 auto *stmt = NewNode<CallNode>(*GetCurrentFuncCodeMpAllocator(), opCode, puIdx, TyIdx()); in CreateStmtCall() local 311 stmt->SetNOpnd(args); in CreateStmtCall() 312 stmt->SetNumOpnds(args.size()); in CreateStmtCall() 313 return stmt; in CreateStmtCall() 318 auto *stmt = NewNode<IcallNode>(*GetCurrentFuncCodeMpAllocator(), OP_icall); in CreateStmtIcall() local 319 DEBUG_ASSERT(stmt != nullptr, "stmt is null"); in CreateStmtIcall() 320 stmt->SetOpnds(args); in CreateStmtIcall() 321 return stmt; in CreateStmtIcall() 326 auto *stmt in CreateStmtIcallproto() local 335 auto *stmt = NewNode<IcallNode>(*GetCurrentFuncCodeMpAllocator(), OP_icallassigned); CreateStmtIcallAssigned() local 353 auto *stmt = NewNode<IcallNode>(*GetCurrentFuncCodeMpAllocator(), OP_icallassigned); CreateStmtIcallAssigned() local 375 auto *stmt = NewNode<IntrinsiccallNode>( CreateStmtIntrinsicCall() local 385 auto *stmt = NewNode<CallNode>(*GetCurrentFuncCodeMpAllocator(), opcode, puIdx); CreateStmtCallRegassigned() local 397 auto *stmt = CreateStmtIntrinsicCallAssigned() local 412 auto *stmt = NewNode<NaryStmtNode>(*GetCurrentFuncCodeMpAllocator(), OP_return); CreateStmtReturn() local [all...] |
H A D | mir_lower.cpp | 61 return; // prev stmt may be a label, we skip it too in LowerCondGotoStmtWithBuiltinExpect() 112 auto *stmt = block.GetFirst(); in LowerBuiltinExpect() local 114 while (stmt != last) { in LowerBuiltinExpect() 115 if (stmt->GetOpCode() == OP_brtrue || stmt->GetOpCode() == OP_brfalse) { in LowerBuiltinExpect() 116 LowerCondGotoStmtWithBuiltinExpect(*static_cast<CondGotoNode *>(stmt)); in LowerBuiltinExpect() 118 stmt = stmt->GetNext(); in LowerBuiltinExpect() 337 StmtNode *stmt = nextStmt; in LowerBlock() local 338 nextStmt = stmt in LowerBlock() 392 StmtNode *stmt = nextStmt; LowerCandCior() local [all...] |
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_be/src/cg/ |
H A D | memlayout.cpp | 34 StmtNode *stmt = mirFunction->GetBody()->GetFirst(); in FindLargestActualArea() local 35 if (stmt == nullptr) { in FindLargestActualArea() 41 for (; stmt != nullptr; stmt = stmt->GetNext()) { in FindLargestActualArea() 42 Opcode opCode = stmt->GetOpCode(); in FindLargestActualArea() 62 ComputeStackSpaceRequirementForCall(*stmt, copySize, opCode == OP_icall || opCode == OP_icallproto); in FindLargestActualArea()
|
H A D | cgfunc.cpp | 273 static void HandleLabel(StmtNode &stmt, CGFunc &cgFunc) in HandleLabel() argument 275 DEBUG_ASSERT(stmt.GetOpCode() == OP_label, "error"); in HandleLabel() 276 auto &label = static_cast<LabelNode &>(stmt); in HandleLabel() 286 static void HandleGoto(StmtNode &stmt, CGFunc &cgFunc) in HandleGoto() argument 288 auto &gotoNode = static_cast<GotoNode &>(stmt); in HandleGoto() 292 DEBUG_ASSERT(&stmt == &gotoNode, "stmt must be same as gotoNoe"); in HandleGoto() 295 DEBUG_ASSERT(cgFunc.GetCurBB()->GetPrev()->GetLastStmt() == &stmt, "check the relation between BB and stmt"); in HandleGoto() 299 static void HandleCondbr(StmtNode &stmt, CGFun argument 369 HandleReturn(StmtNode &stmt, CGFunc &cgFunc) HandleReturn() argument 382 HandleCall(StmtNode &stmt, CGFunc &cgFunc) HandleCall() argument 388 HandleICall(StmtNode &stmt, CGFunc &cgFunc) HandleICall() argument 395 HandleIntrinsicCall(StmtNode &stmt, CGFunc &cgFunc) HandleIntrinsicCall() argument 401 HandleDassign(StmtNode &stmt, CGFunc &cgFunc) HandleDassign() argument 418 HandleRegassign(StmtNode &stmt, CGFunc &cgFunc) HandleRegassign() argument 435 HandleIassign(StmtNode &stmt, CGFunc &cgFunc) HandleIassign() argument 446 HandleRangeGoto(StmtNode &stmt, CGFunc &cgFunc) HandleRangeGoto() argument 454 HandleComment(StmtNode &stmt, CGFunc &cgFunc) HandleComment() argument 557 StmtNode *stmt = block->GetFirst(); HandleFirstStmt() local 699 const StmtNode *stmt = bb->GetFirstStmt(); DumpCFG() local [all...] |
H A D | isel.cpp | 140 static void HandleDassign(StmtNode &stmt, MPISel &iSel) in HandleDassign() argument 142 DEBUG_ASSERT(stmt.GetOpCode() == OP_dassign, "expect dassign"); in HandleDassign() 143 auto &dassignNode = static_cast<DassignNode &>(stmt); in HandleDassign() 153 static void HandleIassign(StmtNode &stmt, MPISel &iSel) in HandleIassign() argument 155 DEBUG_ASSERT(stmt.GetOpCode() == OP_iassign, "expect iassign"); in HandleIassign() 156 auto &iassignNode = static_cast<IassignNode &>(stmt); in HandleIassign() 159 Operand *opndRhs = iSel.HandleExpr(stmt, *rhs); in HandleIassign() 162 Operand *opndAddr = iSel.HandleExpr(stmt, *addr); in HandleIassign() 169 static void HandleRegassign(StmtNode &stmt, MPISel &iSel) in HandleRegassign() argument 171 DEBUG_ASSERT(stmt in HandleRegassign() 179 HandleLabel(StmtNode &stmt, const MPISel &iSel) HandleLabel() argument 190 HandleGoto(StmtNode &stmt, MPISel &iSel) HandleGoto() argument 204 HandleIntrinCall(StmtNode &stmt, MPISel &iSel) HandleIntrinCall() argument 210 HandleRangeGoto(StmtNode &stmt, MPISel &iSel) HandleRangeGoto() argument 221 HandleReturn(StmtNode &stmt, MPISel &iSel) HandleReturn() argument 236 HandleComment(StmtNode &stmt, MPISel &iSel) HandleComment() argument 241 HandleIcall(StmtNode &stmt, MPISel &iSel) HandleIcall() argument 249 HandleCall(StmtNode &stmt, MPISel &iSel) HandleCall() argument 257 HandleCondbr(StmtNode &stmt, MPISel &iSel) HandleCondbr() argument 542 SelectCallCommon(StmtNode &stmt, const MPISel &iSel) SelectCallCommon() argument 615 SelectDassign(const DassignNode &stmt, Operand &opndRhs) SelectDassign() argument 635 SelectIassign(const IassignNode &stmt, Operand &opndAddr, Operand &opndRhs) SelectIassign() argument 701 SelectRegassign(RegassignNode &stmt, Operand &opnd0) SelectRegassign() argument 1149 StmtNode *stmt = block->GetFirst(); HandleFuncEntry() local [all...] |
/arkcompiler/ets_frontend/ets2panda/compiler/lowering/ets/ |
H A D | packageImplicitImport.cpp | 25 for (auto *const stmt : extClassDecls) { in MergeExternalFilesIntoCompiledProgram() 26 if (stmt->IsETSPackageDeclaration()) { in MergeExternalFilesIntoCompiledProgram() 30 stmt->SetParent(program->Ast()); in MergeExternalFilesIntoCompiledProgram() 34 program->Ast()->Statements().emplace_back(stmt); in MergeExternalFilesIntoCompiledProgram() 77 for (const auto *const stmt : importDeclarations) { in ValidateImportDeclarationsSourcePath() 79 std::any_of(packagePrograms.cbegin(), packagePrograms.cend(), [&stmt](const parser::Program *const prog) { in ValidateImportDeclarationsSourcePath() 80 return prog->SourceFilePath() == stmt->AsETSImportDeclaration()->ResolvedSource()->Str(); in ValidateImportDeclarationsSourcePath() 84 stmt->Start()); in ValidateImportDeclarationsSourcePath() 102 [](const ir::Statement *const stmt) { return stmt in ValidateNoImportComesFromSamePackage() [all...] |
H A D | objectLiteralLowering.cpp | 34 for (auto *const stmt : statements) { in MaybeAllowConstAssign() 35 if (!stmt->IsExpressionStatement() || in MaybeAllowConstAssign() 36 !stmt->AsExpressionStatement()->GetExpression()->IsAssignmentExpression()) { in MaybeAllowConstAssign() 40 auto *const assignmentExpr = stmt->AsExpressionStatement()->GetExpression()->AsAssignmentExpression(); in MaybeAllowConstAssign() 55 for (auto stmt : statements) { in RestoreNestedBlockExpression() 56 if (!stmt->IsExpressionStatement() || in RestoreNestedBlockExpression() 57 !stmt->AsExpressionStatement()->GetExpression()->IsAssignmentExpression()) { in RestoreNestedBlockExpression() 61 auto *assign = stmt->AsExpressionStatement()->GetExpression()->AsAssignmentExpression(); in RestoreNestedBlockExpression() 93 for (auto *const stmt : blockExpression->Statements()) { in AllowRequiredTypeInstantiation() 94 if (!stmt in AllowRequiredTypeInstantiation() [all...] |
/arkcompiler/ets_frontend/ets2panda/evaluate/ |
H A D | evaluateContext.cpp | 35 auto evalClassDefIter = std::find_if(topLevelStatements.begin(), topLevelStatements.end(), [](auto *stmt) { in FindEvaluationMethod() 36 return stmt->IsClassDeclaration() && in FindEvaluationMethod() 37 !stmt->AsClassDeclaration()->Definition()->Ident()->Name().Is(compiler::Signatures::ETS_GLOBAL); in FindEvaluationMethod() 57 auto *stmt = methodStatements->Statements().back(); in FindEvaluationMethod() local 58 if (stmt->IsExpressionStatement()) { in FindEvaluationMethod() 59 lastStatement = stmt->AsExpressionStatement(); in FindEvaluationMethod()
|
H A D | scopedDebugInfoPlugin-inl.h | 24 void ScopedDebugInfoPlugin::RegisterPrologueEpilogue(ir::BlockStatement *block, ir::Statement *stmt) in RegisterPrologueEpilogue() argument 27 ASSERT(stmt); in RegisterPrologueEpilogue() 31 ArenaVector<ir::Statement *> vec(1, stmt, Allocator()->Adapter()); in RegisterPrologueEpilogue() 41 iter->second.first.push_back(stmt); in RegisterPrologueEpilogue() 43 iter->second.second.push_back(stmt); in RegisterPrologueEpilogue()
|
/arkcompiler/ets_frontend/ets2panda/parser/ |
H A D | ETSparserStatements.cpp | 131 auto stmt = ParseTopLevelStatement(); in ParseTopLevelStatements() local 133 if (stmt != nullptr) { in ParseTopLevelStatements() 134 statements.emplace_back(stmt); in ParseTopLevelStatements() 141 static ir::Statement *ValidateExportableStatement(ETSParser *parser, ir::Statement *stmt, in ValidateExportableStatement() argument 144 if (stmt != nullptr) { in ValidateExportableStatement() 146 !(stmt->IsClassDeclaration() || stmt->IsTSInterfaceDeclaration() || stmt->IsTSTypeAliasDeclaration())) { in ValidateExportableStatement() 147 parser->ThrowSyntaxError("Can only type export class or interface!", stmt->Start()); in ValidateExportableStatement() 149 stmt in ValidateExportableStatement() [all...] |
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_be/include/be/ |
H A D | switch_lowerer.h | 26 SwitchLowerer(maple::MIRModule &mod, maple::SwitchNode &stmt, maple::MapleAllocator &allocator) in SwitchLowerer() argument 27 : mirModule(mod), stmt(&stmt), switchItems(allocator.Adapter()), ownAllocator(&allocator) in SwitchLowerer() 40 maple::SwitchNode *stmt; member in maplebe::SwitchLowerer
|
H A D | lower.h | 102 StmtNode *LowerDassignToThreadLocal(StmtNode &stmt, const BlockNode &block); 120 BlockNode *LowerCallAssignedStmt(StmtNode &stmt, bool uselvar = false); 124 BlockNode *LowerIntrinsiccallToIntrinsicop(StmtNode &stmt); 126 void LowerStmt(StmtNode &stmt, BlockNode &block); 128 void LowerSwitchOpnd(StmtNode &stmt, BlockNode &block); 198 StmtNode *GenCallNode(const StmtNode &stmt, PUIdx &funcCalled, CallNode &origCall); 199 StmtNode *GenIntrinsiccallNode(const StmtNode &stmt, PUIdx &funcCalled, bool &handledAtLowerLevel,
|
/arkcompiler/ets_frontend/es2panda/compiler/core/ |
H A D | switchBuilder.cpp | 28 SwitchBuilder::SwitchBuilder(PandaGen *pg, const ir::SwitchStatement *stmt) in SwitchBuilder() argument 29 : pg_(pg), end_(pg->AllocLabel()), labelCtx_(pg, LabelTarget(end_, LabelTarget::BREAK_LABEL)), stmt_(stmt) in SwitchBuilder() 54 for (const auto *stmt : stmt_->Cases()[index]->Consequent()) { in CompileCaseStatements() 55 stmt->Compile(pg_); in CompileCaseStatements()
|
H A D | function.cpp | 54 for (const auto *stmt : statements) { in CompileSourceBlock() 55 stmt->Compile(pg); in CompileSourceBlock() 57 if (stmt->IsReturnStatement() && (stmt == statements[statements.size() - 1])) { in CompileSourceBlock() 189 for (auto const &stmt : statements) { in CompileClassInitializer() 190 if (stmt->IsMethodDefinition()) { in CompileClassInitializer() 194 if (stmt->IsClassProperty()) { in CompileClassInitializer() 195 const auto *prop = stmt->AsClassProperty(); in CompileClassInitializer() 212 ASSERT(stmt->IsClassStaticBlock()); in CompileClassInitializer() 213 const auto *staticBlock = stmt in CompileClassInitializer() [all...] |
/arkcompiler/ets_frontend/ets2panda/compiler/core/ |
H A D | switchBuilder.h | 37 SwitchBuilder(CodeGen *cg, const ir::SwitchStatement *stmt) in SwitchBuilder() argument 38 : cg_(cg), end_(cg->AllocLabel()), labelCtx_(cg, LabelTarget(end_, LabelTarget::BREAK_LABEL)), stmt_(stmt) in SwitchBuilder() 68 for (const auto *stmt : stmt_->Cases()[index]->Consequent()) { in CompileCaseStatements() 69 stmt->Compile(cg_); in CompileCaseStatements()
|
/arkcompiler/ets_frontend/ets2panda/parser/program/ |
H A D | program.cpp | 63 for (auto stmt : ast_->Statements()) { in SetDeclarationModuleInfo() 64 if (stmt->IsDeclare() || stmt->IsTSTypeAliasDeclaration()) { in SetDeclarationModuleInfo()
|
/arkcompiler/ets_frontend/ets2panda/varbinder/ |
H A D | ETSBinder.cpp | 263 for (auto *stmt : decl->Body()->Body()) { in ResolveInterfaceDeclaration() 264 if (!stmt->IsClassProperty()) { in ResolveInterfaceDeclaration() 268 ResolveReference(stmt); in ResolveInterfaceDeclaration() 271 ResolvePropertyReference(stmt->AsClassProperty(), decl->Scope()->AsClassScope()) in ResolveInterfaceDeclaration() 272 ->FindLocal(stmt->AsClassProperty()->Id()->Name(), varbinder::ResolveBindingOptions::BINDINGS); in ResolveInterfaceDeclaration() 276 for (auto *stmt : decl->Body()->Body()) { in ResolveInterfaceDeclaration() 277 if (stmt->IsClassProperty()) { in ResolveInterfaceDeclaration() 280 ResolveReference(stmt); in ResolveInterfaceDeclaration() 371 for (auto *stmt : classDef->Body()) { in BuildClassDefinitionImpl() 372 if (!stmt in BuildClassDefinitionImpl() [all...] |
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_be/src/cg/aarch64/ |
H A D | aarch64_memlayout.cpp | 29 uint32 AArch64MemLayout::ComputeStackSpaceRequirementForCall(StmtNode &stmt, int32 &aggCopySize, bool isIcall) in ComputeStackSpaceRequirementForCall() argument 32 CCImpl &parmLocator = *static_cast<AArch64CGFunc *>(cgFunc)->GetOrCreateLocator(CCImpl::GetCallConvKind(stmt)); in ComputeStackSpaceRequirementForCall() 40 if (stmt.GetOpCode() == OP_call) { in ComputeStackSpaceRequirementForCall() 41 CallNode *callNode = static_cast<CallNode *>(&stmt); in ComputeStackSpaceRequirementForCall() 48 for (uint32 anum = 0; i < stmt.NumOpnds(); ++i, ++anum) { in ComputeStackSpaceRequirementForCall() 49 BaseNode *opnd = stmt.Opnd(i); in ComputeStackSpaceRequirementForCall()
|