diff options
Diffstat (limited to 'deps/v8/test/mjsunit/regress/regress-3307.js')
-rw-r--r-- | deps/v8/test/mjsunit/regress/regress-3307.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/deps/v8/test/mjsunit/regress/regress-3307.js b/deps/v8/test/mjsunit/regress/regress-3307.js new file mode 100644 index 000000000..1fc770d20 --- /dev/null +++ b/deps/v8/test/mjsunit/regress/regress-3307.js @@ -0,0 +1,24 @@ +// Copyright 2014 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Flags: --allow-natives-syntax + +function p(x) { + this.x = x; +} + +function f() { + var a = new p(1), b = new p(2); + for (var i = 0; i < 1; i++) { + a.x += b.x; + } + return a.x; +} + +new p(0.1); // make 'x' mutable box double field in p. + +assertEquals(3, f()); +assertEquals(3, f()); +%OptimizeFunctionOnNextCall(f); +assertEquals(3, f()); |