summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/ion/iterator-indices-5.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/ion/iterator-indices-5.js')
-rw-r--r--js/src/jit-test/tests/ion/iterator-indices-5.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/ion/iterator-indices-5.js b/js/src/jit-test/tests/ion/iterator-indices-5.js
new file mode 100644
index 0000000000..6982b26d2d
--- /dev/null
+++ b/js/src/jit-test/tests/ion/iterator-indices-5.js
@@ -0,0 +1,30 @@
+function bar(o, trigger) {
+ with ({}) {}
+ if (trigger) {
+ Object.defineProperty(o, "y", {
+ get() { return 3; }
+ });
+ }
+}
+
+function foo(o, trigger) {
+ var result;
+ for (var key in o) {
+ result = o[key];
+ bar(o, trigger);
+ }
+ return result;
+}
+
+var arr = [];
+for (var i = 0; i < 10; i++) {
+ arr.push({["x" + i]: 0, y: 0});
+}
+
+with ({}) {}
+for (var i = 0; i < 1000; i++) {
+ for (var o of arr) {
+ foo(o, false)
+ }
+}
+print(foo(arr[0], true));