| Index: src/arm/lithium-codegen-arm.h
|
| diff --git a/src/arm/lithium-codegen-arm.h b/src/arm/lithium-codegen-arm.h
|
| index 4ef772ea938b4120e35d90f321877183660d1657..e6bb1b68d0c66df13a6c7e562d8a5fe42a304d0e 100644
|
| --- a/src/arm/lithium-codegen-arm.h
|
| +++ b/src/arm/lithium-codegen-arm.h
|
| @@ -39,8 +39,30 @@ namespace internal {
|
|
|
| // Forward declarations.
|
| class LDeferredCode;
|
| +class LGapNode;
|
| class SafepointGenerator;
|
|
|
| +class LGapResolver BASE_EMBEDDED {
|
| + public:
|
| + LGapResolver();
|
| + const ZoneList<LMoveOperands>* Resolve(const ZoneList<LMoveOperands>* moves,
|
| + LOperand* marker_operand);
|
| +
|
| + private:
|
| + LGapNode* LookupNode(LOperand* operand);
|
| + bool CanReach(LGapNode* a, LGapNode* b, int visited_id);
|
| + bool CanReach(LGapNode* a, LGapNode* b);
|
| + void RegisterMove(LMoveOperands move);
|
| + void AddResultMove(LOperand* from, LOperand* to);
|
| + void AddResultMove(LGapNode* from, LGapNode* to);
|
| + void ResolveCycle(LGapNode* start, LOperand* marker_operand);
|
| +
|
| + ZoneList<LGapNode*> nodes_;
|
| + ZoneList<LGapNode*> identified_cycles_;
|
| + ZoneList<LMoveOperands> result_;
|
| + int next_visited_id_;
|
| +};
|
| +
|
|
|
| class LCodeGen BASE_EMBEDDED {
|
| public:
|
|
|