Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(387)

Unified Diff: src/hydrogen-check-elimination.cc

Issue 144013003: Flow engine fixes: unreachable block processing, state merging. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | src/hydrogen-flow-engine.h » ('j') | src/hydrogen-flow-engine.h » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/hydrogen-check-elimination.cc
diff --git a/src/hydrogen-check-elimination.cc b/src/hydrogen-check-elimination.cc
index ae11042ba1e449b3c33b2d036ca36477165142d6..8025ff1de8eae0702fe16ef9dbfc1daffeb9f7f0 100644
--- a/src/hydrogen-check-elimination.cc
+++ b/src/hydrogen-check-elimination.cc
@@ -117,7 +117,7 @@ class HCheckTable : public ZoneObject {
}
// Global analysis: Copy state to successor block.
- HCheckTable* Copy(HBasicBlock* succ, Zone* zone) {
+ HCheckTable* Copy(HBasicBlock* succ, HBasicBlock* from_block, Zone* zone) {
HCheckTable* copy = new(phase_->zone()) HCheckTable(phase_);
for (int i = 0; i < size_; i++) {
HCheckTableEntry* old_entry = &entries_[i];
@@ -173,12 +173,13 @@ class HCheckTable : public ZoneObject {
}
// Global analysis: Merge this state with the other incoming state.
- HCheckTable* Merge(HBasicBlock* succ, HCheckTable* that, Zone* zone) {
+ void Merge(HBasicBlock* succ, HCheckTable* that,
titzer 2014/01/27 12:42:32 Please keep the interface that it returns the "new
Igor Sheludko 2014/01/28 16:55:42 Done.
+ HBasicBlock* that_block, Zone* zone) {
if (that->size_ == 0) {
// If the other state is empty, simply reset.
size_ = 0;
cursor_ = 0;
- return this;
+ return;
}
bool compact = false;
for (int i = 0; i < size_; i++) {
@@ -195,7 +196,6 @@ class HCheckTable : public ZoneObject {
}
}
if (compact) Compact();
- return this;
}
void ReduceCheckMaps(HCheckMaps* instr) {
« no previous file with comments | « no previous file | src/hydrogen-flow-engine.h » ('j') | src/hydrogen-flow-engine.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698