Searched refs:graph (Results 26 - 50 of 78) sorted by relevance

1234

/art/compiler/optimizing/
H A Dlive_ranges_test.cc35 HGraph* graph = CreateCFG(allocator, data); local
38 RemoveSuspendChecks(graph);
40 PrepareForRegisterAllocation(graph).Run();
41 return graph;
49 * Which becomes the following graph (numbered by lifetime position):
63 HGraph* graph = BuildGraph(data, &allocator); local
67 x86::CodeGeneratorX86 codegen(graph, *features_x86.get(), CompilerOptions());
68 SsaLivenessAnalysis liveness(graph, &codegen);
76 HBasicBlock* block = graph->GetBlocks()[1];
91 * Which becomes the following graph (numbere
112 HGraph* graph = BuildGraph(data, &allocator); local
163 HGraph* graph = BuildGraph(data, &allocator); local
241 HGraph* graph = BuildGraph(data, &allocator); local
321 HGraph* graph = BuildGraph(data, &allocator); local
399 HGraph* graph = BuildGraph(data, &allocator); local
[all...]
H A Dssa_builder.h27 * Transforms a graph into SSA form. The liveness guarantees of
50 SsaBuilder(HGraph* graph, argument
53 : graph_(graph),
57 ambiguous_agets_(graph->GetArena()->Adapter(kArenaAllocGraphBuilder)),
58 ambiguous_asets_(graph->GetArena()->Adapter(kArenaAllocGraphBuilder)),
59 uninitialized_strings_(graph->GetArena()->Adapter(kArenaAllocGraphBuilder)) {
H A Dbounds_check_elimination_test.cc358 static HInstruction* BuildSSAGraph1(HGraph* graph, argument
363 HBasicBlock* entry = new (allocator) HBasicBlock(graph);
364 graph->AddBlock(entry);
365 graph->SetEntryBlock(entry);
367 graph->GetDexFile(), 0, 0, Primitive::kPrimNot);
370 HInstruction* constant_initial = graph->GetIntConstant(initial);
371 HInstruction* constant_increment = graph->GetIntConstant(increment);
372 HInstruction* constant_10 = graph->GetIntConstant(10);
374 HBasicBlock* block = new (allocator) HBasicBlock(graph);
375 graph
473 BuildSSAGraph2(HGraph *graph, ArenaAllocator* allocator, int initial, int increment = -1, IfCondition cond = kCondLE) argument
583 BuildSSAGraph3(HGraph* graph, ArenaAllocator* allocator, int initial, int increment, IfCondition cond) argument
687 BuildSSAGraph4(HGraph* graph, ArenaAllocator* allocator, int initial, IfCondition cond = kCondGE) argument
[all...]
H A Dprepare_for_register_allocation.h25 * A simplification pass over the graph before doing register allocation.
31 explicit PrepareForRegisterAllocation(HGraph* graph) : HGraphDelegateVisitor(graph) {} argument
H A Dinstruction_simplifier_arm64.h28 InstructionSimplifierArm64Visitor(HGraph* graph, OptimizingCompilerStats* stats) argument
29 : HGraphVisitor(graph), stats_(stats) {}
88 InstructionSimplifierArm64(HGraph* graph, OptimizingCompilerStats* stats) argument
89 : HOptimization(graph, "instruction_simplifier_arm64", stats) {}
H A Dblock_builder.h29 HBasicBlockBuilder(HGraph* graph, argument
32 : arena_(graph->GetArena()),
33 graph_(graph),
H A Doptimizing_compiler.cc124 PassObserver(HGraph* graph, argument
128 : graph_(graph),
132 disasm_info_(graph->GetArena()),
134 visualizer_(visualizer_output, graph, *codegen),
172 // Dump graph first, then start timer.
182 // Pause timer first, then dump graph.
231 // Flag to be set by the compiler if the pass failed and the graph is not
300 // Create a 'CompiledMethod' for an optimized graph.
310 // 1) Builds the graph. Returns null if it failed to build it.
311 // 2) Transforms the graph t
399 MaybeRunInliner(HGraph* graph, CodeGenerator* codegen, CompilerDriver* driver, OptimizingCompilerStats* stats, const DexCompilationUnit& dex_compilation_unit, PassObserver* pass_observer, StackHandleScopeCollection* handles) argument
429 RunArchOptimizations(InstructionSet instruction_set, HGraph* graph, CodeGenerator* codegen, OptimizingCompilerStats* stats, PassObserver* pass_observer) argument
482 AllocateRegisters(HGraph* graph, CodeGenerator* codegen, PassObserver* pass_observer) argument
501 RunOptimizations(HGraph* graph, CodeGenerator* codegen, CompilerDriver* driver, OptimizingCompilerStats* stats, const DexCompilationUnit& dex_compilation_unit, PassObserver* pass_observer, StackHandleScopeCollection* handles) argument
673 HGraph* graph = new (arena) HGraph( local
[all...]
H A Doptimizing_unit_test.h64 void RemoveSuspendChecks(HGraph* graph) { argument
65 for (HBasicBlock* block : graph->GetBlocks()) {
83 // Create a control-flow graph from Dex instructions.
89 HGraph* graph = CreateGraph(allocator); local
94 HGraphBuilder builder(graph, *item, &handles, return_type);
96 return graph_built ? graph : nullptr;
119 // Returns if the instruction is removed from the graph.
H A Dinduction_var_range.cc203 HGraph* graph,
208 if (!GenerateCode(context, instruction, graph, block, lower, upper, nullptr, &b1, &b2)) {
214 HGraph* graph,
218 if (!GenerateCode(context, context, graph, block, nullptr, nullptr, taken_test, &b1, &b2)) {
607 HGraph* graph,
640 return GenerateCode(trip->op_b, nullptr, graph, block, taken_test, in_body, /* is_min */ false);
651 GenerateCode(info, trip, graph, block, lower, in_body, /* is_min */ true)) &&
653 GenerateCode(info, trip, graph, block, upper, in_body, /* is_min */ false);
658 HGraph* graph, // when set, code is generated
681 if (GenerateCode(info->op_a, trip, graph, bloc
201 GenerateRangeCode(HInstruction* context, HInstruction* instruction, HGraph* graph, HBasicBlock* block, HInstruction** lower, HInstruction** upper) argument
213 GenerateTakenTest(HInstruction* context, HGraph* graph, HBasicBlock* block, HInstruction** taken_test) argument
605 GenerateCode(HInstruction* context, HInstruction* instruction, HGraph* graph, HBasicBlock* block, HInstruction** lower, HInstruction** upper, HInstruction** taken_test, bool* needs_finite_test, bool* needs_taken_test) const argument
656 GenerateCode(HInductionVarAnalysis::InductionInfo* info, HInductionVarAnalysis::InductionInfo* trip, HGraph* graph, HBasicBlock* block, HInstruction** result, bool in_body, bool is_min) const argument
[all...]
H A Ddex_cache_array_fixups_arm.cc30 explicit DexCacheArrayFixupsVisitor(HGraph* graph) argument
31 : HGraphVisitor(graph),
34 graph->GetArena()->Adapter(kArenaAllocCodeGenerator)) {}
H A Dpretty_printer.h27 explicit HPrettyPrinter(HGraph* graph) : HGraphVisitor(graph) { } argument
106 explicit StringPrettyPrinter(HGraph* graph) argument
107 : HPrettyPrinter(graph), str_(""), current_block_(nullptr) { }
H A Dssa_test.cc35 explicit SsaPrettyPrinter(HGraph* graph) : HPrettyPrinter(graph), str_("") {} argument
67 static void ReNumberInstructions(HGraph* graph) { argument
69 for (HBasicBlock* block : graph->GetBlocks()) {
82 HGraph* graph = CreateCFG(&allocator, data); local
85 RemoveSuspendChecks(graph);
86 ReNumberInstructions(graph);
89 for (HBasicBlock* block : graph->GetBlocks()) {
95 SsaPrettyPrinter printer(graph);
H A Dsuspend_check_test.cc34 HGraph* graph = CreateCFG(&allocator, data); local
35 HBasicBlock* first_block = graph->GetEntryBlock()->GetSingleSuccessor();
H A Dconstant_folding_test.cc133 auto check_after_cf = [](HGraph* graph) {
134 HInstruction* inst = graph->GetBlocks()[1]->GetFirstInstruction()->InputAt(0);
194 auto check_after_cf = [](HGraph* graph) {
195 HInstruction* inst = graph->GetBlocks()[1]->GetFirstInstruction()->InputAt(0);
255 auto check_after_cf = [](HGraph* graph) {
256 HInstruction* inst = graph->GetBlocks()[1]->GetFirstInstruction()->InputAt(0);
334 auto check_after_cf = [](HGraph* graph) {
335 HInstruction* inst1 = graph->GetBlocks()[1]->GetFirstInstruction()->InputAt(0);
405 auto check_after_cf = [](HGraph* graph) {
406 HInstruction* inst = graph
[all...]
H A Dlinearize_test.cc42 HGraph* graph = CreateCFG(&allocator, data); local
45 x86::CodeGeneratorX86 codegen(graph, *features_x86.get(), CompilerOptions());
46 SsaLivenessAnalysis liveness(graph, &codegen);
49 ASSERT_EQ(graph->GetLinearOrder().size(), number_of_blocks);
51 ASSERT_EQ(graph->GetLinearOrder()[i]->GetBlockId(), expected_order[i]);
56 // Structure of this graph (+ are back edges)
81 // Structure of this graph (+ are back edges)
106 // Structure of this graph (+ are back edges)
133 /* Structure of this graph (+ are back edges)
163 /* Structure of this graph (
[all...]
H A Ddominator_test.cc32 HGraph* graph = CreateCFG(&allocator, data); local
33 ASSERT_EQ(graph->GetBlocks().size(), blocks_length);
36 if (graph->GetBlocks()[i] == nullptr) {
40 ASSERT_EQ(nullptr, graph->GetBlocks()[i]->GetDominator());
41 ASSERT_TRUE(graph->GetBlocks()[i]->IsEntryBlock());
44 ASSERT_NE(nullptr, graph->GetBlocks()[i]->GetDominator());
45 ASSERT_EQ(blocks[i], graph->GetBlocks()[i]->GetDominator()->GetBlockId());
H A Ddead_code_elimination.cc25 static void MarkReachableBlocks(HGraph* graph, ArenaBitVector* visited) { argument
26 ArenaVector<HBasicBlock*> worklist(graph->GetArena()->Adapter(kArenaAllocDCE));
29 visited->SetBit(graph->GetEntryBlock()->GetBlockId());
30 worklist.push_back(graph->GetEntryBlock());
93 // Do not eliminate dead blocks if the graph has irreducible loops. We could
H A Dinduction_var_range.h89 * generated in given block and graph and are returned in the output parameters lower and
103 HGraph* graph,
110 * given block and graph. The taken-test is returned in parameter test.
115 HGraph* graph,
186 HGraph* graph,
196 HGraph* graph,
H A Dpc_relative_fixups_x86.cc29 PCRelativeHandlerVisitor(HGraph* graph, CodeGenerator* codegen) argument
30 : HGraphVisitor(graph),
127 HGraph* graph = GetGraph(); variable
129 HX86FPNeg* x86_fp_neg = new (graph->GetArena()) HX86FPNeg(
146 HGraph* graph = GetGraph(); variable
148 HX86PackedSwitch* x86_switch = new (graph->GetArena()) HX86PackedSwitch(
H A Dliveness_test.cc49 HGraph* graph = CreateCFG(&allocator, data); local
51 PrepareForRegisterAllocation(graph).Run();
54 x86::CodeGeneratorX86 codegen(graph, *features_x86.get(), CompilerOptions());
55 SsaLivenessAnalysis liveness(graph, &codegen);
59 for (HInsertionOrderIterator it(*graph); !it.Done(); it.Advance()) {
H A Dpretty_printer_test.cc33 HGraph* graph = CreateCFG(&allocator, data); local
34 StringPrettyPrinter printer(graph);
H A Dcode_generator.h171 // Compiles the graph to executable instructions.
173 static std::unique_ptr<CodeGenerator> Create(HGraph* graph,
180 // Get the graph. This is the outermost graph, never the graph of a method being inlined.
491 CodeGenerator(HGraph* graph, argument
503 blocked_core_registers_(graph->GetArena()->AllocArray<bool>(number_of_core_registers,
505 blocked_fpu_registers_(graph->GetArena()->AllocArray<bool>(number_of_fpu_registers,
507 blocked_register_pairs_(graph->GetArena()->AllocArray<bool>(number_of_register_pairs,
514 stack_map_stream_(graph
698 SlowPathGenerator(HGraph* graph, CodeGenerator* codegen) argument
790 InstructionCodeGenerator(HGraph* graph, CodeGenerator* codegen) argument
[all...]
H A Dload_store_elimination.cc193 explicit HeapLocationCollector(HGraph* graph) argument
194 : HGraphVisitor(graph),
195 ref_info_array_(graph->GetArena()->Adapter(kArenaAllocLSE)),
196 heap_locations_(graph->GetArena()->Adapter(kArenaAllocLSE)),
197 aliasing_matrix_(graph->GetArena(),
510 LSEVisitor(HGraph* graph, argument
513 : HGraphVisitor(graph),
516 heap_values_for_(graph->GetBlocks().size(),
520 graph->GetArena()->Adapter(kArenaAllocLSE)),
521 graph
[all...]
H A Dcode_generator.cc556 std::unique_ptr<CodeGenerator> CodeGenerator::Create(HGraph* graph, argument
561 ArenaAllocator* arena = graph->GetArena();
567 new (arena) arm::CodeGeneratorARM(graph,
576 new (arena) arm64::CodeGeneratorARM64(graph,
585 new (arena) mips::CodeGeneratorMIPS(graph,
594 new (arena) mips64::CodeGeneratorMIPS64(graph,
603 new (arena) x86::CodeGeneratorX86(graph,
612 new (arena) x86_64::CodeGeneratorX86_64(graph,
628 const HGraph& graph,
635 if (graph
627 CheckCovers(uint32_t dex_pc, const HGraph& graph, const CodeInfo& code_info, const ArenaVector<HSuspendCheck*>& loop_headers, ArenaVector<size_t>* covered) argument
645 CheckLoopEntriesCanBeUsedForOsr(const HGraph& graph, const CodeInfo& code_info, const DexFile::CodeItem& code_item) argument
[all...]
H A Dconstant_folding.cc25 explicit HConstantFoldingVisitor(HGraph* graph) argument
26 : HGraphDelegateVisitor(graph) {}
45 explicit InstructionWithAbsorbingInputSimplifier(HGraph* graph) : HGraphVisitor(graph) {} argument

Completed in 182 milliseconds

1234