Chromium Code Reviews

Unified Diff: src/compiler/live-range-separator.h

Issue 1305393003: [turbofan] Deferred blocks splintering. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Index: src/compiler/live-range-separator.h
diff --git a/src/compiler/preprocess-live-ranges.h b/src/compiler/live-range-separator.h
similarity index 56%
rename from src/compiler/preprocess-live-ranges.h
rename to src/compiler/live-range-separator.h
index aa852fc7ca40606959596efd900ab67fbad234c0..2abefe88c235c0355d1c2fbb1ec395f3e6047b1b 100644
--- a/src/compiler/preprocess-live-ranges.h
+++ b/src/compiler/live-range-separator.h
@@ -12,15 +12,31 @@ namespace internal {
namespace compiler {
-class PreprocessLiveRanges final {
+// A register allocation pair of transformations: splinter and merge live ranges
+class LiveRangeSeparator final {
public:
- PreprocessLiveRanges(RegisterAllocationData* data, Zone* zone)
+ LiveRangeSeparator(RegisterAllocationData* data, Zone* zone)
: data_(data), zone_(zone) {}
- void PreprocessRanges();
+
+ void Splinter();
private:
- void SplitRangesAroundDeferredBlocks();
+ RegisterAllocationData* data() { return data_; }
Benedikt Meurer 2015/08/24 04:33:26 Nit: mark these accessors const.
Mircea Trofin 2015/08/24 20:55:10 Done.
+ Zone* zone() { return zone_; }
+
+ RegisterAllocationData* data_;
Benedikt Meurer 2015/08/24 04:33:26 Nit: use const fields, i.e. RegisterAllocationData
Mircea Trofin 2015/08/24 20:55:10 Done.
+ Zone* zone_;
+};
+
+class LiveRangeMerger final {
+ public:
+ LiveRangeMerger(RegisterAllocationData* data, Zone* zone)
+ : data_(data), zone_(zone) {}
+
+ void Merge();
+
+ private:
RegisterAllocationData* data() { return data_; }
Benedikt Meurer 2015/08/24 04:33:26 See above.
Mircea Trofin 2015/08/24 20:55:10 Done.
Zone* zone() { return zone_; }

Powered by Google App Engine