Home
last modified time | relevance | path

Searched +full:graph +full:- (Results 1 – 25 of 518) sorted by relevance

12345678910>>...21

/arkcompiler/runtime_core/static_core/compiler/optimizer/
Dpipeline.cpp2 * Copyright (c) 2021-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
25 #include "optimizer/ir/graph.h"
71 std::unique_ptr<Pipeline> Pipeline::Create(Graph *graph) in Create() argument
73 switch (graph->GetLanguage()) { in Create()
76 return std::make_unique<Pipeline>(graph); in Create()
80 static inline bool RunCodegenPass(Graph *graph) in RunCodegenPass() argument
82 if (graph->GetMethodProperties().GetRequireFrameSetup()) { in RunCodegenPass()
83 return graph->RunPass<Codegen>(); in RunCodegenPass()
85 return graph->RunPass<CodegenNative>(); in RunCodegenPass()
[all …]
/arkcompiler/runtime_core/static_core/compiler/optimizer/optimizations/regalloc/
Dreg_alloc.cpp2 * Copyright (c) 2021-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
29 bool IsGraphColoringEnable(Graph *graph) in IsGraphColoringEnable() argument
31 if (graph->GetArch() == Arch::AARCH32 || !graph->IsAotMode() || !g_options.IsCompilerAotRa()) { in IsGraphColoringEnable()
36 for (auto bb : graph->GetBlocksRPO()) { in IsGraphColoringEnable()
37 instCount += bb->CountInsts(); in IsGraphColoringEnable()
42 bool ShouldSkipAllocation(Graph *graph) in ShouldSkipAllocation() argument
45 // Parameters spill-fills are empty in ShouldSkipAllocation()
46 return graph->GetCallingConvention() == nullptr && !graph->IsBytecodeOptimizer(); in ShouldSkipAllocation()
48 return !graph->IsBytecodeOptimizer(); in ShouldSkipAllocation()
[all …]
/arkcompiler/runtime_core/compiler/tests/
Dunit_test.h2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
39 if (arg_types == nullptr || index >= arg_types->size()) { in GetMethodTotalArgumentType()
42 return arg_types->at(index); in GetMethodTotalArgumentType()
50 return arg_types->size(); in GetMethodTotalArgumentsCount()
73 // We have issue with QEMU - so reduce memory heap in CommonTest()
106 Graph *CreateEmptyGraph(bool is_osr = false) const
108 return GetAllocator()->New<Graph>(GetAllocator(), GetLocalAllocator(), arch_, is_osr);
111 Graph *CreateEmptyGraph(Arch arch) const in CreateEmptyGraph()
113 return GetAllocator()->New<Graph>(GetAllocator(), GetLocalAllocator(), arch, false); in CreateEmptyGraph()
[all …]
Dcompiler_graph_test.cpp7 * http://www.apache.org/licenses/LICENSE-2.0
34 #include "graph.h"
35 #include "graph.cpp"
68 …graph_test_.TestBuildGraphFromFile(pfile, [&test_method_name, &status](Graph* graph, std::string &… in __anon696e89750102() argument
73 EXPECT_NE(graph, nullptr); in __anon696e89750102()
74 auto start_block = graph->GetStartBlock(); in __anon696e89750102()
77 EXPECT_TRUE(start_block->IsMarked(mrk)); in __anon696e89750102()
93 …graph_test_.TestBuildGraphFromFile(pfile, [&test_method_name, &status](Graph* graph, std::string &… in __anon696e89750202() argument
98 EXPECT_NE(graph, nullptr); in __anon696e89750202()
101 for (const auto &block : graph->GetVectorBlocks()) { in __anon696e89750202()
[all …]
Dcompiler_basicblock_test.cpp7 * http://www.apache.org/licenses/LICENSE-2.0
25 #include "graph.h"
53 graph_test_.TestBuildGraphFromFile(pfile, [&](Graph* graph, std::string &method_name) { in __anon0e716f500102() argument
55 auto start_block = graph->GetStartBlock(); in __anon0e716f500102()
56 auto end_block = graph->GetEndBlock(); in __anon0e716f500102()
59 for (auto bb : graph->GetBlocksRPO()) { in __anon0e716f500102()
60 if (!bb->IsCatchBegin()) { in __anon0e716f500102()
64 EXPECT_TRUE(BlocksPathDfsSearch(mrk, start_block, end_block, bb->GetSuccessor(0))); in __anon0e716f500102()
65 EXPECT_FALSE(BlocksPathDfsSearch(mrk, start_block, bb->GetSuccessor(0), end_block)); in __anon0e716f500102()
66 EXPECT_FALSE(BlocksPathDfsSearch(mrk, end_block, start_block, bb->GetSuccessor(0))); in __anon0e716f500102()
[all …]
Dloop_analyzer_new_test.cpp7 * http://www.apache.org/licenses/LICENSE-2.0
19 #include "graph.h"
50 …graph_test_.TestBuildGraphFromFile(pfile, [test_method_name, &status](Graph* graph, std::string &m… in __anon1625ceb10102() argument
55 EXPECT_NE(graph, nullptr); in __anon1625ceb10102()
56 EXPECT_TRUE(graph->RunPass<LoopAnalyzer>()); in __anon1625ceb10102()
73 …graph_test_.TestBuildGraphFromFile(pfile, [test_method_name, &status](Graph* graph, std::string &m… in __anon1625ceb10202() argument
78 EXPECT_NE(graph, nullptr); in __anon1625ceb10202()
79 for (auto bb : graph->GetBlocksRPO()) { in __anon1625ceb10202()
81 if (!bb->IsTryBegin()) { in __anon1625ceb10202()
84 Loop loop(graph->GetAllocator(), bb->GetSuccessor(0), 1); in __anon1625ceb10202()
[all …]
Dcompiler_inst_test.cpp7 * http://www.apache.org/licenses/LICENSE-2.0
27 #include "graph.h"
91 …graph_test_.TestBuildGraphFromFile(pfile, [&test_method_name, &status](Graph* graph, std::string &… in __anonaa205d010102() argument
96 EXPECT_NE(graph, nullptr); in __anonaa205d010102()
98 for (auto bb : graph->GetBlocksRPO()) { in __anonaa205d010102()
99 for (auto inst : bb->AllInsts()) { in __anonaa205d010102()
100 if (!inst->IsSaveState()) { in __anonaa205d010102()
104 auto save_state_inst = inst->CastToSaveState(); in __anonaa205d010102()
105 save_state_inst->AllocateImmediates(graph->GetAllocator(), size); in __anonaa205d010102()
106 EXPECT_EQ(save_state_inst->GetImmediatesCount(), size); in __anonaa205d010102()
[all …]
Dir_builder_test.cpp2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
67 auto graph = CreateGraphWithDefaultRuntime(); in CheckSimple() local
68 GRAPH(graph) in CheckSimple()
73 BASIC_BLOCK(2, -1) in CheckSimple()
79 ASSERT_TRUE(GraphComparator().Compare(GetGraph(), graph)); in CheckSimple()
107 auto graph = CreateGraphWithDefaultRuntime(); in CheckSimpleWithImm() local
109 GRAPH(graph) in CheckSimpleWithImm()
114 BASIC_BLOCK(2, -1) in CheckSimpleWithImm()
120 ASSERT_TRUE(GraphComparator().Compare(GetGraph(), graph)); in CheckSimpleWithImm()
[all …]
Ddump_test.cpp7 * http://www.apache.org/licenses/LICENSE-2.0
27 #include "graph.h"
62 …graph_test_.TestBuildGraphFromFile(pfile, [&test_method_name, &status](Graph* graph, std::string &… in __anonb6b7089f0102() argument
67 EXPECT_NE(graph, nullptr); in __anonb6b7089f0102()
68 for (auto bb : graph->GetBlocksRPO()) { in __anonb6b7089f0102()
69 for (auto inst : bb->AllInsts()) { in __anonb6b7089f0102()
70 if (inst->GetOpcode() != Opcode::SaveState) { in __anonb6b7089f0102()
71 auto value1 = InstId(inst, graph->GetAllocator()); in __anonb6b7089f0102()
76 auto value = InstId(inst, graph->GetAllocator()); in __anonb6b7089f0102()
95 …graph_test_.TestBuildGraphFromFile(pfile, [&test_method_name, &status](Graph* graph, std::string &… in __anonb6b7089f0202() argument
[all …]
Dliveness_analyzer_new_test.cpp7 * http://www.apache.org/licenses/LICENSE-2.0
19 #include "graph.h"
50 …graph_test_.TestBuildGraphFromFile(pfile, [test_method_name, &status](Graph* graph, std::string &m… in __anon1c4086600102() argument
55 EXPECT_NE(graph, nullptr); in __anon1c4086600102()
56 LivenessAnalyzer liveness_analyzer(graph); in __anon1c4086600102()
59 std::string str = "\nRegisters intervals\n-\n\n" in __anon1c4086600102()
60 "Vector registers intervals\n-\n\n" in __anon1c4086600102()
61 "Stack slots intervals\n-\n"; in __anon1c4086600102()
80 …graph_test_.TestBuildGraphFromFile(pfile, [test_method_name, &status](Graph* graph, std::string &m… in __anon1c4086600202() argument
85 EXPECT_NE(graph, nullptr); in __anon1c4086600202()
[all …]
/arkcompiler/runtime_core/static_core/compiler/tests/
Dunit_test.h2 * Copyright (c) 2021-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
69 if (argTypes_ == nullptr || index >= argTypes_->size()) { in GetMethodTotalArgumentType()
72 return argTypes_->at(index); in GetMethodTotalArgumentType()
80 return argTypes_->size(); in GetMethodTotalArgumentsCount()
125 // We have issue with QEMU - so reduce memory heap in CommonTest()
126 …em::MemConfig::Initialize(32_MB, 64_MB, 200_MB, 32_MB, 0, 0); // NOLINT(readability-magic-numbers) in CommonTest()
128 …em::MemConfig::Initialize(32_MB, 64_MB, 256_MB, 32_MB, 0, 0); // NOLINT(readability-magic-numbers) in CommonTest()
161 Graph *CreateEmptyGraph(bool isOsr = false) const
163 return GetAllocator()->New<Graph>(GetAllocator(), GetLocalAllocator(), arch_, isOsr);
[all …]
Dinst_generator.cpp2 * Copyright (c) 2021-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
19 Graph *GraphCreator::GenerateGraph(Inst *inst) in GenerateGraph()
21 Graph *graph; in GenerateGraph() local
23 switch (inst->GetOpcode()) { in GenerateGraph()
38 // -1 means special processing in GenerateGraph()
39 graph = GenerateOperation(inst, -1L); in GenerateGraph()
47 graph = GenerateOperation(inst, 0U); in GenerateGraph()
74 graph = GenerateOperation(inst, 1U); in GenerateGraph()
106 graph = GenerateOperation(inst, 2U); in GenerateGraph()
[all …]
Dadjust_arefs_test.cpp2 * Copyright (c) 2023-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
25 Graph *BuildGraphOneBlockContinuousChain();
26 Graph *BuildGraphOneBlockBrokenChain();
27 Graph *BuildGraphMultipleBlockContinuousChain();
28 Graph *BuildGraphMultipleBlockBrokenChain();
29 Graph *BuildGraphProcessIndex(uint64_t offset1, uint64_t offset2, uint64_t offset3);
32 // NOLINTBEGIN(readability-magic-numbers)
34 Graph *AdjustRefsTest::BuildGraphOneBlockContinuousChain() in BuildGraphOneBlockContinuousChain()
36 auto graph = CreateEmptyFastpathGraph(RUNTIME_ARCH); in BuildGraphOneBlockContinuousChain() local
[all …]
Dgraph_creation_test.cpp2 * Copyright (c) 2021-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
24 // NOLINTBEGIN(readability-magic-numbers)
27 Graph *graph = CreateEmptyGraph(); in TEST_F() local
28 EXPECT_NE(graph, nullptr); in TEST_F()
33 Graph *graph = CreateGraphStartEndBlocks(); in TEST_F() local
34 EXPECT_NE(graph, nullptr); in TEST_F()
35 EXPECT_NE(graph->GetStartBlock(), nullptr); in TEST_F()
36 EXPECT_NE(graph->GetEndBlock(), nullptr); in TEST_F()
37 EXPECT_EQ(graph->GetAliveBlocksCount(), 2U); in TEST_F()
[all …]
Dir_builder_test.cpp2 * Copyright (c) 2021-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
29 // NOLINTNEXTLINE(fuchsia-multiple-inheritance)
78 auto graph = CreateGraphWithDefaultRuntime(); in CheckSimple() local
79 GRAPH(graph) in CheckSimple()
84 BASIC_BLOCK(2U, -1L) in CheckSimple()
90 ASSERT_TRUE(GraphComparator().Compare(GetGraph(), graph)); in CheckSimple()
118 auto graph = CreateGraphWithDefaultRuntime(); in CheckSimpleWithImm() local
120 GRAPH(graph) in CheckSimpleWithImm()
125 BASIC_BLOCK(2U, -1L) in CheckSimpleWithImm()
[all …]
Dinst_generator.h2 * Copyright (c) 2021-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
31 Graph *GenerateGraph(Inst *inst);
59 Graph *CreateGraph();
61 Inst *PopulateLoadArrayPair(Graph *graph, BasicBlock *block, Inst *inst, Opcode opc);
62 void PopulateStoreArrayPair(Graph *graph, Inst *inst, Opcode opc);
63 void PopulateReturnInlined(Graph *graph, BasicBlock *block, Inst *inst, int32_t n);
64 void PopulateCall(Graph *graph, BasicBlock *block, Inst *inst, DataType::Type type, int32_t n);
65 void PopulateLoadStoreArray(Graph *graph, Inst *inst, DataType::Type type, int32_t n);
66 void PopulateLoadStoreArrayI(Graph *graph, Inst *inst, DataType::Type type, int32_t n);
[all …]
Dreg_alloc_common_test.cpp2 * Copyright (c) 2023-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
25 void RunRegAllocatorsAndCheck(Graph *graph, Checker checker) const in RunRegAllocatorsAndCheck() argument
27 RunRegAllocatorsAndCheck(graph, graph->GetArchUsedRegs(), checker); in RunRegAllocatorsAndCheck()
31 void RunRegAllocatorsAndCheck(Graph *graph, RegMask mask, Checker checker) const in RunRegAllocatorsAndCheck() argument
33 if (graph->GetCallingConvention() == nullptr) { in RunRegAllocatorsAndCheck()
36 … auto graphLs = GraphCloner(graph, graph->GetAllocator(), graph->GetLocalAllocator()).CloneGraph(); in RunRegAllocatorsAndCheck()
43 if (GetGraph()->GetArch() == Arch::AARCH32) { in RunRegAllocatorsAndCheck()
46 … auto graphGc = GraphCloner(graph, graph->GetAllocator(), graph->GetLocalAllocator()).CloneGraph(); in RunRegAllocatorsAndCheck()
58 // NOLINTBEGIN(readability-magic-numbers)
[all …]
/arkcompiler/runtime_core/static_core/bytecode_optimizer/tests/
Dcodegen_test.cpp2 * Copyright (c) 2023-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
19 #include "assembler/assembly-emitter.h"
20 #include "assembler/assembly-function.h"
21 #include "assembler/assembly-literals.h"
22 #include "assembler/assembly-parser.h"
23 #include "assembler/assembly-program.h"
35 // NOLINTBEGIN(readability-magic-numbers)
75 map->insert({0U, &ins}); in TEST()
91 auto graph = CreateEmptyGraph(); in TEST_F() local
[all …]
/arkcompiler/runtime_core/static_core/irtoc/backend/
Dfunction.cpp2 * Copyright (c) 2021-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
50 using compiler::Graph;
52 static bool RunIrtocOptimizations(Graph *graph);
53 static bool RunIrtocInterpreterOptimizations(Graph *graph);
58 graph_ = allocator->New<Graph>(allocator, localAllocator, arch, this, &runtime, false); in Compile()
63 if (GetGraph()->GetMode().IsNative()) { in Compile()
83 auto code = GetGraph()->GetCode(); in Compile()
93 …bool interpreter = GetGraph()->GetMode().IsInterpreter() || GetGraph()->GetMode().IsInterpreterEnt… in RunOptimizations()
121 ASSERT(GetGraph()->GetCode().Empty()); in RunOptimizations()
[all …]
/arkcompiler/runtime_core/static_core/compiler/tests/codegen/
Dcodegen_test_1.cpp7 * http://www.apache.org/licenses/LICENSE-2.0
18 #include "optimizer/ir/graph.h"
31 // NOLINTNEXTLINE(fuchsia-statically-constructed-objects,cert-msc51-cpp)
34 // NOLINTBEGIN(readability-magic-numbers,modernize-avoid-c-arrays,cppcoreguidelines-pro-bounds-poin…
39 movi.64 v0, 100000000 ## 0 -> 3 ## bb0 in TEST_F()
40 movi.64 v1, 4294967296 ## 1 -> 4 ## bb0 in TEST_F()
41 ldai 0 ## 2 -> 5 ## bb0 in TEST_F()
57 GRAPH(GetGraph()) in TEST_F()
61 CONSTANT(2U, 0UL); // r3 -> acc(3) in TEST_F()
62 CONSTANT(3U, 0x1UL); // r20 -> 0x1 (for inc constant) in TEST_F()
[all …]
/arkcompiler/runtime_core/static_core/compiler/optimizer/ir/
Dgraph.cpp2 * Copyright (c) 2021-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
16 #include "graph.h"
37 if (block->SetMarker(mrk)) { in MarkBlocksRec()
40 for (auto succ : block->GetSuccsBlocks()) { in MarkBlocksRec()
45 Graph::~Graph() in ~Graph()
48 encoder_->~Encoder(); in ~Graph()
52 void Graph::RemoveUnreachableBlocks() in RemoveUnreachableBlocks()
61 if (bb->IsMarked(mrk)) { in RemoveUnreachableBlocks()
66 if (bb->IsTryBegin()) { in RemoveUnreachableBlocks()
[all …]
/arkcompiler/runtime_core/static_core/compiler/optimizer/optimizations/
Doptimize_string_concat.cpp7 * http://www.apache.org/licenses/LICENSE-2.0
25 #include "optimizer/ir/graph.h"
34 OptimizeStringConcat::OptimizeStringConcat(Graph *graph) : Optimization(graph) {} in OptimizeStringConcat() argument
36 RuntimeInterface::IdType GetStringBuilderClassId(Graph *graph) in GetStringBuilderClassId() argument
38 auto runtime = graph->GetRuntime(); in GetStringBuilderClassId()
39 auto klass = runtime->GetStringBuilderClass(); in GetStringBuilderClassId()
40 return klass == nullptr ? 0 : runtime->GetClassIdWithinFile(graph->GetMethod(), klass); in GetStringBuilderClassId()
52 if (GetGraph()->IsAotMode()) { in RunImpl()
57 for (auto block : GetGraph()->GetBlocksRPO()) { in RunImpl()
58 for (auto inst : block->Insts()) { in RunImpl()
[all …]
/arkcompiler/runtime_core/static_core/libllvmbackend/tests/
Dinst_generator_test.cpp2 * Copyright (c) 2023-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
41 if ((*(it.begin()))->IsLowLevel()) { in GenerateOp()
46 auto graph = graphCreator_.GenerateGraph(i); in GenerateOp() local
48 graph->SetRuntime(graphCreator_.GetRuntime()); in GenerateOp()
49 aotBuilder.SetArch(graph->GetArch()); in GenerateOp()
50 aotBuilder.SetRuntime(graph->GetRuntime()); in GenerateOp()
52 …LLVMAotCompiler llvm(graph->GetRuntime(), graphCreator_.GetAllocator(), &aotBuilder, "", "inst-gen… in GenerateOp()
54 if (graph->GetAotData() == nullptr) { in GenerateOp()
56 auto aotData = graph->GetAllocator()->New<compiler::AotData>( in GenerateOp()
[all …]
/arkcompiler/runtime_core/static_core/compiler/optimizer/ir_builder/
Dir_builder.h2 * Copyright (c) 2021-2024 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
20 #include "optimizer/ir/graph.h"
52 …aries boundaries {}; // NOLINT(misc-non-private-member-variables-in-class…
53 …Block *beginBb {nullptr}; // NOLINT(misc-non-private-member-variables-in-class…
54 …Block *endBb {nullptr}; // NOLINT(misc-non-private-member-variables-in-class…
55 …Vector<CatchCodeBlock> *catches {nullptr}; // NOLINT(misc-non-private-member-variables-in-class…
56 …Vector<BasicBlock *> *basicBlocks {nullptr}; // NOLINT(misc-non-private-member-variables-in-class…
57 …2_t id {INVALID_ID}; // NOLINT(misc-non-private-member-variables-in-class…
58 …containsThrowableInst {false}; // NOLINT(misc-non-private-member-variables-in-class…
[all …]
/arkcompiler/runtime_core/compiler/optimizer/ir_builder/
Dir_builder.h2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
19 #include "optimizer/ir/graph.h"
46 …ries boundaries {}; // NOLINT(misc-non-private-member-variables-in-class…
47 …lock *begin_bb {nullptr}; // NOLINT(misc-non-private-member-variables-in-class…
48 …lock *end_bb {nullptr}; // NOLINT(misc-non-private-member-variables-in-class…
49 …ector<CatchCodeBlock> *catches {nullptr}; // NOLINT(misc-non-private-member-variables-in-class…
50 …ector<BasicBlock *> *basic_blocks {nullptr}; // NOLINT(misc-non-private-member-variables-in-class…
51 …_t id {INVALID_ID}; // NOLINT(misc-non-private-member-variables-in-class…
52 …ontains_throwable_inst {false}; // NOLINT(misc-non-private-member-variables-in-class…
[all …]

12345678910>>...21