Commit 93559bb6 authored by danno@chromium.org's avatar danno@chromium.org

Attempt to fix Windows x64 build.

R=jkummerow@chromium.org
BUG=none
TEST=none

Review URL: http://codereview.chromium.org/8495012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9913 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent 0d536dec
......@@ -7071,7 +7071,7 @@ void StoreArrayLiteralElementStub::Generate(MacroAssembler* masm) {
__ push(edx);
__ push(edi); // Return return address so that tail call returns to right
// place.
__ TailCallRuntime(Runtime::kStoreArrayLiteralElement, 5, 1);
__ TailCallRuntime(Runtime::kStoreArrayLiteralElement, 5, 0);
if (!FLAG_trace_elements_transitions) {
// Array literal has ElementsKind of FAST_DOUBLE_ELEMENTS.
......
......@@ -5990,26 +5990,26 @@ void StoreArrayLiteralElementStub::Generate(MacroAssembler* masm) {
__ push(rdx);
__ push(rdi); // Return return address so that tail call returns to right
// place.
__ TailCallRuntime(Runtime::kStoreArrayLiteralElement, 5, 1);
__ TailCallRuntime(Runtime::kStoreArrayLiteralElement, 5, 0);
if (!FLAG_trace_elements_transitions) {
// Array literal has ElementsKind of FAST_DOUBLE_ELEMENTS.
__ bind(&double_elements);
__ movq(r9, FieldOperand(rbx, JSObject::kElementsOffset));
__ SmiToInteger32(r10, rcx);
__ SmiToInteger32(r11, rcx);
__ StoreNumberToDoubleElements(rax,
r9,
r10,
r11,
xmm0,
&slow_elements);
__ jmp(&element_done);
// Array literal has ElementsKind of FAST_ELEMENTS and value is an object.
__ bind(&fast_elements);
__ SmiToInteger32(r10, rcx);
__ SmiToInteger32(kScratchRegister, rcx);
__ movq(rbx, FieldOperand(rbx, JSObject::kElementsOffset));
__ lea(rcx, FieldOperand(rbx, r10, times_pointer_size,
__ lea(rcx, FieldOperand(rbx, kScratchRegister, times_pointer_size,
FixedArrayBase::kHeaderSize));
__ movq(Operand(rcx, 0), rax);
// Update the write barrier for the array store.
......@@ -6022,9 +6022,9 @@ void StoreArrayLiteralElementStub::Generate(MacroAssembler* masm) {
// Array literal has ElementsKind of FAST_SMI_ONLY_ELEMENTS or
// FAST_ELEMENTS, and value is Smi.
__ bind(&smi_element);
__ SmiToInteger32(r10, rcx);
__ SmiToInteger32(kScratchRegister, rcx);
__ movq(rbx, FieldOperand(rbx, JSObject::kElementsOffset));
__ movq(FieldOperand(rbx, r10, times_pointer_size,
__ movq(FieldOperand(rbx, kScratchRegister, times_pointer_size,
FixedArrayBase::kHeaderSize), rax);
// Fall through
__ bind(&element_done);
......
......@@ -1496,7 +1496,7 @@ void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) {
__ movq(rbx, Operand(rsp, 0)); // Copy of array literal.
__ movq(rdi, FieldOperand(rbx, JSObject::kMapOffset));
__ Move(rcx, Smi::FromInt(i));
__ movq(rdx, Immediate(expr->literal_index()));
__ Move(rdx, Smi::FromInt(expr->literal_index()));
StoreArrayLiteralElementStub stub;
__ CallStub(&stub);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment