summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/ion/bug1073861.js
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /js/src/jit-test/tests/ion/bug1073861.js
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'js/src/jit-test/tests/ion/bug1073861.js')
-rw-r--r--js/src/jit-test/tests/ion/bug1073861.js69
1 files changed, 69 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/ion/bug1073861.js b/js/src/jit-test/tests/ion/bug1073861.js
new file mode 100644
index 000000000..fe837c45c
--- /dev/null
+++ b/js/src/jit-test/tests/ion/bug1073861.js
@@ -0,0 +1,69 @@
+function a(a, b, c, g) {
+ for (;;) {
+ if (0 > c) return a;
+ a: {
+ for (;;) {
+ var k = a.forward[c];
+ if (t(k))
+ if (k.key < b) a = k;
+ else break a;
+ else break a
+ }
+ a = void 0
+ }
+ null !=
+ g && (g[c] = a);
+ c -= 1
+ }
+}
+
+function t(a) {
+ return null != a && !1 !== a
+}
+
+
+var d = {forward: [{},null,{}]}
+for (var i=0; i < 1000; i++) {
+ a(d, 0, 1, null);
+ a(d, 0, 0, null);
+}
+
+
+
+
+function test(a) {
+ var t = a[0]
+ if (t) {
+ return t.test;
+ }
+}
+
+function test2(a) {
+ var t = a[0]
+ if (t) {
+ if (t) {
+ return t.test;
+ }
+ }
+}
+
+function test3(a) {
+ var t = a[0]
+ if (t !== null) {
+ if (t !== undefined) {
+ return t.test;
+ }
+ }
+}
+
+var a = [{test:1}]
+var b = [undefined]
+assertEq(test(b), undefined)
+assertEq(test(a), 1)
+assertEq(test(a), 1)
+assertEq(test2(b), undefined)
+assertEq(test2(a), 1)
+assertEq(test2(a), 1)
+assertEq(test3(b), undefined)
+assertEq(test3(a), 1)
+assertEq(test3(a), 1)