Index: src/compiler/js-call-reducer.cc |
diff --git a/src/compiler/js-call-reducer.cc b/src/compiler/js-call-reducer.cc |
index cd0ba00790bb0ffc23258a9a975cb85249fcca91..2785c4b4cda1958293b6da89208067bf9b32bb9a 100644 |
--- a/src/compiler/js-call-reducer.cc |
+++ b/src/compiler/js-call-reducer.cc |
@@ -544,44 +544,11 @@ Reduction JSCallReducer::ReduceJSCall(Node* node) { |
return Changed(node); |
} |
- // For CSA/C++ builtin {target}s, we can ensure that the number |
- // of parameters we pass to the {target} matches exactly the |
- // number of formal parameters expected by the builtin, and thus |
- // avoid creating an ArgumentsAdaptorFrame. This is safe because |
- // all CSA/C++ builtins that care about variable arguments are |
- // declared with the kDontAdaptArgumentsSentinel marker. |
- int builtin_index = shared->code()->builtin_index(); |
- if (builtin_index != -1 && shared->native() && !shared->IsInterpreted()) { |
- // Check if we have an arguments mismatch for {target}. |
- int arity = static_cast<int>(p.arity() - 2); |
- int num_parameters = shared->internal_formal_parameter_count(); |
- if (num_parameters != arity && |
- num_parameters != SharedFunctionInfo::kDontAdaptArgumentsSentinel) { |
- // Fill up missing parameters with undefined. |
- while (arity < num_parameters) { |
- node->InsertInput(graph()->zone(), arity + 2, |
- jsgraph()->UndefinedConstant()); |
- arity++; |
- } |
- // Remove additional parameters. |
- while (arity > num_parameters) { |
- node->RemoveInput(arity + 1); |
- arity--; |
- } |
- NodeProperties::ChangeOp( |
- node, javascript()->Call(arity + 2, p.frequency(), p.feedback(), |
- p.convert_mode(), p.tail_call_mode())); |
- // Try to further reduce the JSCall {node}. |
- Reduction const reduction = ReduceJSCall(node); |
- return reduction.Changed() ? reduction : Changed(node); |
- } |
- } |
- |
// Don't inline cross native context. |
if (function->native_context() != *native_context()) return NoChange(); |
// Check for known builtin functions. |
- switch (builtin_index) { |
+ switch (shared->code()->builtin_index()) { |
case Builtins::kBooleanConstructor: |
return ReduceBooleanConstructor(node); |
case Builtins::kFunctionPrototypeApply: |