Chromium Code Reviews| Index: src/ic/ic.h |
| diff --git a/src/ic/ic.h b/src/ic/ic.h |
| index 5ed8082ed1e05e07dd3e0bf4dd0f4408a003c0b7..d58e8907367eede52d01a440be3170f442186708 100644 |
| --- a/src/ic/ic.h |
| +++ b/src/ic/ic.h |
| @@ -434,6 +434,20 @@ class LoadIC : public IC { |
| class KeyedLoadIC : public LoadIC { |
| public: |
| + // ExtraICState bits (building on IC) |
| + // ExtraICState bits |
|
Jakob Kummerow
2014/12/11 09:52:42
nit: duplicate comment, drop it.
|
| + 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()); |