summaryrefslogtreecommitdiff
path: root/deps/v8/src/compiler/js-inlining.cc
diff options
context:
space:
mode:
authorMichaël Zasso <targos@protonmail.com>2019-11-08 15:39:11 +0100
committerMichaël Zasso <targos@protonmail.com>2019-11-08 15:46:25 +0100
commit6ca81ad72a3c6fdf16c683335be748f22aaa9a0d (patch)
tree33c8ee75f729aed76c2c0b89c63f9bf1b4dd66aa /deps/v8/src/compiler/js-inlining.cc
parent1eee0b8bf8bba39b600fb16a9223e545e3bac2bc (diff)
downloadnode-new-6ca81ad72a3c6fdf16c683335be748f22aaa9a0d.tar.gz
deps: update V8 to 7.9.317.20
PR-URL: https://github.com/nodejs/node/pull/30020 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Diffstat (limited to 'deps/v8/src/compiler/js-inlining.cc')
-rw-r--r--deps/v8/src/compiler/js-inlining.cc23
1 files changed, 8 insertions, 15 deletions
diff --git a/deps/v8/src/compiler/js-inlining.cc b/deps/v8/src/compiler/js-inlining.cc
index 51179f1956..6c071438cc 100644
--- a/deps/v8/src/compiler/js-inlining.cc
+++ b/deps/v8/src/compiler/js-inlining.cc
@@ -321,7 +321,7 @@ base::Optional<SharedFunctionInfoRef> JSInliner::DetermineCallTarget(
// TODO(turbofan): We might consider to eagerly create the feedback vector
// in such a case (in {DetermineCallContext} below) eventually.
- FeedbackCellRef cell(FeedbackCellRef(broker(), p.feedback_cell()));
+ FeedbackCellRef cell(broker(), p.feedback_cell());
if (!cell.value().IsFeedbackVector()) return base::nullopt;
return SharedFunctionInfoRef(broker(), p.shared_info());
@@ -413,11 +413,11 @@ Reduction JSInliner::ReduceJSCall(Node* node) {
Node* exception_target = nullptr;
NodeProperties::IsExceptionalCall(node, &exception_target);
- // JSInliningHeuristic has already filtered candidates without a
- // BytecodeArray by calling SharedFunctionInfoRef::IsInlineable. For the ones
- // passing the IsInlineable check, The broker holds a reference to the
- // bytecode array, which prevents it from getting flushed.
- // Therefore, the following check should always hold true.
+ // JSInliningHeuristic has already filtered candidates without a BytecodeArray
+ // by calling SharedFunctionInfoRef::IsInlineable. For the ones passing the
+ // IsInlineable check, the broker holds a reference to the bytecode array,
+ // which prevents it from getting flushed. Therefore, the following check
+ // should always hold true.
CHECK(shared_info->is_compiled());
if (!FLAG_concurrent_inlining && info_->is_source_positions_enabled()) {
@@ -428,17 +428,10 @@ Reduction JSInliner::ReduceJSCall(Node* node) {
TRACE("Inlining " << *shared_info << " into " << outer_shared_info
<< ((exception_target != nullptr) ? " (inside try-block)"
: ""));
- // Determine the targets feedback vector and its context.
+ // Determine the target's feedback vector and its context.
Node* context;
FeedbackVectorRef feedback_vector = DetermineCallContext(node, &context);
-
- if (FLAG_concurrent_inlining &&
- !shared_info->IsSerializedForCompilation(feedback_vector)) {
- // TODO(neis): Should this be a broker message?
- TRACE("Missed opportunity to inline a function ("
- << *shared_info << " with " << feedback_vector << ")");
- return NoChange();
- }
+ CHECK(shared_info->IsSerializedForCompilation(feedback_vector));
// ----------------------------------------------------------------
// After this point, we've made a decision to inline this function.