Index: test/js-perf-test/Modules/run.js |
diff --git a/test/js-perf-test/Modules/run.js b/test/js-perf-test/Modules/run.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..81174d2aa71fcd4c9ca6104c787d8a9a6ec6dddc |
--- /dev/null |
+++ b/test/js-perf-test/Modules/run.js |
@@ -0,0 +1,63 @@ |
+// 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. |
+ |
+ |
+load('../base.js'); |
+ |
+ |
+new BenchmarkSuite('BasicExport', [100], [ |
+ new Benchmark('BasicExport', false, false, 0, BasicExport) |
+]); |
+ |
+new BenchmarkSuite('BasicImport', [100], [ |
+ new Benchmark('BasicImport', false, false, 0, BasicImport) |
+]); |
+ |
+new BenchmarkSuite('BasicNamespace', [100], [ |
+ new Benchmark('BasicNamespace', false, false, 0, BasicNamespace) |
+]); |
+ |
+ |
+const iterations = 3000000; |
+ |
+ |
+function BasicExport() { |
+ let success = false; |
+ import("basic-export.js").then(_ => success = true); |
+ %RunMicrotasks(); |
+ if (!success) throw new Error(666); |
+} |
+ |
+function BasicImport() { |
+ let success = false; |
+ import("basic-import.js").then(_ => success = true); |
+ %RunMicrotasks(); |
+ if (!success) throw new Error(666); |
+} |
+ |
+function BasicNamespace() { |
+ let success = false; |
+ import("basic-namespace.js").then(_ => success = true); |
+ %RunMicrotasks(); |
+ if (!success) throw new Error(666); |
+} |
+ |
+ |
+var success = true; |
+ |
+function PrintResult(name, result) { |
+ print(name + '-Modules(Score): ' + result); |
+} |
+ |
+function PrintError(name, error) { |
+ PrintResult(name, error); |
+ success = false; |
+} |
+ |
+ |
+BenchmarkSuite.config.doWarmup = undefined; |
+BenchmarkSuite.config.doDeterministic = undefined; |
+ |
+BenchmarkSuite.RunSuites({ NotifyResult: PrintResult, |
+ NotifyError: PrintError }); |