/art/compiler/optimizing/ |
H A D | prepare_for_register_allocation.h | 25 * A simplification pass over the graph before doing register allocation. 31 explicit PrepareForRegisterAllocation(HGraph* graph) : HGraphDelegateVisitor(graph) {} argument
|
H A D | boolean_simplifier.h | 65 explicit HBooleanSimplifier(HGraph* graph) argument 66 : HOptimization(graph, true, kBooleanSimplifierPassName) {}
|
H A D | bounds_check_elimination.h | 26 explicit BoundsCheckElimination(HGraph* graph) argument 27 : HOptimization(graph, true, kBoundsCheckEliminiationPassName) {}
|
H A D | constant_folding.h | 35 explicit HConstantFolding(HGraph* graph, const char* name = kConstantFoldingPassName) argument 36 : HOptimization(graph, true, name) {}
|
H A D | instruction_simplifier.h | 31 InstructionSimplifier(HGraph* graph, argument 34 : HOptimization(graph, true, name, stats) {}
|
H A D | primitive_type_propagation.h | 24 // Compute and propagate primitive types of phis in the graph. 27 explicit PrimitiveTypePropagation(HGraph* graph) argument 28 : graph_(graph), worklist_(graph->GetArena(), kDefaultWorklistSize) {}
|
H A D | dead_code_elimination.h | 32 HDeadCodeElimination(HGraph* graph, argument 35 : HOptimization(graph, true, name, stats) {}
|
H A D | gvn.h | 29 GVNOptimization(HGraph* graph, const SideEffectsAnalysis& side_effects) argument 30 : HOptimization(graph, true, kGlobalValueNumberingPassName), side_effects_(side_effects) {}
|
H A D | licm.h | 29 LICM(HGraph* graph, const SideEffectsAnalysis& side_effects) argument 30 : HOptimization(graph, true, kLoopInvariantCodeMotionPassName), side_effects_(side_effects) {}
|
H A D | ssa_phi_elimination.h | 26 * Optimization phase that removes dead phis from the graph. Dead phis are unused 31 explicit SsaDeadPhiElimination(HGraph* graph) argument 32 : HOptimization(graph, true, kSsaDeadPhiEliminationPassName), 33 worklist_(graph->GetArena(), kDefaultWorklistSize) {} 58 explicit SsaRedundantPhiElimination(HGraph* graph) argument 59 : HOptimization(graph, true, kSsaRedundantPhiEliminationPassName), 60 worklist_(graph->GetArena(), kDefaultWorklistSize) {}
|
H A D | suspend_check_test.cc | 33 HGraph* graph = CreateGraph(&allocator); local 34 HGraphBuilder builder(graph); 39 HBasicBlock* first_block = graph->GetEntryBlock()->GetSuccessors().Get(0);
|
H A D | constant_folding_test.cc | 40 HGraph* graph = CreateCFG(&allocator, data, return_type); local 41 ASSERT_NE(graph, nullptr); 43 graph->TryBuildingSsa(); 45 StringPrettyPrinter printer_before(graph); 52 x86::CodeGeneratorX86 codegenX86(graph, *features_x86.get(), CompilerOptions()); 53 HConstantFolding(graph).Run(); 54 SSAChecker ssa_checker_cf(&allocator, graph); 58 StringPrettyPrinter printer_after_cf(graph); 63 check_after_cf(graph); 65 HDeadCodeElimination(graph) [all...] |
H A D | dead_code_elimination_test.cc | 34 HGraph* graph = CreateCFG(&allocator, data); local 35 ASSERT_NE(graph, nullptr); 37 graph->TryBuildingSsa(); 39 StringPrettyPrinter printer_before(graph); 46 x86::CodeGeneratorX86 codegenX86(graph, *features_x86.get(), CompilerOptions()); 47 HDeadCodeElimination(graph).Run(); 48 SSAChecker ssa_checker(&allocator, graph); 52 StringPrettyPrinter printer_after(graph);
|
H A D | dominator_test.cc | 30 HGraph* graph = CreateGraph(&allocator); local 31 HGraphBuilder builder(graph); 35 graph->BuildDominatorTree(); 36 ASSERT_EQ(graph->GetBlocks().Size(), blocks_length); 39 if (graph->GetBlocks().Get(i) == nullptr) { 43 ASSERT_EQ(nullptr, graph->GetBlocks().Get(i)->GetDominator()); 44 ASSERT_TRUE(graph->GetBlocks().Get(i)->IsEntryBlock()); 47 ASSERT_NE(nullptr, graph->GetBlocks().Get(i)->GetDominator()); 48 ASSERT_EQ(blocks[i], graph->GetBlocks().Get(i)->GetDominator()->GetBlockId());
|
H A D | graph_checker_test.cc | 25 * Create a simple control-flow graph composed of two blocks: 33 HGraph* graph = CreateGraph(allocator); local 34 HBasicBlock* entry_block = new (allocator) HBasicBlock(graph); 36 graph->AddBlock(entry_block); 37 graph->SetEntryBlock(entry_block); 38 HBasicBlock* exit_block = new (allocator) HBasicBlock(graph); 40 graph->AddBlock(exit_block); 41 graph->SetExitBlock(exit_block); 43 return graph; 50 HGraph* graph local 61 HGraph* graph = CreateCFG(&allocator, data); local 114 HGraph* graph = CreateSimpleCFG(&allocator); local 132 HGraph* graph = CreateSimpleCFG(&allocator); local [all...] |
H A D | linearize_test.cc | 42 HGraph* graph = CreateGraph(&allocator); local 43 HGraphBuilder builder(graph); 48 graph->TryBuildingSsa(); 52 x86::CodeGeneratorX86 codegen(graph, *features_x86.get(), CompilerOptions()); 53 SsaLivenessAnalysis liveness(graph, &codegen); 56 ASSERT_EQ(graph->GetLinearOrder().Size(), number_of_blocks); 58 ASSERT_EQ(graph->GetLinearOrder().Get(i)->GetBlockId(), expected_order[i]); 63 // Structure of this graph (+ are back edges) 88 // Structure of this graph (+ are back edges) 113 // Structure of this graph ( [all...] |
H A D | live_ranges_test.cc | 35 HGraph* graph = CreateGraph(allocator); local 36 HGraphBuilder builder(graph); 41 RemoveSuspendChecks(graph); 42 graph->TryBuildingSsa(); 44 PrepareForRegisterAllocation(graph).Run(); 45 return graph; 53 * Which becomes the following graph (numbered by lifetime position): 67 HGraph* graph = BuildGraph(data, &allocator); local 71 x86::CodeGeneratorX86 codegen(graph, *features_x86.get(), CompilerOptions()); 72 SsaLivenessAnalysis liveness(graph, 116 HGraph* graph = BuildGraph(data, &allocator); local 167 HGraph* graph = BuildGraph(data, &allocator); local 245 HGraph* graph = BuildGraph(data, &allocator); local 326 HGraph* graph = BuildGraph(data, &allocator); local 404 HGraph* graph = BuildGraph(data, &allocator); local [all...] |
H A D | optimization.h | 30 HOptimization(HGraph* graph, argument 34 : graph_(graph), 47 // Verify the graph; abort if it is not valid. 58 // Does the analyzed graph use the SSA form?
|
H A D | pretty_printer.h | 27 explicit HPrettyPrinter(HGraph* graph) : HGraphVisitor(graph) { } argument 106 explicit StringPrettyPrinter(HGraph* graph) argument 107 : HPrettyPrinter(graph), str_(""), current_block_(nullptr) { }
|
H A D | pretty_printer_test.cc | 33 HGraph* graph = CreateGraph(&allocator); local 34 HGraphBuilder builder(graph); 38 StringPrettyPrinter printer(graph);
|
H A D | reference_type_propagation.h | 33 ReferenceTypePropagation(HGraph* graph, argument 37 : HOptimization(graph, true, kReferenceTypePropagationPassName), 41 worklist_(graph->GetArena(), kDefaultWorklistSize) {}
|
H A D | side_effects_analysis.h | 27 explicit SideEffectsAnalysis(HGraph* graph) argument 28 : HOptimization(graph, true, kSideEffectsAnalysisPassName), 29 graph_(graph), 30 block_effects_(graph->GetArena(), graph->GetBlocks().Size(), SideEffects::None()), 31 loop_effects_(graph->GetArena(), graph->GetBlocks().Size(), SideEffects::None()) {}
|
H A D | ssa_builder.h | 28 * Transforms a graph into SSA form. The liveness guarantees of 51 explicit SsaBuilder(HGraph* graph) argument 52 : HGraphVisitor(graph), 54 loop_headers_(graph->GetArena(), kDefaultNumberOfLoops), 55 locals_for_(graph->GetArena(), graph->GetBlocks().Size()) { 56 locals_for_.SetSize(graph->GetBlocks().Size());
|
H A D | find_loops_test.cc | 31 HGraph* graph = CreateGraph(allocator); local 32 HGraphBuilder builder(graph); 35 graph->BuildDominatorTree(); 36 graph->AnalyzeNaturalLoops(); 37 return graph; 48 HGraph* graph = TestCode(data, &allocator); local 49 for (size_t i = 0, e = graph->GetBlocks().Size(); i < e; ++i) { 50 ASSERT_EQ(graph->GetBlocks().Get(i)->GetLoopInformation(), nullptr); 61 HGraph* graph = TestCode(data, &allocator); local 62 for (size_t i = 0, e = graph 77 HGraph* graph = TestCode(data, &allocator); local 94 HGraph* graph = TestCode(data, &allocator); local 109 HGraph* graph = TestCode(data, &allocator); local 115 TestBlock(HGraph* graph, int block_id, bool is_loop_header, int parent_loop_header_id, const int* blocks_in_loop = nullptr, size_t number_of_blocks = 0) argument 155 HGraph* graph = TestCode(data, &allocator); local 183 HGraph* graph = TestCode(data, &allocator); local 208 HGraph* graph = TestCode(data, &allocator); local 234 HGraph* graph = TestCode(data, &allocator); local 260 HGraph* graph = TestCode(data, &allocator); local 285 HGraph* graph = TestCode(data, &allocator); local 316 HGraph* graph = TestCode(data, &allocator); local 346 HGraph* graph = TestCode(data, &allocator); local 361 HGraph* graph = TestCode(data, &allocator); local [all...] |
H A D | liveness_test.cc | 49 HGraph* graph = CreateGraph(&allocator); local 50 HGraphBuilder builder(graph); 54 graph->TryBuildingSsa(); 56 PrepareForRegisterAllocation(graph).Run(); 59 x86::CodeGeneratorX86 codegen(graph, *features_x86.get(), CompilerOptions()); 60 SsaLivenessAnalysis liveness(graph, &codegen); 64 for (HInsertionOrderIterator it(*graph); !it.Done(); it.Advance()) {
|