ddf2621617
Evalling multiple long strings makes compilation cache the bottleneck: See https://bugs.chromium.org/p/v8/issues/detail?id=6779 for more information. BUG=v8:6779 Change-Id: I0014b1aca1258a643cbeb441a82707b163f8166d Reviewed-on: https://chromium-review.googlesource.com/649146 Reviewed-by: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#47801}
42 lines
1.0 KiB
JavaScript
42 lines
1.0 KiB
JavaScript
// Copyright 2017 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.
|
|
|
|
const iterations = 100;
|
|
|
|
new BenchmarkSuite('OneLineComment', [1000], [
|
|
new Benchmark('OneLineComment', false, true, iterations, Run, OneLineCommentSetup)
|
|
]);
|
|
|
|
new BenchmarkSuite('OneLineComments', [1000], [
|
|
new Benchmark('OneLineComments', false, true, iterations, Run, OneLineCommentsSetup)
|
|
]);
|
|
|
|
new BenchmarkSuite('MultiLineComment', [1000], [
|
|
new Benchmark('MultiLineComment', false, true, iterations, Run, MultiLineCommentSetup)
|
|
]);
|
|
|
|
let code;
|
|
|
|
function OneLineCommentSetup() {
|
|
code = "//" + " This is a comment... ".repeat(600);
|
|
%FlattenString(code);
|
|
}
|
|
|
|
function OneLineCommentsSetup() {
|
|
code = "// This is a comment.\n".repeat(600);
|
|
%FlattenString(code);
|
|
}
|
|
|
|
function MultiLineCommentSetup() {
|
|
code = "/*" + " This is a comment... ".repeat(600) + "*/";
|
|
%FlattenString(code);
|
|
}
|
|
|
|
function Run() {
|
|
if (code == undefined) {
|
|
throw new Error("No test data");
|
|
}
|
|
eval(code);
|
|
}
|