| Index: test/mjsunit/regress/regress-469605.js
|
| diff --git a/test/mjsunit/regress/regress-469605.js b/test/mjsunit/regress/regress-469605.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..65725117bd50069acad8326418f6e6e11a6ea38a
|
| --- /dev/null
|
| +++ b/test/mjsunit/regress/regress-469605.js
|
| @@ -0,0 +1,43 @@
|
| +// Copyright 2015 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.
|
| +
|
| +function counter() {
|
| + var i = 100;
|
| + return function() {
|
| + if (i-- > 0) return i;
|
| + throw "done";
|
| + }
|
| +}
|
| +
|
| +var c1 = counter();
|
| +var c2 = counter();
|
| +
|
| +var f = (function() {
|
| + "use asm";
|
| + return function f(i) {
|
| + i = i|0;
|
| + do {
|
| + if (i > 0) c1();
|
| + else c2();
|
| + } while (true);
|
| + }
|
| +})();
|
| +
|
| +assertThrows(function() { f(0); });
|
| +assertThrows(function() { f(1); });
|
| +
|
| +var c3 = counter();
|
| +
|
| +var g = (function() {
|
| + "use asm";
|
| + return function g(i) {
|
| + i = i + 1;
|
| + do {
|
| + i = c3(i);
|
| + } while (true);
|
| + }
|
| +})();
|
| +
|
| +assertThrows(function() { g(0); });
|
| +assertThrows(function() { g(1); });
|
|
|