diff options
Diffstat (limited to 'js/src/jit-test/tests/ion/new-6.js')
-rw-r--r-- | js/src/jit-test/tests/ion/new-6.js | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/ion/new-6.js b/js/src/jit-test/tests/ion/new-6.js new file mode 100644 index 0000000000..6212cd91d8 --- /dev/null +++ b/js/src/jit-test/tests/ion/new-6.js @@ -0,0 +1,18 @@ +// Enter an Ion constructor via on-stack replacement. + +// This gets compiled and called by the interpreter. +// Allocation and primitive check need to happen caller-side. +function Foo() { + var y = 0; + for (var i = 0; i < 100; i++) + { y++ } + this.x = 5; + return y; +} + +eval("//nothing"); // Prevent compilation of global script. + +for (var i = 0; i < 100; i++) { + var x = new Foo(); + assertEq(typeof(x), "object"); +} |