| Index: src/compiler/register-allocator.h
|
| diff --git a/src/compiler/register-allocator.h b/src/compiler/register-allocator.h
|
| index 5a6d27adea2b8a76348b9c9f00de192fceaec007..ba10743765a5da7eb3eba843ab00e80343437c7f 100644
|
| --- a/src/compiler/register-allocator.h
|
| +++ b/src/compiler/register-allocator.h
|
| @@ -493,7 +493,8 @@
|
| // result.
|
| // The current range is pointed to as "splintered_from". No parent/child
|
| // relationship is established between this and result.
|
| - void Splinter(LifetimePosition start, LifetimePosition end, Zone* zone);
|
| + void Splinter(LifetimePosition start, LifetimePosition end,
|
| + TopLevelLiveRange* result, Zone* zone);
|
|
|
| // Assuming other was splintered from this range, embeds other and its
|
| // children as part of the children sequence of this range.
|
| @@ -537,6 +538,7 @@
|
| spill_start_index_ = Min(start, spill_start_index_);
|
| }
|
|
|
| + void SetSplinteredFrom(TopLevelLiveRange* splinter_parent);
|
| void CommitSpillsAtDefinition(InstructionSequence* sequence,
|
| const InstructionOperand& operand,
|
| bool might_be_duplicated);
|
| @@ -576,20 +578,8 @@
|
| }
|
| void set_last_child(LiveRange* range) { last_child_ = range; }
|
| LiveRange* last_child() const { return last_child_; }
|
| - TopLevelLiveRange* splinter() const { return splinter_; }
|
| - void SetSplinter(TopLevelLiveRange* splinter) {
|
| - DCHECK_NULL(splinter_);
|
| - DCHECK_NOT_NULL(splinter);
|
| -
|
| - splinter_ = splinter;
|
| - splinter->relative_id_ = GetNextChildId();
|
| - splinter->set_spill_type(spill_type());
|
| - splinter->SetSplinteredFrom(this);
|
| - }
|
| -
|
| - private:
|
| - void SetSplinteredFrom(TopLevelLiveRange* splinter_parent);
|
| -
|
| +
|
| + private:
|
| typedef BitField<bool, 1, 1> HasSlotUseField;
|
| typedef BitField<bool, 2, 1> IsPhiField;
|
| typedef BitField<bool, 3, 1> IsNonLoopPhiField;
|
| @@ -609,8 +599,7 @@
|
| bool spilled_in_deferred_blocks_;
|
| int spill_start_index_;
|
| LiveRange* last_child_;
|
| - UsePosition* last_pos_;
|
| - TopLevelLiveRange* splinter_;
|
| + LiveRange* last_insertion_point_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(TopLevelLiveRange);
|
| };
|
|
|