Index: src/ic/ic-state.h |
diff --git a/src/ic/ic-state.h b/src/ic/ic-state.h |
index e1d33f867855b108153261e2e05236e08dcf86e3..bd8df781abbc18a93379360619a2a96a9c03358e 100644 |
--- a/src/ic/ic-state.h |
+++ b/src/ic/ic-state.h |
@@ -26,10 +26,11 @@ class CallICState final BASE_EMBEDDED { |
explicit CallICState(ExtraICState extra_ic_state) |
: bit_field_(extra_ic_state) {} |
CallICState(int argc, ConvertReceiverMode convert_mode, |
- TailCallMode tail_call_mode) |
+ TailCallMode tail_call_mode, bool is_argc_in_reg = false) |
: bit_field_(ArgcBits::encode(argc) | |
ConvertModeBits::encode(convert_mode) | |
- TailCallModeBits::encode(tail_call_mode)) {} |
+ TailCallModeBits::encode(tail_call_mode) | |
+ ArgcInRegBits::encode(is_argc_in_reg)) {} |
ExtraICState GetExtraICState() const { return bit_field_; } |
@@ -44,11 +45,13 @@ class CallICState final BASE_EMBEDDED { |
TailCallMode tail_call_mode() const { |
return TailCallModeBits::decode(bit_field_); |
} |
+ bool argc_in_register() { return ArgcInRegBits::decode(bit_field_); } |
private: |
typedef BitField<int, 0, Code::kArgumentsBits> ArgcBits; |
typedef BitField<ConvertReceiverMode, ArgcBits::kNext, 2> ConvertModeBits; |
typedef BitField<TailCallMode, ConvertModeBits::kNext, 1> TailCallModeBits; |
+ typedef BitField<bool, TailCallModeBits::kNext, 1> ArgcInRegBits; |
int const bit_field_; |
}; |