mirror of
https://github.com/nodejs/node.git
synced 2025-05-15 17:51:35 +00:00

PR-URL: https://github.com/nodejs/node/pull/36139 Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Myles Borins <myles.borins@gmail.com> Reviewed-By: Shelley Vohr <codebytere@gmail.com>
22 lines
786 B
JavaScript
22 lines
786 B
JavaScript
// Copyright 2020 the V8 project authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
// Flags: --allow-natives-syntax
|
|
|
|
// Add --allow-natives-syntax --runtime-call-stats to your test file in order to
|
|
// use this function. You can suppress the extra printout by calling
|
|
// %GetAndResetRuntimeCallStats() at the end of the test.
|
|
function getRuntimeFunctionCallCount(function_name) {
|
|
const stats = %GetAndResetRuntimeCallStats();
|
|
const lines = stats.split("\n");
|
|
for (let i = 3; i < lines.length - 3; ++i) {
|
|
const line = lines[i];
|
|
const m = line.match(/(?<name>\S+)\s+\S+\s+\S+\s+(?<count>\S+)/);
|
|
if (function_name == m.groups.name) {
|
|
return m.groups.count;
|
|
}
|
|
}
|
|
return 0;
|
|
}
|