Reviewers: Benedikt Meurer,
Description:
Some micro-optimizations in the scheduler.
[email protected]
Please review this at https://codereview.chromium.org/764533003/
Base URL: https://chromium.googlesource.com/v8/v8.git@master
Affected files (+4, -14 lines):
M src/compiler/schedule.h
M src/compiler/schedule.cc
M src/compiler/scheduler.cc
Index: src/compiler/schedule.cc
diff --git a/src/compiler/schedule.cc b/src/compiler/schedule.cc
index
50ece951d689210dae8768931ecb05ab2f84c09a..0e7caa02130176b4f4c327cb2065eb5a42104ff8
100644
--- a/src/compiler/schedule.cc
+++ b/src/compiler/schedule.cc
@@ -62,16 +62,6 @@ void BasicBlock::set_control_input(Node* control_input) {
}
-void BasicBlock::set_dominator_depth(int32_t dominator_depth) {
- dominator_depth_ = dominator_depth;
-}
-
-
-void BasicBlock::set_dominator(BasicBlock* dominator) {
- dominator_ = dominator;
-}
-
-
void BasicBlock::set_loop_depth(int32_t loop_depth) {
loop_depth_ = loop_depth;
}
Index: src/compiler/schedule.h
diff --git a/src/compiler/schedule.h b/src/compiler/schedule.h
index
95b93b3e0d6e8400d4f565aa268e65800ffd3356..9c9667f8d3f1d5319649f80ac685dbf25c06b2c6
100644
--- a/src/compiler/schedule.h
+++ b/src/compiler/schedule.h
@@ -146,10 +146,10 @@ class BasicBlock FINAL : public ZoneObject {
void set_deferred(bool deferred) { deferred_ = deferred; }
int32_t dominator_depth() const { return dominator_depth_; }
- void set_dominator_depth(int32_t dominator_depth);
+ void set_dominator_depth(int32_t depth) { dominator_depth_ = depth; }
BasicBlock* dominator() const { return dominator_; }
- void set_dominator(BasicBlock* dominator);
+ void set_dominator(BasicBlock* dominator) { dominator_ = dominator; }
BasicBlock* loop_header() const { return loop_header_; }
void set_loop_header(BasicBlock* loop_header);
Index: src/compiler/scheduler.cc
diff --git a/src/compiler/scheduler.cc b/src/compiler/scheduler.cc
index
8c169368e54d5e8883e6184d542d7b02e5a34c18..35d7ab9d8807fb58268ae0cd7e40aefe0549f2fe
100644
--- a/src/compiler/scheduler.cc
+++ b/src/compiler/scheduler.cc
@@ -1063,9 +1063,9 @@ void Scheduler::GenerateImmediateDominatorTree() {
// Build the block dominator tree.
schedule_->start()->set_dominator_depth(0);
typedef SpecialRPONumberer::BlockList BlockList;
- for (BlockList* l = special_rpo_->order_; l != NULL; l = l->next) {
+ DCHECK_EQ(schedule_->start(), special_rpo_->order_->block);
+ for (BlockList* l = special_rpo_->order_->next; l != NULL; l = l->next) {
BasicBlock* current = l->block;
- if (current == schedule_->start()) continue;
BasicBlock::Predecessors::iterator pred =
current->predecessors_begin();
BasicBlock::Predecessors::iterator end = current->predecessors_end();
DCHECK(pred != end); // All blocks except start have predecessors.
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.