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

Unified Diff: src/lithium.cc

Issue 24795002: Thumb2 Backend: Use sp-relative offsets for stack slot operations in Crankshaft Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 3 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/lithium.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/lithium.cc
diff --git a/src/lithium.cc b/src/lithium.cc
index 5b3a30332c6d88d609206e0ba3c78927399964c4..196188bbcacd1e3bda52a7093d796b24804facad 100644
--- a/src/lithium.cc
+++ b/src/lithium.cc
@@ -263,14 +263,16 @@ int ElementsKindToShiftSize(ElementsKind elements_kind) {
}
-int StackSlotOffset(int index) {
+int StackSlotOffset(int index, int fp_sp_delta) {
+ ASSERT(fp_sp_delta > 0);
if (index >= 0) {
// Local or spill slot. Skip the frame pointer, function, and
// context in the fixed part of the frame.
- return -(index + 3) * kPointerSize;
+ return -(index + 3) * kPointerSize + fp_sp_delta;
} else {
// Incoming parameter. Skip the return address.
- return -(index + 1) * kPointerSize + kFPOnStackSize + kPCOnStackSize;
+ return -(index + 1) * kPointerSize + kFPOnStackSize +
+ kPCOnStackSize + fp_sp_delta;
}
}
« no previous file with comments | « src/lithium.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698