diff options
author | Michaël Zasso <targos@protonmail.com> | 2018-09-07 17:07:13 +0200 |
---|---|---|
committer | Michaël Zasso <targos@protonmail.com> | 2018-09-07 20:59:13 +0200 |
commit | 586db2414a338e1bf6eaf6e672a3adc7ce309f6a (patch) | |
tree | 139fa972aef648481ddee22a3a85b99707d28df5 /deps/v8/src/compiler/raw-machine-assembler.cc | |
parent | 12ed7c94e5160aa6d38e3d2cb2a73dae0a6f9342 (diff) | |
download | android-node-v8-586db2414a338e1bf6eaf6e672a3adc7ce309f6a.tar.gz android-node-v8-586db2414a338e1bf6eaf6e672a3adc7ce309f6a.tar.bz2 android-node-v8-586db2414a338e1bf6eaf6e672a3adc7ce309f6a.zip |
deps: update V8 to 6.9.427.22
PR-URL: https://github.com/nodejs/node/pull/21983
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Ujjwal Sharma <usharma1998@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Diffstat (limited to 'deps/v8/src/compiler/raw-machine-assembler.cc')
-rw-r--r-- | deps/v8/src/compiler/raw-machine-assembler.cc | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/deps/v8/src/compiler/raw-machine-assembler.cc b/deps/v8/src/compiler/raw-machine-assembler.cc index 778481f8c0..9e7bc9a611 100644 --- a/deps/v8/src/compiler/raw-machine-assembler.cc +++ b/deps/v8/src/compiler/raw-machine-assembler.cc @@ -24,12 +24,17 @@ RawMachineAssembler::RawMachineAssembler( machine_(zone(), word, flags, alignment_requirements), common_(zone()), call_descriptor_(call_descriptor), + target_parameter_(nullptr), parameters_(parameter_count(), zone()), current_block_(schedule()->start()), poisoning_level_(poisoning_level) { int param_count = static_cast<int>(parameter_count()); // Add an extra input for the JSFunction parameter to the start node. graph->SetStart(graph->NewNode(common_.Start(param_count + 1))); + if (call_descriptor->IsJSFunctionCall()) { + target_parameter_ = AddNode( + common()->Parameter(Linkage::kJSCallClosureParamIndex), graph->start()); + } for (size_t i = 0; i < parameter_count(); ++i) { parameters_[i] = AddNode(common()->Parameter(static_cast<int>(i)), graph->start()); @@ -55,17 +60,16 @@ Node* RawMachineAssembler::RelocatableIntPtrConstant(intptr_t value, Schedule* RawMachineAssembler::Export() { // Compute the correct codegen order. DCHECK(schedule_->rpo_order()->empty()); - OFStream os(stdout); if (FLAG_trace_turbo_scheduler) { PrintF("--- RAW SCHEDULE -------------------------------------------\n"); - os << *schedule_; + StdoutStream{} << *schedule_; } schedule_->EnsureCFGWellFormedness(); Scheduler::ComputeSpecialRPO(zone(), schedule_); schedule_->PropagateDeferredMark(); if (FLAG_trace_turbo_scheduler) { PrintF("--- EDGE SPLIT AND PROPAGATED DEFERRED SCHEDULE ------------\n"); - os << *schedule_; + StdoutStream{} << *schedule_; } // Invalidate RawMachineAssembler. Schedule* schedule = schedule_; @@ -73,6 +77,10 @@ Schedule* RawMachineAssembler::Export() { return schedule; } +Node* RawMachineAssembler::TargetParameter() { + DCHECK_NOT_NULL(target_parameter_); + return target_parameter_; +} Node* RawMachineAssembler::Parameter(size_t index) { DCHECK(index < parameter_count()); |