| Index: test/mjsunit/regress/regress-1229.js
|
| diff --git a/test/mjsunit/regress/regress-1229.js b/test/mjsunit/regress/regress-1229.js
|
| index f3979de1488c923fe654593f5a152f5fa871b5fb..a52e92a58e616367a32c58cbdf66d8cdd046666f 100644
|
| --- a/test/mjsunit/regress/regress-1229.js
|
| +++ b/test/mjsunit/regress/regress-1229.js
|
| @@ -126,19 +126,39 @@ invoke(h3, [8, 6, 4]);
|
| // Check that %_IsConstructCall returns correct value when inlined
|
| var NON_CONSTRUCT_MARKER = {};
|
| var CONSTRUCT_MARKER = {};
|
| -function baz(x) {
|
| +function baz1(x) {
|
| return (!%_IsConstructCall()) ? NON_CONSTRUCT_MARKER : CONSTRUCT_MARKER;
|
| }
|
|
|
| -function bar(x, y, z) {
|
| - var non_construct = baz(0); /* baz should be inlined */
|
| - assertEquals(non_construct, NON_CONSTRUCT_MARKER);
|
| - var non_construct = baz(); /* baz should be inlined */
|
| - assertEquals(non_construct, NON_CONSTRUCT_MARKER);
|
| - var non_construct = baz(0, 0); /* baz should be inlined */
|
| - assertEquals(non_construct, NON_CONSTRUCT_MARKER);
|
| - var construct = new baz(0);
|
| - assertEquals(construct, CONSTRUCT_MARKER);
|
| +function bar1(x, y, z) {
|
| + var non_construct = baz1(0); /* baz should be inlined */
|
| + assertSame(non_construct, NON_CONSTRUCT_MARKER);
|
| + var non_construct = baz1(); /* baz should be inlined */
|
| + assertSame(non_construct, NON_CONSTRUCT_MARKER);
|
| + var non_construct = baz1(0, 0); /* baz should be inlined */
|
| + assertSame(non_construct, NON_CONSTRUCT_MARKER);
|
| + var construct = new baz1(0);
|
| + assertSame(construct, CONSTRUCT_MARKER);
|
| + var construct = new baz1(0, 0);
|
| + assertSame(construct, CONSTRUCT_MARKER);
|
| }
|
|
|
| -invoke(bar, [1, 2, 3]);
|
| +function baz2(x) {
|
| + return (!%IsConstructCall()) ? NON_CONSTRUCT_MARKER : CONSTRUCT_MARKER;
|
| +}
|
| +
|
| +function bar2(x, y, z) {
|
| + var non_construct = baz2(0); /* baz should be inlined */
|
| + assertSame(non_construct, NON_CONSTRUCT_MARKER);
|
| + var non_construct = baz2(); /* baz should be inlined */
|
| + assertSame(non_construct, NON_CONSTRUCT_MARKER);
|
| + var non_construct = baz2(0, 0); /* baz should be inlined */
|
| + assertSame(non_construct, NON_CONSTRUCT_MARKER);
|
| + var construct = new baz2(0);
|
| + assertSame(construct, CONSTRUCT_MARKER);
|
| + var construct = new baz2(0, 0);
|
| + assertSame(construct, CONSTRUCT_MARKER);
|
| +}
|
| +
|
| +invoke(bar1, [1, 2, 3]);
|
| +invoke(bar2, [1, 2, 3]);
|
|
|