summaryrefslogtreecommitdiff
path: root/benchmark/es/restparams-bench.js
diff options
context:
space:
mode:
authorRuben Bridgewater <ruben@bridgewater.de>2018-01-23 13:18:30 +0100
committerRuben Bridgewater <ruben@bridgewater.de>2018-02-01 10:49:02 +0100
commit2072f343ad5c7f8a74e480c625b5b4df3d071bf1 (patch)
treeb80b147e612b5bb11475a79249d7e03de87969cb /benchmark/es/restparams-bench.js
parent1a8ed225b2ce66451ec34705f0d96438671e0f70 (diff)
downloadandroid-node-v8-2072f343ad5c7f8a74e480c625b5b4df3d071bf1.tar.gz
android-node-v8-2072f343ad5c7f8a74e480c625b5b4df3d071bf1.tar.bz2
android-node-v8-2072f343ad5c7f8a74e480c625b5b4df3d071bf1.zip
benchmark: (es) refactor
PR-URL: https://github.com/nodejs/node/pull/18320 Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'benchmark/es/restparams-bench.js')
-rw-r--r--benchmark/es/restparams-bench.js38
1 files changed, 14 insertions, 24 deletions
diff --git a/benchmark/es/restparams-bench.js b/benchmark/es/restparams-bench.js
index 78299d292c..6ad766f10f 100644
--- a/benchmark/es/restparams-bench.js
+++ b/benchmark/es/restparams-bench.js
@@ -33,49 +33,39 @@ function useArguments() {
assert.strictEqual(arguments[3], 'b');
}
-function runCopyArguments(n) {
-
- var i = 0;
- bench.start();
- for (; i < n; i++)
+function runCopyArguments(millions) {
+ for (var i = 0; i < millions * 1e6; i++)
copyArguments(1, 2, 'a', 'b');
- bench.end(n / 1e6);
}
-function runRestArguments(n) {
-
- var i = 0;
- bench.start();
- for (; i < n; i++)
+function runRestArguments(millions) {
+ for (var i = 0; i < millions * 1e6; i++)
restArguments(1, 2, 'a', 'b');
- bench.end(n / 1e6);
}
-function runUseArguments(n) {
-
- var i = 0;
- bench.start();
- for (; i < n; i++)
+function runUseArguments(millions) {
+ for (var i = 0; i < millions * 1e6; i++)
useArguments(1, 2, 'a', 'b');
- bench.end(n / 1e6);
}
function main({ millions, method }) {
- const n = millions * 1e6;
-
+ var fn;
switch (method) {
case '':
// Empty string falls through to next line as default, mostly for tests.
case 'copy':
- runCopyArguments(n);
+ fn = runCopyArguments;
break;
case 'rest':
- runRestArguments(n);
+ fn = runRestArguments;
break;
case 'arguments':
- runUseArguments(n);
+ fn = runUseArguments;
break;
default:
- throw new Error('Unexpected method');
+ throw new Error(`Unexpected method "${method}"`);
}
+ bench.start();
+ fn(millions);
+ bench.end(millions);
}