| Index: test/mjsunit/regress/regress-3307.js
|
| diff --git a/test/mjsunit/regress/regress-check-eliminate-loop-phis.js b/test/mjsunit/regress/regress-3307.js
|
| similarity index 54%
|
| copy from test/mjsunit/regress/regress-check-eliminate-loop-phis.js
|
| copy to test/mjsunit/regress/regress-3307.js
|
| index 3791c35f71ccfc50dd384978e449103b39f6bff7..eba16cd7b9c3d8e456eed1a89e09dfcc8f07831b 100644
|
| --- a/test/mjsunit/regress/regress-check-eliminate-loop-phis.js
|
| +++ b/test/mjsunit/regress/regress-3307.js
|
| @@ -4,18 +4,21 @@
|
|
|
| // Flags: --allow-natives-syntax
|
|
|
| +function p(x) {
|
| + this.x = x;
|
| +}
|
| +
|
| function f() {
|
| - var o = {x:1};
|
| - var y = {y:2.5, x:0};
|
| - var result;
|
| - for (var i = 0; i < 2; i++) {
|
| - result = o.x + 3;
|
| - o = y;
|
| + var a = new p(1), b = new p(2);
|
| + for (var i = 0; i < 1; i++) {
|
| + a.x += b.x;
|
| }
|
| - return result;
|
| + return a.x;
|
| }
|
|
|
| -f();
|
| -f();
|
| +new p(0.1); // make 'x' mutable box double field in p.
|
| +
|
| +assertEquals(3, f());
|
| +assertEquals(3, f());
|
| %OptimizeFunctionOnNextCall(f);
|
| assertEquals(3, f());
|
|
|