Commit 4e6c956a authored by conradw's avatar conradw Committed by Commit bot

Fix overlapping KeyedLoadIC bitfield.

BUG=
LOG=N

Review URL: https://codereview.chromium.org/1192383003

Cr-Commit-Position: refs/heads/master@{#29148}
parent 1021ed85
...@@ -203,11 +203,14 @@ class CompareICState { ...@@ -203,11 +203,14 @@ class CompareICState {
class LoadICState final BASE_EMBEDDED { class LoadICState final BASE_EMBEDDED {
private: private:
class ContextualModeBits : public BitField<ContextualMode, 0, 1> {}; class ContextualModeBits : public BitField<ContextualMode, 0, 1> {};
class LanguageModeBits : public BitField<LanguageMode, 1, 2> {}; class LanguageModeBits
: public BitField<LanguageMode, ContextualModeBits::kNext, 2> {};
STATIC_ASSERT(static_cast<int>(NOT_CONTEXTUAL) == 0); STATIC_ASSERT(static_cast<int>(NOT_CONTEXTUAL) == 0);
const ExtraICState state_; const ExtraICState state_;
public: public:
static const uint32_t kNextBitFieldOffset = LanguageModeBits::kNext;
static const ExtraICState kStrongModeState = STRONG static const ExtraICState kStrongModeState = STRONG
<< LanguageModeBits::kShift; << LanguageModeBits::kShift;
......
...@@ -444,7 +444,8 @@ class LoadIC : public IC { ...@@ -444,7 +444,8 @@ class LoadIC : public IC {
class KeyedLoadIC : public LoadIC { class KeyedLoadIC : public LoadIC {
public: public:
// ExtraICState bits (building on IC) // ExtraICState bits (building on IC)
class IcCheckTypeField : public BitField<IcCheckType, 2, 1> {}; class IcCheckTypeField
: public BitField<IcCheckType, LoadICState::kNextBitFieldOffset, 1> {};
static ExtraICState ComputeExtraICState(ContextualMode contextual_mode, static ExtraICState ComputeExtraICState(ContextualMode contextual_mode,
LanguageMode language_mode, LanguageMode language_mode,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment