| Index: src/ic/ic.h
|
| diff --git a/src/ic/ic.h b/src/ic/ic.h
|
| index 3abc4b6e4fe153cc661b3d62bd435fbe963f395f..3260c55b44c2f768a55568c6c483866a0c5caeb0 100644
|
| --- a/src/ic/ic.h
|
| +++ b/src/ic/ic.h
|
| @@ -77,8 +77,8 @@ class IC {
|
|
|
| static bool ICUseVector(Code::Kind kind) {
|
| return kind == Code::LOAD_IC || kind == Code::KEYED_LOAD_IC ||
|
| - kind == Code::CALL_IC || kind == Code::STORE_IC ||
|
| - kind == Code::KEYED_STORE_IC;
|
| + kind == Code::CALL_IC || kind == Code::CONSTRUCT_IC ||
|
| + kind == Code::STORE_IC || kind == Code::KEYED_STORE_IC;
|
| }
|
|
|
| protected:
|
| @@ -294,6 +294,17 @@ class CallIC : public IC {
|
| };
|
|
|
|
|
| +class ConstructIC : public IC {
|
| + public:
|
| + ConstructIC(Isolate* isolate, ConstructICNexus* nexus)
|
| + : IC(EXTRA_CALL_FRAME, isolate, nexus) {
|
| + DCHECK(nexus != NULL);
|
| + }
|
| +
|
| + static void Clear(Isolate* isolate, Code* host, ConstructICNexus* nexus);
|
| +};
|
| +
|
| +
|
| class LoadIC : public IC {
|
| public:
|
| static ExtraICState ComputeExtraICState(TypeofMode typeof_mode,
|
|
|