summaryrefslogtreecommitdiff
path: root/cli/bench/deno_common.js
diff options
context:
space:
mode:
Diffstat (limited to 'cli/bench/deno_common.js')
-rw-r--r--cli/bench/deno_common.js25
1 files changed, 24 insertions, 1 deletions
diff --git a/cli/bench/deno_common.js b/cli/bench/deno_common.js
index c31ccd981..c02a6c883 100644
--- a/cli/bench/deno_common.js
+++ b/cli/bench/deno_common.js
@@ -5,8 +5,31 @@ Deno.bench("date_now", { n: 5e5 }, () => {
Date.now();
});
+// Fast API calls
+{
+ // deno-lint-ignore camelcase
+ const { op_add } = Deno.core.ops;
+ // deno-lint-ignore no-inner-declarations
+ function add(a, b) {
+ return op_add.call(a, b);
+ }
+ // deno-lint-ignore no-inner-declarations
+ function addJS(a, b) {
+ return a + b;
+ }
+ Deno.bench("op_add", { n: 1e7 }, () => add(1, 2));
+ Deno.bench("add_js", { n: 1e7 }, () => addJS(1, 2));
+}
+
+// deno-lint-ignore camelcase
+const { op_void_sync } = Deno.core.ops;
+function sync() {
+ return op_void_sync.call();
+}
+sync(); // Warmup
+console.log(sync());
// Void ops measure op-overhead
-Deno.bench("op_void_sync", { n: 1e7 }, () => Deno.core.opSync("op_void_sync"));
+Deno.bench("op_void_sync", { n: 1e7 }, () => sync());
Deno.bench(
"op_void_async",