Searched refs:mir_graph (Results 1 - 25 of 34) sorted by relevance

12

/art/compiler/dex/
H A Ddataflow_iterator.h21 #include "mir_graph.h"
67 * @param mir_graph the MIRGraph we are interested in.
71 DataflowIterator(MIRGraph* mir_graph, int32_t start_idx, int32_t end_idx) argument
72 : mir_graph_(mir_graph),
121 * @param mir_graph The MIRGraph considered.
123 explicit PreOrderDfsIterator(MIRGraph* mir_graph) argument
124 : DataflowIterator(mir_graph, 0, mir_graph->GetNumReachableBlocks()) {
127 block_id_list_ = mir_graph->GetDfsOrder();
152 * @param mir_graph Th
154 RepeatingPreOrderDfsIterator(MIRGraph* mir_graph) argument
185 RepeatingPostOrderDfsIterator(MIRGraph* mir_graph) argument
215 ReversePostOrderDfsIterator(MIRGraph* mir_graph) argument
246 RepeatingReversePostOrderDfsIterator(MIRGraph* mir_graph) argument
276 PostOrderDOMIterator(MIRGraph* mir_graph) argument
306 AllNodesIterator(MIRGraph* mir_graph) argument
339 TopologicalSortIterator(MIRGraph* mir_graph) argument
371 RepeatingTopologicalSortIterator(MIRGraph* mir_graph) argument
410 LoopRepeatingTopologicalSortIterator(MIRGraph* mir_graph) argument
[all...]
H A Dbb_optimizations.h38 c_unit->mir_graph->DoCacheFieldLoweringInfo();
45 return c_unit->mir_graph->HasFieldAccess();
62 c_unit->mir_graph->DoCacheMethodLoweringInfo();
69 return c_unit->mir_graph->HasInvokes();
88 return c_unit->mir_graph->InlineSpecialMethodsGate();
95 c_unit->mir_graph->InlineSpecialMethodsStart();
105 c_unit->mir_graph->InlineSpecialMethods(bb);
114 c_unit->mir_graph->InlineSpecialMethodsEnd();
131 c_unit->mir_graph->VerifyDataflow();
132 c_unit->mir_graph
[all...]
H A Dpost_opt_passes.h41 c_unit->mir_graph.get()->InitializeBasicBlockData();
42 c_unit->mir_graph.get()->SSATransformationStart();
97 c_unit->mir_graph.get()->ComputeDFSOrders();
114 c_unit->mir_graph.get()->ComputeDominators();
115 c_unit->mir_graph.get()->CompilerInitializeSSAConversion();
124 c_unit->mir_graph->VerifyDataflow();
142 c_unit->mir_graph.get()->ComputeTopologicalSortOrder();
159 c_unit->mir_graph.get()->ComputeDefBlockMatrix();
176 c_unit->mir_graph.get()->InsertPhiNodes();
194 c_unit->mir_graph
211 MIRGraph *mir_graph = c_unit->mir_graph.get(); local
[all...]
H A Dbb_optimizations.cc33 c_unit->mir_graph->LayoutBlocks(bb);
48 c_unit->mir_graph->CombineBlocks(bb);
67 c_unit->mir_graph->BasicBlockOptimization();
H A Dmir_graph_test.cc17 #include "mir_graph.h"
59 cu_.mir_graph->block_id_map_.clear();
60 cu_.mir_graph->block_list_.Reset();
67 BasicBlock* bb = cu_.mir_graph->NewMemBB(def->type, i);
68 cu_.mir_graph->block_list_.Insert(bb);
100 cu_.mir_graph->num_blocks_ = count;
101 ASSERT_EQ(count, cu_.mir_graph->block_list_.Size());
102 cu_.mir_graph->entry_block_ = cu_.mir_graph->block_list_.Get(1);
103 ASSERT_EQ(kEntryBlock, cu_.mir_graph
[all...]
H A Dpost_opt_passes.cc31 c_unit->mir_graph->InitializeMethodUses();
46 c_unit->mir_graph->CountUses(bb);
82 MIRGraph *mir_graph = c_unit->mir_graph.get(); local
85 AllNodesIterator first(mir_graph);
91 AllNodesIterator second(mir_graph);
99 ChildBlockIterator child_iter(bb, mir_graph);
H A Dmir_optimization_test.cc79 cu_.mir_graph->sfield_lowering_infos_.Reset();
80 cu_.mir_graph->sfield_lowering_infos_.Resize(count);
92 cu_.mir_graph->sfield_lowering_infos_.Insert(field_info);
102 cu_.mir_graph->block_id_map_.clear();
103 cu_.mir_graph->block_list_.Reset();
110 BasicBlock* bb = cu_.mir_graph->NewMemBB(def->type, i);
111 cu_.mir_graph->block_list_.Insert(bb);
143 cu_.mir_graph->num_blocks_ = count;
144 ASSERT_EQ(count, cu_.mir_graph->block_list_.Size());
145 cu_.mir_graph
[all...]
H A Dcompiler_ir.h84 // TODO: move memory management to mir_graph, or just switch to using standard containers.
88 std::unique_ptr<MIRGraph> mir_graph; // MIR container. member in struct:art::CompilationUnit
H A Dpass_driver_me_opts.cc85 c_unit->mir_graph.get()->CalculateBasicBlockInformation();
H A Dfrontend.cc504 mir_graph(nullptr),
557 // This is a limitation in mir_graph. See MirGraph::SetNumSSARegs.
579 for (unsigned int idx = 0; idx < cu.mir_graph->GetNumBlocks(); idx++) {
580 BasicBlock* bb = cu.mir_graph->GetBasicBlock(idx);
705 cu.mir_graph.reset(new MIRGraph(&cu, &cu.arena));
716 cu.mir_graph->EnableOpcodeCounting();
720 cu.mir_graph->InlineMethod(code_item, access_flags, invoke_type, class_def_idx, method_idx,
731 if (cu.mir_graph->SkipCompilation(&skip_message)) {
743 && !cu.mir_graph->MethodIsLeaf()
744 && cu.mir_graph
[all...]
H A Dpass_driver_me.h136 c_unit->mir_graph->DumpCFG(prefix.c_str(), false);
175 Iterator iterator(c_unit->mir_graph.get());
H A Dmir_graph.cc17 #include "mir_graph.h"
1198 MIR* BasicBlock::GetNextUnconditionalMir(MIRGraph* mir_graph, MIR* current) { argument
1208 next_mir = mir_graph->GetBasicBlock(fall_through)->first_mir_insn;
1540 MIRGraph* mir_graph, const ArenaBitVector* current_loop,
1549 ArenaBitVector candidate_reachable(allocator, mir_graph->GetNumBlocks(), false, kBitMapMisc);
1550 AllNodesIterator iter(mir_graph);
1566 BasicBlock* current_bb = mir_graph->GetBasicBlock(current_id);
1568 ChildBlockIterator child_iter(current_bb, mir_graph);
1593 static void ComputeUnvisitedReachableFrom(MIRGraph* mir_graph, BasicBlockId bb_id, argument
1603 BasicBlock* current_bb = mir_graph
1539 SelectTopologicalSortOrderFallBack( MIRGraph* mir_graph, const ArenaBitVector* current_loop, const ScopedArenaVector<size_t>* visited_cnt_values, ScopedArenaAllocator* allocator, ScopedArenaVector<BasicBlockId>* tmp_stack) argument
1808 ChildBlockIterator(BasicBlock* bb, MIRGraph* mir_graph) argument
1862 MIRGraph* mir_graph = c_unit->mir_graph.get(); local
1866 Copy(MIRGraph* mir_graph) argument
1909 Copy(MIRGraph* mir_graph) argument
2047 MIRGraph* mir_graph = c_unit->mir_graph.get(); local
[all...]
H A Dglobal_value_numbering_test.cc132 cu_.mir_graph->ifield_lowering_infos_.Reset();
133 cu_.mir_graph->ifield_lowering_infos_.Resize(count);
143 cu_.mir_graph->ifield_lowering_infos_.Insert(field_info);
153 cu_.mir_graph->sfield_lowering_infos_.Reset();
154 cu_.mir_graph->sfield_lowering_infos_.Resize(count);
166 cu_.mir_graph->sfield_lowering_infos_.Insert(field_info);
176 cu_.mir_graph->block_id_map_.clear();
177 cu_.mir_graph->block_list_.Reset();
184 BasicBlock* bb = cu_.mir_graph->NewMemBB(def->type, i);
185 cu_.mir_graph
[all...]
H A Dlocal_value_numbering_test.cc89 cu_.mir_graph->ifield_lowering_infos_.Reset();
90 cu_.mir_graph->ifield_lowering_infos_.Resize(count);
100 cu_.mir_graph->ifield_lowering_infos_.Insert(field_info);
110 cu_.mir_graph->sfield_lowering_infos_.Reset();
111 cu_.mir_graph->sfield_lowering_infos_.Resize(count);
123 cu_.mir_graph->sfield_lowering_infos_.Insert(field_info);
143 ASSERT_LT(def->field_info, cu_.mir_graph->ifield_lowering_infos_.Size());
146 ASSERT_LT(def->field_info, cu_.mir_graph->sfield_lowering_infos_.Size());
173 CHECK_LT(sfield_index, cu_.mir_graph->sfield_lowering_infos_.Size());
174 cu_.mir_graph
[all...]
H A Dglobal_value_numbering.cc25 mir_graph_(cu->mir_graph.get()),
H A Dmir_graph.h433 BasicBlock* Copy(MIRGraph* mir_graph);
467 * @param mir_graph the MIRGraph.
471 MIR* GetNextUnconditionalMir(MIRGraph* mir_graph, MIR* current);
499 * @param mir_graph The MIRGraph used to get the basic block during iteration.
501 ChildBlockIterator(BasicBlock* bb, MIRGraph* mir_graph);
/art/compiler/
H A Dcompilers.cc19 #include "dex/mir_graph.h"
105 mir_to_lir = ArmCodeGenerator(cu, cu->mir_graph.get(), &cu->arena);
108 mir_to_lir = Arm64CodeGenerator(cu, cu->mir_graph.get(), &cu->arena);
111 mir_to_lir = MipsCodeGenerator(cu, cu->mir_graph.get(), &cu->arena);
116 mir_to_lir = X86CodeGenerator(cu, cu->mir_graph.get(), &cu->arena);
125 bool set_max = cu->mir_graph->SetMaxAvailableNonSpecialCompilerTemps(max_temps);
H A Dcompiler.cc150 cu, cu->mir_graph.get(), &cu->arena,
/art/compiler/dex/quick/
H A Ddex_file_method_inliner.cc27 #include "dex/mir_graph.h"
102 MIR* AllocReplacementMIR(MIRGraph* mir_graph, MIR* invoke, MIR* move_return) { argument
103 MIR* insn = mir_graph->NewMIR();
529 bool DexFileMethodInliner::GenInline(MIRGraph* mir_graph, BasicBlock* bb, MIR* invoke, argument
547 move_result = mir_graph->FindMoveResult(bb, invoke);
548 result = GenInlineConst(mir_graph, bb, invoke, move_result, method);
551 move_result = mir_graph->FindMoveResult(bb, invoke);
552 result = GenInlineReturnArg(mir_graph, bb, invoke, move_result, method);
555 move_result = mir_graph->FindMoveResult(bb, invoke);
556 result = GenInlineIGet(mir_graph, b
711 GenInlineConst(MIRGraph* mir_graph, BasicBlock* bb, MIR* invoke, MIR* move_result, const InlineMethod& method) argument
732 GenInlineReturnArg(MIRGraph* mir_graph, BasicBlock* bb, MIR* invoke, MIR* move_result, const InlineMethod& method) argument
770 GenInlineIGet(MIRGraph* mir_graph, BasicBlock* bb, MIR* invoke, MIR* move_result, const InlineMethod& method, uint32_t method_idx) argument
822 GenInlineIPut(MIRGraph* mir_graph, BasicBlock* bb, MIR* invoke, MIR* move_result, const InlineMethod& method, uint32_t method_idx) argument
[all...]
H A Ddex_file_method_inliner.h90 bool GenInline(MIRGraph* mir_graph, BasicBlock* bb, MIR* invoke, uint32_t method_idx)
313 static bool GenInlineConst(MIRGraph* mir_graph, BasicBlock* bb, MIR* invoke,
315 static bool GenInlineReturnArg(MIRGraph* mir_graph, BasicBlock* bb, MIR* invoke,
317 static bool GenInlineIGet(MIRGraph* mir_graph, BasicBlock* bb, MIR* invoke,
319 static bool GenInlineIPut(MIRGraph* mir_graph, BasicBlock* bb, MIR* invoke,
H A Dmir_to_lir.h191 Mir2Lir* ArmCodeGenerator(CompilationUnit* const cu, MIRGraph* const mir_graph,
193 Mir2Lir* Arm64CodeGenerator(CompilationUnit* const cu, MIRGraph* const mir_graph,
195 Mir2Lir* MipsCodeGenerator(CompilationUnit* const cu, MIRGraph* const mir_graph,
197 Mir2Lir* X86CodeGenerator(CompilationUnit* const cu, MIRGraph* const mir_graph,
1461 Mir2Lir(CompilationUnit* cu, MIRGraph* mir_graph, ArenaAllocator* arena);
/art/compiler/dex/portable/
H A Dmir_to_gbc.h46 Backend* PortableCodeGenerator(CompilationUnit* const cu, MIRGraph* const mir_graph,
53 MirConverter(CompilationUnit* cu, MIRGraph* mir_graph, ArenaAllocator* arena, argument
57 mir_graph_(mir_graph),
69 llvm_values_(arena, mir_graph->GetNumSSARegs()),
/art/compiler/dex/quick/mips/
H A Dtarget_mips.cc574 MipsMir2Lir::MipsMir2Lir(CompilationUnit* cu, MIRGraph* mir_graph, ArenaAllocator* arena) argument
575 : Mir2Lir(cu, mir_graph, arena) {
585 Mir2Lir* MipsCodeGenerator(CompilationUnit* const cu, MIRGraph* const mir_graph, argument
587 return new MipsMir2Lir(cu, mir_graph, arena);
/art/compiler/dex/quick/arm/
H A Dtarget_arm.cc552 ArmMir2Lir::ArmMir2Lir(CompilationUnit* cu, MIRGraph* mir_graph, ArenaAllocator* arena) argument
553 : Mir2Lir(cu, mir_graph, arena) {
564 Mir2Lir* ArmCodeGenerator(CompilationUnit* const cu, MIRGraph* const mir_graph, argument
566 return new ArmMir2Lir(cu, mir_graph, arena);
/art/compiler/dex/quick/arm64/
H A Dtarget_arm64.cc580 Arm64Mir2Lir::Arm64Mir2Lir(CompilationUnit* cu, MIRGraph* mir_graph, ArenaAllocator* arena) argument
581 : Mir2Lir(cu, mir_graph, arena) {
592 Mir2Lir* Arm64CodeGenerator(CompilationUnit* const cu, MIRGraph* const mir_graph, argument
594 return new Arm64Mir2Lir(cu, mir_graph, arena);

Completed in 248 milliseconds

12