js/src/jit-test/tests/basic/testBug602413.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:f48c295876bb
1 var so = [];
2
3 function U(unusedV)
4 {
5 for (var i = 0; i < so.length; ++i)
6 return false;
7 so.push(0);
8 }
9
10 function C(v)
11 {
12 if (typeof v == "object" || typeof v == "function") {
13 for (var i = 0; i < 10; ++i) {}
14 U(v);
15 }
16 }
17
18 function exploreProperties(obj)
19 {
20 var props = [];
21 for (var o = obj; o; o = Object.getPrototypeOf(o)) {
22 props = props.concat(Object.getOwnPropertyNames(o));
23 }
24 for (var i = 0; i < props.length; ++i) {
25 var p = props[i];
26 try {
27 var v = obj[p];
28 C(v);
29 } catch(e) { }
30 }
31 }
32
33 function boom()
34 {
35 var a = [];
36 var b = function(){};
37 var c = [{}];
38 exploreProperties(a);
39 exploreProperties(b);
40 exploreProperties(c);
41 exploreProperties(c);
42 }
43
44 boom();
45

mercurial