diff --git a/AUTHORS b/AUTHORS index 60d5998e5e..d2dab733d2 100644 --- a/AUTHORS +++ b/AUTHORS @@ -7,6 +7,7 @@ Google Inc. Sigma Designs Inc. ARM Ltd. Hewlett-Packard Development Company, LP +Igalia, S.L. Akinori MUSHA Alexander Botero-Lowry diff --git a/src/arm/lithium-arm.cc b/src/arm/lithium-arm.cc index 141b555ada..9849f4a094 100644 --- a/src/arm/lithium-arm.cc +++ b/src/arm/lithium-arm.cc @@ -2217,7 +2217,6 @@ LInstruction* LChunkBuilder::DoEnterInlined(HEnterInlined* instr) { HConstant* undefined = graph()->GetConstantUndefined(); HEnvironment* inner = outer->CopyForInlining(instr->closure(), instr->function(), - HEnvironment::LITHIUM, undefined, instr->call_kind()); current_block_->UpdateEnvironment(inner); diff --git a/src/hydrogen.cc b/src/hydrogen.cc index 64bca9ed1b..5e6b42ebd7 100644 --- a/src/hydrogen.cc +++ b/src/hydrogen.cc @@ -4449,7 +4449,6 @@ bool HGraphBuilder::TryInline(Call* expr) { HEnvironment* inner_env = environment()->CopyForInlining(target, function, - HEnvironment::HYDROGEN, undefined, call_kind); HBasicBlock* body_entry = CreateBasicBlock(inner_env); @@ -6212,7 +6211,6 @@ HEnvironment* HEnvironment::CopyAsLoopHeader(HBasicBlock* loop_header) const { HEnvironment* HEnvironment::CopyForInlining( Handle target, FunctionLiteral* function, - CompilationPhase compilation_phase, HConstant* undefined, CallKind call_kind) const { // Outer environment is a copy of this one without the arguments. @@ -6224,17 +6222,9 @@ HEnvironment* HEnvironment::CopyForInlining( HEnvironment* inner = new(zone) HEnvironment(outer, function->scope(), target); // Get the argument values from the original environment. - if (compilation_phase == HYDROGEN) { - for (int i = 0; i <= arity; ++i) { // Include receiver. - HValue* push = ExpressionStackAt(arity - i); - inner->SetValueAt(i, push); - } - } else { - ASSERT(compilation_phase == LITHIUM); - for (int i = 0; i <= arity; ++i) { // Include receiver. - HValue* push = ExpressionStackAt(arity - i); - inner->SetValueAt(i, push); - } + for (int i = 0; i <= arity; ++i) { // Include receiver. + HValue* push = ExpressionStackAt(arity - i); + inner->SetValueAt(i, push); } // If the function we are inlining is a strict mode function or a // builtin function, pass undefined as the receiver for function diff --git a/src/hydrogen.h b/src/hydrogen.h index d8192b2dae..88413ed9d2 100644 --- a/src/hydrogen.h +++ b/src/hydrogen.h @@ -329,8 +329,6 @@ Zone* HBasicBlock::zone() { return graph_->zone(); } class HEnvironment: public ZoneObject { public: - enum CompilationPhase { HYDROGEN, LITHIUM }; - HEnvironment(HEnvironment* outer, Scope* scope, Handle closure); @@ -417,12 +415,9 @@ class HEnvironment: public ZoneObject { // Create an "inlined version" of this environment, where the original // environment is the outer environment but the top expression stack - // elements are moved to an inner environment as parameters. If - // is_speculative, the argument values are expected to be PushArgument - // instructions, otherwise they are the actual values. + // elements are moved to an inner environment as parameters. HEnvironment* CopyForInlining(Handle target, FunctionLiteral* function, - CompilationPhase compilation_phase, HConstant* undefined, CallKind call_kind) const; diff --git a/src/ia32/lithium-ia32.cc b/src/ia32/lithium-ia32.cc index 6b9178d70e..9981991389 100644 --- a/src/ia32/lithium-ia32.cc +++ b/src/ia32/lithium-ia32.cc @@ -2267,7 +2267,6 @@ LInstruction* LChunkBuilder::DoEnterInlined(HEnterInlined* instr) { HConstant* undefined = graph()->GetConstantUndefined(); HEnvironment* inner = outer->CopyForInlining(instr->closure(), instr->function(), - HEnvironment::LITHIUM, undefined, instr->call_kind()); current_block_->UpdateEnvironment(inner); diff --git a/src/x64/lithium-x64.cc b/src/x64/lithium-x64.cc index 3151ce3678..42e60c3d90 100644 --- a/src/x64/lithium-x64.cc +++ b/src/x64/lithium-x64.cc @@ -2208,7 +2208,6 @@ LInstruction* LChunkBuilder::DoEnterInlined(HEnterInlined* instr) { HConstant* undefined = graph()->GetConstantUndefined(); HEnvironment* inner = outer->CopyForInlining(instr->closure(), instr->function(), - HEnvironment::LITHIUM, undefined, instr->call_kind()); current_block_->UpdateEnvironment(inner);