| Index: src/compiler/register-allocator.h
|
| diff --git a/src/compiler/register-allocator.h b/src/compiler/register-allocator.h
|
| index 41f00af2d5f0035590939113600add1f59ebdf90..447e92f54a56eacfd6881308d83633636ca49320 100644
|
| --- a/src/compiler/register-allocator.h
|
| +++ b/src/compiler/register-allocator.h
|
| @@ -418,9 +418,13 @@ class LiveRange final : public ZoneObject {
|
| void SetUseHints(int register_index);
|
| void UnsetUseHints() { SetUseHints(kUnassignedRegister); }
|
|
|
| - private:
|
| struct SpillAtDefinitionList;
|
|
|
| + SpillAtDefinitionList* spills_at_definition() const {
|
| + return spills_at_definition_;
|
| + }
|
| +
|
| + private:
|
| void set_spill_type(SpillType value) {
|
| bits_ = SpillTypeField::update(bits_, value);
|
| }
|
| @@ -855,6 +859,21 @@ class GreedyAllocator final : public RegisterAllocator {
|
| };
|
|
|
|
|
| +class SpillSlotLocator final : public ZoneObject {
|
| + public:
|
| + explicit SpillSlotLocator(RegisterAllocationData* data);
|
| +
|
| + void LocateSpillSlots();
|
| +
|
| + private:
|
| + RegisterAllocationData* data() const { return data_; }
|
| +
|
| + RegisterAllocationData* const data_;
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(SpillSlotLocator);
|
| +};
|
| +
|
| +
|
| class OperandAssigner final : public ZoneObject {
|
| public:
|
| explicit OperandAssigner(RegisterAllocationData* data);
|
|
|