Home
last modified time | relevance | path

Searched refs:graph_ (Results 1 – 25 of 61) sorted by relevance

123

/art/compiler/optimizing/
Dlicm_test.cc42 graph_ = CreateGraph(); in LICMTest()
50 entry_ = new (GetAllocator()) HBasicBlock(graph_); in BuildLoop()
51 loop_preheader_ = new (GetAllocator()) HBasicBlock(graph_); in BuildLoop()
52 loop_header_ = new (GetAllocator()) HBasicBlock(graph_); in BuildLoop()
53 loop_body_ = new (GetAllocator()) HBasicBlock(graph_); in BuildLoop()
54 return_ = new (GetAllocator()) HBasicBlock(graph_); in BuildLoop()
55 exit_ = new (GetAllocator()) HBasicBlock(graph_); in BuildLoop()
57 graph_->AddBlock(entry_); in BuildLoop()
58 graph_->AddBlock(loop_preheader_); in BuildLoop()
59 graph_->AddBlock(loop_header_); in BuildLoop()
[all …]
Dloop_optimization_test.cc30 : graph_(CreateGraph()), in LoopOptimizationTest()
31 iva_(new (GetAllocator()) HInductionVarAnalysis(graph_)), in LoopOptimizationTest()
33 graph_, /* compiler_options= */ nullptr, iva_, /* stats= */ nullptr)) { in LoopOptimizationTest()
41 graph_->SetNumberOfVRegs(1); in BuildGraph()
42 entry_block_ = new (GetAllocator()) HBasicBlock(graph_); in BuildGraph()
43 return_block_ = new (GetAllocator()) HBasicBlock(graph_); in BuildGraph()
44 exit_block_ = new (GetAllocator()) HBasicBlock(graph_); in BuildGraph()
45 graph_->AddBlock(entry_block_); in BuildGraph()
46 graph_->AddBlock(return_block_); in BuildGraph()
47 graph_->AddBlock(exit_block_); in BuildGraph()
[all …]
Dbuilder.cc48 : graph_(graph), in HGraphBuilder()
64 : graph_(graph), in HGraphBuilder()
109 DCHECK(graph_->GetBlocks().empty()); in BuildGraph()
111 graph_->SetNumberOfVRegs(code_item_accessor_.RegistersSize()); in BuildGraph()
112 graph_->SetNumberOfInVRegs(code_item_accessor_.InsSize()); in BuildGraph()
113 graph_->SetMaximumNumberOfOutVRegs(code_item_accessor_.OutsSize()); in BuildGraph()
114 graph_->SetHasTryCatch(code_item_accessor_.TriesSize() != 0); in BuildGraph()
117 ScopedArenaAllocator local_allocator(graph_->GetArenaStack()); in BuildGraph()
118 HBasicBlockBuilder block_builder(graph_, dex_file_, code_item_accessor_, &local_allocator); in BuildGraph()
119 SsaBuilder ssa_builder(graph_, in BuildGraph()
[all …]
Dselect_generator_test.cc30 HBasicBlock* if_block = new (GetAllocator()) HBasicBlock(graph_); in ConstructBasicGraphForSelect()
31 HBasicBlock* then_block = new (GetAllocator()) HBasicBlock(graph_); in ConstructBasicGraphForSelect()
32 HBasicBlock* else_block = new (GetAllocator()) HBasicBlock(graph_); in ConstructBasicGraphForSelect()
34 graph_->AddBlock(if_block); in ConstructBasicGraphForSelect()
35 graph_->AddBlock(then_block); in ConstructBasicGraphForSelect()
36 graph_->AddBlock(else_block); in ConstructBasicGraphForSelect()
45 HParameterValue* bool_param = new (GetAllocator()) HParameterValue(graph_->GetDexFile(), in ConstructBasicGraphForSelect()
50 HIntConstant* const1 = graph_->GetIntConstant(1); in ConstructBasicGraphForSelect()
66 graph_->BuildDominatorTree(); in CheckGraphAndTrySelectGenerator()
69 SideEffectsAnalysis side_effects(graph_); in CheckGraphAndTrySelectGenerator()
[all …]
Dssa_liveness_analysis_test.cc34 graph_ = CreateGraph(); in SetUp()
35 codegen_ = CodeGenerator::Create(graph_, *compiler_options_); in SetUp()
38 entry_ = new (GetAllocator()) HBasicBlock(graph_); in SetUp()
39 graph_->AddBlock(entry_); in SetUp()
40 graph_->SetEntryBlock(entry_); in SetUp()
52 HGraph* graph_; member in art::SsaLivenessAnalysisTest
59 graph_->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kInt32); in TEST_F()
67 graph_->BuildDominatorTree(); in TEST_F()
68 SsaLivenessAnalysis ssa_analysis(graph_, codegen_.get(), GetScopedAllocator()); in TEST_F()
79 graph_->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kReference); in TEST_F()
[all …]
Dbounds_check_elimination_test.cc37 BoundsCheckEliminationTest() : graph_(CreateGraph()) { in BoundsCheckEliminationTest()
38 graph_->SetHasBoundsChecks(true); in BoundsCheckEliminationTest()
44 graph_->BuildDominatorTree(); in RunBCE()
46 InstructionSimplifier(graph_, /* codegen= */ nullptr).Run(); in RunBCE()
48 SideEffectsAnalysis side_effects(graph_); in RunBCE()
51 GVNOptimization(graph_, side_effects).Run(); in RunBCE()
53 HInductionVarAnalysis induction(graph_); in RunBCE()
56 BoundsCheckElimination(graph_, side_effects, &induction).Run(); in RunBCE()
59 HGraph* graph_; member in art::BoundsCheckEliminationTest
67 HBasicBlock* entry = new (GetAllocator()) HBasicBlock(graph_); in TEST_F()
[all …]
Ddead_code_elimination.cc231 if (graph_->HasTryCatch()) { in SimplifyAlwaysThrows()
234 HBasicBlock* exit = graph_->GetExitBlock(); in SimplifyAlwaysThrows()
242 for (HBasicBlock* block : graph_->GetReversePostOrder()) { in SimplifyAlwaysThrows()
276 graph_->ClearLoopInformation(); in SimplifyAlwaysThrows()
277 graph_->ClearDominanceInformation(); in SimplifyAlwaysThrows()
278 graph_->BuildDominatorTree(); in SimplifyAlwaysThrows()
325 for (HBasicBlock* block : graph_->GetReversePostOrder()) { in SimplifyIfs()
412 graph_->ClearLoopInformation(); in SimplifyIfs()
413 graph_->ClearDominanceInformation(); in SimplifyIfs()
414 graph_->BuildDominatorTree(); in SimplifyIfs()
[all …]
Dblock_builder.cc32 graph_(graph), in HBasicBlockBuilder()
55 block = new (allocator_) HBasicBlock(graph_, semantic_dex_pc); in MaybeCreateBlockAt()
147 HBasicBlock* block = graph_->GetEntryBlock(); in ConnectBasicBlocks()
148 graph_->AddBlock(block); in ConnectBasicBlocks()
170 graph_->AddBlock(block); in ConnectBasicBlocks()
192 block->AddSuccessor(graph_->GetExitBlock()); in ConnectBasicBlocks()
204 graph_->AddBlock(block); in ConnectBasicBlocks()
221 graph_->AddBlock(graph_->GetExitBlock()); in ConnectBasicBlocks()
250 DCHECK(!graph_->GetEntryBlock()->GetSuccessors().empty()) in MightHaveLiveNormalPredecessors()
287 for (HBasicBlock* block : graph_->GetBlocks()) { in InsertTryBoundaryBlocks()
[all …]
Dload_store_analysis_test.cc27 LoadStoreAnalysisTest() : graph_(CreateGraph()) { } in LoadStoreAnalysisTest()
29 HGraph* graph_; member in art::LoadStoreAnalysisTest
33 HBasicBlock* entry = new (GetAllocator()) HBasicBlock(graph_); in TEST_F()
34 graph_->AddBlock(entry); in TEST_F()
35 graph_->SetEntryBlock(entry); in TEST_F()
48 graph_->GetDexFile(), dex::TypeIndex(0), 0, DataType::Type::kReference); in TEST_F()
50 graph_->GetDexFile(), dex::TypeIndex(1), 1, DataType::Type::kInt32); in TEST_F()
51 HInstruction* c1 = graph_->GetIntConstant(1); in TEST_F()
52 HInstruction* c2 = graph_->GetIntConstant(2); in TEST_F()
53 HInstruction* c3 = graph_->GetIntConstant(3); in TEST_F()
[all …]
Dsuperblock_cloner_test.cc39 HBasicBlock* loop_preheader = new (GetAllocator()) HBasicBlock(graph_); in CreateBasicLoopControlFlow()
40 HBasicBlock* loop_header = new (GetAllocator()) HBasicBlock(graph_); in CreateBasicLoopControlFlow()
41 HBasicBlock* loop_body = new (GetAllocator()) HBasicBlock(graph_); in CreateBasicLoopControlFlow()
43 graph_->AddBlock(loop_preheader); in CreateBasicLoopControlFlow()
44 graph_->AddBlock(loop_header); in CreateBasicLoopControlFlow()
45 graph_->AddBlock(loop_body); in CreateBasicLoopControlFlow()
63 HIntConstant* const_0 = graph_->GetIntConstant(0); in CreateBasicLoopDataFlow()
64 HIntConstant* const_1 = graph_->GetIntConstant(1); in CreateBasicLoopDataFlow()
65 HIntConstant* const_128 = graph_->GetIntConstant(128); in CreateBasicLoopDataFlow()
100 graph_->SetHasBoundsChecks(true); in CreateBasicLoopDataFlow()
[all …]
Dscheduler_test.cc76 SchedulerTest() : graph_(CreateGraph()) { } in SchedulerTest()
80 HBasicBlock* entry = new (GetAllocator()) HBasicBlock(graph_); in TestBuildDependencyGraphAndSchedule()
81 HBasicBlock* block1 = new (GetAllocator()) HBasicBlock(graph_); in TestBuildDependencyGraphAndSchedule()
82 graph_->AddBlock(entry); in TestBuildDependencyGraphAndSchedule()
83 graph_->AddBlock(block1); in TestBuildDependencyGraphAndSchedule()
84 graph_->SetEntryBlock(entry); in TestBuildDependencyGraphAndSchedule()
101 HInstruction* array = new (GetAllocator()) HParameterValue(graph_->GetDexFile(), in TestBuildDependencyGraphAndSchedule()
105 HInstruction* c1 = graph_->GetIntConstant(1); in TestBuildDependencyGraphAndSchedule()
106 HInstruction* c2 = graph_->GetIntConstant(10); in TestBuildDependencyGraphAndSchedule()
140 graph_->GetArtMethod(), in TestBuildDependencyGraphAndSchedule()
[all …]
Dconstant_folding_test.cc35 ConstantFoldingTest() : graph_(nullptr) { } in ConstantFoldingTest()
43 graph_ = CreateCFG(data, return_type); in TestCode()
54 ASSERT_NE(graph_, nullptr); in TestCodeOnReadyGraph()
56 StringPrettyPrinter printer_before(graph_); in TestCodeOnReadyGraph()
61 HConstantFolding(graph_, "constant_folding").Run(); in TestCodeOnReadyGraph()
62 GraphChecker graph_checker_cf(graph_); in TestCodeOnReadyGraph()
66 StringPrettyPrinter printer_after_cf(graph_); in TestCodeOnReadyGraph()
71 check_after_cf(graph_); in TestCodeOnReadyGraph()
73 HDeadCodeElimination(graph_, /* stats= */ nullptr, "dead_code_elimination").Run(); in TestCodeOnReadyGraph()
74 GraphChecker graph_checker_dce(graph_); in TestCodeOnReadyGraph()
[all …]
Doptimizing_unit_test.h194 ImprovedOptimizingUnitTest() : graph_(CreateGraph()), in ImprovedOptimizingUnitTest()
203 entry_block_ = new (GetAllocator()) HBasicBlock(graph_); in InitGraph()
204 graph_->AddBlock(entry_block_); in InitGraph()
205 graph_->SetEntryBlock(entry_block_); in InitGraph()
207 return_block_ = new (GetAllocator()) HBasicBlock(graph_); in InitGraph()
208 graph_->AddBlock(return_block_); in InitGraph()
210 exit_block_ = new (GetAllocator()) HBasicBlock(graph_); in InitGraph()
211 graph_->AddBlock(exit_block_); in InitGraph()
212 graph_->SetExitBlock(exit_block_); in InitGraph()
217 parameter_ = new (GetAllocator()) HParameterValue(graph_->GetDexFile(), in InitGraph()
[all …]
Dside_effects_analysis.cc24 block_effects_.resize(graph_->GetBlocks().size()); in Run()
25 loop_effects_.resize(graph_->GetBlocks().size()); in Run()
29 for (HBasicBlock* block : graph_->GetReversePostOrder()) { in Run()
40 for (HBasicBlock* block : graph_->GetPostOrder()) { in Run()
Dinliner.cc133 } else if (graph_->IsDebuggable()) { in Run()
143 if (outermost_graph_ == graph_) { in Run()
144 total_number_of_instructions_ = CountNumberOfInstructions(graph_); in Run()
164 ArenaVector<HBasicBlock*> blocks = graph_->GetReversePostOrder(); in Run()
662 ArtMethod* caller = graph_->GetArtMethod(); in GetInlineCacheJIT()
793 HInstanceFieldGet* result = new (graph_->GetAllocator()) HInstanceFieldGet( in BuildGetReceiverClass()
885 ReferenceTypePropagation rtp_fixup(graph_, in TryInlineMonomorphicCall()
900 HShouldDeoptimizeFlag* deopt_flag = new (graph_->GetAllocator()) in AddCHAGuard()
901 HShouldDeoptimizeFlag(graph_->GetAllocator(), dex_pc); in AddCHAGuard()
902 HInstruction* compare = new (graph_->GetAllocator()) HNotEqual( in AddCHAGuard()
[all …]
Dinduction_var_analysis_test.cc45 graph_ = CreateGraph(); in InductionVarAnalysisTest()
53 loop_preheader_[d] = new (GetAllocator()) HBasicBlock(graph_); in BuildForLoop()
54 graph_->AddBlock(loop_preheader_[d]); in BuildForLoop()
55 loop_header_[d] = new (GetAllocator()) HBasicBlock(graph_); in BuildForLoop()
56 graph_->AddBlock(loop_header_[d]); in BuildForLoop()
61 loop_body_[d] = new (GetAllocator()) HBasicBlock(graph_); in BuildForLoop()
62 graph_->AddBlock(loop_body_[d]); in BuildForLoop()
77 graph_->SetNumberOfVRegs(n + 3); in BuildLoopNest()
80 entry_ = new (GetAllocator()) HBasicBlock(graph_); in BuildLoopNest()
81 graph_->AddBlock(entry_); in BuildLoopNest()
[all …]
Dssa_builder.cc34 for (HBasicBlock* block : graph_->GetReversePostOrder()) { in FixNullConstantType()
60 equality_instr->ReplaceInput(graph_->GetNullConstant(), int_operand == right ? 1 : 0); in FixNullConstantType()
67 for (HBasicBlock* block : graph_->GetReversePostOrder()) { in EquivalentPhisCleanup()
89 for (HBasicBlock* block : graph_->GetReversePostOrder()) { in FixEnvironmentPhis()
241 for (HBasicBlock* block : graph_->GetReversePostOrder()) { in RunPrimitiveTypePropagation()
441 DCHECK(graph_->HasIrreducibleLoops()); in ReplaceUninitializedStringPhis()
454 if (graph_->IsDebuggable()) { in RemoveRedundantUninitializedStrings()
469 new_instance->ReplaceWith(graph_->GetNullConstant()); in RemoveRedundantUninitializedStrings()
500 DCHECK(!graph_->IsInSsaForm()); in BuildSsa()
513 SsaRedundantPhiElimination(graph_).Run(); in BuildSsa()
[all …]
Dssa_phi_elimination.cc34 ScopedArenaAllocator allocator(graph_->GetArenaStack()); in MarkDeadPhis()
46 for (HBasicBlock* block : graph_->GetReversePostOrder()) { in MarkDeadPhis()
53 bool keep_alive = (graph_->IsDebuggable() && phi->HasEnvironmentUses()); in MarkDeadPhis()
95 for (HBasicBlock* block : graph_->GetPostOrder()) { in EliminateDeadPhis()
128 ScopedArenaAllocator allocator(graph_->GetArenaStack()); in Run()
136 for (HBasicBlock* block : graph_->GetReversePostOrder()) { in Run()
143 graph_->GetCurrentInstructionId(), in Run()
Dinduction_var_range_test.cc35 : graph_(CreateGraph()), in InductionVarRangeTest()
36 iva_(new (GetAllocator()) HInductionVarAnalysis(graph_)), in InductionVarRangeTest()
61 graph_->SetNumberOfVRegs(1); in BuildGraph()
62 entry_block_ = new (GetAllocator()) HBasicBlock(graph_); in BuildGraph()
63 exit_block_ = new (GetAllocator()) HBasicBlock(graph_); in BuildGraph()
64 graph_->AddBlock(entry_block_); in BuildGraph()
65 graph_->AddBlock(exit_block_); in BuildGraph()
66 graph_->SetEntryBlock(entry_block_); in BuildGraph()
67 graph_->SetExitBlock(exit_block_); in BuildGraph()
69 x_ = new (GetAllocator()) HParameterValue(graph_->GetDexFile(), in BuildGraph()
[all …]
Dcode_sinking.cc29 HBasicBlock* exit = graph_->GetExitBlock(); in Run()
258 ScopedArenaAllocator allocator(graph_->GetArenaStack()); in SinkCodeToUncommonBranch()
260 size_t number_of_instructions = graph_->GetCurrentInstructionId(); in SinkCodeToUncommonBranch()
264 ArenaBitVector post_dominated(&allocator, graph_->GetBlocks().size(), /* expandable= */ false); in SinkCodeToUncommonBranch()
277 for (HBasicBlock* block : graph_->GetPostOrder()) { in SinkCodeToUncommonBranch()
305 for (size_t i = 0, e = graph_->GetBlocks().size(); i < e; ++i) { in SinkCodeToUncommonBranch()
307 finder.Update(graph_->GetBlocks()[i]); in SinkCodeToUncommonBranch()
308 AddInputs(graph_->GetBlocks()[i], processed_instructions, post_dominated, &worklist); in SinkCodeToUncommonBranch()
351 if (graph_->IsDebuggable() || in SinkCodeToUncommonBranch()
354 (user->IsSuspendCheck() && graph_->IsCompilingOsr())) { in SinkCodeToUncommonBranch()
Dsuperblock_cloner.cc240 ArenaBitVector visited(arena_, graph_->GetBlocks().size(), false, kArenaAllocSuperblockCloner); in FindBackEdgesLocal()
245 ArenaBitVector visiting(arena_, graph_->GetBlocks().size(), false, kArenaAllocGraphBuilder); in FindBackEdgesLocal()
247 ArenaVector<size_t> successors_visited(graph_->GetBlocks().size(), in FindBackEdgesLocal()
288 for (auto block : graph_->GetBlocks()) { in RecalculateBackEdgesInfo()
297 block_entry = graph_->GetEntryBlock(); in RecalculateBackEdgesInfo()
335 for (HBasicBlock* block : graph_->GetPostOrder()) { in AnalyzeLoopsLocally()
349 for (HBasicBlock* block : graph_->GetPostOrder()) { in AnalyzeLoopsLocally()
367 graph_->ClearDominanceInformation(); in CleanUpControlFlow()
370 arena_, graph_->GetBlocks().size(), false, kArenaAllocSuperblockCloner); in CleanUpControlFlow()
374 graph_->SimplifyCFG(); in CleanUpControlFlow()
[all …]
Dreference_type_propagation_test.cc33 ReferenceTypePropagationTest() : graph_(CreateGraph()), propagation_(nullptr) { } in ReferenceTypePropagationTest()
38 graph_->InitializeInexactObjectRTI(handles); in SetupPropagation()
39 propagation_ = new (GetAllocator()) ReferenceTypePropagation(graph_, in SetupPropagation()
69 HGraph* graph_; member in art::ReferenceTypePropagationTest
84 EXPECT_TRUE(graph_->GetInexactObjectRti().IsEqual(ObjectType(false))); in TEST_F()
Dside_effects_analysis.h30 graph_(graph), in HOptimization()
49 HGraph* graph_; variable
Dlicm.cc88 visited = new (graph_->GetAllocator()) ArenaBitVector(graph_->GetAllocator(), in Run()
89 graph_->GetBlocks().size(), in Run()
95 for (HBasicBlock* block : graph_->GetPostOrder()) { in Run()
Dssa_builder.h56 : graph_(graph), in SsaBuilder()
66 graph_->InitializeInexactObjectRTI(handles); in SsaBuilder()
129 HGraph* const graph_; variable

123