Index: src/code-stubs.h |
diff --git a/src/code-stubs.h b/src/code-stubs.h |
index 040bf10f774597fed42d95832a349d03631a1899..56d08b0ebcf3e1b2000d1439d41b240d5296c45f 100644 |
--- a/src/code-stubs.h |
+++ b/src/code-stubs.h |
@@ -1469,12 +1469,14 @@ class StringAddStub final : public HydrogenCodeStub { |
class CompareICStub : public PlatformCodeStub { |
public: |
- CompareICStub(Isolate* isolate, Token::Value op, CompareICState::State left, |
- CompareICState::State right, CompareICState::State state) |
+ CompareICStub(Isolate* isolate, Token::Value op, bool strong, |
+ CompareICState::State left, CompareICState::State right, |
+ CompareICState::State state) |
: PlatformCodeStub(isolate) { |
DCHECK(Token::IsCompareOp(op)); |
- minor_key_ = OpBits::encode(op - Token::EQ) | LeftStateBits::encode(left) | |
- RightStateBits::encode(right) | StateBits::encode(state); |
+ minor_key_ = OpBits::encode(op - Token::EQ) | StrongBits::encode(strong) | |
+ LeftStateBits::encode(left) | RightStateBits::encode(right) | |
+ StateBits::encode(state); |
} |
void set_known_map(Handle<Map> map) { known_map_ = map; } |
@@ -1485,6 +1487,8 @@ class CompareICStub : public PlatformCodeStub { |
return static_cast<Token::Value>(Token::EQ + OpBits::decode(minor_key_)); |
} |
+ bool strong() const { return StrongBits::decode(minor_key_); } |
+ |
CompareICState::State left() const { |
return LeftStateBits::decode(minor_key_); |
} |
@@ -1516,9 +1520,10 @@ class CompareICStub : public PlatformCodeStub { |
} |
class OpBits : public BitField<int, 0, 3> {}; |
- class LeftStateBits : public BitField<CompareICState::State, 3, 4> {}; |
- class RightStateBits : public BitField<CompareICState::State, 7, 4> {}; |
- class StateBits : public BitField<CompareICState::State, 11, 4> {}; |
+ class StrongBits : public BitField<bool, 3, 1> {}; |
+ class LeftStateBits : public BitField<CompareICState::State, 4, 4> {}; |
+ class RightStateBits : public BitField<CompareICState::State, 8, 4> {}; |
+ class StateBits : public BitField<CompareICState::State, 12, 4> {}; |
Handle<Map> known_map_; |