Index: src/compiler/register-allocator.h |
diff --git a/src/compiler/register-allocator.h b/src/compiler/register-allocator.h |
index 5a09c012d8234f42fb24db895130328b9be35b81..99e54c1a594c9a16425deee8525eb4773d4f602c 100644 |
--- a/src/compiler/register-allocator.h |
+++ b/src/compiler/register-allocator.h |
@@ -428,6 +428,15 @@ class LiveRange final : public ZoneObject { |
return spills_at_definition_; |
} |
+ // Used solely by the Greedy Allocator: |
+ unsigned GetSize(); |
+ float weight() const { return weight_; } |
+ void set_weight(float weight) { weight_ = weight; } |
+ |
+ static const int kInvalidSize = -1; |
+ static const float kInvalidWeight; |
+ static const float kMaxWeight; |
+ |
private: |
void set_spill_type(SpillType value) { |
bits_ = SpillTypeField::update(bits_, value); |
@@ -468,6 +477,9 @@ class LiveRange final : public ZoneObject { |
// This is used as a cache, it's invalid outside of BuildLiveRanges. |
mutable UsePosition* current_hint_position_; |
+ // Used solely by the Greedy Allocator: |
+ int size_; |
titzer
2015/06/29 11:17:57
Can you add a only liner explaining what "size" me
Mircea Trofin
2015/06/29 13:20:16
Done.
|
+ float weight_; |
titzer
2015/06/29 11:17:57
Is this the spill weight or the priority for alloc
Mircea Trofin
2015/06/29 13:20:16
Done.
|
DISALLOW_COPY_AND_ASSIGN(LiveRange); |
}; |
@@ -770,6 +782,7 @@ class RegisterAllocator : public ZoneObject { |
LifetimePosition pos); |
const ZoneVector<LiveRange*>& GetFixedRegisters() const; |
+ const char* RegisterName(int allocation_index) const; |
private: |
RegisterAllocationData* const data_; |
@@ -789,8 +802,6 @@ class LinearScanAllocator final : public RegisterAllocator { |
void AllocateRegisters(); |
private: |
- const char* RegisterName(int allocation_index) const; |
- |
ZoneVector<LiveRange*>& unhandled_live_ranges() { |
return unhandled_live_ranges_; |
} |