| Index: src/ic/ic-state.h
|
| diff --git a/src/ic/ic-state.h b/src/ic/ic-state.h
|
| index 1982fbe08b3d9a9dd5c30828dd4ae4167e9d85ef..f4ed8ac79ca85a01bd2cbc0ca86163851fbb3bf1 100644
|
| --- a/src/ic/ic-state.h
|
| +++ b/src/ic/ic-state.h
|
| @@ -25,9 +25,11 @@ class CallICState final BASE_EMBEDDED {
|
| public:
|
| explicit CallICState(ExtraICState extra_ic_state)
|
| : bit_field_(extra_ic_state) {}
|
| - CallICState(int argc, ConvertReceiverMode convert_mode)
|
| + CallICState(int argc, ConvertReceiverMode convert_mode,
|
| + TailCallMode tail_call_mode)
|
| : bit_field_(ArgcBits::encode(argc) |
|
| - ConvertModeBits::encode(convert_mode)) {}
|
| + ConvertModeBits::encode(convert_mode) |
|
| + TailCallModeBits::encode(tail_call_mode)) {}
|
|
|
| ExtraICState GetExtraICState() const { return bit_field_; }
|
|
|
| @@ -39,11 +41,14 @@ class CallICState final BASE_EMBEDDED {
|
| ConvertReceiverMode convert_mode() const {
|
| return ConvertModeBits::decode(bit_field_);
|
| }
|
| + TailCallMode tail_call_mode() const {
|
| + return TailCallModeBits::decode(bit_field_);
|
| + }
|
|
|
| private:
|
| typedef BitField<int, 0, Code::kArgumentsBits> ArgcBits;
|
| - typedef BitField<ConvertReceiverMode, Code::kArgumentsBits, 2>
|
| - ConvertModeBits;
|
| + typedef BitField<ConvertReceiverMode, ArgcBits::kNext, 2> ConvertModeBits;
|
| + typedef BitField<TailCallMode, ConvertModeBits::kNext, 1> TailCallModeBits;
|
|
|
| int const bit_field_;
|
| };
|
|
|