| // 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); |
| } |