OLD | NEW |
1 // Copyright 2009 the V8 project authors. All rights reserved. | 1 // Copyright 2009 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
85 assertEquals(42.2, y.a, "y object in middle"); | 85 assertEquals(42.2, y.a, "y object in middle"); |
86 y.a = 41.2; | 86 y.a = 41.2; |
87 } | 87 } |
88 } | 88 } |
89 | 89 |
90 // The sizes to test. | 90 // The sizes to test. |
91 var sizes = [1, 2, 100, 200, 400]; | 91 var sizes = [1, 2, 100, 200, 400]; |
92 | 92 |
93 // Run the test. | 93 // Run the test. |
94 for (var i = 0; i < sizes.length; i++) { | 94 for (var i = 0; i < sizes.length; i++) { |
95 testLiteral(sizes[i], false, false); | 95 //testLiteral(sizes[i], false, false); Too slow. |
96 testLiteral(sizes[i], false, true); | 96 //testLiteral(sizes[i], false, true); Too slow. |
97 testLiteral(sizes[i], true, false); | 97 testLiteral(sizes[i], true, false); |
98 testLiteral(sizes[i], true, true); | 98 testLiteral(sizes[i], true, true); |
99 } | 99 } |
100 | 100 |
101 function testLiteralAndCatch(size) { | 101 function testLiteralAndCatch(size) { |
102 var big_enough = false; | 102 var big_enough = false; |
103 try { | 103 try { |
104 testLiteral(size, false, false); | 104 //testLiteral(size, false, false); Too slow. |
105 } catch (e) { | 105 } catch (e) { |
106 big_enough = true; | 106 big_enough = true; |
107 } | 107 } |
108 try { | 108 try { |
109 testLiteral(size, false, true); | 109 //testLiteral(size, false, true); Too slow. |
110 } catch (e) { | 110 } catch (e) { |
111 big_enough = true; | 111 big_enough = true; |
112 } | 112 } |
113 try { | 113 try { |
114 testLiteral(size, true, false); | 114 testLiteral(size, true, false); |
115 } catch (e) { | 115 } catch (e) { |
116 big_enough = true; | 116 big_enough = true; |
117 } | 117 } |
118 try { | 118 try { |
119 testLiteral(size, true, true); | 119 testLiteral(size, true, true); |
120 } catch (e) { | 120 } catch (e) { |
121 big_enough = true; | 121 big_enough = true; |
122 } | 122 } |
123 return big_enough; | 123 return big_enough; |
124 } | 124 } |
125 | 125 |
126 // Catch stack overflows. | 126 // Catch stack overflows. |
127 | 127 |
128 testLiteralAndCatch(1000) || | 128 testLiteralAndCatch(1000) || |
129 testLiteralAndCatch(20000) || | 129 testLiteralAndCatch(20000) || |
130 testLiteralAndCatch(200000); | 130 testLiteralAndCatch(200000); |
OLD | NEW |