| Index: src/ic.h
|
| diff --git a/src/ic.h b/src/ic.h
|
| index 7af09ee3aab18e50633717a4a18a69741dfaf6ed..2cf0543c4c8b35c0f7c8d3b3bb7f7cc7a112acf4 100644
|
| --- a/src/ic.h
|
| +++ b/src/ic.h
|
| @@ -283,6 +283,7 @@ class KeyedCallIC: public CallICBase {
|
| static void GenerateMiss(MacroAssembler* masm, int argc);
|
| static void GenerateMegamorphic(MacroAssembler* masm, int argc);
|
| static void GenerateNormal(MacroAssembler* masm, int argc);
|
| + static void GenerateNonStrictArguments(MacroAssembler* masm, int argc);
|
| };
|
|
|
|
|
| @@ -408,8 +409,8 @@ class KeyedLoadIC: public KeyedIC {
|
| }
|
| static void GenerateGeneric(MacroAssembler* masm);
|
| static void GenerateString(MacroAssembler* masm);
|
| -
|
| static void GenerateIndexedInterceptor(MacroAssembler* masm);
|
| + static void GenerateNonStrictArguments(MacroAssembler* masm);
|
|
|
| // Bit mask to be tested against bit field for the cases when
|
| // generic stub should go into slow case.
|
| @@ -467,6 +468,10 @@ class KeyedLoadIC: public KeyedIC {
|
| return isolate()->builtins()->builtin(
|
| Builtins::kKeyedLoadIC_IndexedInterceptor);
|
| }
|
| + Code* non_strict_arguments_stub() {
|
| + return isolate()->builtins()->builtin(
|
| + Builtins::kKeyedLoadIC_NonStrictArguments);
|
| + }
|
|
|
| static void Clear(Address address, Code* target);
|
|
|
| @@ -567,6 +572,7 @@ class KeyedStoreIC: public KeyedIC {
|
| static void GenerateRuntimeSetProperty(MacroAssembler* masm,
|
| StrictModeFlag strict_mode);
|
| static void GenerateGeneric(MacroAssembler* masm, StrictModeFlag strict_mode);
|
| + static void GenerateNonStrictArguments(MacroAssembler* masm);
|
|
|
| virtual MaybeObject* GetFastElementStubWithoutMapCheck(
|
| bool is_js_array);
|
| @@ -625,6 +631,10 @@ class KeyedStoreIC: public KeyedIC {
|
| return isolate()->builtins()->builtin(
|
| Builtins::kKeyedStoreIC_Generic_Strict);
|
| }
|
| + Code* non_strict_arguments_stub() {
|
| + return isolate()->builtins()->builtin(
|
| + Builtins::kKeyedStoreIC_NonStrictArguments);
|
| + }
|
|
|
| static void Clear(Address address, Code* target);
|
|
|
|
|