Commit 61c86199 authored by mstarzinger's avatar mstarzinger Committed by Commit bot

Move linked list for RPO order into BasicBlock itself.

R=titzer@chromium.org

Review URL: https://codereview.chromium.org/762723004

Cr-Commit-Position: refs/heads/master@{#25531}
parent 1a2e4b26
...@@ -18,6 +18,7 @@ BasicBlock::BasicBlock(Zone* zone, Id id) ...@@ -18,6 +18,7 @@ BasicBlock::BasicBlock(Zone* zone, Id id)
deferred_(false), deferred_(false),
dominator_depth_(-1), dominator_depth_(-1),
dominator_(NULL), dominator_(NULL),
rpo_next_(NULL),
loop_header_(NULL), loop_header_(NULL),
loop_end_(NULL), loop_end_(NULL),
loop_depth_(0), loop_depth_(0),
......
...@@ -151,6 +151,9 @@ class BasicBlock FINAL : public ZoneObject { ...@@ -151,6 +151,9 @@ class BasicBlock FINAL : public ZoneObject {
BasicBlock* dominator() const { return dominator_; } BasicBlock* dominator() const { return dominator_; }
void set_dominator(BasicBlock* dominator) { dominator_ = dominator; } void set_dominator(BasicBlock* dominator) { dominator_ = dominator; }
BasicBlock* rpo_next() const { return rpo_next_; }
void set_rpo_next(BasicBlock* rpo_next) { rpo_next_ = rpo_next; }
BasicBlock* loop_header() const { return loop_header_; } BasicBlock* loop_header() const { return loop_header_; }
void set_loop_header(BasicBlock* loop_header); void set_loop_header(BasicBlock* loop_header);
...@@ -178,6 +181,7 @@ class BasicBlock FINAL : public ZoneObject { ...@@ -178,6 +181,7 @@ class BasicBlock FINAL : public ZoneObject {
bool deferred_; // true if the block contains deferred code. bool deferred_; // true if the block contains deferred code.
int32_t dominator_depth_; // Depth within the dominator tree. int32_t dominator_depth_; // Depth within the dominator tree.
BasicBlock* dominator_; // Immediate dominator of the block. BasicBlock* dominator_; // Immediate dominator of the block.
BasicBlock* rpo_next_; // Link to next block in special RPO order.
BasicBlock* loop_header_; // Pointer to dominating loop header basic block, BasicBlock* loop_header_; // Pointer to dominating loop header basic block,
// NULL if none. For loop headers, this points to // NULL if none. For loop headers, this points to
// enclosing loop header. // enclosing loop header.
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment