Index: src/x64/stub-cache-x64.cc |
diff --git a/src/x64/stub-cache-x64.cc b/src/x64/stub-cache-x64.cc |
index dcadce51853c9d3d4ce08fd8d07e7fd7382140f5..6463a37f4329e32920028fba69afb190e274f275 100644 |
--- a/src/x64/stub-cache-x64.cc |
+++ b/src/x64/stub-cache-x64.cc |
@@ -1169,6 +1169,20 @@ Handle<Code> StoreStubCompiler::CompileStoreInterceptor( |
} |
+void StoreStubCompiler::GenerateStoreArrayLength() { |
+ // Prepare tail call to StoreIC_ArrayLength. |
+ __ PopReturnAddressTo(scratch1()); |
+ __ push(receiver()); |
+ __ push(value()); |
+ __ PushReturnAddressFrom(scratch1()); |
+ |
+ ExternalReference ref = |
+ ExternalReference(IC_Utility(IC::kStoreIC_ArrayLength), |
+ masm()->isolate()); |
+ __ TailCallExternalReference(ref, 2, 1); |
+} |
+ |
+ |
Handle<Code> KeyedStoreStubCompiler::CompileStorePolymorphic( |
MapHandleList* receiver_maps, |
CodeHandleList* handler_stubs, |