| Index: src/ic/ic.h
|
| diff --git a/src/ic/ic.h b/src/ic/ic.h
|
| index 42c6b7d80c088836a9caf7d482bf8319800a505b..9eea509ec7723515a4bfa2bf91d23b4d4f6eb7fd 100644
|
| --- a/src/ic/ic.h
|
| +++ b/src/ic/ic.h
|
| @@ -492,26 +492,16 @@ class KeyedLoadIC : public LoadIC {
|
|
|
| class StoreIC : public IC {
|
| public:
|
| - STATIC_ASSERT(i::LANGUAGE_END == 3);
|
| - class LanguageModeState : public BitField<LanguageMode, 1, 2> {};
|
| static ExtraICState ComputeExtraICState(LanguageMode flag) {
|
| - return LanguageModeState::encode(flag);
|
| - }
|
| - static LanguageMode GetLanguageMode(ExtraICState state) {
|
| - return LanguageModeState::decode(state);
|
| + return StoreICState(flag).GetExtraICState();
|
| }
|
|
|
| - // For convenience, a statically declared encoding of strict mode extra
|
| - // IC state.
|
| - static const ExtraICState kStrictModeState = STRICT
|
| - << LanguageModeState::kShift;
|
| -
|
| StoreIC(FrameDepth depth, Isolate* isolate) : IC(depth, isolate) {
|
| DCHECK(IsStoreStub());
|
| }
|
|
|
| LanguageMode language_mode() const {
|
| - return LanguageModeState::decode(extra_ic_state());
|
| + return StoreICState::GetLanguageMode(extra_ic_state());
|
| }
|
|
|
| // Code generators for stub routines. Only called once at startup.
|
| @@ -587,7 +577,7 @@ class KeyedStoreIC : public StoreIC {
|
|
|
| static ExtraICState ComputeExtraICState(LanguageMode flag,
|
| KeyedAccessStoreMode mode) {
|
| - return LanguageModeState::encode(flag) |
|
| + return StoreICState(flag).GetExtraICState() |
|
| ExtraICStateKeyedAccessStoreMode::encode(mode) |
|
| IcCheckTypeField::encode(ELEMENT);
|
| }
|
|
|