Chromium Code Reviews| Index: src/compiler/js-create-lowering.cc |
| diff --git a/src/compiler/js-create-lowering.cc b/src/compiler/js-create-lowering.cc |
| index e1cf237aee1220dad9e19335212d44f8ba8af422..df4c8c13e8065a964ed5ee80d40bdbf2428722aa 100644 |
| --- a/src/compiler/js-create-lowering.cc |
| +++ b/src/compiler/js-create-lowering.cc |
| @@ -210,8 +210,6 @@ Reduction JSCreateLowering::Reduce(Node* node) { |
| return ReduceJSCreateArguments(node); |
| case IrOpcode::kJSCreateArray: |
| return ReduceJSCreateArray(node); |
| - case IrOpcode::kJSCreateClosure: |
| - return ReduceJSCreateClosure(node); |
| case IrOpcode::kJSCreateIterResultObject: |
| return ReduceJSCreateIterResultObject(node); |
| case IrOpcode::kJSCreateKeyValueArray: |
| @@ -752,48 +750,6 @@ Reduction JSCreateLowering::ReduceJSCreateArray(Node* node) { |
| return ReduceNewArrayToStubCall(node, site); |
| } |
| -Reduction JSCreateLowering::ReduceJSCreateClosure(Node* node) { |
| - if (!FLAG_turbo_lower_create_closure) return NoChange(); |
|
Michael Starzinger
2017/02/10 14:04:27
nit: Please also remove the flag, which should be
Jarin
2017/02/10 14:53:06
Done.
|
| - DCHECK_EQ(IrOpcode::kJSCreateClosure, node->opcode()); |
| - CreateClosureParameters const& p = CreateClosureParametersOf(node->op()); |
| - Handle<SharedFunctionInfo> shared = p.shared_info(); |
| - Node* effect = NodeProperties::GetEffectInput(node); |
| - Node* control = NodeProperties::GetControlInput(node); |
| - Node* context = NodeProperties::GetContextInput(node); |
| - |
| - int const function_map_index = |
| - Context::FunctionMapIndex(shared->language_mode(), shared->kind()); |
| - Node* function_map = jsgraph()->HeapConstant( |
| - handle(Map::cast(native_context()->get(function_map_index)), isolate())); |
| - |
| - FeedbackSlot slot = p.feedback().slot(); |
| - Node* literals_cell = jsgraph()->HeapConstant( |
| - handle(Cell::cast(p.feedback().vector()->Get(slot)), isolate())); |
| - |
| - // Note that it is only safe to embed the raw entry point of the compile |
| - // lazy stub into the code, because that stub is immortal and immovable. |
| - Node* compile_entry = jsgraph()->PointerConstant( |
| - jsgraph()->isolate()->builtins()->CompileLazy()->entry()); |
| - Node* empty_fixed_array = jsgraph()->EmptyFixedArrayConstant(); |
| - Node* the_hole = jsgraph()->TheHoleConstant(); |
| - Node* undefined = jsgraph()->UndefinedConstant(); |
| - AllocationBuilder a(jsgraph(), effect, control); |
| - STATIC_ASSERT(JSFunction::kSize == 9 * kPointerSize); |
| - a.Allocate(JSFunction::kSize, p.pretenure()); |
| - a.Store(AccessBuilder::ForMap(), function_map); |
| - a.Store(AccessBuilder::ForJSObjectProperties(), empty_fixed_array); |
| - a.Store(AccessBuilder::ForJSObjectElements(), empty_fixed_array); |
| - a.Store(AccessBuilder::ForJSFunctionFeedbackVector(), literals_cell); |
| - a.Store(AccessBuilder::ForJSFunctionPrototypeOrInitialMap(), the_hole); |
| - a.Store(AccessBuilder::ForJSFunctionSharedFunctionInfo(), shared); |
| - a.Store(AccessBuilder::ForJSFunctionContext(), context); |
| - a.Store(AccessBuilder::ForJSFunctionCodeEntry(), compile_entry); |
| - a.Store(AccessBuilder::ForJSFunctionNextFunctionLink(), undefined); |
| - RelaxControls(node); |
| - a.FinishAndChange(node); |
| - return Changed(node); |
| -} |
| - |
| Reduction JSCreateLowering::ReduceJSCreateIterResultObject(Node* node) { |
| DCHECK_EQ(IrOpcode::kJSCreateIterResultObject, node->opcode()); |
| Node* value = NodeProperties::GetValueInput(node, 0); |