Reviewers: Jakob,
Message:
PTAL.
Description:
Fixed a bug in smi-only implementation in x64.
Please review this at http://codereview.chromium.org/8060009/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
M src/x64/stub-cache-x64.cc
Index: src/x64/stub-cache-x64.cc
diff --git a/src/x64/stub-cache-x64.cc b/src/x64/stub-cache-x64.cc
index
3819c1d40ad8737f61670f9f8234e9c4525527c4..63d45ef074abb64528893d8c6788aad15238cafd
100644
--- a/src/x64/stub-cache-x64.cc
+++ b/src/x64/stub-cache-x64.cc
@@ -3722,13 +3722,14 @@ void
KeyedStoreStubCompiler::GenerateStoreFastElement(
}
// Do the store and update the write barrier.
- __ SmiToInteger32(rcx, rcx);
if (elements_kind == FAST_SMI_ONLY_ELEMENTS) {
__ JumpIfNotSmi(rax, &miss_force_generic);
+ __ SmiToInteger32(rcx, rcx);
__ movq(FieldOperand(rdi, rcx, times_pointer_size,
FixedArray::kHeaderSize),
rax);
} else {
ASSERT(elements_kind == FAST_ELEMENTS);
+ __ SmiToInteger32(rcx, rcx);
__ lea(rcx,
FieldOperand(rdi, rcx, times_pointer_size,
FixedArray::kHeaderSize));
__ movq(Operand(rcx, 0), rax);
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev