diff options
author | Nicolas Geoffray <ngeoffray@google.com> | 2014-11-24 17:47:10 +0000 |
---|---|---|
committer | Nicolas Geoffray <ngeoffray@google.com> | 2014-11-24 18:05:48 +0000 |
commit | a8eed3acbc39c71ec22dc2943e71eaa07c6507dd (patch) | |
tree | 73f00c656e118c118c0b7dd8985df06624ca4666 /compiler/optimizing/ssa_liveness_analysis.h | |
parent | 4d3ed1a6f34bd31ed30faaca0433cf2a4b19bb7b (diff) | |
download | art-a8eed3acbc39c71ec22dc2943e71eaa07c6507dd.zip art-a8eed3acbc39c71ec22dc2943e71eaa07c6507dd.tar.gz art-a8eed3acbc39c71ec22dc2943e71eaa07c6507dd.tar.bz2 |
Revert "Revert "Fix the computation of linear ordering.""
PS2 fixes the obvious typos/wrong refactoring.
This reverts commit e50fa5887b1342b845826197d81950e26753fc9c.
Change-Id: I22f81d63a12cf01aafd61535abc2399d936d49c2
Diffstat (limited to 'compiler/optimizing/ssa_liveness_analysis.h')
-rw-r--r-- | compiler/optimizing/ssa_liveness_analysis.h | 41 |
1 files changed, 23 insertions, 18 deletions
diff --git a/compiler/optimizing/ssa_liveness_analysis.h b/compiler/optimizing/ssa_liveness_analysis.h index ca08d5b..2312389 100644 --- a/compiler/optimizing/ssa_liveness_analysis.h +++ b/compiler/optimizing/ssa_liveness_analysis.h @@ -582,7 +582,7 @@ class SsaLivenessAnalysis : public ValueObject { SsaLivenessAnalysis(const HGraph& graph, CodeGenerator* codegen) : graph_(graph), codegen_(codegen), - linear_post_order_(graph.GetArena(), graph.GetBlocks().Size()), + linear_order_(graph.GetArena(), graph.GetBlocks().Size()), block_infos_(graph.GetArena(), graph.GetBlocks().Size()), instructions_from_ssa_index_(graph.GetArena(), 0), instructions_from_lifetime_position_(graph.GetArena(), 0), @@ -604,8 +604,8 @@ class SsaLivenessAnalysis : public ValueObject { return &block_infos_.Get(block.GetBlockId())->kill_; } - const GrowableArray<HBasicBlock*>& GetLinearPostOrder() const { - return linear_post_order_; + const GrowableArray<HBasicBlock*>& GetLinearOrder() const { + return linear_order_; } HInstruction* GetInstructionFromSsaIndex(size_t index) const { @@ -661,7 +661,7 @@ class SsaLivenessAnalysis : public ValueObject { const HGraph& graph_; CodeGenerator* const codegen_; - GrowableArray<HBasicBlock*> linear_post_order_; + GrowableArray<HBasicBlock*> linear_order_; GrowableArray<BlockInfo*> block_infos_; // Temporary array used when computing live_in, live_out, and kill sets. @@ -674,36 +674,41 @@ class SsaLivenessAnalysis : public ValueObject { DISALLOW_COPY_AND_ASSIGN(SsaLivenessAnalysis); }; -class HLinearOrderIterator : public ValueObject { +class HLinearPostOrderIterator : public ValueObject { public: - explicit HLinearOrderIterator(const SsaLivenessAnalysis& liveness) - : post_order_(liveness.GetLinearPostOrder()), index_(liveness.GetLinearPostOrder().Size()) {} + explicit HLinearPostOrderIterator(const SsaLivenessAnalysis& liveness) + : order_(liveness.GetLinearOrder()), index_(liveness.GetLinearOrder().Size()) {} bool Done() const { return index_ == 0; } - HBasicBlock* Current() const { return post_order_.Get(index_ -1); } - void Advance() { --index_; DCHECK_GE(index_, 0U); } + + HBasicBlock* Current() const { return order_.Get(index_ -1); } + + void Advance() { + --index_; + DCHECK_GE(index_, 0U); + } private: - const GrowableArray<HBasicBlock*>& post_order_; + const GrowableArray<HBasicBlock*>& order_; size_t index_; - DISALLOW_COPY_AND_ASSIGN(HLinearOrderIterator); + DISALLOW_COPY_AND_ASSIGN(HLinearPostOrderIterator); }; -class HLinearPostOrderIterator : public ValueObject { +class HLinearOrderIterator : public ValueObject { public: - explicit HLinearPostOrderIterator(const SsaLivenessAnalysis& liveness) - : post_order_(liveness.GetLinearPostOrder()), index_(0) {} + explicit HLinearOrderIterator(const SsaLivenessAnalysis& liveness) + : order_(liveness.GetLinearOrder()), index_(0) {} - bool Done() const { return index_ == post_order_.Size(); } - HBasicBlock* Current() const { return post_order_.Get(index_); } + bool Done() const { return index_ == order_.Size(); } + HBasicBlock* Current() const { return order_.Get(index_); } void Advance() { ++index_; } private: - const GrowableArray<HBasicBlock*>& post_order_; + const GrowableArray<HBasicBlock*>& order_; size_t index_; - DISALLOW_COPY_AND_ASSIGN(HLinearPostOrderIterator); + DISALLOW_COPY_AND_ASSIGN(HLinearOrderIterator); }; } // namespace art |