summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Marshall <petermarshall@chromium.org>2020-08-05 14:28:15 +0200
committerRichard Lau <rlau@redhat.com>2021-03-15 23:46:05 +0000
commitdfa04d90353e55b63474142859dabce725c493c5 (patch)
tree3ef9ee08bc8595fedf42f1f0da1d1157c91a5457
parenta0b610450a95d2111fbd2053dc9a4c840d618ac1 (diff)
downloadnode-new-dfa04d90353e55b63474142859dabce725c493c5.tar.gz
deps: V8: cherry-pick beebee4f80ff
Original commit message: ``` cpu-profiler: Use Handle version of SourcePositionTableIterator The surrounding code can trigger an allocation through InliningStack which can eventually end up allocating a line ends array. This is fine as-is because the existing iterator code makes a copy of the byte array. It just triggers the no_gc dcheck in debug mode. Fixed: v8:10778 Change-Id: Ic8c502767ec6c3d3b1f5e84df60638bd2fc6be75 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339102 Auto-Submit: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#69247} ``` Refs: https://github.com/v8/v8/commit/beebee4f80ff2eb91187ef1e8fa00b8ff82a20b3 PR-URL: https://github.com/nodejs/node/pull/37293 Backport-PR-URL: https://github.com/nodejs/node/pull/37578 Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com>
-rw-r--r--common.gypi2
-rw-r--r--deps/v8/src/profiler/profiler-listener.cc3
2 files changed, 3 insertions, 2 deletions
diff --git a/common.gypi b/common.gypi
index 102f090774..a6556a4cb7 100644
--- a/common.gypi
+++ b/common.gypi
@@ -34,7 +34,7 @@
# Reset this number to 0 on major V8 upgrades.
# Increment by one for each non-official patch applied to deps/v8.
- 'v8_embedder_string': '-node.45',
+ 'v8_embedder_string': '-node.46',
##### V8 defaults for Node.js #####
diff --git a/deps/v8/src/profiler/profiler-listener.cc b/deps/v8/src/profiler/profiler-listener.cc
index b00c1f5cfd..3110cdfec2 100644
--- a/deps/v8/src/profiler/profiler-listener.cc
+++ b/deps/v8/src/profiler/profiler-listener.cc
@@ -120,7 +120,8 @@ void ProfilerListener::CodeCreateEvent(CodeEventListener::LogEventsAndTags tag,
// profiler as is stored on the code object, except that we transform source
// positions to line numbers here, because we only care about attributing
// ticks to a given line.
- for (SourcePositionTableIterator it(abstract_code.source_position_table());
+ for (SourcePositionTableIterator it(
+ handle(abstract_code.source_position_table(), isolate_));
!it.done(); it.Advance()) {
int position = it.source_position().ScriptOffset();
int inlining_id = it.source_position().InliningId();