| Index: src/compiler/js-inlining.cc
|
| diff --git a/src/compiler/js-inlining.cc b/src/compiler/js-inlining.cc
|
| index f2abb6c8f46122f0e59283967939e501d5a3816e..110cec521d27c5407799482952b105fde5c0dab4 100644
|
| --- a/src/compiler/js-inlining.cc
|
| +++ b/src/compiler/js-inlining.cc
|
| @@ -405,19 +405,21 @@ void JSInliner::TryInlineJSCall(Node* call_node) {
|
|
|
| Inlinee inlinee(visitor.GetCopy(graph.start()), visitor.GetCopy(graph.end()));
|
|
|
| - Node* outer_frame_state = call.frame_state();
|
| - // Insert argument adaptor frame if required.
|
| - if (call.formal_arguments() != inlinee.formal_parameters()) {
|
| - outer_frame_state =
|
| - CreateArgumentsAdaptorFrameState(&call, function, info.zone());
|
| - }
|
| + if (FLAG_turbo_deoptimization) {
|
| + Node* outer_frame_state = call.frame_state();
|
| + // Insert argument adaptor frame if required.
|
| + if (call.formal_arguments() != inlinee.formal_parameters()) {
|
| + outer_frame_state =
|
| + CreateArgumentsAdaptorFrameState(&call, function, info.zone());
|
| + }
|
|
|
| - for (NodeVectorConstIter it = visitor.copies().begin();
|
| - it != visitor.copies().end(); ++it) {
|
| - Node* node = *it;
|
| - if (node != NULL && node->opcode() == IrOpcode::kFrameState) {
|
| - AddClosureToFrameState(node, function);
|
| - NodeProperties::ReplaceFrameStateInput(node, outer_frame_state);
|
| + for (NodeVectorConstIter it = visitor.copies().begin();
|
| + it != visitor.copies().end(); ++it) {
|
| + Node* node = *it;
|
| + if (node != NULL && node->opcode() == IrOpcode::kFrameState) {
|
| + AddClosureToFrameState(node, function);
|
| + NodeProperties::ReplaceFrameStateInput(node, outer_frame_state);
|
| + }
|
| }
|
| }
|
|
|
|
|