Home
last modified time | relevance | path

Searched refs:HBasicBlock (Results 1 – 25 of 57) sorted by relevance

123

/art/compiler/optimizing/
Dgraph_test.cc28 static HBasicBlock* createIfBlock(HGraph* graph, ArenaAllocator* allocator) { in createIfBlock()
29 HBasicBlock* if_block = new (allocator) HBasicBlock(graph); in createIfBlock()
39 static HBasicBlock* createGotoBlock(HGraph* graph, ArenaAllocator* allocator) { in createGotoBlock()
40 HBasicBlock* block = new (allocator) HBasicBlock(graph); in createGotoBlock()
47 static HBasicBlock* createEntryBlock(HGraph* graph, ArenaAllocator* allocator) { in createEntryBlock()
48 HBasicBlock* block = createGotoBlock(graph, allocator); in createEntryBlock()
53 static HBasicBlock* createReturnBlock(HGraph* graph, ArenaAllocator* allocator) { in createReturnBlock()
54 HBasicBlock* block = new (allocator) HBasicBlock(graph); in createReturnBlock()
61 static HBasicBlock* createExitBlock(HGraph* graph, ArenaAllocator* allocator) { in createExitBlock()
62 HBasicBlock* block = new (allocator) HBasicBlock(graph); in createExitBlock()
[all …]
Dgvn_test.cc33 HBasicBlock* entry = new (&allocator) HBasicBlock(graph); in TEST()
39 HBasicBlock* block = new (&allocator) HBasicBlock(graph); in TEST()
82 HBasicBlock* entry = new (&allocator) HBasicBlock(graph); in TEST()
88 HBasicBlock* block = new (&allocator) HBasicBlock(graph); in TEST()
96 HBasicBlock* then = new (&allocator) HBasicBlock(graph); in TEST()
97 HBasicBlock* else_ = new (&allocator) HBasicBlock(graph); in TEST()
98 HBasicBlock* join = new (&allocator) HBasicBlock(graph); in TEST()
137 HBasicBlock* entry = new (&allocator) HBasicBlock(graph); in TEST()
144 HBasicBlock* block = new (&allocator) HBasicBlock(graph); in TEST()
152 HBasicBlock* loop_header = new (&allocator) HBasicBlock(graph); in TEST()
[all …]
Dbounds_check_elimination_test.cc48 HBasicBlock* entry = new (&allocator) HBasicBlock(graph); in TEST()
61 HBasicBlock* block1 = new (&allocator) HBasicBlock(graph); in TEST()
69 HBasicBlock* block2 = new (&allocator) HBasicBlock(graph); in TEST()
82 HBasicBlock* block3 = new (&allocator) HBasicBlock(graph); in TEST()
93 HBasicBlock* block4 = new (&allocator) HBasicBlock(graph); in TEST()
106 HBasicBlock* block5 = new (&allocator) HBasicBlock(graph); in TEST()
119 HBasicBlock* exit = new (&allocator) HBasicBlock(graph); in TEST()
153 HBasicBlock* entry = new (&allocator) HBasicBlock(graph); in TEST()
167 HBasicBlock* block1 = new (&allocator) HBasicBlock(graph); in TEST()
175 HBasicBlock* block2 = new (&allocator) HBasicBlock(graph); in TEST()
[all …]
Dnodes.cc27 void HGraph::AddBlock(HBasicBlock* block) { in AddBlock()
56 HBasicBlock* block = blocks_.Get(i); in RemoveInstructionsAsUsersFromDeadBlocks()
68 HBasicBlock* block = blocks_.Get(i); in RemoveDeadBlocks()
80 void HGraph::VisitBlockForBackEdges(HBasicBlock* block, in VisitBlockForBackEdges()
89 HBasicBlock* successor = block->GetSuccessors().Get(i); in VisitBlockForBackEdges()
130 void HBasicBlock::ClearDominanceInformation() { in ClearDominanceInformation()
145 HBasicBlock* HGraph::FindCommonDominator(HBasicBlock* first, HBasicBlock* second) const { in FindCommonDominator()
163 void HGraph::VisitBlockForDominatorTree(HBasicBlock* block, in VisitBlockForDominatorTree()
164 HBasicBlock* predecessor, in VisitBlockForDominatorTree()
191 void HGraph::SplitCriticalEdge(HBasicBlock* block, HBasicBlock* successor) { in SplitCriticalEdge()
[all …]
Dnodes_test.cc34 HBasicBlock* entry = new (&allocator) HBasicBlock(graph); in TEST()
41 HBasicBlock* first_block = new (&allocator) HBasicBlock(graph); in TEST()
48 HBasicBlock* exit_block = new (&allocator) HBasicBlock(graph); in TEST()
76 HBasicBlock* entry = new (&allocator) HBasicBlock(graph); in TEST()
102 HBasicBlock* entry = new (&allocator) HBasicBlock(graph); in TEST()
122 HBasicBlock* entry = new (&allocator) HBasicBlock(graph); in TEST()
Dboolean_simplifier.cc21 void HBooleanSimplifier::TryRemovingNegatedCondition(HBasicBlock* block) { in TryRemovingNegatedCondition()
43 static bool BlocksDoMergeTogether(HBasicBlock* block1, HBasicBlock* block2) { in BlocksDoMergeTogether()
45 HBasicBlock* succ1 = block1->GetSuccessors().Get(0); in BlocksDoMergeTogether()
46 HBasicBlock* succ2 = block2->GetSuccessors().Get(0); in BlocksDoMergeTogether()
101 void HBooleanSimplifier::TryRemovingBooleanSelection(HBasicBlock* block) { in TryRemovingBooleanSelection()
106 HBasicBlock* true_block = if_instruction->IfTrueSuccessor(); in TryRemovingBooleanSelection()
107 HBasicBlock* false_block = if_instruction->IfFalseSuccessor(); in TryRemovingBooleanSelection()
111 HBasicBlock* merge_block = true_block->GetSuccessors().Get(0); in TryRemovingBooleanSelection()
156 HBasicBlock* block = it.Current(); in Run()
Dcodegen_test.cc528 HBasicBlock* entry = new (&allocator) HBasicBlock(graph); in TEST()
533 HBasicBlock* first_block = new (&allocator) HBasicBlock(graph); in TEST()
542 HBasicBlock* then = new (&allocator) HBasicBlock(graph); in TEST()
543 HBasicBlock* else_ = new (&allocator) HBasicBlock(graph); in TEST()
544 HBasicBlock* exit = new (&allocator) HBasicBlock(graph); in TEST()
564 HBasicBlock* block = graph_in->GetEntryBlock()->GetSuccessors().Get(0); in TEST()
648 HBasicBlock* entry_block = new (&allocator) HBasicBlock(graph); in TEST()
652 HBasicBlock* code_block = new (&allocator) HBasicBlock(graph); in TEST()
654 HBasicBlock* exit_block = new (&allocator) HBasicBlock(graph); in TEST()
670 HBasicBlock* block = graph_in->GetEntryBlock()->GetSuccessors().Get(0); in TEST()
[all …]
Ddead_code_elimination.cc23 static void MarkReachableBlocks(HBasicBlock* block, ArenaBitVector* visited) { in MarkReachableBlocks()
50 static void MarkLoopHeadersContaining(const HBasicBlock& block, ArenaBitVector* set) { in MarkLoopHeadersContaining()
56 void HDeadCodeElimination::MaybeRecordDeadBlock(HBasicBlock* block) { in MaybeRecordDeadBlock()
76 HBasicBlock* block = it.Current(); in RemoveDeadBlocks()
100 HBasicBlock* block = it.Current(); in RemoveDeadBlocks()
105 HBasicBlock* successor = block->GetSuccessors().Get(0); in RemoveDeadBlocks()
120 HBasicBlock* block = b.Current(); in RemoveDeadInstructions()
Dside_effects_analysis.cc29 HBasicBlock* block = it.Current(); in Run()
41 HBasicBlock* block = it.Current(); in Run()
59 HBasicBlock* pre_header = block->GetLoopInformation()->GetPreHeader(); in Run()
74 SideEffects SideEffectsAnalysis::GetLoopEffects(HBasicBlock* block) const { in GetLoopEffects()
79 SideEffects SideEffectsAnalysis::GetBlockEffects(HBasicBlock* block) const { in GetBlockEffects()
Dbounds_check_elimination.cc272 static bool EarlyExit(HBasicBlock* block, HLoopInformation* loop_info) { in EarlyExit()
278 const GrowableArray<HBasicBlock*>& successors = block->GetSuccessors(); in EarlyExit()
288 static bool DominatesAllBackEdges(HBasicBlock* block, HLoopInformation* loop_info) { in DominatesAllBackEdges()
290 HBasicBlock* back_edge = loop_info->GetBackEdges().Get(i); in DominatesAllBackEdges()
301 HBasicBlock* block = it_loop.Current(); in Run()
515 HBasicBlock* GetLoopHeader() const { in GetLoopHeader()
522 HBasicBlock* GetLoopHeaderSuccesorInLoop() { in GetLoopHeaderSuccesorInLoop()
523 HBasicBlock* header = GetLoopHeader(); in GetLoopHeaderSuccesorInLoop()
700 HBasicBlock* header = induction_variable_->GetBlock(); in NarrowWithDeoptimization()
702 HBasicBlock* pre_header = header->GetLoopInformation()->GetPreHeader(); in NarrowWithDeoptimization()
[all …]
Dssa_liveness_analysis.cc46 static void AddToListForLinearization(GrowableArray<HBasicBlock*>* worklist, HBasicBlock* block) { in AddToListForLinearization()
50 HBasicBlock* current = worklist->Get(insert_at - 1); in AddToListForLinearization()
75 HBasicBlock* block = it.Current(); in LinearizeGraph()
87 GrowableArray<HBasicBlock*> worklist(graph_->GetArena(), 1); in LinearizeGraph()
90 HBasicBlock* current = worklist.Pop(); in LinearizeGraph()
93 HBasicBlock* successor = current->GetSuccessors().Get(i); in LinearizeGraph()
117 HBasicBlock* block = it.Current(); in NumberInstructions()
160 HBasicBlock* block = it.Current(); in ComputeLiveness()
181 HBasicBlock* block = it.Current(); in ComputeLiveRanges()
189 HBasicBlock* successor = block->GetSuccessors().Get(i); in ComputeLiveRanges()
[all …]
Dregister_allocator_test.cc315 HBasicBlock* loop_header = graph->GetBlocks().Get(2); in TEST()
324 HBasicBlock* return_block = graph->GetBlocks().Get(3); in TEST()
467 HBasicBlock* entry = new (allocator) HBasicBlock(graph); in BuildIfElseWithPhi()
473 HBasicBlock* block = new (allocator) HBasicBlock(graph); in BuildIfElseWithPhi()
481 HBasicBlock* then = new (allocator) HBasicBlock(graph); in BuildIfElseWithPhi()
482 HBasicBlock* else_ = new (allocator) HBasicBlock(graph); in BuildIfElseWithPhi()
483 HBasicBlock* join = new (allocator) HBasicBlock(graph); in BuildIfElseWithPhi()
597 HBasicBlock* entry = new (allocator) HBasicBlock(graph); in BuildFieldReturn()
603 HBasicBlock* block = new (allocator) HBasicBlock(graph); in BuildFieldReturn()
613 HBasicBlock* exit = new (allocator) HBasicBlock(graph); in BuildFieldReturn()
[all …]
Dgraph_checker.cc28 void GraphChecker::VisitBasicBlock(HBasicBlock* block) { in VisitBasicBlock()
32 const GrowableArray<HBasicBlock*>& predecessors = block->GetPredecessors(); in VisitBasicBlock()
33 std::map<HBasicBlock*, size_t> predecessors_count; in VisitBasicBlock()
35 HBasicBlock* p = predecessors.Get(i); in VisitBasicBlock()
39 HBasicBlock* p = pc.first; in VisitBasicBlock()
41 const GrowableArray<HBasicBlock*>& p_successors = p->GetSuccessors(); in VisitBasicBlock()
58 const GrowableArray<HBasicBlock*>& successors = block->GetSuccessors(); in VisitBasicBlock()
59 std::map<HBasicBlock*, size_t> successors_count; in VisitBasicBlock()
61 HBasicBlock* s = successors.Get(i); in VisitBasicBlock()
65 HBasicBlock* s = sc.first; in VisitBasicBlock()
[all …]
Dssa_builder.h61 GrowableArray<HInstruction*>* GetLocalsFor(HBasicBlock* block) { in GetLocalsFor()
72 HInstruction* ValueOfLocal(HBasicBlock* block, size_t local);
74 void VisitBasicBlock(HBasicBlock* block);
101 GrowableArray<HBasicBlock*> loop_headers_;
Dnodes.h37 class HBasicBlock; variable
96 void SetBlockOfInstructions(HBasicBlock* block) const;
108 friend class HBasicBlock; variable
149 const GrowableArray<HBasicBlock*>& GetBlocks() const { return blocks_; } in GetBlocks()
150 HBasicBlock* GetBlock(size_t id) const { return blocks_.Get(id); } in GetBlock()
152 HBasicBlock* GetEntryBlock() const { return entry_block_; } in GetEntryBlock()
153 HBasicBlock* GetExitBlock() const { return exit_block_; } in GetExitBlock()
155 void SetEntryBlock(HBasicBlock* block) { entry_block_ = block; } in SetEntryBlock()
156 void SetExitBlock(HBasicBlock* block) { exit_block_ = block; } in SetExitBlock()
158 void AddBlock(HBasicBlock* block);
[all …]
Dpretty_printer.h71 void VisitBasicBlock(HBasicBlock* block) OVERRIDE { in VisitBasicBlock()
74 const GrowableArray<HBasicBlock*>& predecessors = block->GetPredecessors(); in VisitBasicBlock()
83 const GrowableArray<HBasicBlock*>& successors = block->GetSuccessors(); in VisitBasicBlock()
125 void VisitBasicBlock(HBasicBlock* block) OVERRIDE { in VisitBasicBlock()
140 HBasicBlock* current_block_;
Dgraph_checker.h40 void VisitBasicBlock(HBasicBlock* block) OVERRIDE;
80 HBasicBlock* current_block_ = nullptr;
111 void VisitBasicBlock(HBasicBlock* block) OVERRIDE;
113 void CheckLoop(HBasicBlock* loop_header);
Dgraph_checker_test.cc34 HBasicBlock* entry_block = new (allocator) HBasicBlock(graph); in CreateSimpleCFG()
38 HBasicBlock* exit_block = new (allocator) HBasicBlock(graph); in CreateSimpleCFG()
140 HBasicBlock* exit_block = graph->GetExitBlock(); in TEST()
Dreference_type_propagation.h51 void VisitBasicBlock(HBasicBlock* block);
56 void BoundTypeForIfNotNull(HBasicBlock* block);
57 void BoundTypeForIfInstanceOf(HBasicBlock* block);
Dboolean_simplifier.h73 void TryRemovingNegatedCondition(HBasicBlock* block);
74 void TryRemovingBooleanSelection(HBasicBlock* block);
Dregister_allocator.h28 class HBasicBlock; variable
110 void ConnectSplitSiblings(LiveInterval* interval, HBasicBlock* from, HBasicBlock* to) const;
113 void InsertParallelMoveAtExitOf(HBasicBlock* block,
117 void InsertParallelMoveAtEntryOf(HBasicBlock* block,
Dlicm.cc22 static bool IsPhiOf(HInstruction* instruction, HBasicBlock* block) { in IsPhiOf()
87 HBasicBlock* block = it.Current(); in Run()
95 HBasicBlock* pre_header = loop_info->GetPreHeader(); in Run()
98 HBasicBlock* inner = it_loop.Current(); in Run()
Dcode_generator.h141 HBasicBlock* GetNextBlockToEmit() const;
142 HBasicBlock* FirstNonEmptyBlock(HBasicBlock* block) const;
143 bool GoesToNextBlock(HBasicBlock* current, HBasicBlock* next) const;
156 virtual void Bind(HBasicBlock* block) = 0;
161 virtual uintptr_t GetAddressOf(HBasicBlock* block) const = 0;
166 const GrowableArray<HBasicBlock*>& block_order);
407 T* CommonGetLabelOf(T* raw_pointer_to_labels_array, HBasicBlock* block) const { in CommonGetLabelOf()
449 const GrowableArray<HBasicBlock*>* block_order_;
Dbuilder.h98 HBasicBlock* FindBlockStartingAt(int32_t index) const;
104 void PotentiallyAddSuspendCheck(HBasicBlock* target, uint32_t dex_pc);
242 GrowableArray<HBasicBlock*> branch_targets_;
246 HBasicBlock* entry_block_;
247 HBasicBlock* exit_block_;
248 HBasicBlock* current_block_;
Dside_effects_analysis.h33 SideEffects GetLoopEffects(HBasicBlock* block) const;
34 SideEffects GetBlockEffects(HBasicBlock* block) const;

123