Index: src/code-stubs.h |
diff --git a/src/code-stubs.h b/src/code-stubs.h |
index 454029a69d4d7660f2bc39c99bae02a8adcff2cb..5fba1cf46b28f42d813cecd4ef7ea2db79161900 100644 |
--- a/src/code-stubs.h |
+++ b/src/code-stubs.h |
@@ -30,6 +30,7 @@ namespace internal { |
V(CompareNilIC) \ |
V(MathPow) \ |
V(CallIC) \ |
+ V(CallIC_Array) \ |
V(FunctionPrototype) \ |
V(RecordWrite) \ |
V(StoreBufferOverflow) \ |
@@ -819,15 +820,26 @@ class CallICStub: public PlatformCodeStub { |
virtual int MinorKey() { return GetExtraICState(); } |
virtual void PrintState(StringStream* stream) V8_FINAL V8_OVERRIDE; |
- private: |
virtual CodeStub::Major MajorKey() { return CallIC; } |
// Code generation helpers. |
- void GenerateMiss(MacroAssembler* masm); |
- void Generate_CustomFeedbackCall(MacroAssembler* masm); |
- void Generate_MonomorphicArray(MacroAssembler* masm, Label* miss); |
+ void GenerateMiss(MacroAssembler* masm, IC::UtilityId id); |
+ |
+ const CallIC::State state_; |
+}; |
+ |
+ |
+class CallIC_ArrayStub: public CallICStub { |
+ public: |
+ CallIC_ArrayStub(Isolate* isolate, const CallIC::State& state_in) |
+ : CallICStub(isolate, state_in) {} |
+ |
+ virtual void Generate(MacroAssembler* masm); |
+ |
+ protected: |
+ virtual void PrintState(StringStream* stream) V8_FINAL V8_OVERRIDE; |
- CallIC::State state_; |
+ virtual CodeStub::Major MajorKey() { return CallIC_Array; } |
}; |