| Index: src/ic/x87/ic-compiler-x87.cc
|
| diff --git a/src/ic/x87/ic-compiler-x87.cc b/src/ic/x87/ic-compiler-x87.cc
|
| index 519cdb3028c6947661f5c60505e811b3617b4e8a..dab04fa9b25d04e84a1872d54addec6b6b55e684 100644
|
| --- a/src/ic/x87/ic-compiler-x87.cc
|
| +++ b/src/ic/x87/ic-compiler-x87.cc
|
| @@ -981,6 +981,23 @@ void ElementHandlerCompiler::GenerateLoadDictionaryElement(
|
| }
|
|
|
|
|
| +void PropertyICCompiler::GenerateRuntimeSetProperty(MacroAssembler* masm,
|
| + StrictMode strict_mode) {
|
| + // Return address is on the stack.
|
| + DCHECK(!ebx.is(StoreIC::ReceiverRegister()) &&
|
| + !ebx.is(StoreIC::NameRegister()) && !ebx.is(StoreIC::ValueRegister()));
|
| + __ pop(ebx);
|
| + __ push(StoreIC::ReceiverRegister());
|
| + __ push(StoreIC::NameRegister());
|
| + __ push(StoreIC::ValueRegister());
|
| + __ push(Immediate(Smi::FromInt(strict_mode)));
|
| + __ push(ebx); // return address
|
| +
|
| + // Do tail-call to runtime routine.
|
| + __ TailCallRuntime(Runtime::kSetProperty, 4, 1);
|
| +}
|
| +
|
| +
|
| #undef __
|
| }
|
| } // namespace v8::internal
|
|
|