summaryrefslogtreecommitdiff
path: root/deps/v8/test/js-perf-test/BytecodeHandlers/LdaGlobal.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/test/js-perf-test/BytecodeHandlers/LdaGlobal.js')
-rw-r--r--deps/v8/test/js-perf-test/BytecodeHandlers/LdaGlobal.js60
1 files changed, 60 insertions, 0 deletions
diff --git a/deps/v8/test/js-perf-test/BytecodeHandlers/LdaGlobal.js b/deps/v8/test/js-perf-test/BytecodeHandlers/LdaGlobal.js
new file mode 100644
index 0000000000..a986f5f18f
--- /dev/null
+++ b/deps/v8/test/js-perf-test/BytecodeHandlers/LdaGlobal.js
@@ -0,0 +1,60 @@
+// Copyright 2019 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.
+
+function addBenchmark(name, test) {
+ new BenchmarkSuite(name, [1000],
+ [
+ new Benchmark(name, false, false, 0, test)
+ ]);
+}
+
+addBenchmark('LoadGlobal', ldaGlobal);
+addBenchmark('LoadGlobalInsideTypeof', ldaGlobalInsideTypeof);
+
+var g_var = 10;
+
+function ldaGlobal() {
+ for (var i = 0; i < 1000; ++i) {
+ g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var;
+ g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var;
+ g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var;
+ g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var;
+ g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var;
+ g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var;
+ g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var;
+ g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var;
+ g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var;
+ g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var; g_var;
+ }
+}
+
+function ldaGlobalInsideTypeof() {
+ for (var i = 0; i < 1000; ++i) {
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ typeof(g_var); typeof(g_var); typeof(g_var); typeof(g_var);
+ }
+}