summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/jaeger/recompile/bug641225.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/jaeger/recompile/bug641225.js')
-rw-r--r--js/src/jit-test/tests/jaeger/recompile/bug641225.js150
1 files changed, 150 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/jaeger/recompile/bug641225.js b/js/src/jit-test/tests/jaeger/recompile/bug641225.js
new file mode 100644
index 000000000..a6e3a86c7
--- /dev/null
+++ b/js/src/jit-test/tests/jaeger/recompile/bug641225.js
@@ -0,0 +1,150 @@
+gczeal(1);
+var o0 = Function.prototype;
+o1 = {};
+var o4 = Error.prototype;
+o5 = new Int32Array(100);
+o6 = new Proxy({}, {})
+o8 = new Proxy(function() { return {}; }, {
+ get: function() { return 10; },
+});
+o9 = {};
+var o10 = -500;
+var o12 = new Int32Array(100);
+function f0(o) {
+}
+function f1(o) {
+}
+function f3(o) {
+ with(o) {}
+ o[o5] = o5;
+}
+function f5(o) {
+}for(var f2 in o9) {
+ for(var i1=0; i1<83; i1++) {
+ for(var i3=0; i3<98; i3++) {
+ for(var x in f1) { f1[x]; };
+ }
+ Object.defineProperty(o0, 'constructor', {enumerable: true,unused: 1 });
+ f1(f5);
+ f4(f3);
+ f3(o8);
+ f2(o5);
+ o9.toString(1, 2);
+ f4.caller = o3;
+ f2(o6);
+ f0(f2);
+ f1(f2);
+ f0(f1);
+ var key = Object.getOwnPropertyNames(o9)[2]; if(key) delete o9[key];
+ var props = Object.getOwnPropertyNames(o5);
+ if (props.length > 6) {
+ var prop = props[6];
+ o8[prop] = o5[prop];
+ }
+ f3(f1);
+ f1(f5);
+ }
+ for(var o3 in f1) {
+ f1(o3);
+ f4(o3);
+ o0 == f4;
+ f1(f3);
+ Object.freeze(o12);
+ f0(o9);
+ new f0(o1);
+ o4 = o5.call(o4, o4, o4, o4, o4, o4);
+ f2(o10);
+ var prop = Object.getOwnPropertyNames(o0)[15];
+ if (prop) { Object.defineProperty(o0, prop, {configurable: true,enumerable: true,get: function(){},set: function(){},unused: 1 }); }
+ f3(f1);
+ new f2(o0);
+ }
+ f5(o9);
+ gc();
+ f0(o2);
+ f3(f4);
+ new f4(o7);
+ f1 = new o10(f1, f1, f1, f1);
+ f5(o10);
+ f5(o7);
+ f0(o7);
+ f1(o10);
+ f3(o10);
+ delete f0.constructor;
+ f0(f3);
+ f1 = wrap(f3);
+ f4(f1);
+ delete o1.prototype;
+ f4(o5);
+ f2(f2);
+ o1 + '';
+ f2(f2);
+ f0(o12);
+ f0(o12);
+ f1(o3);
+ o5[3] = 8.3;
+ o10['__proto_' + '_'];
+}
+for(var o2 in f5) {
+ for(var o10 in f3) {
+ delete f2['__proto_' + '_'];
+ o8 = f1.toString;
+ f1(o1);
+ f0(o9);
+ f2(o12);
+ var key = Object.getOwnPropertyNames(o3)[19]; if(key) o9 = o3[key];
+ f1(o10);
+ f4(f1);
+ f1(o1);
+ f1(o7);
+ for(var x in o1) { o1[x]; };
+ f0(o8);
+ f4(o1);
+ f0(o1);
+ f0.p0 = o6;
+ f3(o9);
+ f5(o8);
+ f2 >>> o7;
+ if(o3 === o8) {}
+ f5(o3);
+ }
+ o5[0] = f4;
+ o0.caller = function() { };
+ Object.freeze(f0);
+ f4(o3);
+ o7.p0 = o3;
+ f1(f5);
+ f4(o10);
+ f2(o5);
+ f2(o5);
+ f0(o3);
+ o9.watch('p3', function() {});
+ o8[o8] = o8;
+ f0(o5);
+ f1(o6);
+ f2 = Object.create(o5);
+ var key = Object.getOwnPropertyNames(o11)[23]; if(key) f2 = o11[key];
+ f5(o9);
+ o12 = o6.bind(o12, o12, o12);
+ f5(f4);
+ f1(o1);
+ f0(o11);
+ f1(o11);
+ eval('f4');
+ f4(o1);
+ Object.isExtensible(o7);
+}
+(function() {
+ f1(o12);
+ f5 + '';
+ if(o8 != o3) {}
+})();
+f1(o10);
+f3(f0);
+o4.toSource = function() { };
+var _o = o1;
+var prop = Object.getOwnPropertyNames(_o)[5];
+if (prop) { _o[prop](o2, o2); }
+f3(o0);
+f1(f3);
+Object.isExtensible(f1);