diff options
author | 2015-09-29 19:01:15 +0100 | |
---|---|---|
committer | 2015-09-29 19:46:03 +0100 | |
commit | 5233f93ee336b3581ccdb993ff6342c52fec34b0 (patch) | |
tree | 225dc0ab491263ef56362a8d0fe2926266bd5047 /compiler/optimizing/induction_var_analysis.cc | |
parent | de8a3f4dce1e9ff0e3be16956b06bafc8cd4f397 (diff) |
Optimizing: Tag even more arena allocations.
Tag previously "Misc" arena allocations with more specific
allocation types. Move some native heap allocations to the
arena in BCE.
Bug: 23736311
Change-Id: If8ef15a8b614dc3314bdfb35caa23862c9d4d25c
Diffstat (limited to 'compiler/optimizing/induction_var_analysis.cc')
-rw-r--r-- | compiler/optimizing/induction_var_analysis.cc | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/compiler/optimizing/induction_var_analysis.cc b/compiler/optimizing/induction_var_analysis.cc index 9fb4304450..52c729d5f5 100644 --- a/compiler/optimizing/induction_var_analysis.cc +++ b/compiler/optimizing/induction_var_analysis.cc @@ -74,11 +74,14 @@ static void RotateEntryPhiFirst(HLoopInformation* loop, HInductionVarAnalysis::HInductionVarAnalysis(HGraph* graph) : HOptimization(graph, kInductionPassName), global_depth_(0), - stack_(graph->GetArena()->Adapter()), - scc_(graph->GetArena()->Adapter()), - map_(std::less<HInstruction*>(), graph->GetArena()->Adapter()), - cycle_(std::less<HInstruction*>(), graph->GetArena()->Adapter()), - induction_(std::less<HLoopInformation*>(), graph->GetArena()->Adapter()) { + stack_(graph->GetArena()->Adapter(kArenaAllocInductionVarAnalysis)), + scc_(graph->GetArena()->Adapter(kArenaAllocInductionVarAnalysis)), + map_(std::less<HInstruction*>(), + graph->GetArena()->Adapter(kArenaAllocInductionVarAnalysis)), + cycle_(std::less<HInstruction*>(), + graph->GetArena()->Adapter(kArenaAllocInductionVarAnalysis)), + induction_(std::less<HLoopInformation*>(), + graph->GetArena()->Adapter(kArenaAllocInductionVarAnalysis)) { } void HInductionVarAnalysis::Run() { @@ -228,7 +231,7 @@ void HInductionVarAnalysis::ClassifyNonTrivial(HLoopInformation* loop) { // Rotate proper entry-phi to front. if (size > 1) { - ArenaVector<HInstruction*> other(graph_->GetArena()->Adapter()); + ArenaVector<HInstruction*> other(graph_->GetArena()->Adapter(kArenaAllocInductionVarAnalysis)); RotateEntryPhiFirst(loop, &scc_, &other); } @@ -637,7 +640,8 @@ void HInductionVarAnalysis::AssignInfo(HLoopInformation* loop, if (it == induction_.end()) { it = induction_.Put(loop, ArenaSafeMap<HInstruction*, InductionInfo*>( - std::less<HInstruction*>(), graph_->GetArena()->Adapter())); + std::less<HInstruction*>(), + graph_->GetArena()->Adapter(kArenaAllocInductionVarAnalysis))); } it->second.Put(instruction, info); } |