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_ |