| Index: src/ic/ic.h
|
| diff --git a/src/ic/ic.h b/src/ic/ic.h
|
| index 5ed8082ed1e05e07dd3e0bf4dd0f4408a003c0b7..9825ac76eae5047cae5f3e6639c5abd06283c3c3 100644
|
| --- a/src/ic/ic.h
|
| +++ b/src/ic/ic.h
|
| @@ -434,6 +434,19 @@ class LoadIC : public IC {
|
|
|
| class KeyedLoadIC : public LoadIC {
|
| public:
|
| + // ExtraICState bits (building on IC)
|
| + class IcCheckTypeField : public BitField<IcCheckType, 1, 1> {};
|
| +
|
| + static ExtraICState ComputeExtraICState(ContextualMode contextual_mode,
|
| + IcCheckType key_type) {
|
| + return LoadICState(contextual_mode).GetExtraICState() |
|
| + IcCheckTypeField::encode(key_type);
|
| + }
|
| +
|
| + static IcCheckType GetKeyType(ExtraICState extra_state) {
|
| + return IcCheckTypeField::decode(extra_state);
|
| + }
|
| +
|
| explicit KeyedLoadIC(FrameDepth depth, Isolate* isolate)
|
| : LoadIC(depth, isolate) {
|
| DCHECK(target()->is_keyed_load_stub());
|
|
|