| Index: src/compiler/js-operator.cc
|
| diff --git a/src/compiler/js-operator.cc b/src/compiler/js-operator.cc
|
| index 31d21f86cdd6f957d29680b985e51c70f0ba2d3a..f6b3328a44690e0400e6ba1a68f0d365ac978130 100644
|
| --- a/src/compiler/js-operator.cc
|
| +++ b/src/compiler/js-operator.cc
|
| @@ -41,7 +41,7 @@ size_t hash_value(VectorSlotPair const& p) {
|
|
|
|
|
| size_t hash_value(ConvertReceiverMode mode) {
|
| - return base::hash_value(static_cast<int>(mode));
|
| + return base::hash_value(static_cast<unsigned>(mode));
|
| }
|
|
|
|
|
| @@ -65,11 +65,26 @@ ConvertReceiverMode ConvertReceiverModeOf(Operator const* op) {
|
| }
|
|
|
|
|
| -std::ostream& operator<<(std::ostream& os, CallFunctionParameters const& p) {
|
| - os << p.arity() << ", " << p.flags() << ", " << p.language_mode();
|
| - if (p.AllowTailCalls()) {
|
| - os << ", ALLOW_TAIL_CALLS";
|
| +size_t hash_value(TailCallMode mode) {
|
| + return base::hash_value(static_cast<unsigned>(mode));
|
| +}
|
| +
|
| +
|
| +std::ostream& operator<<(std::ostream& os, TailCallMode mode) {
|
| + switch (mode) {
|
| + case TailCallMode::kAllow:
|
| + return os << "ALLOW_TAIL_CALLS";
|
| + case TailCallMode::kDisallow:
|
| + return os << "DISALLOW_TAIL_CALLS";
|
| }
|
| + UNREACHABLE();
|
| + return os;
|
| +}
|
| +
|
| +
|
| +std::ostream& operator<<(std::ostream& os, CallFunctionParameters const& p) {
|
| + os << p.arity() << ", " << p.language_mode() << ", " << p.convert_mode()
|
| + << ", " << p.tail_call_mode();
|
| return os;
|
| }
|
|
|
| @@ -470,10 +485,9 @@ CACHED_OP_LIST_WITH_LANGUAGE_MODE(CACHED_WITH_LANGUAGE_MODE)
|
|
|
|
|
| const Operator* JSOperatorBuilder::CallFunction(
|
| - size_t arity, CallFunctionFlags flags, LanguageMode language_mode,
|
| - VectorSlotPair const& feedback, ConvertReceiverMode convert_mode,
|
| - TailCallMode tail_call_mode) {
|
| - CallFunctionParameters parameters(arity, flags, language_mode, feedback,
|
| + size_t arity, LanguageMode language_mode, VectorSlotPair const& feedback,
|
| + ConvertReceiverMode convert_mode, TailCallMode tail_call_mode) {
|
| + CallFunctionParameters parameters(arity, language_mode, feedback,
|
| tail_call_mode, convert_mode);
|
| return new (zone()) Operator1<CallFunctionParameters>( // --
|
| IrOpcode::kJSCallFunction, Operator::kNoProperties, // opcode
|
|
|