| Index: src/a64/lithium-gap-resolver-a64.h
|
| diff --git a/src/arm/lithium-gap-resolver-arm.h b/src/a64/lithium-gap-resolver-a64.h
|
| similarity index 83%
|
| copy from src/arm/lithium-gap-resolver-arm.h
|
| copy to src/a64/lithium-gap-resolver-a64.h
|
| index 9dd09c8d03b80da4bc79c9e166a6ee983bff34ff..fb3281212ffa1648ef142788a5fd732580c943b7 100644
|
| --- a/src/arm/lithium-gap-resolver-arm.h
|
| +++ b/src/a64/lithium-gap-resolver-a64.h
|
| @@ -1,4 +1,4 @@
|
| -// Copyright 2011 the V8 project authors. All rights reserved.
|
| +// Copyright 2013 the V8 project authors. All rights reserved.
|
| // Redistribution and use in source and binary forms, with or without
|
| // modification, are permitted provided that the following conditions are
|
| // met:
|
| @@ -25,8 +25,8 @@
|
| // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
| // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
| -#ifndef V8_ARM_LITHIUM_GAP_RESOLVER_ARM_H_
|
| -#define V8_ARM_LITHIUM_GAP_RESOLVER_ARM_H_
|
| +#ifndef V8_A64_LITHIUM_GAP_RESOLVER_A64_H_
|
| +#define V8_A64_LITHIUM_GAP_RESOLVER_A64_H_
|
|
|
| #include "v8.h"
|
|
|
| @@ -65,9 +65,15 @@ class LGapResolver BASE_EMBEDDED {
|
| // Emit a move and remove it from the move graph.
|
| void EmitMove(int index);
|
|
|
| + // Emit a move from one stack slot to another.
|
| + void EmitStackSlotMove(int index);
|
| +
|
| // Verify the move list before performing moves.
|
| void Verify();
|
|
|
| + // Register used to break cycle in moves list.
|
| + static const Register kSavedValue;
|
| +
|
| LCodeGen* cgen_;
|
|
|
| // List of moves not yet resolved.
|
| @@ -76,8 +82,12 @@ class LGapResolver BASE_EMBEDDED {
|
| int root_index_;
|
| bool in_cycle_;
|
| LOperand* saved_destination_;
|
| +
|
| + // We use the root register as a scratch in a few places. When that happens,
|
| + // this flag is set to indicate that it needs to be restored.
|
| + bool need_to_restore_root_;
|
| };
|
|
|
| } } // namespace v8::internal
|
|
|
| -#endif // V8_ARM_LITHIUM_GAP_RESOLVER_ARM_H_
|
| +#endif // V8_A64_LITHIUM_GAP_RESOLVER_A64_H_
|
|
|