Chromium Code Reviews| 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_; |
| } |