Searched defs:successor (Results 1 - 13 of 13) sorted by relevance

/art/compiler/optimizing/
H A Ddead_code_elimination.cc105 HBasicBlock* successor = block->GetSuccessors().Get(0); local
106 if (successor->IsExitBlock() || successor->GetPredecessors().Size() != 1u) {
110 block->MergeWith(successor);
112 // Reiterate on this block in case it can be merged with its new successor.
H A Dgraph_checker.cc288 HBasicBlock* successor = block->GetSuccessors().Get(j); local
289 if (successor->GetPredecessors().Size() > 1) {
292 successor->GetBlockId()));
H A Dgraph_visualizer.cc122 HBasicBlock* successor = block->GetSuccessors().Get(i); local
123 output_ << " \"B" << successor->GetBlockId() << "\" ";
H A Dssa_liveness_analysis.cc85 // successor block are visited, the successor block is added in the worklist
93 HBasicBlock* successor = current->GetSuccessors().Get(i); local
94 int block_id = successor->GetBlockId();
97 AddToListForLinearization(&worklist, successor);
189 HBasicBlock* successor = block->GetSuccessors().Get(i); local
190 live_in->Union(GetLiveInSet(*successor));
191 size_t phi_input_index = successor->GetPredecessorIndexOf(block);
192 for (HInstructionIterator inst_it(successor->GetPhis()); !inst_it.Done(); inst_it.Advance()) {
300 HBasicBlock* successor local
[all...]
H A Dnodes.cc69 // We only need to update the successor, which might be live.
89 HBasicBlock* successor = block->GetSuccessors().Get(i); local
90 if (visiting->IsBitSet(successor->GetBlockId())) {
91 successor->AddBackEdge(block);
93 VisitBlockForBackEdges(successor, visited, visiting);
191 void HGraph::SplitCriticalEdge(HBasicBlock* block, HBasicBlock* successor) { argument
192 // Insert a new node between `block` and `successor` to split the
194 HBasicBlock* new_block = new (arena_) HBasicBlock(this, successor->GetDexPc());
197 // Use `InsertBetween` to ensure the predecessor index and successor index of
198 // `block` and `successor` ar
267 HBasicBlock* successor = block->GetSuccessors().Get(j); local
940 HBasicBlock* successor = GetSuccessors().Get(i); local
1057 HBasicBlock* successor = successors_.Get(i); local
1121 HBasicBlock* successor = other->successors_.Get(0); local
1160 HBasicBlock* successor = other->successors_.Get(0); local
1181 HBasicBlock* successor = GetSuccessors().Get(0); local
[all...]
H A Dbounds_check_elimination.cc800 HBasicBlock* dummy_block = if_block->GetSuccessors().Get(0); // True successor.
801 HBasicBlock* deopt_block = if_block->GetSuccessors().Get(1); // False successor.
1164 // and push the narrowed value range to `successor`.
1166 HBasicBlock* successor, ValueRange* range) {
1170 GetValueRangeMap(successor)->Overwrite(instruction->GetId(), range);
1183 GetValueRangeMap(successor)->Overwrite(instruction->GetId(), narrowed_range);
1208 HBasicBlock* successor = nullptr; local
1214 successor = instruction->IfTrueSuccessor();
1216 successor = instruction->IfTrueSuccessor();
1218 successor
1165 ApplyRangeFromComparison(HInstruction* instruction, HBasicBlock* basic_block, HBasicBlock* successor, ValueRange* range) argument
[all...]
H A Dcode_generator_arm.cc93 SuspendCheckSlowPathARM(HSuspendCheck* instruction, HBasicBlock* successor) argument
94 : instruction_(instruction), successor_(successor) {}
907 HBasicBlock* successor = got->GetSuccessor(); local
908 DCHECK(!successor->IsExitBlock());
916 GenerateSuspendCheck(info->GetSuspendCheck(), successor);
923 if (!codegen_->GoesToNextBlock(got->GetBlock(), successor)) {
924 __ b(codegen_->GetLabelOf(successor));
3541 HBasicBlock* successor) {
3545 slow_path = new (GetGraph()->GetArena()) SuspendCheckSlowPathARM(instruction, successor);
3548 if (successor !
3540 GenerateSuspendCheck(HSuspendCheck* instruction, HBasicBlock* successor) argument
[all...]
H A Dcode_generator_arm64.cc264 HBasicBlock* successor)
265 : instruction_(instruction), successor_(successor) {}
1038 HBasicBlock* successor) {
1042 slow_path = new (GetGraph()->GetArena()) SuspendCheckSlowPathARM64(instruction, successor);
1045 if (successor != nullptr) {
1046 DCHECK(successor->IsLoopHeader());
1050 DCHECK_EQ(slow_path->GetSuccessor(), successor);
1057 if (successor == nullptr) {
1061 __ Cbz(temp, codegen_->GetLabelOf(successor));
1063 // slow_path will return to GetLabelOf(successor)
263 SuspendCheckSlowPathARM64(HSuspendCheck* instruction, HBasicBlock* successor) argument
1037 GenerateSuspendCheck(HSuspendCheck* instruction, HBasicBlock* successor) argument
1718 HBasicBlock* successor = got->GetSuccessor(); local
[all...]
H A Dcode_generator_mips64.cc278 HBasicBlock* successor)
279 : instruction_(instruction), successor_(successor) {}
984 HBasicBlock* successor) {
986 new (GetGraph()->GetArena()) SuspendCheckSlowPathMIPS64(instruction, successor);
993 if (successor == nullptr) {
997 __ Beqzc(TMP, codegen_->GetLabelOf(successor));
999 // slow_path will return to GetLabelOf(successor).
1931 HBasicBlock* successor = got->GetSuccessor(); local
1932 DCHECK(!successor->IsExitBlock());
1939 GenerateSuspendCheck(info->GetSuspendCheck(), successor);
277 SuspendCheckSlowPathMIPS64(HSuspendCheck* instruction, HBasicBlock* successor) argument
983 GenerateSuspendCheck(HSuspendCheck* instruction, HBasicBlock* successor) argument
[all...]
H A Dcode_generator_x86.cc134 SuspendCheckSlowPathX86(HSuspendCheck* instruction, HBasicBlock* successor) argument
135 : instruction_(instruction), successor_(successor) {}
808 HBasicBlock* successor = got->GetSuccessor(); local
809 DCHECK(!successor->IsExitBlock());
816 GenerateSuspendCheck(info->GetSuspendCheck(), successor);
823 if (!codegen_->GoesToNextBlock(got->GetBlock(), successor)) {
824 __ jmp(codegen_->GetLabelOf(successor));
4002 HBasicBlock* successor) {
4006 slow_path = new (GetGraph()->GetArena()) SuspendCheckSlowPathX86(instruction, successor);
4009 if (successor !
4001 GenerateSuspendCheck(HSuspendCheck* instruction, HBasicBlock* successor) argument
[all...]
H A Dcode_generator_x86_64.cc117 explicit SuspendCheckSlowPathX86_64(HSuspendCheck* instruction, HBasicBlock* successor) argument
118 : instruction_(instruction), successor_(successor) {}
771 HBasicBlock* successor = got->GetSuccessor(); local
772 DCHECK(!successor->IsExitBlock());
779 GenerateSuspendCheck(info->GetSuspendCheck(), successor);
786 if (!codegen_->GoesToNextBlock(got->GetBlock(), successor)) {
787 __ jmp(codegen_->GetLabelOf(successor));
3869 HBasicBlock* successor) {
3873 slow_path = new (GetGraph()->GetArena()) SuspendCheckSlowPathX86_64(instruction, successor);
3876 if (successor !
3868 GenerateSuspendCheck(HSuspendCheck* instruction, HBasicBlock* successor) argument
[all...]
H A Dnodes.h195 void SplitCriticalEdge(HBasicBlock* block, HBasicBlock* successor);
587 // Insert `this` between `predecessor` and `successor. This method
589 // `predecessor` and `successor`.
590 void InsertBetween(HBasicBlock* predecessor, HBasicBlock* successor) { argument
591 size_t predecessor_index = successor->GetPredecessorIndexOf(predecessor);
593 size_t successor_index = predecessor->GetSuccessorIndexOf(successor);
595 successor->predecessors_.Put(predecessor_index, this);
597 successors_.Add(successor);
641 size_t GetSuccessorIndexOf(HBasicBlock* successor) { argument
643 if (successors_.Get(i) == successor) {
[all...]
/art/compiler/dex/
H A Dmir_graph.cc238 /* Handle the successor list */
1062 // Link the successor pseudo-block with all of its potential targets.
2070 BasicBlock* successor = succIter.Next(); local
2071 for ( ; successor != nullptr; successor = succIter.Next()) {
2072 if (successor->hidden) {
2077 visited_cnt_values[successor->id] += 1u;
2078 if (visited_cnt_values[successor->id] == successor->predecessors.size()) {
2080 loop_head_reachable_from[loop_head_stack.back()]->IsBitSet(successor
[all...]

Completed in 2638 milliseconds