Index: src/x64/code-stubs-x64.cc |
diff --git a/src/x64/code-stubs-x64.cc b/src/x64/code-stubs-x64.cc |
index 5041d9424231961aa909bcddc5490eccc62d0924..0ff1f88a9673f444babe628de8f80849356f3621 100644 |
--- a/src/x64/code-stubs-x64.cc |
+++ b/src/x64/code-stubs-x64.cc |
@@ -2255,11 +2255,14 @@ void CallIC_ArrayStub::Generate(MacroAssembler* masm) { |
__ j(not_equal, &miss); |
__ movp(rax, Immediate(arg_count())); |
- __ movp(rbx, FieldOperand(rbx, rdx, times_pointer_size, |
+ __ movp(rcx, FieldOperand(rbx, rdx, times_pointer_size, |
FixedArray::kHeaderSize)); |
- |
// Verify that ecx contains an AllocationSite |
- __ AssertUndefinedOrAllocationSite(rbx); |
+ Factory* factory = masm->isolate()->factory(); |
+ __ Cmp(FieldOperand(rcx, 0), factory->allocation_site_map()); |
Toon Verwaest
2014/07/28 14:11:38
HeapObject::kMapOffset?
mvstanton
2014/07/28 16:02:50
Done.
|
+ __ j(not_equal, &miss); |
+ |
+ __ movp(rbx, rcx); |
ArrayConstructorStub stub(masm->isolate(), arg_count()); |
__ TailCallStub(&stub); |