| 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 84%
|
| copy from src/arm/lithium-gap-resolver-arm.h
|
| copy to src/a64/lithium-gap-resolver-a64.h
|
| index 044c2864a42e695ca12e29c931d7c5ccb7bd5bfd..427065933e82a1857ccdde465d0e1187fa999bfd 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"
|
|
|
| @@ -38,7 +38,7 @@ namespace internal {
|
| class LCodeGen;
|
| class LGapResolver;
|
|
|
| -class LGapResolver V8_FINAL BASE_EMBEDDED {
|
| +class LGapResolver BASE_EMBEDDED {
|
| public:
|
| explicit LGapResolver(LCodeGen* owner);
|
|
|
| @@ -65,6 +65,9 @@ class LGapResolver V8_FINAL 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();
|
|
|
| @@ -76,8 +79,12 @@ class LGapResolver V8_FINAL 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_
|
|
|