Chromium Code Reviews| Index: src/code-stubs.h |
| diff --git a/src/code-stubs.h b/src/code-stubs.h |
| index e20060f5d9a76affe1857d41972c167bdb8800d7..f287f16cf5f6d52e81227a0fcde1df243996ad56 100644 |
| --- a/src/code-stubs.h |
| +++ b/src/code-stubs.h |
| @@ -77,6 +77,7 @@ namespace internal { |
| V(CEntry) \ |
| V(JSEntry) \ |
| V(KeyedLoadElement) \ |
| + V(KeyedLoadGeneric) \ |
| V(ArrayNoArgumentConstructor) \ |
| V(ArraySingleArgumentConstructor) \ |
| V(ArrayNArgumentsConstructor) \ |
| @@ -1869,6 +1870,29 @@ class KeyedLoadDictionaryElementPlatformStub : public PlatformCodeStub { |
| }; |
| +class KeyedLoadGenericElementStub : public HydrogenCodeStub { |
| + public: |
| + KeyedLoadGenericElementStub() {} |
| + |
| + virtual Handle<Code> GenerateCode(Isolate* isolate) V8_OVERRIDE; |
| + |
| + virtual void InitializeInterfaceDescriptor( |
| + Isolate* isolate, |
| + CodeStubInterfaceDescriptor* descriptor) V8_OVERRIDE; |
| + |
| + static void InstallDescriptors(Isolate* isolate); |
| + |
| + virtual Code::Kind GetCodeKind() const { return Code::KEYED_LOAD_IC; } |
| + virtual InlineCacheState GetICState() { return MEGAMORPHIC; } |
|
Toon Verwaest
2013/12/04 17:29:26
This should be GENERIC instead of MEGAMORPHIC.
danno
2014/06/06 15:43:50
Done.
|
| + |
| + private: |
| + Major MajorKey() { return KeyedLoadGeneric; } |
| + int NotMissMinorKey() { return 0; } |
| + |
| + DISALLOW_COPY_AND_ASSIGN(KeyedLoadGenericElementStub); |
| +}; |
| + |
| + |
| class DoubleToIStub : public PlatformCodeStub { |
| public: |
| DoubleToIStub(Register source, |