| Index: src/compiler/js-operator.h
|
| diff --git a/src/compiler/js-operator.h b/src/compiler/js-operator.h
|
| index 26d7e6236548cd82a846e0d04e61b838a74e575c..f3f0ca6fdfbd1b0655c6fb99148506e9a0fa4a16 100644
|
| --- a/src/compiler/js-operator.h
|
| +++ b/src/compiler/js-operator.h
|
| @@ -88,7 +88,7 @@ class CallFunctionParameters final {
|
|
|
| const uint32_t bit_field_;
|
| const VectorSlotPair feedback_;
|
| - bool tail_call_mode_;
|
| + TailCallMode tail_call_mode_;
|
| };
|
|
|
| size_t hash_value(CallFunctionParameters const&);
|
| @@ -102,15 +102,17 @@ const CallFunctionParameters& CallFunctionParametersOf(const Operator* op);
|
| // parameter by JSCallRuntime operators.
|
| class CallRuntimeParameters final {
|
| public:
|
| - CallRuntimeParameters(Runtime::FunctionId id, size_t arity)
|
| - : id_(id), arity_(arity) {}
|
| + CallRuntimeParameters(Runtime::FunctionId id, size_t arity, TailCallMode mode)
|
| + : id_(id), arity_(arity), mode_(mode) {}
|
|
|
| Runtime::FunctionId id() const { return id_; }
|
| size_t arity() const { return arity_; }
|
| + TailCallMode mode() const { return mode_; }
|
|
|
| private:
|
| const Runtime::FunctionId id_;
|
| const size_t arity_;
|
| + const TailCallMode mode_;
|
| };
|
|
|
| bool operator==(CallRuntimeParameters const&, CallRuntimeParameters const&);
|
| @@ -482,7 +484,8 @@ class JSOperatorBuilder final : public ZoneObject {
|
| size_t arity, CallFunctionFlags flags, LanguageMode language_mode,
|
| VectorSlotPair const& feedback = VectorSlotPair(),
|
| TailCallMode tail_call_mode = NO_TAIL_CALLS);
|
| - const Operator* CallRuntime(Runtime::FunctionId id, size_t arity);
|
| + const Operator* CallRuntime(Runtime::FunctionId id, size_t arity,
|
| + TailCallMode mode = ALLOW_TAIL_CALLS);
|
|
|
| const Operator* CallConstruct(int arguments);
|
|
|
|
|