Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Unified Diff: src/a64/lithium-gap-resolver-a64.h

Issue 148293020: Merge experimental/a64 to bleeding_edge. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Remove ARM from OWNERS Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/a64/lithium-codegen-a64.cc ('k') | src/a64/lithium-gap-resolver-a64.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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_
« no previous file with comments | « src/a64/lithium-codegen-a64.cc ('k') | src/a64/lithium-gap-resolver-a64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698