Index: test/mjsunit/compiler/optimized-for-in.js |
diff --git a/test/mjsunit/compiler/optimized-for-in.js b/test/mjsunit/compiler/optimized-for-in.js |
index c8076ac73659301608a806a834cab8268e949690..4b841b20d40bff78c3068abe03d3733a43951e84 100644 |
--- a/test/mjsunit/compiler/optimized-for-in.js |
+++ b/test/mjsunit/compiler/optimized-for-in.js |
@@ -242,3 +242,23 @@ tryFunction("a1b2c3d4e5f6", function () { |
for (var i in t) r.push(i + t[i]); |
return r.join(''); |
}); |
+ |
+// Test OSR inside for each. |
fschneider
2012/02/22 15:29:59
s/for each/for-in/
|
+function osr (t) { |
+ var sum = 0; |
+ for (var x in t) { |
+ for (var i = 0; i < t[x].length; i++) { |
+ sum += t[x][i]; |
+ } |
+ } |
+ return sum; |
+} |
+ |
+function test_osr() { |
+ with ({}) {} // Disable optimizations of this function. |
+ var arr = new Array(1000000); |
+ for (var i = 0; i < arr.length; i++) arr[i] = i; |
+ osr({x: arr}); |
+} |
+ |
+test_osr(); |