Reviewers: Lasse Reichstein,
Description:
x64: Fix safepoint register index calculation.
We leave room for all registers on the stack so we have to add a bit.
This is not nicely factored and I need to do that. This will fix the
breakage
and I
will fix the rest on Monday.
[email protected]
Please review this at http://codereview.chromium.org/6544017/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
M src/x64/assembler-x64.h
Index: src/x64/assembler-x64.h
diff --git a/src/x64/assembler-x64.h b/src/x64/assembler-x64.h
index
6e1837d7e2150d23560d6a8c3c24e06bfd73a8f7..0bcb776341498c96ec33f17f794713441066abaf
100644
--- a/src/x64/assembler-x64.h
+++ b/src/x64/assembler-x64.h
@@ -109,7 +109,9 @@ struct Register {
}
static int ToRspIndexForPushAll(Register reg) {
- return kRspIndexForPushAllByRegisterCode[reg.code()];
+ // TODO(ager): Refactor this so we can use the right constants for
+ // this computation. Move it to the macro assembler as on ARM.
+ return kRspIndexForPushAllByRegisterCode[reg.code()] + 5;
}
static const char* AllocationIndexToString(int index) {
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev