/art/compiler/optimizing/ |
H A D | block_builder.cc | 23 HBasicBlock* HBasicBlockBuilder::MaybeCreateBlockAt(uint32_t dex_pc) { 27 HBasicBlock* HBasicBlockBuilder::MaybeCreateBlockAt(uint32_t semantic_dex_pc, 29 HBasicBlock* block = branch_targets_[store_dex_pc]; 31 block = new (arena_) HBasicBlock(graph_, semantic_dex_pc); 121 HBasicBlock* block = graph_->GetEntryBlock(); 129 HBasicBlock* next_block = GetBlockAt(dex_pc); 167 HBasicBlock* next_case_block = GetBlockAt(next_case_dex_pc); 192 HBasicBlock* block, 205 const ArenaSafeMap<uint32_t, HBasicBlock*>& catch_blocks) { 211 bool HBasicBlockBuilder::MightHaveLiveNormalPredecessors(HBasicBlock* catch_bloc [all...] |
H A D | block_builder.h | 49 HBasicBlock* GetBlockAt(uint32_t dex_pc) const { return branch_targets_[dex_pc]; } 53 HBasicBlock* MaybeCreateBlockAt(uint32_t dex_pc); 58 HBasicBlock* MaybeCreateBlockAt(uint32_t semantic_dex_pc, uint32_t store_dex_pc); 69 bool MightHaveLiveNormalPredecessors(HBasicBlock* catch_block); 77 ArenaVector<HBasicBlock*> branch_targets_; 78 ArenaVector<HBasicBlock*> throwing_blocks_;
|
H A D | bounds_check_elimination.cc | 400 HBasicBlock* GetLoopHeader() const { 520 bool IsAddedBlock(HBasicBlock* block) const { 551 void VisitBasicBlock(HBasicBlock* block) OVERRIDE { 584 ArenaSafeMap<int, ValueRange*>* GetValueRangeMap(HBasicBlock* basic_block) { 593 ValueRange* LookupValueRange(HInstruction* instruction, HBasicBlock* basic_block) { 610 void AssignRange(HBasicBlock* basic_block, HInstruction* instruction, ValueRange* range) { 616 void ApplyRangeFromComparison(HInstruction* instruction, HBasicBlock* basic_block, 617 HBasicBlock* successor, ValueRange* range) { 658 HBasicBlock* successor = nullptr; 705 HBasicBlock* bloc [all...] |
H A D | bounds_check_elimination_test.cc | 69 HBasicBlock* entry = new (&allocator_) HBasicBlock(graph_); 82 HBasicBlock* block1 = new (&allocator_) HBasicBlock(graph_); 90 HBasicBlock* block2 = new (&allocator_) HBasicBlock(graph_); 103 HBasicBlock* block3 = new (&allocator_) HBasicBlock(graph_); 114 HBasicBlock* block4 = new (&allocator_) HBasicBlock(graph [all...] |
H A D | code_generator.cc | 142 bool CodeGenerator::GoesToNextBlock(HBasicBlock* current, HBasicBlock* next) const { 147 HBasicBlock* CodeGenerator::GetNextBlockToEmit() const { 149 HBasicBlock* block = (*block_order_)[i]; 157 HBasicBlock* CodeGenerator::FirstNonEmptyBlock(HBasicBlock* block) const { 223 HBasicBlock* block = (*block_order_)[current_block_index_]; 275 const ArenaVector<HBasicBlock*>& block_order) { 835 for (HBasicBlock* block : *block_order_) { 1122 HBasicBlock* bloc [all...] |
H A D | code_generator.h | 183 HBasicBlock* GetNextBlockToEmit() const; 184 HBasicBlock* FirstNonEmptyBlock(HBasicBlock* block) const; 185 bool GoesToNextBlock(HBasicBlock* current, HBasicBlock* next) const; 199 virtual void Bind(HBasicBlock* block) = 0; 208 virtual uintptr_t GetAddressOf(HBasicBlock* block) = 0; 213 const ArenaVector<HBasicBlock*>& block_order); 573 LabelType* CommonGetLabelOf(LabelType* raw_pointer_to_labels_array, HBasicBlock* block) const { 606 const ArenaVector<HBasicBlock*>* block_order [all...] |
H A D | code_generator_arm.cc | 115 SuspendCheckSlowPathARM(HSuspendCheck* instruction, HBasicBlock* successor) 138 HBasicBlock* GetSuccessor() const { 146 HBasicBlock* const successor_; 952 void CodeGeneratorARM::Bind(HBasicBlock* block) { 1209 void InstructionCodeGeneratorARM::HandleGoto(HInstruction* got, HBasicBlock* successor) { 1212 HBasicBlock* block = got->GetBlock(); 1243 HBasicBlock* successor = try_boundary->GetNormalFlowSuccessor(); 1473 HBasicBlock* true_successor = if_instr->IfTrueSuccessor(); 1474 HBasicBlock* false_successor = if_instr->IfFalseSuccessor(); 4809 HBasicBlock* bloc [all...] |
H A D | code_generator_arm.h | 216 void GenerateSuspendCheck(HSuspendCheck* check, HBasicBlock* successor); 289 void HandleGoto(HInstruction* got, HBasicBlock* successor); 307 void Bind(HBasicBlock* block) OVERRIDE; 342 uintptr_t GetAddressOf(HBasicBlock* block) OVERRIDE { 383 Label* GetLabelOf(HBasicBlock* block) const {
|
H A D | code_generator_arm64.cc | 392 SuspendCheckSlowPathARM64(HSuspendCheck* instruction, HBasicBlock* successor) 415 HBasicBlock* GetSuccessor() const { 423 HBasicBlock* const successor_; 564 const ArenaVector<HBasicBlock*>& successors = switch_instr_->GetBlock()->GetSuccessors(); 1059 void CodeGeneratorARM64::Bind(HBasicBlock* block) { 1514 HBasicBlock* successor) { 2768 void InstructionCodeGeneratorARM64::HandleGoto(HInstruction* got, HBasicBlock* successor) { 2770 HBasicBlock* block = got->GetBlock(); 2800 HBasicBlock* successor = try_boundary->GetNormalFlowSuccessor(); 2927 HBasicBlock* true_successo [all...] |
H A D | code_generator_arm64.h | 214 void GenerateSuspendCheck(HSuspendCheck* instruction, HBasicBlock* successor); 274 void HandleGoto(HInstruction* got, HBasicBlock* successor); 353 void Bind(HBasicBlock* block) OVERRIDE; 355 vixl::Label* GetLabelOf(HBasicBlock* block) { 369 uintptr_t GetAddressOf(HBasicBlock* block) OVERRIDE {
|
H A D | code_generator_mips.cc | 339 SuspendCheckSlowPathMIPS(HSuspendCheck* instruction, HBasicBlock* successor) 369 HBasicBlock* const successor_; 803 void CodeGeneratorMIPS::Bind(HBasicBlock* block) { 1111 HBasicBlock* successor) { 2584 void InstructionCodeGeneratorMIPS::HandleGoto(HInstruction* got, HBasicBlock* successor) { 2586 HBasicBlock* block = got->GetBlock(); 2612 HBasicBlock* successor = try_boundary->GetNormalFlowSuccessor(); 3323 HBasicBlock* true_successor = if_instr->IfTrueSuccessor(); 3324 HBasicBlock* false_successor = if_instr->IfFalseSuccessor(); 4677 HBasicBlock* bloc [all...] |
H A D | code_generator_mips.h | 223 void GenerateSuspendCheck(HSuspendCheck* check, HBasicBlock* successor); 249 void HandleGoto(HInstruction* got, HBasicBlock* successor); 268 void Bind(HBasicBlock* block) OVERRIDE; 278 uintptr_t GetAddressOf(HBasicBlock* block) OVERRIDE { 310 MipsLabel* GetLabelOf(HBasicBlock* block) const {
|
H A D | code_generator_mips64.cc | 292 SuspendCheckSlowPathMIPS64(HSuspendCheck* instruction, HBasicBlock* successor) 321 HBasicBlock* const successor_; 627 void CodeGeneratorMIPS64::Bind(HBasicBlock* block) { 993 HBasicBlock* successor) { 2203 void InstructionCodeGeneratorMIPS64::HandleGoto(HInstruction* got, HBasicBlock* successor) { 2205 HBasicBlock* block = got->GetBlock(); 2235 HBasicBlock* successor = try_boundary->GetNormalFlowSuccessor(); 2648 HBasicBlock* true_successor = if_instr->IfTrueSuccessor(); 2649 HBasicBlock* false_successor = if_instr->IfFalseSuccessor(); 3808 HBasicBlock* bloc [all...] |
H A D | code_generator_mips64.h | 223 void GenerateSuspendCheck(HSuspendCheck* check, HBasicBlock* successor); 249 void HandleGoto(HInstruction* got, HBasicBlock* successor); 268 void Bind(HBasicBlock* block) OVERRIDE; 274 uintptr_t GetAddressOf(HBasicBlock* block) OVERRIDE { 303 Mips64Label* GetLabelOf(HBasicBlock* block) const {
|
H A D | code_generator_x86.cc | 167 SuspendCheckSlowPathX86(HSuspendCheck* instruction, HBasicBlock* successor) 192 HBasicBlock* GetSuccessor() const { 199 HBasicBlock* const successor_; 894 void CodeGeneratorX86::Bind(HBasicBlock* block) { 1125 void InstructionCodeGeneratorX86::HandleGoto(HInstruction* got, HBasicBlock* successor) { 1128 HBasicBlock* block = got->GetBlock(); 1158 HBasicBlock* successor = try_boundary->GetNormalFlowSuccessor(); 1464 HBasicBlock* true_successor = if_instr->IfTrueSuccessor(); 1465 HBasicBlock* false_successor = if_instr->IfFalseSuccessor(); 5573 HBasicBlock* bloc [all...] |
H A D | code_generator_x86.h | 209 void GenerateSuspendCheck(HSuspendCheck* check, HBasicBlock* successor); 290 void HandleGoto(HInstruction* got, HBasicBlock* successor); 294 HBasicBlock* switch_block, 295 HBasicBlock* default_block); 318 void Bind(HBasicBlock* block) OVERRIDE; 364 uintptr_t GetAddressOf(HBasicBlock* block) OVERRIDE { 423 Label* GetLabelOf(HBasicBlock* block) const {
|
H A D | code_generator_x86_64.cc | 145 SuspendCheckSlowPathX86_64(HSuspendCheck* instruction, HBasicBlock* successor) 170 HBasicBlock* GetSuccessor() const { 177 HBasicBlock* const successor_; 1119 void CodeGeneratorX86_64::Bind(HBasicBlock* block) { 1226 void InstructionCodeGeneratorX86_64::HandleGoto(HInstruction* got, HBasicBlock* successor) { 1229 HBasicBlock* block = got->GetBlock(); 1259 HBasicBlock* successor = try_boundary->GetNormalFlowSuccessor(); 1507 HBasicBlock* true_successor = if_instr->IfTrueSuccessor(); 1508 HBasicBlock* false_successor = if_instr->IfFalseSuccessor(); 5068 HBasicBlock* bloc [all...] |
H A D | code_generator_x86_64.h | 210 void GenerateSuspendCheck(HSuspendCheck* instruction, HBasicBlock* successor); 279 void HandleGoto(HInstruction* got, HBasicBlock* successor); 300 void Bind(HBasicBlock* block) OVERRIDE; 349 uintptr_t GetAddressOf(HBasicBlock* block) OVERRIDE { 374 Label* GetLabelOf(HBasicBlock* block) const {
|
H A D | codegen_test.cc | 637 HBasicBlock* entry = new (&allocator) HBasicBlock(graph); 642 HBasicBlock* first_block = new (&allocator) HBasicBlock(graph); 651 HBasicBlock* then_block = new (&allocator) HBasicBlock(graph); 652 HBasicBlock* else_block = new (&allocator) HBasicBlock(graph); 653 HBasicBlock* exit_block = new (&allocator) HBasicBlock(grap [all...] |
H A D | common_dominator.h | 30 static HBasicBlock* ForPair(HBasicBlock* block1, HBasicBlock* block2) { 37 explicit CommonDominator(HBasicBlock* block) 43 void Update(HBasicBlock* block) { 45 HBasicBlock* block2 = dominator_; 73 HBasicBlock* Get() const { 78 static size_t ChainLength(HBasicBlock* block) { 87 HBasicBlock* dominator_;
|
H A D | constant_folding.cc | 29 void VisitBasicBlock(HBasicBlock* block) OVERRIDE; 78 void HConstantFoldingVisitor::VisitBasicBlock(HBasicBlock* block) { 264 HBasicBlock* block = instruction->GetBlock(); 308 HBasicBlock* block = instruction->GetBlock(); 337 HBasicBlock* block = instruction->GetBlock();
|
H A D | constant_folding_test.cc | 746 HBasicBlock* entry_block = new (&allocator_) HBasicBlock(graph_); 749 HBasicBlock* block = new (&allocator_) HBasicBlock(graph_); 751 HBasicBlock* exit_block = new (&allocator_) HBasicBlock(graph_);
|
H A D | dead_code_elimination.cc | 26 ArenaVector<HBasicBlock*> worklist(graph->GetArena()->Adapter(kArenaAllocDCE)); 33 HBasicBlock* block = worklist.back(); 38 ArrayRef<HBasicBlock* const> live_successors(block->GetSuccessors()); 74 for (HBasicBlock* successor : live_successors) { 84 void HDeadCodeElimination::MaybeRecordDeadBlock(HBasicBlock* block) { 110 HBasicBlock* block = it.Current(); 138 HBasicBlock* block = it.Current(); 143 HBasicBlock* successor = block->GetSingleSuccessor(); 158 HBasicBlock* block = b.Current();
|
H A D | dead_code_elimination.h | 43 void MaybeRecordDeadBlock(HBasicBlock* block);
|
H A D | dex_cache_array_fixups_arm.cc | 89 HBasicBlock* entry_block = GetGraph()->GetEntryBlock();
|