| Index: src/ia32/stub-cache-ia32.cc
|
| diff --git a/src/ia32/stub-cache-ia32.cc b/src/ia32/stub-cache-ia32.cc
|
| index 33cbf2b2cc31422148f783f1abab986148a714bd..28f4028c525946a809eef6f49b24abb7b9a95a70 100644
|
| --- a/src/ia32/stub-cache-ia32.cc
|
| +++ b/src/ia32/stub-cache-ia32.cc
|
| @@ -1274,6 +1274,20 @@ Handle<Code> StoreStubCompiler::CompileStoreInterceptor(
|
| }
|
|
|
|
|
| +void StoreStubCompiler::GenerateStoreArrayLength() {
|
| + // Prepare tail call to StoreIC_ArrayLength.
|
| + __ pop(scratch1()); // remove the return address
|
| + __ push(receiver());
|
| + __ push(value());
|
| + __ push(scratch1()); // restore return address
|
| +
|
| + ExternalReference ref =
|
| + ExternalReference(IC_Utility(IC::kStoreIC_ArrayLength),
|
| + masm()->isolate());
|
| + __ TailCallExternalReference(ref, 2, 1);
|
| +}
|
| +
|
| +
|
| Handle<Code> KeyedStoreStubCompiler::CompileStorePolymorphic(
|
| MapHandleList* receiver_maps,
|
| CodeHandleList* handler_stubs,
|
|
|