summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/jaeger/bug563000
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/jaeger/bug563000')
-rw-r--r--js/src/jit-test/tests/jaeger/bug563000/eif-call-newvar.js12
-rw-r--r--js/src/jit-test/tests/jaeger/bug563000/eif-call-typechange.js11
-rw-r--r--js/src/jit-test/tests/jaeger/bug563000/eif-call.js11
-rw-r--r--js/src/jit-test/tests/jaeger/bug563000/eif-getter-newvar.js9
-rw-r--r--js/src/jit-test/tests/jaeger/bug563000/eif-getter-typechange.js9
-rw-r--r--js/src/jit-test/tests/jaeger/bug563000/eif-getter.js9
-rw-r--r--js/src/jit-test/tests/jaeger/bug563000/eif-global-newvar.js7
7 files changed, 68 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/jaeger/bug563000/eif-call-newvar.js b/js/src/jit-test/tests/jaeger/bug563000/eif-call-newvar.js
new file mode 100644
index 0000000000..635b5bb99f
--- /dev/null
+++ b/js/src/jit-test/tests/jaeger/bug563000/eif-call-newvar.js
@@ -0,0 +1,12 @@
+load(libdir + "evalInFrame.js");
+
+function callee() {
+ evalInFrame(1, "var x = 'success'");
+}
+function caller(code) {
+ eval(code);
+ callee();
+ return x;
+}
+assertEq(caller('var y = "ignominy"'), "success");
+assertEq(typeof x, "undefined");
diff --git a/js/src/jit-test/tests/jaeger/bug563000/eif-call-typechange.js b/js/src/jit-test/tests/jaeger/bug563000/eif-call-typechange.js
new file mode 100644
index 0000000000..486659a336
--- /dev/null
+++ b/js/src/jit-test/tests/jaeger/bug563000/eif-call-typechange.js
@@ -0,0 +1,11 @@
+load(libdir + "evalInFrame.js");
+
+function callee() {
+ evalInFrame(1, "x = 'success'");
+}
+function caller() {
+ var x = ({ dana : "zuul" });
+ callee();
+ return x;
+}
+assertEq(caller(), "success");
diff --git a/js/src/jit-test/tests/jaeger/bug563000/eif-call.js b/js/src/jit-test/tests/jaeger/bug563000/eif-call.js
new file mode 100644
index 0000000000..eff548c8b5
--- /dev/null
+++ b/js/src/jit-test/tests/jaeger/bug563000/eif-call.js
@@ -0,0 +1,11 @@
+load(libdir + "evalInFrame.js");
+
+function callee() {
+ evalInFrame(1, "x = 'success'");
+}
+function caller() {
+ var x = "failure";
+ callee();
+ return x;
+}
+assertEq(caller(), "success");
diff --git a/js/src/jit-test/tests/jaeger/bug563000/eif-getter-newvar.js b/js/src/jit-test/tests/jaeger/bug563000/eif-getter-newvar.js
new file mode 100644
index 0000000000..87e6923401
--- /dev/null
+++ b/js/src/jit-test/tests/jaeger/bug563000/eif-getter-newvar.js
@@ -0,0 +1,9 @@
+load(libdir + "evalInFrame.js");
+
+this.__defineGetter__("someProperty", function () { evalInFrame(1, "var x = 'success'"); });
+function caller(obj) {
+ var x = 'ignominy';
+ obj.someProperty;
+ return x;
+}
+assertEq(caller(this), "success");
diff --git a/js/src/jit-test/tests/jaeger/bug563000/eif-getter-typechange.js b/js/src/jit-test/tests/jaeger/bug563000/eif-getter-typechange.js
new file mode 100644
index 0000000000..067ec4dcda
--- /dev/null
+++ b/js/src/jit-test/tests/jaeger/bug563000/eif-getter-typechange.js
@@ -0,0 +1,9 @@
+load(libdir + "evalInFrame.js");
+
+this.__defineGetter__("someProperty", function () { evalInFrame(1, "var x = 'success'"); });
+function caller(obj) {
+ var x = ({ dana : 'zuul' });
+ obj.someProperty;
+ return x;
+}
+assertEq(caller(this), "success");
diff --git a/js/src/jit-test/tests/jaeger/bug563000/eif-getter.js b/js/src/jit-test/tests/jaeger/bug563000/eif-getter.js
new file mode 100644
index 0000000000..e64492ce47
--- /dev/null
+++ b/js/src/jit-test/tests/jaeger/bug563000/eif-getter.js
@@ -0,0 +1,9 @@
+load(libdir + "evalInFrame.js");
+
+this.__defineGetter__("someProperty", function () { evalInFrame(1, "x = 'success'"); });
+function caller(obj) {
+ var x = "failure";
+ obj.someProperty;
+ return x;
+}
+assertEq(caller(this), "success");
diff --git a/js/src/jit-test/tests/jaeger/bug563000/eif-global-newvar.js b/js/src/jit-test/tests/jaeger/bug563000/eif-global-newvar.js
new file mode 100644
index 0000000000..eb5ed0adff
--- /dev/null
+++ b/js/src/jit-test/tests/jaeger/bug563000/eif-global-newvar.js
@@ -0,0 +1,7 @@
+load(libdir + "evalInFrame.js");
+
+function callee() {
+ evalInFrame(1, "var x = 'success'");
+}
+callee();
+assertEq(x, "success");