diff options
Diffstat (limited to 'src/3rdparty/v8/test/mjsunit/regress')
517 files changed, 0 insertions, 27542 deletions
diff --git a/src/3rdparty/v8/test/mjsunit/regress/bitops-register-alias.js b/src/3rdparty/v8/test/mjsunit/regress/bitops-register-alias.js deleted file mode 100644 index 389255d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/bitops-register-alias.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that the code generator can cope with left and right being in -// the same register for bitops. -function f() { for (var i = 10; i < 100; i++) { return i | i; } } -assertEquals(10, f()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-100409.js b/src/3rdparty/v8/test/mjsunit/regress/regress-100409.js deleted file mode 100644 index c29250f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-100409.js +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function outer () { - var val = 0; - - function foo () { - val = 0; - val; - var z = false; - var y = true; - if (!z) { - while (z = !z) { - if (y) val++; - } - } - return val++; - } - - return foo; -} - - -var foo = outer(); - -assertEquals(1, foo()); -assertEquals(1, foo()); - %OptimizeFunctionOnNextCall(foo); -assertEquals(1, foo()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-100702.js b/src/3rdparty/v8/test/mjsunit/regress/regress-100702.js deleted file mode 100644 index 46494ab..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-100702.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for correct handling of non-object receiver values -// passed to built-in array functions. - -String.prototype.isThatMe = function () { - assertFalse(this === str); -}; - -var str = "abc"; -str.isThatMe(); -str.isThatMe.call(str); - -var arr = [1]; -arr.forEach("".isThatMe, str); -arr.filter("".isThatMe, str); -arr.some("".isThatMe, str); -arr.every("".isThatMe, str); -arr.map("".isThatMe, str); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1015.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1015.js deleted file mode 100644 index 9e4406a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1015.js +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1015 - -// Object and array literals should be created using DefineOwnProperty, and -// therefore not hit setters in the prototype. - -function mkFail(message) { - return function () { assertUnreachable(message); } -} - -Object.defineProperty(Object.prototype, "foo", - {get: mkFail("oget"), set: mkFail("oset")}); -Object.defineProperty(Array.prototype, "2", - {get: mkFail("aget"), set: mkFail("aset")}); - -function inFunction() { - for (var i = 0; i < 10; i++) { - // in loop. - var ja = JSON.parse('[1,2,3,4]'); - var jo = JSON.parse('{"bar": 10, "foo": 20}') - var jop = JSON.parse('{"bar": 10, "__proto__": { }, "foo": 20}') - var a = [1,2,3,4]; - var o = { bar: 10, foo: 20 }; - var op = { __proto__: { set bar(v) { assertUnreachable("bset"); } }, - bar: 10 }; - } -} - -for (var i = 0; i < 10; i++) { - // In global scope. - var ja = JSON.parse('[1,2,3,4]'); - var jo = JSON.parse('{"bar": 10, "foo": 20}') - var jop = JSON.parse('{"bar": 10, "__proto__": { }, "foo": 20}') - var a = [1,2,3,4]; - var o = { bar: 10, foo: 20 }; - var op = { __proto__: { set bar(v) { assertUnreachable("bset"); } }, - bar: 10 }; - // In function scope. - inFunction(); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1017.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1017.js deleted file mode 100644 index 3daf542..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1017.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1017 - -// 32 ASCII-characters followed by a non-ASCII character. -// This causes an internal buffer to first expand to 64 bytes, then expand the -// 32 ASCII characters to 64 bytes of UC16 characters, leaving no room -// to store the 33rd character. This fails an ASSERT in debug mode. - -assertEquals(33, "12345678901234567890123456789012\u2028".length); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1020.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1020.js deleted file mode 100644 index 307a61e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1020.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function isObject(o) { - return o instanceof Object; -} - -assertTrue(isObject(Object)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-102153.js b/src/3rdparty/v8/test/mjsunit/regress/regress-102153.js deleted file mode 100644 index 0f67656..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-102153.js +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug - -// Test that the break point is set before initializing the loop variable -// so that we break before any iteration has been run. - -Debug = debug.Debug; - -var break_hit = false; - -function listener(event, exec_state, event_data, data) { - if (event == Debug.DebugEvent.Break) { - break_hit = true; - } -} - -Debug.setListener(listener); - -function test() { - for (var i = 0; i < 3; i++) { // Break here. - if (i == 0) break; - } -} - -Debug.setBreakPoint(test, 1, 0); - -assertTrue(Debug.showBreakPoints(test).indexOf("// Break here.") >= 0); - -test(); - -assertTrue(break_hit); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1030466.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1030466.js deleted file mode 100644 index 8427ba0..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1030466.js +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Whenever we enter a with-scope, we copy the context. This in itself is fine -// (contexts may escape), but when leaving a with-scope, we currently also copy -// the context instead of reverting to the original. This does not work because -// inner functions may already have been created using the original context. In -// the failing test case below, the inner function is run in the original context -// (where x is undefined), but the assignment to x after the with-statement is -// run in the copied context: - -var result = (function outer() { - with ({}) { } - var x = 10; - function inner() { - return x; - }; - return inner(); -})(); - -assertEquals(10, result); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-103259.js b/src/3rdparty/v8/test/mjsunit/regress/regress-103259.js deleted file mode 100644 index 447073c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-103259.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -var a = []; -a[8192] = ''; -assertTrue(%HasDictionaryElements(a)); -var uc16 = '\u0094'; -var test = uc16; -for (var i = 0; i < 13; i++) test += test; -assertEquals(test, a.join(uc16)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1036894.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1036894.js deleted file mode 100644 index 03ed8f9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1036894.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertThrows("$=function anonymous() { /*noex*/do {} while(({ get x(x) { break ; }, set x() { (undefined);} })); }"); - -function foo() { - assertThrows("$=function anonymous() { /*noex*/do {} while(({ get x(x) { break ; }, set x() { (undefined);} })); }"); -} -foo(); - -assertThrows("$=function anonymous() { /*noex*/do {} while(({ get x(x) { break ; }, set x() { (undefined);} })); }"); - -xeval = function(s) { eval(s); } -xeval('$=function(){L: {break L;break L;}};'); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1039610.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1039610.js deleted file mode 100644 index fd5c549..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1039610.js +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Make sure that the Debug object does not return to the global object -assertTrue(typeof(Debug) === 'undefined');
\ No newline at end of file diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1050043.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1050043.js deleted file mode 100644 index e42728f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1050043.js +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function unsignedShiftRight(val, shift) { - return val >>> shift; -} - -assertEquals( 15, unsignedShiftRight(15, 0), "15 >>> 0"); -assertEquals( 7, unsignedShiftRight(15, 1), "15 >>> 1"); -assertEquals( 3, unsignedShiftRight(15, 2), "15 >>> 2"); - -assertEquals(4294967288, unsignedShiftRight(-8, 0), "-8 >>> 0"); -assertEquals(2147483644, unsignedShiftRight(-8, 1), "-8 >>> 1"); -assertEquals(1073741822, unsignedShiftRight(-8, 2), "-8 >>> 2"); - -assertEquals( 1, unsignedShiftRight(-8, 31), "-8 >>> 31"); -assertEquals(4294967288, unsignedShiftRight(-8, 32), "-8 >>> 32"); -assertEquals(2147483644, unsignedShiftRight(-8, 33), "-8 >>> 33"); -assertEquals(1073741822, unsignedShiftRight(-8, 34), "-8 >>> 34"); - -assertEquals(2147483648, unsignedShiftRight(0x80000000, 0), "0x80000000 >>> 0"); -assertEquals(1073741824, unsignedShiftRight(0x80000000, 1), "0x80000000 >>> 1"); -assertEquals( 536870912, unsignedShiftRight(0x80000000, 2), "0x80000000 >>> 2"); - -assertEquals(1073741824, unsignedShiftRight(0x40000000, 0), "0x40000000 >>> 0"); -assertEquals( 536870912, unsignedShiftRight(0x40000000, 1), "0x40000000 >>> 1"); -assertEquals( 268435456, unsignedShiftRight(0x40000000, 2), "0x40000000 >>> 2"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1060.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1060.js deleted file mode 100644 index 8abe178..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1060.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Make sure that we do not record multiple bailouts in the unoptimized code -// for the (shared) .arguments proxy, even for calls. -function f(x) { arguments; return x() + x(); } - -assertEquals("hesthest", f(function () { return "hest"; })); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1062422.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1062422.js deleted file mode 100644 index 1e2c798..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1062422.js +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// 1062422 Ensure that accessors can handle unexpected receivers. -Number.prototype.__proto__ = String.prototype; -assertEquals((123).length, 0) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1066899.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1066899.js deleted file mode 100644 index 37fd554..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1066899.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This test case segfaults in generated code. See -// issue #1066899. -function Crash() { - for (var key in [0]) { - try { } finally { continue; } - } -} - -Crash(); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1079.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1079.js deleted file mode 100644 index 208dc5b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1079.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Getting the arguments property of an optimized function should not crash, -// even if called through our optimized version of Function.prototype.apply. - -function optimized() { - return unoptimized.apply(null, arguments); -} - -// It's not crucial that this is unoptimized. -function unoptimized() { - with ({}) { - return optimized.arguments; - } -} - -for (var i = 0; i < 5; ++i) { - assertEquals(3, optimized(1, 2, 3).length); -} -%OptimizeFunctionOnNextCall(optimized); -assertEquals(3, optimized(1, 2, 3).length); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1081309.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1081309.js deleted file mode 100644 index 5a6c524..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1081309.js +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug -// Get the Debug object exposed from the debug context global object. -Debug = debug.Debug - -// Make sure that the backtrace command can be processed when the receiver is -// undefined. -listenerCalled = false; -exception = false; - -function ParsedResponse(json) { - this.response_ = eval('(' + json + ')'); - this.refs_ = []; - if (this.response_.refs) { - for (var i = 0; i < this.response_.refs.length; i++) { - this.refs_[this.response_.refs[i].handle] = this.response_.refs[i]; - } - } -} - - -ParsedResponse.prototype.response = function() { - return this.response_; -} - - -ParsedResponse.prototype.body = function() { - return this.response_.body; -} - - -ParsedResponse.prototype.lookup = function(handle) { - return this.refs_[handle]; -} - - -function listener(event, exec_state, event_data, data) { - try { - if (event == Debug.DebugEvent.Exception) - { - // The expected backtrace is - // 1: g - // 0: [anonymous] - - // Get the debug command processor. - var dcp = exec_state.debugCommandProcessor(false); - - // Get the backtrace. - var json; - json = '{"seq":0,"type":"request","command":"backtrace"}' - var response = new ParsedResponse(dcp.processDebugJSONRequest(json)); - var backtrace = response.body(); - assertEquals(2, backtrace.totalFrames); - assertEquals(2, backtrace.frames.length); - - assertEquals("g", response.lookup(backtrace.frames[0].func.ref).name); - assertEquals("", response.lookup(backtrace.frames[1].func.ref).name); - - listenerCalled = true; - } - } catch (e) { - exception = e - }; -}; - -// Add the debug event listener. -Debug.setListener(listener); - -// Call method on undefined. -function g() { - (void 0).f(); -}; - -// Break on the exception to do a backtrace with undefined as receiver. -Debug.setBreakOnException(true); -try { - g(); -} catch(e) { - // Ignore the exception "Cannot call method 'x' of undefined" -} - -assertFalse(exception, "exception in listener", exception) -// Make sure that the debug event listener vas invoked. -assertTrue(listenerCalled, "listener not called"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-108296.js b/src/3rdparty/v8/test/mjsunit/regress/regress-108296.js deleted file mode 100644 index 38ecda7..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-108296.js +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// This test checks that young immediates embedded into code objects -// are referenced through a cell. - -function f (k, a, b) { - // Create control flow for a.foo. Control flow resolution will - // be generated as a part of a gap move. Gap move operate on immediates as - // a.foo is a CONSTANT_FUNCTION. - var x = k ? a.foo : a.foo; - return x.prototype; -} - -var a = { }; - -// Make sure that foo is a CONSTANT_FUNCTION but not be pretenured. -a.foo = (function () { return function () {}; })(); - -// Ensure that both branches of ternary operator have monomorphic type feedback. -f(true, a, a); -f(true, a, a); -f(false, a, a); -f(false, a, a); -%OptimizeFunctionOnNextCall(f); -f(true, a, a); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1083.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1083.js deleted file mode 100644 index d231899..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1083.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that changing the generic descriptor flags on a property -// on the global object doesn't break invariants. -Object.defineProperty(this, 'Object', {enumerable:true}); - -var desc = Object.getOwnPropertyDescriptor(this, 'Object'); -assertTrue(desc.enumerable); -assertTrue(desc.configurable); -assertFalse(desc.hasOwnProperty('get')); -assertFalse(desc.hasOwnProperty('set')); -assertTrue(desc.hasOwnProperty('value')); -assertTrue(desc.writable); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-109195.js b/src/3rdparty/v8/test/mjsunit/regress/regress-109195.js deleted file mode 100644 index 97538aa..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-109195.js +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug -var Debug = debug.Debug; - -function listener(event, exec_state, event_data, data) { - for (var i = 0, n = exec_state.frameCount(); i < n; i++) { - exec_state.frame().scopeCount(i); - } - exec_state.prepareStep(Debug.StepAction.Continue, 1); -} - -Debug.setListener(listener); - -var F = function () { - 1, function () { - var d = 0; - (function () { d; }); - debugger; - }(); -}; - -var src = "(" + F.toString() + ")()"; -eval(src); - -Function.prototype.__defineGetter__("f", function () { - debugger; - return 0; -}); - -var G = function () { - 1, function () { - var d = 0; - (function () { d; }); - debugger; - }['f']; -}; - -var src = "(" + G.toString() + ")()"; -eval(src); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1092.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1092.js deleted file mode 100644 index 00422cb..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1092.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that CodeGenerator::EmitKeyedPropertyAssignment for the start -// of an initialization block doesn't normalize the properties of the -// JSGlobalProxy. -this.w = 0; -this.x = 1; -this.y = 2; -this.z = 3; - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1099.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1099.js deleted file mode 100644 index 36f09e4..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1099.js +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test that LApplyArguments lithium instruction restores context after the call. - -function X() { - var slot = "foo"; return function (a) { return slot === a; } -} - -function Y(x) { - var slot = "bar"; - return function (a) { - x.apply(this, arguments); - return slot === 'bar'; - }; -} - -var y = Y(X()); - -for (var i = 0; i < 5; i++) { - assertTrue(y("foo")); -} - -%OptimizeFunctionOnNextCall(y); -assertTrue(y("foo"));
\ No newline at end of file diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1102760.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1102760.js deleted file mode 100644 index 890ecab..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1102760.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function F() { - return arguments.length; -} - -assertEquals(0, F.apply(), "no receiver or args"); -assertEquals(0, F.apply(this), "no args"); -assertEquals(0, F.apply(this, []), "empty args"); -assertEquals(0, F.apply(this, [], 0), "empty args, extra argument"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1103.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1103.js deleted file mode 100644 index 4ad25b3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1103.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that freezing the global object functions correctly and does not -// freeze the global proxy. - -var obj = this; -obj = Object.freeze(obj); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1104.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1104.js deleted file mode 100644 index aca0a66..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1104.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// A redeclaration of a variable that aliases a parameter and so rewrites to -// an arguments object access should not record duplicate AST IDs for -// bailout. -function test(f) { - function f() {} - function f() {} - return arguments; -} - -test(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-110509.js b/src/3rdparty/v8/test/mjsunit/regress/regress-110509.js deleted file mode 100644 index 132bd23..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-110509.js +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Verify that LRandom preserves rsi correctly. - -function foo() { - Math.random(); - new Function(""); -} - -foo(); -foo(); -foo(); -%OptimizeFunctionOnNextCall(foo); -foo(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1106.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1106.js deleted file mode 100644 index e462d5d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1106.js +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test for issue 1106, where the optimizing compiler broke when accessing -// a property lying on a prototype of the global object, and that prototype -// object was in dictionary mode. - -x = Object.prototype; -x.foo = 3; -x.bar = 4; -delete x.foo; -x.foo = 5; - -function f() { return foo; } - -for (i=0 ; i < 5; ++i) { - assertEquals(5, f()); -} -%OptimizeFunctionOnNextCall(f); -assertEquals(5, f()); - -// Test calls on functions defined in the prototype of the global object. -x.gee = function() { return 42; } -function g() { return gee(); } - -for (i=0 ; i < 5; ++i) { - assertEquals(42, g()); -} -%OptimizeFunctionOnNextCall(g); -assertEquals(42, g()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1107.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1107.js deleted file mode 100644 index 4ba277a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1107.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that even if we cannot set element 0 on all the objects, we still -// can format exception messages to some extent. - -Object.prototype.__defineGetter__(0, function(){}); -assertThrows("x"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1110.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1110.js deleted file mode 100644 index 124f520..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1110.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that the illegal continue is thrown at parse time. - -try { - eval("function Crash() { assertUnreachable(); continue;if (Crash) { } }"); - Crash(); - assertUnreachable(); -} catch (e) { - assertTrue(e instanceof SyntaxError); - assertTrue(/continue/.test(e.message)); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1110164.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1110164.js deleted file mode 100644 index 33f96af..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1110164.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var o = { x: 0, f: function() { return 42; } }; -delete o.x; // go dictionary - -function CallF(o) { - return o.f(); -} - -// Make sure the call IC in CallF is initialized. -for (var i = 0; i < 10; i++) assertEquals(42, CallF(o)); - -var caught = false; -o.f = 87; -try { - CallF(o); -} catch (e) { - caught = true; - assertTrue(e instanceof TypeError); -} -assertTrue(caught); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1112.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1112.js deleted file mode 100644 index d780106..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1112.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test making sure that defineProperty on the global proxy -// defines the property on the global object. - -Object.defineProperty(this, - 1, - { configurable: true, enumerable: true, value: 3 }); -assertEquals(3, this[1]); -assertTrue(this.hasOwnProperty("1")); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1112051.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1112051.js deleted file mode 100644 index 0af6bb4..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1112051.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for issue #1112051. -function f() { } -assertThrows("f.call.apply()"); -assertThrows("f.call.apply(null)"); -assertThrows("f.call.apply(null, [], 0)"); -assertThrows("f.call.apply(null, [1,2,3,4,5,6,7,8,9], 0)"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1114040.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1114040.js deleted file mode 100644 index 9d1b320..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1114040.js +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function TestBreak() { - var sequence = ""; - for (var a in [0,1]) { - L: { - for (var b in [2,3,4]) { - break L; - } - } - sequence += a; - } - return sequence; -} - - -function TestContinue() { - var sequence = ""; - for (var a in [0,1]) { - L: do { - for (var b in [2,3,4]) { - continue L; - } - } while (false); - sequence += a; - } - return sequence; -} - - -assertEquals("01", TestBreak()); -assertEquals("01", TestContinue()); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1117.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1117.js deleted file mode 100644 index 981a1b7..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1117.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test that we actually return the right value (-0) when we multiply -// constant 0 with a negative integer. - -function foo(y) {return 0 * y; } -assertEquals(1/foo(-42), -Infinity); -assertEquals(1/foo(-42), -Infinity); -%OptimizeFunctionOnNextCall(foo); -assertEquals(1/foo(-42), -Infinity); - -function bar(x) { return x * 0; } -assertEquals(Infinity, 1/bar(5)); -assertEquals(Infinity, 1/bar(5)); -%OptimizeFunctionOnNextCall(bar); -assertEquals(-Infinity, 1/bar(-5)); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1118.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1118.js deleted file mode 100644 index 3e3920f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1118.js +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --noparallel-recompilation - -// An exception thrown in a function optimized by on-stack replacement (OSR) -// should be able to construct a receiver from all optimized stack frames. - -function A() { } -A.prototype.f = function() { } - -function B() { } - -var o = new A(); - -// This function throws if o does not have an f property, and should not be -// inlined. -function g() { try { return o.f(); } finally { }} - -// Optimization status (see runtime.cc): -// 1 - yes, 2 - no, 3 - always, 4 - never. - -// This function should be optimized via OSR. -function h() { - var optstatus = %GetOptimizationStatus(h); - if (optstatus == 4) { - // Optimizations are globally disabled; just run once. - g(); - } else { - // Run for a bit as long as h is unoptimized. - while (%GetOptimizationStatus(h) == 2) { - for (var j = 0; j < 100; j++) g(); - } - g(); - } -} - -h(); -o = new B(); -assertThrows("h()"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1119.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1119.js deleted file mode 100644 index 5fd8f36..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1119.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test runtime declaration of properties with var which are intercepted -// by JS accessors. - -// Flags: --es52_globals - -this.__defineSetter__("x", function() { hasBeenInvoked = true; }); -this.__defineSetter__("y", function() { throw 'exception'; }); - -var hasBeenInvoked = false; -eval("try { } catch (e) { var x = false; }"); -assertTrue(hasBeenInvoked); - -// This has to run in global scope, so cannot use assertThrows... -try { - eval("try { } catch (e) { var y = false; }"); - assertUnreachable(); -} catch (e) { - assertEquals('exception', e); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1120.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1120.js deleted file mode 100644 index c8c06aa..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1120.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that retrieving the extensible value for the global object is -// working correctly and does not return the bit from the global proxy map. - -var obj = this; -Object.freeze(obj); -assertFalse(Object.isExtensible(obj)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1121.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1121.js deleted file mode 100644 index 0ad29cc..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1121.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1121 - -// Test that changing Array.prototype.__proto__ keeps Array functions working. - -Array.prototype.__proto__ = null; -// pop has custom call generator, so we need some beefier function. -assertEquals([1, 2, 3], [1, 2, 3].slice()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1122.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1122.js deleted file mode 100644 index 815511d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1122.js +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that we can handle function calls with up to 32766 arguments, and -// that function calls with more arguments throw an exception. Apply a -// similar limit to the number of function parameters. - -// See http://code.google.com/p/v8/issues/detail?id=1122 and -// http://code.google.com/p/v8/issues/detail?id=1413. - -function function_with_n_params_and_m_args(n, m) { - test_prefix = 'prefix '; - test_suffix = ' suffix'; - var source = 'test_prefix + (function f('; - for (var arg = 0; arg < n ; arg++) { - if (arg != 0) source += ','; - source += 'arg' + arg; - } - source += ') { return arg' + (n - n % 2) / 2 + '; })('; - for (var arg = 0; arg < m ; arg++) { - if (arg != 0) source += ','; - source += arg; - } - source += ') + test_suffix'; - return eval(source); -} - -assertEquals('prefix 4000 suffix', - function_with_n_params_and_m_args(8000, 8000)); -assertEquals('prefix 3000 suffix', - function_with_n_params_and_m_args(6000, 8000)); -assertEquals('prefix 5000 suffix', - function_with_n_params_and_m_args(10000, 8000)); -assertEquals('prefix 9000 suffix', - function_with_n_params_and_m_args(18000, 18000)); -assertEquals('prefix 16000 suffix', - function_with_n_params_and_m_args(32000, 32000)); -assertEquals('prefix undefined suffix', - function_with_n_params_and_m_args(32000, 10000)); - -assertThrows("function_with_n_params_and_m_args(35000, 35000)"); -assertThrows("function_with_n_params_and_m_args(100000, 100000)"); -assertThrows("function_with_n_params_and_m_args(35000, 30000)"); -assertThrows("function_with_n_params_and_m_args(30000, 35000)"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1125.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1125.js deleted file mode 100644 index b0e1cb7..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1125.js +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test a lot of updates to freshly created contexts. - -function f(x, y) { - with ("abcdefghijxxxxxxxxxx") - var y = {}; -} - -function g() { - f.apply(this, arguments); -} - -for (var i = 0; i < 150000; i++) { - g(i); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1126.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1126.js deleted file mode 100644 index 303583b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1126.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This should properly catch the exception from the setter triggered -// by the loaded file, and it should not fail an assertion in debug mode. - -try { - eval('--'); - assertUnreachable(); -} catch (e) { -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1129.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1129.js deleted file mode 100644 index 37bf9a8..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1129.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --verify-heap --expose-gc - -// This should not hit an assertion in debug mode. - -// Create RegExp that is syntactically correct, but throws a stack overflow -// during compilation. -var source = Array(50000).join("(") + "a" + Array(50000).join(")"); -var r = RegExp(source); -try { - // Try to compile in UC16 mode, and drop the exception. - r.test("\x80"); - assertUnreachable(); -} catch (e) { -} - -// Trigger a heap validation. -gc(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1130.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1130.js deleted file mode 100644 index 07d5e3d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1130.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that parser errors can be build up correctly even in the presence -// of JS accessors on Object's prototype elements. - -Object.prototype.__defineGetter__(0, function() { throw 42; } ); - -var exception = false; -try { - eval("(function() { const x; var x })")(); -} catch (e) { - exception = true; - assertTrue(e instanceof TypeError); -} -assertTrue(exception); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1131.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1131.js deleted file mode 100644 index a1af9c9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1131.js +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var nonArray = { length: 4, 0: 42, 2: 37, 0xf7da5000: undefined, 4: 0 }; -Array.prototype.sort.call(nonArray); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1132.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1132.js deleted file mode 100644 index 3314db8..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1132.js +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test the case when exception is thrown from the parser when lazy -// compiling a function. - -// Flags: --stack_size=32 -// NOTE: stack size constant above has been empirically chosen. -// If the test starts to fail in Genesis, consider increasing this constant. - -function test() { - try { - test(1, test(1)); - } catch(e) { - assertFalse(delete e, "deleting catch variable"); - assertEquals(42, e); - } -} - -var exception = false; -try { - test(); -} catch (e) { - exception = true; -} -assertTrue(exception); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1134697.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1134697.js deleted file mode 100644 index 3d851ae..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1134697.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test case for issue 1134697. -// Must run using valgrind. - -(-90).toPrecision(6); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-113924.js b/src/3rdparty/v8/test/mjsunit/regress/regress-113924.js deleted file mode 100644 index 3ecdec4..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-113924.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var count=12000; -while(count--) { - eval("var a = new Object(10); a[2] += 7;"); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-114.js b/src/3rdparty/v8/test/mjsunit/regress/regress-114.js deleted file mode 100644 index 6c1a6a3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-114.js +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// German eszett -assertEquals("FRIEDRICHSTRASSE 14", "friedrichstra\xDFe 14".toUpperCase()); -assertEquals("XXSSSSSSXX", "xx\xDF\xDF\xDFxx".toUpperCase()); -assertEquals("(SS)", "(\xDF)".toUpperCase()); -assertEquals("SS", "\xDF".toUpperCase()); - -// Turkish dotted upper-case I lower-case converts to two characters -assertEquals("i\u0307", "\u0130".toLowerCase()); -assertEquals("(i\u0307)", "(\u0130)".toLowerCase()); -assertEquals("xxi\u0307xx", "XX\u0130XX".toLowerCase()); - -// Greek small upsilon with dialytika and tonos upper-case converts to three -// characters -assertEquals("\u03A5\u0308\u0301", "\u03B0".toUpperCase()); -assertEquals("(\u03A5\u0308\u0301)", "(\u03B0)".toUpperCase()); -assertEquals("XX\u03A5\u0308\u0301XX", "xx\u03B0xx".toUpperCase()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1145.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1145.js deleted file mode 100644 index 16d5527..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1145.js +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --opt-eagerly --debug-code --lazy - -// See: http://code.google.com/p/v8/issues/detail?id=1145 -// Should not throw a syntax error exception (change this if we make lazily -// compiled functions with syntax errors into early errors). -// Should not hit an assertion in debug mode. - -// A lazily compiled function with a syntax error that is attempted inlined -// would set a pending exception that is then ignored (until it triggers -// an assert). -// This file must be at least 1024 bytes long to trigger lazy compilation. - -function f() { return 1; } - -// Must be lazy. Must throw SyntaxError during compilation. -function fail() { continue; } - -function opt_me() { - var x = 1; - // Do lots of function calls and hope to be optimized. - for (var i = 0; i < 1000000; i++) { - x = f(); - } - if (x == 0) fail(); // Hope to be inlined during optimization. -} - -opt_me(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1146.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1146.js deleted file mode 100644 index e8028ce..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1146.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test keyed calls with different key types. -function F() {} -var a = new F(); -function f(i) { return a[i](); } - -a.first = function() { return 11; } -a[0] = function() { return 22; } -var obj = {}; -a[obj] = function() { return 33; } - -// Make object slow-case. -a.foo = 0; -delete a.foo; -// Do multiple calls for IC transitions. -var b = "first"; -f(b); -f(b); - -assertEquals(11, f(b)); -assertEquals(22, f(0)); -assertEquals(33, f(obj)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1149.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1149.js deleted file mode 100644 index d7a7d1b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1149.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// We should not try to record duplicate bailout IDs for the 'left-hand -// side' of a for/in, even if it is a parameter in a function using the -// arguments object. - -function f(x) { - for (x in arguments) { - for (x in arguments) { - } - } -} - -f(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1150.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1150.js deleted file mode 100644 index 57f739a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1150.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that Object.keys is working correctly on the global object. - -var a = 10; -var global = (function () { return this; }) (); -var keys = Object.keys(global); -assertTrue(keys.indexOf("a") > 0); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1151.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1151.js deleted file mode 100644 index 8d0bca9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1151.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that we do not try to create prototypes on objects that has the, -// should_have_prototype flag set to false. - -__defineSetter__.__proto__ = function() {}; -__defineSetter__['prototype'] - -eval.__proto__ = function () { }; -eval['prototype'] = {}; - -// Test that we are compatible with Safari on prototypes set locally and -// on the actual prototype set using __proto__ on objects that has the -// should_have_prototype set to false. -function f() { return 42; } -f.prototype = 43; -__defineGetter__.__proto__ = f; - -// Regression test for not returning undefined. -assertEquals(__defineGetter__.prototype, 43); - -// Regression test for not crashing. -__defineGetter__.prototype = "foo"; -assertEquals(__defineGetter__.prototype, "foo"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-115100.js b/src/3rdparty/v8/test/mjsunit/regress/regress-115100.js deleted file mode 100644 index c917446..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-115100.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function foo(obj) { obj.prop = 0; } -function mk() { return Object.create(null); } - -foo(mk()); -foo(mk()); -%OptimizeFunctionOnNextCall(foo); -foo(mk()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-115452.js b/src/3rdparty/v8/test/mjsunit/regress/regress-115452.js deleted file mode 100644 index dc71158..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-115452.js +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that a function declaration cannot overwrite a read-only property. - -// Flags: --es52_globals - -function foobl() {} -assertTrue(typeof this.foobl == "function"); -assertTrue(Object.getOwnPropertyDescriptor(this, "foobl").writable); - -Object.defineProperty(this, "foobl", {value: 1, writable: false}); -assertSame(1, this.foobl); -assertFalse(Object.getOwnPropertyDescriptor(this, "foobl").writable); - -// This has to run in global scope, so cannot use assertThrows... -try { - eval("function foobl() {}"); // Should throw. - assertUnreachable(); -} catch (e) { - assertInstanceof(e, TypeError); -} -assertSame(1, this.foobl); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1156.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1156.js deleted file mode 100644 index 8ec7f81..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1156.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --nouse-inlining - -// Test that we do not crash we invoke builtins from optimized code that -// is then deoptimized. - -function foo(a) { - delete a[1]; - delete a[2]; - delete a[3]; - delete a[4]; - delete a[5]; - return void 0; -} - -function call_and_deopt() { - var b = [1,2,3]; - foo(b); - foo(b); - %DeoptimizeFunction(foo); -} - -call_and_deopt(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-116.js b/src/3rdparty/v8/test/mjsunit/regress/regress-116.js deleted file mode 100644 index 7b4620c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-116.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var testCache = {}; -var doLookup = function(id) { - return testCache[id] = 'foo'; -}; - -var r2 = doLookup(0); -var r1 = doLookup([0]); - -assertFalse(r1 === testCache); -assertEquals('foo', r1); -assertEquals('f', r1[0]); -assertEquals('foo', r2); -assertEquals('f', r2[0]); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1160.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1160.js deleted file mode 100644 index 10d3bc3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1160.js +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1160 - -// Array.prototype.join uses a temporary array internally. Verify it -// does not crash and throws an illegal argument exception instead -// when keyed store on the array does not work as expected because of -// the setter on its prototype. - -var N = 10; -var array = Array(N); -for (var i = 0; i < N; ++i) { - array[i] = i; -} -Array.prototype.__defineSetter__(2, function() { }); -assertEquals("0,1,2,3,4,5,6,7,8,9", array.join(",")); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1166.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1166.js deleted file mode 100644 index 8278aba..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1166.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Deoptimization after a short-circuit logical operation in an effect -// context should not see the value of the expression. -function observe(x, y) { return x; } - -function test(x) { return observe(1, ((false || false), x + 1)); } - -for (var i = 0; i < 5; ++i) test(0); -%OptimizeFunctionOnNextCall(test); -test(0); - -test("a"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1167.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1167.js deleted file mode 100644 index 2206f3d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1167.js +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Deoptimization after a logical not in an effect context should not see a -// value for the logical not expression. -function test0(n) { - var a = new Array(n); - for (var i = 0; i < n; ++i) { - // ~ of a non-numeric value is used to trigger deoptimization. - a[i] = void(!(delete 'object')) % ~(delete 4); - } -} - -// OSR (after deoptimization) is used to observe the stack height mismatch. -for (var i = 0; i < 5; ++i) { - for (var j = 1; j < 12; ++j) { - test0(j * 1000); - } -} - - -// Similar test with a different subexpression of unary !. -function test1(n) { - var a = new Array(n); - for (var i = 0; i < n; ++i) { - a[i] = void(!(- 'object')) % ~(delete 4); - } -} - -for (i = 0; i < 5; ++i) { - for (j = 1; j < 12; ++j) { - test1(j * 1000); - } -} - - -// A similar issue, different subexpression of unary ! (e0 !== e1 is -// translated into !(e0 == e1)) and different effect context. -function side_effect() { } -function observe(x, y) { return x; } -function test2(x) { - return observe(this, - (((side_effect.observe <= side_effect.side_effect) !== false), - x + 1)); -} - -for (var i = 0; i < 5; ++i) test2(0); -%OptimizeFunctionOnNextCall(test2); -test2(0); -test2(test2); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1170.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1170.js deleted file mode 100644 index 8c5f6f8..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1170.js +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --es52_globals - -var setter_value = 0; - -this.__defineSetter__("a", function(v) { setter_value = v; }); -eval("var a = 1"); -assertEquals(1, setter_value); -assertFalse("value" in Object.getOwnPropertyDescriptor(this, "a")); - -eval("with({}) { eval('var a = 2') }"); -assertEquals(2, setter_value); -assertFalse("value" in Object.getOwnPropertyDescriptor(this, "a")); - -// Function declarations are treated specially to match Safari. We do -// not call setters for them. -this.__defineSetter__("a", function(v) { assertUnreachable(); }); -eval("function a() {}"); -assertTrue("value" in Object.getOwnPropertyDescriptor(this, "a")); - -this.__defineSetter__("b", function(v) { setter_value = v; }); -try { - eval("const b = 3"); -} catch(e) { - assertUnreachable(); -} -assertEquals(3, setter_value); - -try { - eval("with({}) { eval('const b = 23') }"); -} catch(e) { - assertInstanceof(e, TypeError); -} - -this.__defineSetter__("c", function(v) { throw 42; }); -try { - eval("var c = 1"); - assertUnreachable(); -} catch(e) { - assertEquals(42, e); - assertFalse("value" in Object.getOwnPropertyDescriptor(this, "c")); -} - - - - -__proto__.__defineSetter__("aa", function(v) { assertUnreachable(); }); -eval("var aa = 1"); -assertTrue(this.hasOwnProperty("aa")); - -__proto__.__defineSetter__("bb", function(v) { assertUnreachable(); }); -eval("with({}) { eval('var bb = 2') }"); -assertTrue(this.hasOwnProperty("bb")); - -// Function declarations are treated specially to match Safari. We do -// not call setters for them. -__proto__.__defineSetter__("cc", function(v) { assertUnreachable(); }); -eval("function cc() {}"); -assertTrue(this.hasOwnProperty("cc")); - -__proto__.__defineSetter__("dd", function(v) { assertUnreachable(); }); -try { - eval("const dd = 23"); -} catch(e) { - assertUnreachable(); -} - -try { - eval("with({}) { eval('const dd = 23') }"); -} catch(e) { - assertInstanceof(e, TypeError); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1170187.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1170187.js deleted file mode 100644 index 5e82f8a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1170187.js +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug -// Make sure that the retreival of local variables are performed correctly even -// when an adapter frame is present. - -// Get the Debug object exposed from the debug context global object. -Debug = debug.Debug - -listenerCalled = false; -exception = false; - - -function checkName(name) { - assertTrue(name == 'a' || name == 'b' || name == 'c'); -} - - -function checkValue(value) { - assertEquals(void 0, value); -} - - -function listener(event, exec_state, event_data, data) { - try { - if (event == Debug.DebugEvent.Break) { - var local0Name = exec_state.frame(0).localName(0); - var local1Name = exec_state.frame(0).localName(1); - var local2Name = exec_state.frame(0).localName(2); - checkName(local0Name); - checkName(local1Name); - checkName(local2Name); - var local0Value = exec_state.frame(0).localValue(0).value(); - var local1Value = exec_state.frame(0).localValue(1).value(); - var local2Value = exec_state.frame(0).localValue(2).value(); - checkValue(local0Value); - checkValue(local1Value); - checkValue(local2Value); - listenerCalled = true; - } - } catch (e) { - exception = e; - }; -}; - -// Add the debug event listener. -Debug.setListener(listener); - -// Call a function with local variables passing a different number parameters -// that the number of arguments. -(function(x,y){var a,b,c; debugger; return 3})() - -// Make sure that the debug event listener vas invoked (again). -assertTrue(listenerCalled); -assertFalse(exception, "exception in listener") diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1172-bis.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1172-bis.js deleted file mode 100644 index 01b637c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1172-bis.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Verifies that exception thrown from JS accessors when attempting a call -// are properly treated. - -Object.prototype.__defineGetter__(0, function() { throw 42; }); -var exception = false; -try { - Object[0](); -} catch(e) { - exception = true; - assertEquals(42, e); -} -assertTrue(exception); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1172.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1172.js deleted file mode 100644 index f5ef67b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1172.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check that 'constructor' property is forcefully installed on -// function's prototype even in the presence of JS accessors. - -// Note: no setters would lead to runtime exception if we ever attempt -// to use JS accessors to set 'constructor' property. -Object.prototype.__defineGetter__('constructor', function() { throw 42; }); - -function f() {} -assertSame(f, f.prototype.constructor); - -var o = new f(); -assertSame(f, o.constructor); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1173979.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1173979.js deleted file mode 100644 index 42649d0..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1173979.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Ensure that null only equals null and undefined, also for variables. - -var null_var = null; -var undef_var = [][0]; -var boolean_var = false; -var number_var = 0; -var string_var = ""; -var object_var = { foo : 0 }; - -assertTrue(null_var == null_var); -assertTrue(null_var == undef_var); -assertTrue(null_var != boolean_var); -assertTrue(null_var != number_var); -assertTrue(null_var != string_var); -assertTrue(null_var != object_var); - -assertTrue(undef_var == null_var); -assertTrue(boolean_var != null_var); -assertTrue(number_var != null_var); -assertTrue(string_var != null_var); -assertTrue(object_var != null_var); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1174.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1174.js deleted file mode 100644 index 7c014bf..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1174.js +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test that we do not crash when doing deoptimization of a function that has -// reloc info that only take up 1 byte per call (like KeyedStoreIC). - -function Regular() { - this[0] >>= 0; - this[1] ^= 1; -} - -function foo() { - var regular = new Regular(); - %DeoptimizeFunction(Regular); -} - -foo(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-117409.js b/src/3rdparty/v8/test/mjsunit/regress/regress-117409.js deleted file mode 100644 index 98aab5a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-117409.js +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -function KeyedStoreIC(a) { a[0] = Math.E; } - -// Create literal with a fast double elements backing store -var literal = [1.2]; - -// Specialize the IC for fast double elements -KeyedStoreIC(literal); -KeyedStoreIC(literal); - -// Truncate array to 0 elements, at which point backing store will be replaced -// with empty fixed array. -literal.length = 0; - -// ArrayPush built-in will replace empty fixed array backing store with 19 -// elements fixed array backing store. This leads to a mismatch between the map -// and the backing store. Debug mode will crash here in set_elements accessor. -literal.push(Math.E, Math.E); - -// Corrupt the backing store! -KeyedStoreIC(literal); - -// Release mode will crash here when trying to visit parts of E as pointers. -gc(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1175390.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1175390.js deleted file mode 100644 index 7b1a7e0..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1175390.js +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --print-code --debug-code -// Simply ensure that we can generate comments without crashing. -a = 0; diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1176.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1176.js deleted file mode 100644 index 58eda1b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1176.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -"use strict"; -function strict_delete_this() { - // "delete this" is allowed in strict mode. - delete this; -} -strict_delete_this(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1177518.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1177518.js deleted file mode 100644 index 2ba3c11..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1177518.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Make sure that natives and delayed natives don't use methods from the global -// scope that could have been modified by input javascript. - -isFinite = 0; -Math.floor = 0; -Math.abs = 0; - -// uses Math.floor -assertEquals(4, parseInt(4.5)); - -// uses Math.abs, Math.floor and isFinite -assertEquals('string', typeof (new Date(9999)).toString()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1177809.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1177809.js deleted file mode 100644 index 703e607..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1177809.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// The encoding of large pc jumps caused code to be overwritten with -// relocation information. We pass this test if it does not crash. - -String.fromCharCode(48,48,48,59,32,102,111,110,116,45,119,101,105,103,104,116,58,98,111,108,100,59,102,111,110,116,45,102,97,109,105,108,121,58,65,114,105,97,108,44,32,72,101,108,118,101,116,105,99,97,44,32,115,97,110,115,45,115,101,114,105,102,44,86,101,114,100,97,110,97,34,32,99,111,108,111,114,61,34,35,70,70,48,48,48,48,34,62,70,79,82,69,88,47,80,65,82,38,35,51,48,52,59,60,119,98,114,32,47,62,84,69,32,38,35,51,48,52,59,38,35,51,53,48,59,76,69,77,76,69,82,38,35,51,48,52,59,60,47,102,111,110,116,62,60,47,115,112,97,110,62,60,47,116,100,62,10,60,47,116,114,62,60,116,114,62,10,60,116,100,32,97,108,105,103,110,61,34,108,101,102,116,34,62,60,115,112,97,110,32,105,100,61,34,97,99,95,100,101,115,99,34,62,60,102,111,110,116,32,115,116,121,108,101,61,34,102,111,110,116,45,115,105,122,101,58,49,49,112,120,59,32,99,111,108,111,114,58,35,48,48,48,48,48,48,59,32,102,111,110,116,45,102,97,109,105,108,121,58,65,114,105,97,108,44,32,72,101,108,118,101,116,105,99,97,44,32,115,97,110,115,45,115,101,114,105,102,44,86,101,114,100,97,110,97,34,62,38,112,111,117,110,100,59,47,36,32,50,32,112,105,112,44,32,89,84,76,32,49,50,32,112,105,112,44,65,108,116,38,35,51,48,53,59,110,32,51,32,99,101,110,116,46,32,83,97,98,105,116,32,83,112,114,101,97,100,45,84,38,117,117,109,108,59,114,60,119,98,114,32,47,62,107,32,66,97,110,107,97,115,38,35,51,48,53,59,32,65,86,65,78,84,65,74,73,60,47,102,111,110,116,62,60,47,115,112,97,110,62,60,47,116,100,62,10,60,47,116,114,62,60,116,114,62,10,60,116,100,32,97,108,105,103,110,61,34,108,101,102,116,34,62,60,100,105,118,32,105,100,61,34,97,99,95,117,114,108,34,62,60,102,111,110,116,32,115,116,121,108,101,61,34,102,111,110,116,45,115,105,122,101,58,49,48,112,120,59,32,99,111,108,111,114,58,35,70,70,54,54,57,57,59,32,102,111,110,116,45,102,97,109,105,108,121,58,65,114,105,97,108,44,32,72,101,108,118,101,116,105,99,97,44,32,115,97,110,115,45,115,101,114,105,102,44,86,101,114,100,97,110,97,34,62,119,119,119,46,104,101,100,101,102,111,60,119,98,114,32,47,62,110,108,105,110,101,46,99,111,109,60,47,102,111,110,116,62,60,47,100,105,118,62,60,47,116,100,62,60,47,116,114,62,60,47,116,97,98,108,101,62,60,47,116,100,62,60,47,116,114,62,60,116,114,62,10,60,116,100,32,99,108,97,115,115,61,34,97,99,95,107,97,114,105,109,34,32,104,101,105,103,104,116,61,34,50,48,37,34,32,98,103,99,111,108,111,114,61,34,35,70,70,70,70,70,70,34,32,105,100,61,34,116,97,119,52,34,32,97,108,105,103,110,61,34,108,101,102,116,34,32,118,97,108,105,103,110,61,34,109,105,100,100,108,101,34,32,111,110,70,111,99,117,115,61,34,115,115,40,39,103,111,32,116,111,32,119,119,119,46,107,97,108,101,100,101,60,119,98,114,32,47,62,46,99,111,109,39,44,39,97,119,52,39,41,34,32,111,110,77,111,117,115,101,79,118,101,114,61,34,115,115,40,39,103,111,32,116,111,32,119,119,119,46,107,97,108,101,100,101,60,119,98,114,32,47,62,46,99,111,109,39,44,39,97,119,52,39,41,34,32,32,111,110,77,111,117,115,101,79,117,116,61,34,99,115,40,41,34,32,111,110,67,108,105,99,107,61,34,103,97,40,39,104,116,116,112,58,47,47,97,100,115,101,114,118,101,114,46,109,121,110,101,116,46,99,111,109,47,65,100,83,101,114,118,101,114,47,99,108,105,99,107,46,106,115,112,63,117,114,108,61,56,56,49,48,48,50,53,49,50,49,55,54,51,57,52,54,50,51,49,56,52,52,48,51,57,54,48,48,54,51,49,51,54,54,52,52,56,50,56,54,50,48,49,49,49,52,55,51,55,54,52,51,50,57,50,52,50,56,51,53,56,51,54,53,48,48,48,48,53,56,49,55,50,56,57,53,48,48,52,49,57,48,54,56,56,55,50,56,49,55,48,55,53,48,57,50,55,53,55,57,57,51,54,53,50,52,54,49,51,56,49,57,53,55,52,53,50,49,52,50,55,54,48,57,53,57,56,52,55,50,55,48,56,52,51,49,54,52,49,54,57,53,48,56,57,50,54,54,54,48,57,49,54,53,55,57,48,57,49,55,57,52,55,52,55,57,50,48,55,50,55,51,51,53,51,50,55,53,50,54,55,50,56,48,51,57,49,56,54,50,56,55,49,51,55,48,52,51,49,51,52,55,56,51,54,51,52,53,50,54,55,53,57,48,57,48,56,54,57,49,52,53,49,49,52,55,53,50,120,49,57,50,88,49,54,56,88,51,56,88,52,49,88,56,48,56,48,88,65,39,41,34,32,115,116,121,108,101,61,34,99,117,114,115,111,114,58,112,111,105,110,116,101,114,34,62,10,60,116,97,98,108,101,32,119,105,100,116,104,61,34,49,53,54,34,32,98,111,114,100,101,114,61,34,48,34,32,99,101,108,108,115,112,97,99,105,110,103,61,34,49,34,32,99,101,108,108,112,97,100,100,105,110,103,61,34,49,34,62,10,60,116,114,62,10,32,32,60,116,100,32,97,108,105,103,110,61,34,108,101,102,116,34,32,62,60,115,112,97,110,32,105,100,61,34,97,99,95,116,105,116,108,101,34,62,60,102,111,110,116,32,115,116,121,108,101,61,34,102,111,110,116,45,115,105,122,101,58,49,50,112,120,59,32,99,111,108,111,114,58,35,70,70,48,48,48,48,59,32,102,111,110,116,45,119,101,105,103,104,116,58,98,111,108,100,59,102,111,110,116,45,102,97,109,105,108,121,58,65,114,105,97,108,44,32,72,101,108,118,101,116,105,99,97,44,32,115,97,110,115,45,115,101,114,105,102,44,86,101,114,100,97,110,97,34,32,99,111,108,111,114,61,34,35,70,70,48,48,48,48,34,62,66,108,117,101,32,72,111,117,115,101,32,77,105,107,115,101,114,39,100,101,32,38,35,51,53,48,59,111,107,33,60,47,102,111,110,116,62,60,47,115,112,97,110,62,60,47,116,100,62,10,60,47,116,114,62,60,116,114,62,10,60,116,100,32,97,108,105,103,110,61,34,108,101,102,116,34,62,60,115,112,97,110,32,105,100,61,34,97,99,95,100,101,115,99,34,62,60,102,111,110,116,32,115,116,121,108,101,61,34,102,111,110,116,45,115,105,122,101,58,49,49,112,120,59,32,99,111,108,111,114,58,35,48,48,48,48,48,48,59,32,102,111,110,116,45,102,97,109,105,108,121,58,65,114,105,97,108,44,32,72,101,108,118,101,116,105,99,97,44,32,115,97,110,115,45,115,101,114,105,102,44,86,101,114,100,97,110,97,34,62,66,108,117,101,32,72,111,117,115,101,32,77,105,107,115,101,114,39,100,101,32,65,110,110,101,108,101,114,101,32,38,79,117,109,108,59,122,101,108,32,70,105,121,97,116,32,83,65,68,69,67,69,32,50,57,44,57,54,32,89,84,76,33,60,47,102,111,110,116,62,60,47,115,112,97,110,62,60,47,116,100,62,10,60,47,116,114,62,60,116,114,62,10,60,116,100,32,97,108,105,103,110,61,34,108,101,102,116,34,62,60,100,105,118,32,105,100,61,34,97,99,95,117,114,108,34,62,60,102,111,110,116,32,115,116,121,108,101,61,34,102,111,110,116,45,115,105,122,101,58,49,48,112,120,59,32,99,111,108,111,114,58,35,70,70,54,54,57,57,59,32,102,111,110,116,45,102,97,109,105,108,121,58,65,114,105,97,108,44,32,72,101,108,118,101,116,105,99,97,44,32,115,97,110,115,45,115,101,114,105,102,44,86,101,114,100,97,110,97,34,62,119,119,119,46,107,97,108,101,100,101,60,119,98,114,32,47,62,46,99,111,109,60,47,102,111,110,116,62,60,47,100,105,118,62,60,47,116,100,62,60,47,116,114,62,60,47,116,97,98,108,101,62,60,47,116,100,62,60,47,116,114,62,60,116,114,62,10,60,116,100,32,99,108,97,115,115,61,34,97,99,95,107,97,114,105,109,34,32,104,101,105,103,104,116,61,34,50,48,37,34,32,98,103,99,111,108,111,114,61,34,35,70,70,70,70,70,70,34,32,105,100,61,34,116,97,119,53,34,32,97,108,105,103,110,61,34,108,101,102,116,34,32,118,97,108,105,103,110,61,34,109,105,100,100,108,101,34,32,111,110,70,111,99,117,115,61,34,115,115,40,39,103,111,32,116,111,32,119,119,119,46,98,105,116,109,101,100,60,119,98,114,32,47,62,101,110,46,99,111,109,39,44,39,97,119,53,39,41,34,32,111,110,77,111,117,115,101,79,118,101,114,61,34,115,115,40,39,103,111,32,116,111,32,119,119,119,46,98,105,116,109,101,100,60,119,98,114,32,47,62,101,110,46,99,111,109,39,44,39,97,119,53,39,41,34,32,32,111,110,77,111,117,115,101,79,117,116,61,34,99,115,40,41,34,32,111,110,67,108,105,99,107,61,34,103,97,40,39,104,116,116,112,58,47,47,97,100,115,101,114,118,101,114,46,109,121,110,101,116,46,99,111,109,47,65,100,83,101,114,118,101,114,47,99,108,105,99,107,46,106,115,112,63,117,114,108,61,51,51,54,49,55,53,56,50,56,51,56,50,53,52,57,55,54,49,48) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-117794.js b/src/3rdparty/v8/test/mjsunit/regress/regress-117794.js deleted file mode 100644 index 5e11b40..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-117794.js +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Loads specialized to be from the global object should not omit the -// smi check on the receiver. The code below should not crash. - -print = function() {} - -function constructor() {}; - -function assertHasOwnProperties(object, limit) { - for (var i = 0; i < limit; i++) { } -} - -try { - Object.keys(); -} catch(exc2) { - print(exc2.stack); -} - -var x1 = new Object(); - -try { - new Function("A Man Called Horse", x1.d); -} catch(exc3) { - print(exc3.stack); -} - -try { - (-(true)).toPrecision(0x30, 'lib1-f1'); -} catch(exc1) { - print(exc1.stack); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1178598.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1178598.js deleted file mode 100644 index 9caaec2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1178598.js +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test cases for issue 1178598. - -// Make sure const-initialization doesn't conflict -// with heap-allocated locals for catch variables. -var value = (function(){ - try { } catch(e) { - // Force the 'e' variable to be heap-allocated - // by capturing it in a function closure. - (function() { e; }); - } - // Make sure the two definitions of 'e' do - // not conflict in any way. - eval("const e=1"); - return e; -})(); - -assertEquals(1, value); - - - -// Make sure that catch variables can be accessed using eval. -var value = (function() { - var result; - try { - throw 42; - } catch (e) { - result = eval("e"); - } - return result; -})(); - -assertEquals(42, value); - - - -// Make sure that heap-allocated locals for catch variables aren't -// visible outside the catch scope and that they are visible from -// within. -var value = (function() { - var result; - try { - throw 87; - } catch(e) { - // Force the 'e' variable to be heap-allocated - // by capturing it in a function closure. - (function() { e; }); - result = eval("e"); - } - - // Expect accessing 'e' to yield an exception because - // it is not defined in the current scope. - try { - eval("e"); - assertTrue(false); // should throw exception - } catch(exception) { - assertTrue(exception instanceof ReferenceError); - return result; - } -})(); - -assertEquals(87, value); - - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1181.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1181.js deleted file mode 100644 index d45a0be..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1181.js +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// The first count times, test is called with an integer argument and -// crankshaft produces code for int32 representation. Test that the -// implementation correctly deoptimizes. - -// Flags: --allow-natives-syntax - -function test(x) { - var xp = x * 1 - 1; - return xp; -} - - -function check(count) { - %DeoptimizeFunction(test); - var i; - for(var x=0; x < count; x++){ - for(var y=0; y < count; y++){ - i = test(x / 100); - } - } - assertEquals((count - 1) / 100, i + 1); -} - - -check(150); -check(200); -check(350);
\ No newline at end of file diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1182832.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1182832.js deleted file mode 100644 index 6c4fcb4..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1182832.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var caught = false; -try { - (function () { - var e = 0; - eval("const e = 1;"); - })(); -} catch (e) { - caught = true; - assertTrue(e instanceof TypeError); -} -assertTrue(caught); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1184.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1184.js deleted file mode 100644 index 0bb1b3c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1184.js +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test the case when finally clause throws another exception (stack overflow) -// which goes through some try/catch block---we need to clear v8::TryCatch -// catcher as it doesn't catch original exception any more. - -o = {}; -o.__defineGetter__('foo', function() { throw 42; }); -function f() { - try { - // throw below sets up Top::thread_local_.catcher_... - throw 42; - } finally { - // ...JS accessor traverses v8 runtime/JS boundary and - // when coming back from JS to v8 runtime, retraverses - // stack with catcher set while processing exception - // which is not caught by external try catch. - try { o.foo; } catch(e) { }; - return; - } -}; -f(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1187524.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1187524.js deleted file mode 100644 index 2aeb1c5..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1187524.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Make sure we don't die on conversion to Smi in string indexing - -assertEquals(undefined, ""[0x40000000]); -assertEquals(undefined, ""[0x80000000]); -assertEquals(undefined, ""[-1]); -assertEquals(undefined, ""[-0x40000001]); -assertEquals(undefined, ""[-0x80000000]); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-119429.js b/src/3rdparty/v8/test/mjsunit/regress/regress-119429.js deleted file mode 100644 index a876487..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-119429.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -var d = 0; -function recurse() { - if (++d == 25135) { // A magic number just below stack overflow on ia32 - %DebugBreak(); - } - recurse(); -} -assertThrows(function() { recurse();} ); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-119609.js b/src/3rdparty/v8/test/mjsunit/regress/regress-119609.js deleted file mode 100644 index 99041ad..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-119609.js +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug - -Debug = debug.Debug; - -var exception = false; - -function listener(event, exec_state, event_data, data) { - try { - if (event == Debug.DebugEvent.Break) { - function lookup(name) { - return exec_state.frame(0).evaluate(name).value(); - } - - assertEquals(3, lookup("e")); - assertEquals(4, lookup("f")); - assertEquals(1, lookup("a")); - - try { - assertEquals(2, lookup("b")); - } catch (e) { - assertEquals("ReferenceError: b is not defined", e.toString()); - } - } - } catch (e) { - exception = e.toString() + e.stack; - } -} - -Debug.setListener(listener); - -function f(a, b) { - var c = 3; - function d(e, f) { - var g = a; - var h = c; - debugger; - } - - return d; -} - -f(1, 2)(3, 4); - -assertFalse(exception); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-119925.js b/src/3rdparty/v8/test/mjsunit/regress/regress-119925.js deleted file mode 100644 index 6712754..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-119925.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that the throw is not inlined if object literals cannot be -// inlined. -Array.prototype.__proto__ = { 77e4 : null }; -function continueWithinLoop() { - for (var key in [(1.2)]) { } -}; -continueWithinLoop(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1199401.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1199401.js deleted file mode 100644 index cc7985d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1199401.js +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Ensure that we can correctly change the sign of the most negative smi. - -// Possible Smi ranges. -var ranges = [{min: -1073741824, max: 1073741823, bits: 31}, - {min: -2147483648, max: 2147483647, bits: 32}]; - -for (var i = 0; i < ranges.length; i++) { - var range = ranges[i]; - var min_smi = range.min; - var max_smi = range.max; - var bits = range.bits; - var name = bits + "-bit"; - - var result = max_smi + 1; - - // Min smi as literal - assertEquals(result, eval(min_smi + " * -1"), name + "-litconmult"); - assertEquals(result, eval(min_smi + " / -1"), name + "-litcondiv"); - assertEquals(result, eval("-(" + min_smi + ")"), name + "-litneg"); - assertEquals(result, eval("0 - (" + min_smi + ")")), name + "-conlitsub"; - - // As variable: - assertEquals(result, min_smi * -1, name + "-varconmult"); - assertEquals(result, min_smi / -1, name + "-varcondiv"); - assertEquals(result, -min_smi, name + "-varneg"); - assertEquals(result, 0 - min_smi, name + "-convarsub"); - - // Only variables: - var zero = 0; - var minus_one = -1; - - assertEquals(result, min_smi * minus_one, name + "-varvarmult"); - assertEquals(result, min_smi / minus_one, name + "-varvardiv"); - assertEquals(result, zero - min_smi, name + "-varvarsub"); - - // Constants as variables - assertEquals(result, eval(min_smi + " * minus_one"), name + "-litvarmult"); - assertEquals(result, eval(min_smi + " / minus_one"), name + "-litvarmdiv"); - assertEquals(result, eval("0 - (" + min_smi + ")"), name + "-varlitsub"); - - var half_min_smi = -(1 << (bits >> 1)); - var half_max_smi = 1 << ((bits - 1) >> 1); - - assertEquals(max_smi + 1, -half_min_smi * half_max_smi, name + "-half1"); - assertEquals(max_smi + 1, half_min_smi * -half_max_smi, name + "-half2"); - assertEquals(max_smi + 1, half_max_smi * -half_min_smi, name + "-half3"); - assertEquals(max_smi + 1, -half_max_smi * half_min_smi, name + "-half4"); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1199637.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1199637.js deleted file mode 100644 index 8b02a65..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1199637.js +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --es52_globals - -// Make sure that we can introduce global variables (using -// both var and const) that shadow even READ_ONLY variables -// in the prototype chain. -const NONE = 0; -const READ_ONLY = 1; - -// Use DeclareGlobal... -%SetProperty(this.__proto__, "a", 1234, NONE); -assertEquals(1234, a); -eval("var a = 5678;"); -assertEquals(5678, a); - -%SetProperty(this.__proto__, "b", 1234, NONE); -assertEquals(1234, b); -eval("const b = 5678;"); -assertEquals(5678, b); - -%SetProperty(this.__proto__, "c", 1234, READ_ONLY); -assertEquals(1234, c); -eval("var c = 5678;"); -assertEquals(5678, c); - -%SetProperty(this.__proto__, "d", 1234, READ_ONLY); -assertEquals(1234, d); -eval("const d = 5678;"); -assertEquals(5678, d); - -// Use DeclareContextSlot... -%SetProperty(this.__proto__, "x", 1234, NONE); -assertEquals(1234, x); -eval("with({}) { var x = 5678; }"); -assertEquals(5678, x); - -%SetProperty(this.__proto__, "y", 1234, NONE); -assertEquals(1234, y); -eval("with({}) { const y = 5678; }"); -assertEquals(5678, y); - -%SetProperty(this.__proto__, "z", 1234, READ_ONLY); -assertEquals(1234, z); -eval("with({}) { var z = 5678; }"); -assertEquals(5678, z); - -%SetProperty(this.__proto__, "w", 1234, READ_ONLY); -assertEquals(1234, w); -eval("with({}) { const w = 5678; }"); -assertEquals(5678, w); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1200351.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1200351.js deleted file mode 100644 index f752a1e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1200351.js +++ /dev/null @@ -1,2032 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Make sure the 'constructor' property isn't enumerable. -var enums = ""; -for (var k in this) enums += (k + '|'); -assertEquals(-1, enums.split('|').indexOf("constructor")); - -// Make sure this doesn't crash. -new this.constructor; -new this.constructor(); -new this.constructor(1,2,3,4,5,6); - -var x = 0; -try { - eval("SetValueOf(typeof(break.prototype.name), Math.max(typeof(break)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export Join((void), false.className(), null instanceof continue, return 'a', 0.__defineGetter__(x,function(){native}))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ void&&null.push(goto NaN) : Math.max(undef).toText }) { {-1/null,1.isNull} }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new break>>>=native.charCodeAt(-1.valueOf())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Number(this > native)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new {native,0.2}?continue+undef:IsSmi(0.2)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = break.toString()&&return continue") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (-1==continue.toJSONProtocol, GetFunctionFor(break.call(NaN)), (!new RegExp).prototype.new Object()<<void) { debugger.__defineSetter__(null,function(){continue})>>>=GetFunctionFor(-1) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (parseFloat(NaN).splice() in null.add(1).className()) { true[0.2]<<x.splice() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (debugger.constructor.valueOf()) { this.sort().true.splice() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("unescape(break.toObject()).prototype.new RegExp.continue.__lookupGetter__(x.slice(1, NaN)) = typeof(null.push(0.2))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(Iterator(continue.pop()))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return new RegExp.shift().concat({debugger,continue}) }; X(return goto 0)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(0.add(break)&&x > null)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ eval(Array(x)) : 1.call('a').superConstructor }) { debugger.lastIndex.toLocaleString() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = return true.__defineGetter__(this,function(){0.2})") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new typeof(0)&this.lastIndex") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("String(new RegExp.call(1)).prototype.unescape(parseFloat(-1)) = false<<true.x.lastIndexOf(1)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ 1+debugger.valueOf() : continue.join().name() }) { parseInt(true)==undef.sort() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new RegExp>>0.2.superConstructor.prototype.eval(void).className() = false.join().prototype.name") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export (new Object()?undef:native)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new null.isNull.slice(x.prototype.value, Iterator(undef))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export function () { 0.2 }.unshift()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Math.max(continue.valueOf())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = return debugger.toObject()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (-1.length+new Object().prototype.name) { case (debugger.constructor.sort()): IsPrimitive(undef.__defineSetter__(undef,function(){native})); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete (!new Object().toLocaleString())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(0<<'a'>>>=new RegExp['a'])") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native {unescape(true),new RegExp.isNull}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = -1.lastIndexOf(false)?parseFloat(void):Join(null, continue, new Object(), x, break)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label null/void-break.__lookupGetter__(native)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(0.2.join().constructor)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label function () { false }.__lookupGetter__(this==1)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(-1.prototype.0.2.unshift())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new return goto -1") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new {Number(debugger)}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (parseInt(break) instanceof 0.length) { this.(!0.2) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(break.superConstructor[throw new false(true)], this.~x)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(function () { IsSmi(-1) }, unescape(IsPrimitive(void)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (new RegExp.join().className() in new Object().length()>>true.toObject()) { parseFloat(escape(debugger)) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new String(debugger).toJSONProtocol") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(1.indexOf('a')<<break.__lookupGetter__('a'), new Object().null.prototype.new RegExp.charCodeAt(-1))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new {parseInt(0)}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(void.join().add(escape(undef)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native parseFloat(false.charAt(new RegExp))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(~Iterator(void))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(NaN.shift().toJSONProtocol)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(native-debugger<<continue.slice(x, new RegExp))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = parseFloat(~new Object())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (null.size/true.add(void) in 0+continue&true.null) { continue.toObject()/throw new true(debugger) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (Iterator(native+break) in debugger.superConstructor.constructor) { Math.max(0.add(undef)) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new {-1.add(native),true.sort()}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new {IsSmi(break),throw new 'a'(null)}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (parseInt(0).length()) { case ('a'.toObject().__defineSetter__(GetFunctionFor(null),function(){(!x)})): IsSmi(void).constructor; break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new 0.lastIndexOf(NaN).shift()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ 0>>>=this.lastIndex : new Object().lastIndexOf(true).toObject() }) { x.lastIndex > 1.__defineSetter__(false,function(){this}) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ throw new false(0.2).prototype.name : parseFloat(false)+(!debugger) }) { escape(undef.lastIndex) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Math.pow(0.2).toJSONProtocol.prototype.break.superConstructor.slice(NaN.exec(undef), -1.lastIndexOf(NaN)) = true.splice().length") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native continue.className().constructor") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (0.2.isNull&undef.toString()) { continue/void+parseInt(null) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new Math.pow(break==this)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(continue.__lookupGetter__(null).constructor, debugger.filter(0.2)>>>=this.'a')") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ 0.2.unshift() > true.size : return Math.max(new RegExp) }) { void.splice().toString() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new unescape(false).unshift()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return this.true?'a'==this:0.2.__lookupGetter__(void) }; X(Iterator(false).length)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = function () { null }.__defineSetter__(0.charCodeAt(new Object()),function(){null>>>=new Object()})") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import goto 'a'.charAt(native.className())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import 0.2.isNull.__lookupGetter__(debugger.size)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (~new Object().push(Array(null)) in new RegExp>>>=void.prototype.name) { goto break.lastIndex }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete String(x).slice(String('a'), parseFloat(false))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new parseInt(continue.__defineGetter__(0.2,function(){1}))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(true.concat(undef)==0.2.new RegExp)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return NaN['a']?-1.exec(0):NaN.prototype.this }; X(native.prototype.name.toLocaleString())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (debugger==continue.toObject(), Array(NaN.className()), Math.max(new RegExp).prototype.value) { GetFunctionFor('a').prototype.value }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new parseInt(break)==Array(x)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (parseInt(0.2.charCodeAt(this)), this.continue.prototype.name, native.superConstructor.superConstructor) { Join(0.__defineGetter__(continue,function(){undef}), {1}, parseFloat(0), undef.__defineSetter__(break,function(){null}), x?-1:-1) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export Join(debugger.splice(), parseInt(NaN), new RegExp.pop(), this.false, x.-1)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = Math.max(native).charCodeAt(continue==break)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (void==NaN.sort(), new Object()==new RegExp.toObject(), -1/NaN.unshift()) { GetFunctionFor(true).name() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for ((!'a'.join()), ~NaN.__defineGetter__(undef,function(){this}), Math.pow(NaN).__lookupGetter__(typeof(false))) { throw new debugger.toObject()(Math.max(-1)) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (NaN.shift()&&undef&&continue in throw new x(NaN).prototype.-1&x) { return native.toJSONProtocol }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new (0).charAt(this.charCodeAt(new Object()))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return x.valueOf().size }; X(0.2.unshift().unshift())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (eval(new Object().valueOf())) { break.prototype.name.__defineGetter__(eval(NaN),function(){Math.max(native)}) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (Math.pow(1).isNull in Iterator(continue.length())) { Join(true, 0.2, null, x, new Object()).length }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(0>>>=void.unshift(), void.exec('a').undef.length())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete throw new this(0.2).pop()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Iterator(unescape(continue))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return unescape(goto debugger) }; X(new RegExp.push(break).name())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = undef/'a'.indexOf(-1.exec(false))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (continue.isNull.filter(this.toText), function () { throw new 'a'(0.2) }, native?break:undef.prototype.return continue) { Array(void.toText) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new this.slice(new Object(), 1).isNull") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (0.2.className().call((!debugger)), native.__defineGetter__(0,function(){x}).name(), null.splice().splice()) { NaN.charCodeAt(new Object()) > true.toString() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native false.length?new RegExp instanceof this:Array(undef)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new ~0.2.call(typeof(false))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Number(0.2.sort())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new x.join().shift()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (~new Object().toText) { case (new RegExp.unshift().exec(new RegExp<<debugger)): -1.length.exec(this.isNull); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new parseInt(~true)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new unescape(debugger.call(null))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new GetFunctionFor(0.2).toObject()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete IsPrimitive(null.join())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (eval(0.2) instanceof debugger.splice() in null.superConstructor==new Object()&void) { Number(0+x) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let ('a'-continue?null.length():escape(continue)) { return undef.push(false.shift()) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (Array(x.length) in 'a'.length().sort()) { goto (new Object()) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (NaN==true.length) { IsPrimitive(0.2).prototype.value }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(return true&&void, new RegExp.toObject().length())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Math.pow(void).length") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(void.add(continue).charCodeAt(this.toObject()))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export Join(break.toObject(), 0.2.isNull, false.call(0), break.filter(break), 1.length())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (1/NaN.__lookupGetter__(undef.prototype.value)) { escape(eval(this)) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(Join(unescape(x), new RegExp.__defineGetter__(debugger,function(){NaN}), 'a'.indexOf(0.2), false.prototype.name, (this)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new Math.pow(native).indexOf(1>>>=-1)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new RegExp?native:continue.join().prototype.Math.max(x.__defineSetter__(1,function(){continue})) = parseFloat(parseInt(null))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native function () { new RegExp }.new RegExp.pop()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import typeof(new RegExp.valueOf())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (0.2.size>>NaN-continue) { case ('a'.push(true).indexOf(NaN.lastIndexOf(-1))): {0.2,x}.toObject(); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (IsSmi(new Object())/false.filter('a')) { function () { Iterator(debugger) } }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = break.lastIndex.size") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(new Object() > 0.length())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native IsPrimitive(continue)==break.charCodeAt(new Object())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new break.true<<'a'-NaN") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Number(-1?'a':-1)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (parseFloat('a'.exec(continue)) in (!new RegExp)&&0.2.toObject()) { {true,x}.add(void.prototype.NaN) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (-1.prototype.value.join()) { (!1.prototype.name) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new GetFunctionFor(continue).toJSONProtocol") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (Math.pow(continue.slice(null, native)), goto (!0), native?1:this.charAt(String(debugger))) { parseFloat(~this) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(debugger.pop().length, new RegExp.isNull.toText)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (typeof(new RegExp.slice(new RegExp, 0)) in native.toLocaleString().lastIndexOf(0.2.length())) { native>>>=new RegExp.length() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native x.join().className()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new 0?0:true.toLocaleString()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = IsPrimitive(0).concat(new Object().name())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new parseFloat(x)?this.valueOf():IsSmi(x)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new 'a'.slice(null, -1).shift()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label 'a'+void.concat('a'>>>=-1)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(escape(0.length))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = parseInt(0.lastIndexOf(NaN))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(null&debugger.valueOf(), 0[false].push(false.add(debugger)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = parseInt(new RegExp.__lookupGetter__(break))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(~false&&break>>0, new RegExp.lastIndex.add({this}))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = Join(break, continue, 0, debugger, NaN).toLocaleString()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import new Object().sort().superConstructor") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new IsSmi(goto -1)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return Iterator(null).toObject() }; X(-1==new Object()==0.__lookupGetter__(native))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native void.join().add(parseFloat(continue))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (function () { -1 }.shift()) { escape(1.unshift()) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(new RegExp.indexOf(1).filter(continue instanceof break))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (NaN?continue:NaN.shift()) { native.push(null).add(new Object().superConstructor) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return new Object().length().toText }; X(debugger.indexOf(this).toText)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new Object().call('a').charCodeAt(native.size)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new function () { continue }.add(true.slice(continue, new RegExp))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x[native] instanceof -1.join().prototype.this.null.size = 0.2.prototype.x+0.2.indexOf(false)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (this instanceof new RegExp.splice() in null>>>=new RegExp.valueOf()) { function () { unescape(1) } }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (true.shift()/native.null in undef.call(NaN).isNull) { native+this-x.size }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return false.pop()<<Join(continue, false, break, NaN, -1) }; X(IsSmi(debugger>>x))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if ({parseFloat(null),Math.max(native)}) { 0.2-new Object().__lookupGetter__(eval(new Object())) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(Array(1).toLocaleString(), null.name().exec(undef.filter(false)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(true.filter(this).pop())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (break.lastIndex.superConstructor) { new Object().toString().length() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label (!0.2/debugger)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ NaN.concat(new RegExp)+Join(1, false, new Object(), new Object(), x) : unescape(x).concat(Iterator(-1)) }) { 'a'.isNull.__lookupGetter__(this+native) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export break.name()/IsPrimitive(this)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new {null}.prototype.value") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new true+false.__lookupGetter__(null&continue)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (-1.push(new RegExp)[void.valueOf()]) { new RegExp.className().__lookupGetter__(Array(0)) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export NaN.__lookupGetter__(undef).__lookupGetter__(void.isNull)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ ~new RegExp.filter(undef&&this) : String(continue)<<NaN.toText }) { this.exec(this).length }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (true&void.exec(void.exec(continue)) in Join('a', undef, new Object(), continue, x) instanceof {undef}) { unescape(-1.prototype.name) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import void.push(true).join()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf({break}&x.name(), 1.charAt(false).slice(continue.superConstructor, this&&break))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (this.call(this) > Iterator(continue)) { new Object().prototype.value.slice(1.slice(native, -1), (!false)) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export parseInt(new RegExp>>>=x)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (escape(x==debugger), NaN.shift()&debugger?false:0.2, (!new RegExp)&goto break) { unescape(x.toText) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(throw new NaN.toObject()(this?break:true))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new (typeof(this))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (unescape('a'/0) in ~new Object().lastIndex) { IsSmi(0).push(0.concat(0.2)) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("(!new RegExp)[0.2 > new Object()].prototype.Number(debugger.join()) = native&-1.size") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new false.toJSONProtocol&&0.2.constructor") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (~0?0.2:undef in new RegExp.charCodeAt(0).prototype.name) { NaN.toLocaleString().splice() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (~IsPrimitive(new RegExp), true.toString().size, null.charCodeAt('a') > null.concat(0)) { break.toJSONProtocol/IsPrimitive(break) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new parseInt(new Object()).lastIndexOf(NaN > void)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export break.splice()&&-1.prototype.new Object()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("{{true,0}}.prototype.break.length.splice() = 'a'.toText.superConstructor") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (debugger>>>=continue > break.exec(1)) { Math.pow(new RegExp)==NaN>>>=0.2 }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ 0.2==0.2/goto true : IsSmi(native).isNull }) { throw new {x,null}(false.className()) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = {false.concat(null),Math.pow(NaN)}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export Array(null).add(NaN.valueOf())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (parseFloat(new Object()==true) in GetFunctionFor('a'&false)) { native&undef.toJSONProtocol }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new {eval(null),(debugger)}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import {this.0,debugger.filter(NaN)}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import break.charAt(-1)<<false.__defineSetter__(0,function(){x})") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = goto false > new Object()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("null.superConstructor[debugger.isNull].prototype.Math.max('a').shift() = parseInt(0).size") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native eval(void.add(break))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(x > void.join())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ {this.toObject()} : Number(NaN).toJSONProtocol }) { 0.2.className().prototype.name }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (false.__defineGetter__(undef,function(){undef}).exec(NaN.splice())) { typeof(Join(void, new RegExp, break, -1, -1)) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (false.splice().toObject(), continue.name().size, Join(void?debugger:this, new RegExp.__defineSetter__(NaN,function(){NaN}), x.unshift(), this.true, parseInt(break))) { undef<<continue.toText }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (this.0.indexOf(break)) { break.charAt(this).unshift() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import Join(new Object().splice(), this instanceof 1, parseFloat(NaN), undef.concat(x), void.className())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(goto NaN.toString())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label 'a'<<break.shift()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = Iterator(continue)[new Object()>>NaN]") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = Join(new RegExp, 'a', this, void, true)>>>=continue>>native") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import new Object().toJSONProtocol.splice()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return undef.__defineSetter__(native,function(){void}).toJSONProtocol }; X(eval(x).charCodeAt('a'.concat(true)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(throw new 0.2.__defineGetter__(NaN,function(){-1})(void&&new RegExp))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = 0.unshift() > IsSmi(NaN)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label x.call(null).lastIndex") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(IsSmi(0.2.add(0)), x.add(break).this.__defineGetter__(undef,function(){new RegExp}))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native Number(this).toObject()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new NaN.shift().add(String(new Object()))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new null.name().splice()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = 1.undef.push(new Object().call(null))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(parseInt(1).size)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = this.x.sort()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(continue.valueOf().prototype.new RegExp.splice())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(this.charAt(continue)?undef+'a':unescape(1))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf({throw new 'a'(0.2),void.lastIndexOf(NaN)}, Math.pow(new Object().className()))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (1.slice(new Object(), this).valueOf()) { parseInt(true).pop() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ 0.2.superConstructor.lastIndex : goto debugger<<Join(undef, 1, true, undef, debugger) }) { function () { NaN }.prototype.name }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("-1.exec(debugger).length.prototype.debugger > null.slice(Iterator(void), continue.concat(0)) = parseInt(throw new 1(1))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(new Object().constructor.call(Number(1)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new null.unshift().call(escape(x))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (Math.pow(native).toLocaleString()) { case (false instanceof native.join()): Math.pow(NaN).size; break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label function () { new Object() }.prototype.true.size") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = Join('a', 0.2, false, new Object(), void).continue.className()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = IsPrimitive(break.__lookupGetter__(-1))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new Object()>>0.2.prototype.name") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new IsPrimitive(new Object()).shift()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (Array(parseInt(break))) { 'a'.toString().unshift() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = return 0.2>>>=-1?undef:undef") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Object().splice().unshift().prototype.null&&native.__lookupGetter__(undef>>>=NaN) = (1<<break)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete NaN.charAt(1).concat(NaN.0.2)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(new RegExp.sort().toJSONProtocol)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return GetFunctionFor(false).lastIndexOf(1.shift()) }; X(this.0.2.charCodeAt(0.2))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (goto NaN.toObject(), ~true.'a', parseInt(debugger)+eval(false)) { eval(0.2.constructor) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (parseInt(debugger).pop()) { case (this.push(true).valueOf()): Join(continue, debugger, native, native, debugger).filter(Array(continue)); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new debugger.sort() instanceof this>>1") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ parseFloat(false).prototype.(!new Object()) : {unescape(-1)} }) { Math.max(new RegExp.superConstructor) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate({Math.pow(break)})") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import typeof(break.valueOf())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(Math.pow(-1[new RegExp]))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native IsPrimitive(1).concat({x,null})") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("NaN.length.prototype.value.prototype.function () { null==new Object() } = break.name()&IsPrimitive(0)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete NaN.prototype.-1.toString()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new continue.unshift()+parseFloat(undef)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new NaN-break.call(false.pop())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native new RegExp.exec(break).pop()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf({'a',null}.prototype.value, 1.shift() instanceof {'a',0})") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (debugger.valueOf().size, function () { x.unshift() }, IsSmi(1)&&true==native) { new Object().__defineGetter__(this,function(){'a'})&&eval(native) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export 'a'.pop().charCodeAt(x.className())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export String(IsSmi(debugger))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("typeof(debugger).valueOf().prototype.(1).lastIndexOf(this.break) = x.prototype.name.toLocaleString()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native Array(typeof(false))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(1.__defineGetter__(1,function(){1}).null.constructor)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = 1.charAt(0).toObject()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(Math.max('a'.filter(new Object())))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(void.prototype.name.unshift())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (-1.toJSONProtocol.call(-1.size) in ~x.sort()) { eval(0&debugger) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for ('a'==undef.join() in Math.pow(IsSmi(false))) { undef > this>>goto x }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate('a'.constructor.isNull)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (GetFunctionFor(this.slice(0.2, this)), this.prototype.void?null.unshift():native.className(), Number(new Object().call(-1))) { 0.splice() > debugger&&this }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ {goto new RegExp,Join(new Object(), native, continue, -1, x)} : NaN&x/{0,break} }) { this.lastIndexOf(new RegExp).join() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (typeof(break.length())) { native&&false.sort() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new parseFloat(-1 instanceof break)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label throw new continue.unshift()(null.shift())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import Math.max(0.2.toLocaleString())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return false.unshift().className() }; X(escape(NaN&NaN))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(Join(native.toText, goto x, 0.2.splice(), Join('a', 0, void, NaN, 1), eval(native)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (GetFunctionFor(true.prototype.name)) { parseInt(NaN).toLocaleString() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new escape(native).__defineSetter__(return native,function(){undef > native})") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new typeof(true > 'a')") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (debugger.prototype.0.2<<new RegExp+false) { case (native.splice().filter({x})): false&true.indexOf(1.__defineGetter__(native,function(){continue})); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label true-NaN.prototype.native.shift()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new typeof(new RegExp.splice())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (function () { this.NaN }) { case (this.continue.prototype.parseFloat(false)): IsPrimitive(new Object()-'a'); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export break.__lookupGetter__(debugger).indexOf(native.pop())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (GetFunctionFor(NaN.lastIndex)) { case (new RegExp.lastIndex.toLocaleString()): NaN.join().indexOf(eval(-1)); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native {void.charAt(true)}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new new Object()==NaN.join()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(typeof(Array(new Object())))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label throw new (false)(eval(x))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new new RegExp.size.charAt(true > -1)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = debugger.toObject().charAt(this<<undef)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ 'a'.valueOf()+parseInt(undef) : IsPrimitive(null).lastIndex }) { NaN.toObject().isNull }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new new Object()&&void.lastIndexOf(0.2.splice())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ 1+1.name() : Join(Math.pow(debugger), new RegExp-1, x > 1, x<<-1, new RegExp.size) }) { undef[undef].size }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete native.call(-1).isNull") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (new Object()>>>=break==Math.pow(debugger)) { IsPrimitive(this).lastIndex }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for ((!x&&new RegExp) in undef.toLocaleString().slice(new RegExp.indexOf(NaN), IsPrimitive(-1))) { false.size+debugger[x] }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import 0.length.__defineGetter__(0.2.shift(),function(){'a'.className()})") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(goto new Object().push(void))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ Array(this.0) : parseFloat(void).pop() }) { escape(true).slice(continue.lastIndex, false.toObject()) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new native==true.filter({NaN,-1})") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for ('a'.__defineSetter__(continue,function(){-1}).unshift(), Array(undef).toLocaleString(), undef.__lookupGetter__(void).toLocaleString()) { parseInt(false/native) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("this.x<<false.prototype.true.toLocaleString()==NaN.pop() = this.superConstructor>>Math.max(true)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return this.prototype.name.splice() }; X(unescape(x).__lookupGetter__(Number(debugger)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new (!NaN).unshift()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(escape(Iterator(this)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return Number(new RegExp)<<this?true:-1 }; X(Number(null).lastIndex)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export this.void.splice()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (this.prototype.null.sort() in -1.className()&void.filter(new Object())) { GetFunctionFor(new Object()).pop() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label 0[break].sort()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (null.length().toString(), eval(-1).toObject(), (!continue.concat(continue))) { true.name()/native<<new RegExp }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (unescape(null).sort(), Number(undef).charCodeAt(IsPrimitive(NaN)), null>>true/null.join()) { 0.2.toObject() > IsPrimitive(new RegExp) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date({NaN,native}&&1+undef)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(IsPrimitive(undef>>>=1))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (Join(true, 'a', true, 1, NaN).add({1}), GetFunctionFor(new Object().push(new Object())), goto 1.length) { Math.pow(GetFunctionFor(native)) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return break.isNull > parseInt(continue) }; X((new RegExp instanceof 1))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ Number(false).indexOf(x instanceof new Object()) : function () { x.toString() } }) { false.name().indexOf(GetFunctionFor(null)) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date('a'.constructor.prototype.name)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("GetFunctionFor(void&new Object()).prototype.debugger.add(null)[void.unshift()] = new RegExp.isNull.Iterator(this)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete false?break:undef.constructor") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ (native.filter(1)) : eval(this&&0.2) }) { undef.length instanceof new Object().toText }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export String(break.lastIndexOf(null))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label (!Iterator(new RegExp))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(String(null==-1), {1&0})") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(parseInt('a' > 0))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(debugger.toJSONProtocol.indexOf(escape(0)), this.filter(null).__defineSetter__(continue.break,function(){debugger>>null}))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("this.name().length().prototype.goto false.exec(true.charCodeAt(continue)) = Join(-1-false, undef.superConstructor, 'a'.shift(), (!x), NaN.this)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(typeof(new RegExp).sort())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new 0.2.concat(x).splice()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (goto void.indexOf(throw new x(1)), typeof(return new RegExp), IsPrimitive(-1).add(void.lastIndexOf(debugger))) { null.indexOf(void).toText }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("return new RegExp.pop().prototype.String(x.toObject()) = 1.superConstructor.charCodeAt(new RegExp.charCodeAt(null))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new null&true.prototype.name") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = -1>>>=NaN.indexOf((debugger))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new parseFloat(null).splice()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import -1.lastIndexOf(new RegExp) instanceof throw new void(0.2)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if ((0.shift())) { Join(IsPrimitive(-1), break.__defineSetter__(true,function(){break}), parseInt(null), parseFloat(break), true/null) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new escape(1 > continue)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (parseInt(undef)>>false.filter(continue)) { case (this.undef/new Object()): 'a'.toJSONProtocol.__defineGetter__(new RegExp-undef,function(){parseFloat(new RegExp)}); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("{void}.shift().prototype.this.Array(new Object()) = {0.2,new RegExp}.lastIndexOf(break.splice())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new continue&&new Object().lastIndexOf(new Object() instanceof 1)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (throw new 'a'.exec(x)(return false), native/void.constructor, {native}==true.toLocaleString()) { goto 1 instanceof 1.isNull }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (break.concat(break) > native>>>=-1, (debugger.x), Join(x, void, void, new RegExp, null).name()) { void.charCodeAt(true).valueOf() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new 'a'>>0 instanceof new Object().push(new RegExp)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (return ~break) { break.__defineGetter__(break,function(){-1}).shift() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(Join(null, -1, undef, null, 0).toString())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let ({new RegExp,void}.slice(break.isNull, false.shift())) { eval(debugger.slice(this, 1)) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return {GetFunctionFor(0)} }; X('a'.prototype.debugger.concat(void.constructor))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (~true instanceof continue) { escape(new RegExp.toObject()) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("escape(0[native]).prototype.debugger.add(1).unshift() = (true.join())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (unescape(void).length, undef.toObject() instanceof x.toObject(), 0.2+true.concat(true.__lookupGetter__(this))) { (x).toJSONProtocol }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(escape(null).__lookupGetter__(undef.size))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label Array(continue[false])") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return Number(this&&false) }; X(NaN.toJSONProtocol.toJSONProtocol)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("null.toString().shift().prototype.Array(x).__lookupGetter__('a'.prototype.x) = {1.length,break.join()}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new 1.charCodeAt(break)+IsSmi(false)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(String(this) > 0.2.toText, new RegExp.length.lastIndexOf(1<<0.2))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (new RegExp.pop().charAt(IsSmi(new RegExp))) { case (native.indexOf(this)/native.lastIndex): this.debugger.indexOf(debugger); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(Number(x)[debugger.prototype.break])") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return new RegExp>>>=x.unshift() }; X(Math.max(continue.name()))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(IsSmi(null.size))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = native?0.2:1+GetFunctionFor(void)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (IsPrimitive(-1)>>>=break.valueOf() in String(0 > 0.2)) { Math.max(true.length()) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (escape(unescape(NaN))) { case (Math.pow(eval(undef))): true.charAt(null)&new RegExp.pop(); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete Join(new RegExp, 1, false, new Object(), this).toLocaleString()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label return x.filter(x.join())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new new RegExp.pop().shift()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new (!debugger.size)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label Math.max(debugger.__lookupGetter__(NaN))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(eval(debugger[debugger]))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new 0.2.filter(true)&throw new true(debugger)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(continue.exec(debugger) > Math.pow(0.2))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("void.prototype.value.name().prototype.Number(undef&NaN) = false.__lookupGetter__(-1).name()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(null.__defineGetter__(native,function(){continue}).valueOf())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ {new Object()[continue],native.length()} : undef.name().superConstructor }) { Math.pow(break).indexOf(0.toJSONProtocol) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (Iterator(native.call(new RegExp))) { case (String(new RegExp).isNull): goto new RegExp.pop(); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new x.constructor instanceof undef.indexOf(-1)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(this.~null, continue.pop()&0&'a')") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (GetFunctionFor(~0)) { case ('a'.'a'<<undef.__defineGetter__(false,function(){true})): (!1).lastIndex; break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return debugger.unshift().0.toString() }; X(Number(break).0.2>>>=false)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(Iterator(x)/undef.pop())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(undef.join().toLocaleString(), null.add(false).valueOf())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("IsSmi(x).toString().prototype.0>>continue.indexOf(NaN.__lookupGetter__(new Object())) = ~-1&typeof(0)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (continue.__lookupGetter__(new RegExp).toObject(), false-0.toString(), return native.sort()) { new RegExp.name().className() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (escape(new RegExp).toString()) { case (goto eval(1)): this.filter(new Object()).call(new RegExp.slice(null, this)); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = debugger-false.toText") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = Number(null>>new RegExp)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete this&native.indexOf('a'.splice())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(~Math.max(break), 0.2.valueOf().length)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(Number(native.charCodeAt(x)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new goto continue.add(0)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete typeof(debugger).name()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("'a'<<false.toText.prototype.throw new true(1).lastIndex = 'a'.name().length") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native 'a'.indexOf(debugger).charAt(NaN.add(new Object()))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(break>>false.toString(), (false.indexOf(this)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete goto NaN==(!debugger)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(0.2.join().superConstructor)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new this.void.toLocaleString()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("SetValueOf(x.exec(debugger)[GetFunctionFor(0)], native.toObject().exec(new RegExp.sort()))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(0.2.valueOf().toLocaleString())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(-1.toJSONProtocol.prototype.name)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(Array(-1.shift()))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export break.concat(undef).unshift()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native parseFloat(-1)?NaN.toText:debugger.toString()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (void-continue/continue.prototype.undef in String(break.toText)) { parseInt(false).isNull }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(true.isNull.toObject())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ typeof(debugger).toObject() : x.constructor>>>=null.__defineGetter__(native,function(){debugger}) }) { unescape(undef.lastIndexOf(false)) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export unescape(continue)<<native[0]") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (String(0).unescape(debugger)) { {break.pop(),0.2.constructor} }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("String({true}).prototype.break.length.call(false > 0.2) = GetFunctionFor(0.prototype.new RegExp)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ false.push(0.2).indexOf(Math.max(debugger)) : x&x.prototype.name }) { goto 1.lastIndex }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(0.2.lastIndex&0.2?break:NaN)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = -1.prototype.value.toText") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import native.toLocaleString()-1.prototype.0") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export debugger[-1].indexOf(Join(new Object(), 0, x, new Object(), 0.2))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return (!true).lastIndexOf(true.splice()) }; X(NaN.toString().prototype.value)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return continue.slice(-1, 1).prototype.true.name() }; X('a'.push(void).prototype.value)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (goto new RegExp.length(), x.sort().className(), Math.max(new RegExp.toJSONProtocol)) { (IsSmi(-1)) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = 0.splice()&&-1.sort()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (Math.max(-1>>1)) { break.toLocaleString().toJSONProtocol }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new {void.prototype.break,new RegExp.toString()}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new IsSmi(debugger).name()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new 'a'.concat(undef).sort()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new {debugger.toObject(),'a' > false}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (goto 1.concat(Join(x, undef, native, x, new Object()))) { new RegExp.prototype.name==new RegExp.superConstructor }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return new Object().__defineGetter__(0.2,function(){0.2}).length() }; X(void.isNull<<parseFloat(NaN))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete continue.toJSONProtocol.toLocaleString()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (continue.constructor.toObject() in true&&undef.toJSONProtocol) { String(0+break) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import true.call(continue)>>break.toString()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label escape(this) > Math.pow(new RegExp)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new {void}/IsSmi(new Object())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (native==null?debugger.prototype.name:null.toLocaleString()) { case (NaN.push(this).join()): (break instanceof continue); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new Math.pow(x.push(0))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new (Array(NaN))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label IsSmi(new RegExp).toLocaleString()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label NaN.push(1).shift()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("{escape(undef),debugger.filter(0.2)}.prototype.-1 > new RegExp[0.2.valueOf()] = new RegExp.prototype.value.splice()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new Join(0.2, x, continue, debugger, new Object()).size") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("with ({ Number(null).name() : Math.pow(true).__defineGetter__(debugger.toString(),function(){false+0.2}) }) { this.{x,break} }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Math.pow(goto debugger)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = IsPrimitive(void.pop())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new Object().toString().toJSONProtocol") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(this.String(0.2))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let ({-1.call(new RegExp)}) { break.length().splice() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import null.size.__defineGetter__(void.filter(x),function(){null.pop()})") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new IsPrimitive(null.superConstructor)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new eval(-1.prototype.continue)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (typeof(Iterator('a'))) { case (0.constructor>>~1): void.__defineGetter__(void,function(){1})/GetFunctionFor(0); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for (false instanceof x.add(true.charAt(new RegExp)) in Join(undef.lastIndexOf(break), 0.2.add(new Object()), Iterator(1), {'a',x}, Array(new Object()))) { function () { null }/1&&-1 }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new escape('a'.concat(undef))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(Math.pow(NaN).toText)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new throw new 0(NaN).className()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete String(GetFunctionFor(new Object()))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = Iterator(new Object()).charAt((0.2))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Number(undef.charAt(1)).prototype.undef.lastIndexOf(true).slice(1.className(), undef.filter(-1)) = null<<null.push(parseInt('a'))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = {Math.max(1),IsSmi(new Object())}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch (new Object().exec(0).isNull) { case (escape(IsSmi(false))): false.toObject()-null.size; break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new 'a'.__defineSetter__(debugger,function(){false}).name()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = debugger?-1:0+true.prototype.1") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new {false instanceof continue,native.size}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("GetFunctionFor(continue.__lookupGetter__(0.2)).prototype.Math.max(1.splice()) = true.__defineGetter__(undef,function(){NaN}).filter(String(new RegExp))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("null.size-1.toLocaleString().prototype.(this).shift() = GetFunctionFor(native.charAt(break))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate((!null.indexOf(-1)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = {break.sort()}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new throw new debugger.splice()(this.__lookupGetter__(undef))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("unescape(x[native]).prototype.0.splice().-1.prototype.true = x.prototype.value.className()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export x+true.length") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export debugger.indexOf(-1).indexOf(true.constructor)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("for ({break}.exec(new Object().continue) in eval(0.2.charAt(new Object()))) { throw new null.length(null?break:-1) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = NaN.toLocaleString().toObject()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return Math.pow(break+false) }; X(Join(true.add(new Object()), null[-1], new RegExp[true], NaN&&debugger, x.charAt(undef)))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("switch ((break).add(true.sort())) { case (undef.charAt(native).__defineGetter__(IsPrimitive(1),function(){NaN<<new RegExp})): -1.__defineSetter__(null,function(){-1}) > this.charCodeAt(this); break; }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import return 0.2.length") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("continue.join().toText.prototype.Number(debugger).slice(new RegExp.-1, (NaN)) = function () { (!null) }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export Number(break.__lookupGetter__(false))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Date(return null/x)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export Number(undef).shift()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = 1[native]/this&true") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete typeof(debugger.unshift())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import x.charAt(false)&-1>>x") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("if (null.toText.superConstructor) { typeof(-1).toString() }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (parseFloat(continue.superConstructor)) { 0.2.toText.prototype.value }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label parseInt(IsSmi(null))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete new Object().valueOf().indexOf(true-x)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new unescape(1.__defineGetter__(new Object(),function(){x}))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("let (undef.size.splice()) { 1.constructor.charCodeAt(0+'a') }") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("this.new RegExp.pop().prototype.eval(debugger).toJSONProtocol = unescape(continue).valueOf()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("const x = new this.new RegExp.indexOf(unescape(new Object()))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = new break instanceof false instanceof native.length()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate(parseFloat(x).valueOf())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label {escape(true),Math.max(null)}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("'a'>>>=void.prototype.value.prototype.break.prototype.break.indexOf(0.className()) = (!this&native)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("import Number(NaN).push(IsSmi(break))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("export true.exec(void).toObject()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function({'a',true}/eval(new Object()))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("label null.concat(null).toObject()") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("native {0.2.length,new RegExp.lastIndexOf(-1)}") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("function X(x) { return Math.max({0.2}) }; X(true.charCodeAt(null).add(new RegExp.name()))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("delete -1.lastIndex.length") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("new Function(0.2[1].call(true > break))") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("Instantiate('a'.toLocaleString().splice())") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; - -try { - eval("x = typeof(void&&void)") -} catch (e) { if (e.message.length > 0) { print (e.message); } }; diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-120099.js b/src/3rdparty/v8/test/mjsunit/regress/regress-120099.js deleted file mode 100644 index 3b06f4d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-120099.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -'use strict'; - -var a = Object.create(Object.prototype); -var b = Object.create(Object.prototype); -assertFalse(a === b); - -Object.defineProperty(a, 'x', { value: 1 }); -assertTrue(a.x === 1); -assertTrue(b.x === undefined); - -b.x = 2; -assertTrue(a.x === 1); -assertTrue(b.x === 2); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1201933.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1201933.js deleted file mode 100644 index d4827e4..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1201933.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Make sure this doesn't fail with an assertion -// failure during lazy compilation. - -var caught = false; -try { - (function() { - const a; - var a; - })(); -} catch (e) { - caught = true; -} -assertTrue(caught); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1203459.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1203459.js deleted file mode 100644 index da1e0ed..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1203459.js +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Ensure that we allow non-index number properties in object literals. -var obj = { 0.2 : 'a' } diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1207.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1207.js deleted file mode 100644 index 102178a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1207.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test throwing an exception from instanceof. -try { -var object = { }; -function fib(n) { - var f0 = (object instanceof encodeURI)('#2: var x = 1; x <= 1 === true'), f1 = 1; -} -fib(75); -} catch (o) { } diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1207276.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1207276.js deleted file mode 100644 index ce7efe9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1207276.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -try { - const x=n,Glo0al; -} catch(e){} - -delete Date; -function X(){String(Glo0al)} -X(); -X(); -X(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1209.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1209.js deleted file mode 100644 index c017fb5..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1209.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function crashMe(n) { - var nasty = []; - while (n--) - nasty.push("a" + 0); - return Function.apply(null, nasty); -} -crashMe(64 + 1).length; diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1210.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1210.js deleted file mode 100644 index 43500e7..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1210.js +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Deoptimization of the key expression in an arguments access should see -// the arguments object as the value of the receiver. - -var a = 0; - -function observe(x, y) { return x; } - -function side_effect(x) { a = x; } - -function test() { - // We will trigger deoptimization of 'a + 0' which should bail out to - // immediately after the call to 'side_effect' (i.e., still in the key - // subexpression of the arguments access). - return observe(a, arguments[side_effect(a), a + 0]); -} - -// Run enough to optimize assuming global 'a' is a smi. -for (var i = 0; i < 10; ++i) test(0); -%OptimizeFunctionOnNextCall(test); -test(0); - -a = "hello"; -test(0); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1213.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1213.js deleted file mode 100644 index d66e3ce..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1213.js +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that we do not allow overwriting a global property with a -// redeclaration that makes the property configurable (and hence -// deletable). - -var x = 0; - -function TestGlobal() { - for (var i = 0; i < 2; i++) { - x = x + 1; - } - this.eval('function x() {};'); - delete this['x']; -} - -TestGlobal(); -TestGlobal(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1213516.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1213516.js deleted file mode 100644 index 6703f32..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1213516.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function run() { - var a = 0; - L: try { - throw "x"; - } catch(x) { - break L; - } finally { - a = 1; - } - assertEquals(1, a); -} - -run(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1213575.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1213575.js deleted file mode 100644 index f3a11db..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1213575.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Make sure that a const definition does not try -// to pass 'the hole' to a defined setter. - -this.__defineSetter__('x', function(value) { assertTrue(value === 1); }); - -var caught = false; -try { - eval('const x = 1'); -} catch(e) { - assertTrue(e instanceof TypeError); - caught = true; -} -assertFalse(caught); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-121407.js b/src/3rdparty/v8/test/mjsunit/regress/regress-121407.js deleted file mode 100644 index 4403708..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-121407.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var a = [0,1,2,3]; -a[2000000] = 2000000; -a.length=2000; -for (var i = 0; i <= 256; i++) { - a[i] = new Object(); -} - -a = [0.5,1.5,2.5,3.5,4.5,5.5]; -a[2000000] = 2000000; -a.length=2000; -for (var i = 0; i <= 256; i++) { - a[i] = new Object(); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1215.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1215.js deleted file mode 100644 index 93a89f6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1215.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Make sure that the "message" property on Error.prototype -// has the following descriptor: -// {writable: true, enumerable: false, and configurable: true} - -var desc = Object.getOwnPropertyDescriptor(Error.prototype, 'message'); - -assertEquals(desc.writable, true); -assertEquals(desc.enumerable, false); -assertEquals(desc.configurable, true); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1215653.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1215653.js deleted file mode 100644 index 881e22c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1215653.js +++ /dev/null @@ -1,365 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Make sure this doesn't crash the VM. - -var caught = false; -try { - OverflowParserStack(); - assertTrue(false); -} catch (e) { - assertTrue(e instanceof RangeError); - caught = true; -} -assertTrue(caught); - - -function OverflowParserStack() { - var s = - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((" + - "(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((("; - eval(s); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1217.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1217.js deleted file mode 100644 index e00d537..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1217.js +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check that RegExp.prototype is itself a RegExp object. - -var proto = RegExp.prototype; -assertEquals("[object RegExp]", Object.prototype.toString.call(proto)); - -assertEquals("(?:)", proto.source); -assertEquals(false, proto.global); -assertEquals(false, proto.multiline); -assertEquals(false, proto.ignoreCase); -assertEquals(0, proto.lastIndex); - -assertEquals("/(?:)/", proto.toString()); - -var execResult = proto.exec("argle"); -assertEquals(1, execResult.length); -assertEquals("", execResult[0]); -assertEquals("argle", execResult.input); -assertEquals(0, execResult.index); - -assertTrue(proto.test("argle")); - -// We disallow re-compiling the RegExp.prototype object. -assertThrows(function(){ proto.compile("something"); }, TypeError); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1218.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1218.js deleted file mode 100644 index dd036ed..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1218.js +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Builtin functions should not have prototype objects. -assertFalse(Error.prototype.toString.hasOwnProperty("prototype")); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1229.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1229.js deleted file mode 100644 index 5447f3f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1229.js +++ /dev/null @@ -1,146 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Check that %NewObjectFromBound works correctly when called from optimized -// frame. -function foo1(x, y, z) { - assertEquals(1, x); - assertEquals(2, y); - assertEquals(3, z); -} - -function foo2(x, y, z) { - assertEquals(1, x); - assertEquals(2, y); - assertEquals(undefined, z); -} - -function foo3(x, y, z) { - assertEquals(1, x); - assertEquals(2, y); - assertEquals(3, z); -} - - -var foob1 = foo1.bind({}, 1); -var foob2 = foo2.bind({}, 1); -var foob3 = foo3.bind({}, 1); - - -function f1(y, z) { - return %NewObjectFromBound(foob1); -} - -function f2(y, z) { - return %NewObjectFromBound(foob2); -} - -function f3(y, z) { - return %NewObjectFromBound(foob3); -} - -// Check that %NewObjectFromBound looks at correct frame for inlined function. -function g1(z, y) { - return f1(y, z); /* f should be inlined into g, note rotated arguments */ -} - -function g2(z, y, x) { - return f2(y); /* f should be inlined into g, note argument count mismatch */ -} - -function g3(z, y, x) { - return f3(x, y, z); /* f should be inlined into g, note argument count mismatch */ -} - -// Check that %NewObjectFromBound looks at correct frame for inlined function. -function ff(x) { } -function h1(z2, y2) { - var local_z = z2 >> 1; - ff(local_z); - var local_y = y2 >> 1; - ff(local_y); - return f1(local_y, local_z); /* f should be inlined into h */ -} - -function h2(z2, y2, x2) { - var local_z = z2 >> 1; - ff(local_z); - var local_y = y2 >> 1; - ff(local_y); - return f2(local_y); /* f should be inlined into h */ -} - -function h3(z2, y2, x2) { - var local_z = z2 >> 1; - ff(local_z); - var local_y = y2 >> 1; - ff(local_y); - var local_x = x2 >> 1; - ff(local_x); - return f3(local_x, local_y, local_z); /* f should be inlined into h */ -} - - -function invoke(f, args) { - for (var i = 0; i < 5; i++) f.apply(this, args); - %OptimizeFunctionOnNextCall(f); - f.apply(this, args); -} - -invoke(f1, [2, 3]); -invoke(f2, [2]); -invoke(f3, [2, 3, 4]); -invoke(g1, [3, 2]); -invoke(g2, [3, 2, 4]); -invoke(g3, [4, 3, 2]); -invoke(h1, [6, 4]); -invoke(h2, [6, 4, 8]); -invoke(h3, [8, 6, 4]); - -// Check that %_IsConstructCall returns correct value when inlined -var NON_CONSTRUCT_MARKER = {}; -var CONSTRUCT_MARKER = {}; -function baz(x) { - return (!%_IsConstructCall()) ? NON_CONSTRUCT_MARKER : CONSTRUCT_MARKER; -} - -function bar(x, y, z) { - var non_construct = baz(0); /* baz should be inlined */ - assertSame(non_construct, NON_CONSTRUCT_MARKER); - var non_construct = baz(); /* baz should be inlined */ - assertSame(non_construct, NON_CONSTRUCT_MARKER); - var non_construct = baz(0, 0); /* baz should be inlined */ - assertSame(non_construct, NON_CONSTRUCT_MARKER); - var construct = new baz(0); - assertSame(construct, CONSTRUCT_MARKER); - var construct = new baz(0, 0); - assertSame(construct, CONSTRUCT_MARKER); -} - -invoke(bar, [1, 2, 3]); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1233.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1233.js deleted file mode 100644 index a09b715..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1233.js +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that Object.freeze and Object.getOwnPropertyDescriptor do not -// call toString or valueOf on members of the object. - -// See http://code.google.com/p/v8/issues/detail?id=1233. - - -var delicate = new Object(); -delicate.toString = function(){ throw Error("toString"); }; -delicate.valueOf = function(){ throw Error("valueOf"); }; - -var x = { foo: delicate }; - -var status = "fail"; -try { - Object.getOwnPropertyDescriptor(x, "foo"); - Object.freeze(x); - status = "succeed"; -} catch (e) {} - -assertEquals("succeed", status); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-123512.js b/src/3rdparty/v8/test/mjsunit/regress/regress-123512.js deleted file mode 100644 index 8a747bc..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-123512.js +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test that boilerplate objects for array literals with non-constant -// elements (which will contain the hole at non-constant positions) will -// not cause prototype chain lookups when generating optimized code. - -function f(x) { - return [x][0]; -} - -// Test data element on prototype. -Object.prototype[0] = 23; -assertSame(1, f(1)); -assertSame(2, f(2)); -%OptimizeFunctionOnNextCall(f); -assertSame(3, f(3)); -%DeoptimizeFunction(f); - -// Test accessor element on prototype. -Object.prototype.__defineGetter__(0, function() { throw Error(); }); -assertSame(4, f(4)); -assertSame(5, f(5)); -%OptimizeFunctionOnNextCall(f); -assertSame(6, f(6)); -%DeoptimizeFunction(f); - -// Test the same on boilerplate objects for object literals that contain -// both non-constant properties and non-constant elements. - -function g(x, y) { - var o = { foo:x, 0:y }; - return o.foo + o[0]; -} - -// Test data property and element on prototype. -Object.prototype[0] = 23; -Object.prototype.foo = 42; -assertSame(3, g(1, 2)); -assertSame(5, g(2, 3)); -%OptimizeFunctionOnNextCall(g); -assertSame(7, g(3, 4)); -%DeoptimizeFunction(g); - -// Test accessor property and element on prototype. -Object.prototype.__defineGetter__(0, function() { throw Error(); }); -Object.prototype.__defineGetter__('foo', function() { throw Error(); }); -assertSame(3, g(1, 2)); -assertSame(5, g(2, 3)); -%OptimizeFunctionOnNextCall(g); -assertSame(7, g(3, 4)); -%DeoptimizeFunction(g); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1236.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1236.js deleted file mode 100644 index 48e3d3d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1236.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Should not crash. - -pattern = RegExp("",""); // RegExp is irrelevant, as long as it's not an atom. -string = 'a'; // Anything non-empty (flat ASCII). -pattern.exec(string); // Ensure that JSRegExp is compiled. -pattern["@"] = 42; // Change layout of JSRegExp object. -pattern.exec(string); // Call again to trigger bug in stub. diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1237.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1237.js deleted file mode 100644 index 111df80..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1237.js +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Deoptimization after a conditional expression in an effect context should -// not see the value of the expression. -function observe(x, y) { return x; } -function test(x) { - return observe(1, ((x? observe(observe.prototype.x): 'c'), x + 1)); -} - -for (var i = 0; i < 5; ++i) test(0); -%OptimizeFunctionOnNextCall(test); -test(0); - -test("a"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-123919.js b/src/3rdparty/v8/test/mjsunit/regress/regress-123919.js deleted file mode 100644 index be34608..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-123919.js +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --gc-global - -function g(max,val) { - this.x = 0; - for (var i = 0; i < max; i++) { - this.x = i/100; - } - this.val = val; -} - -function f(max) { - var val = 0.5; - var obj = new g(max,val); - assertSame(val, obj.val); -} - -f(1); -f(1); -%OptimizeFunctionOnNextCall(f); -f(200000); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-124.js b/src/3rdparty/v8/test/mjsunit/regress/regress-124.js deleted file mode 100644 index 1197467..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-124.js +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertEquals("[object global]", this.toString()); -assertEquals("[object Undefined]", toString()); - -assertEquals("[object global]", eval("this.toString()")); -assertEquals("[object Undefined]", eval("toString()")); - -assertEquals("[object global]", eval("var f; this.toString()")); -assertEquals("[object Undefined]", eval("var f; toString()")); - - -function F(f) { - assertEquals("[object global]", this.toString()); - assertEquals("[object Undefined]", toString()); - - assertEquals("[object global]", eval("this.toString()")); - assertEquals("[object Undefined]", eval("toString()")); - - assertEquals("[object global]", eval("var f; this.toString()")); - assertEquals("[object Undefined]", eval("var f; toString()")); - - assertEquals("[object Undefined]", eval("f()")); - - // Receiver should be the arguments object here. - assertEquals("[object Arguments]", eval("arguments[0]()")); - with (arguments) { - assertEquals("[object Arguments]", toString()); - } -} - -F(Object.prototype.toString); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1240.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1240.js deleted file mode 100644 index 1a0bf2e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1240.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This regression tests that we are not allowed to overwrite an existing -// non-configurable getter with a new getter. In addition, we should not -// be able to change the configurable flag from false to true. - -var a = {}; -Object.defineProperty(a, 'b', - { get: function () { return 42; }, configurable: false }); -// Do not allow us to redefine b on a. -a.__defineGetter__('b', function _b(){ return 'foo'; }); -assertEquals(42, a.b); -var desc = Object.getOwnPropertyDescriptor(a, 'b'); -assertFalse(desc.configurable); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-124594.js b/src/3rdparty/v8/test/mjsunit/regress/regress-124594.js deleted file mode 100644 index d51e1f6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-124594.js +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --expose-gc - -// Test that a GC inside a constructor frame is correctly handled right -// after we deoptimize from an inlined constructor to a constructor stub -// stack frame. - -function f(deopt) { - var x = 1; - if (deopt) { - x = x + "foo"; - gc(); - } - this.x = x; -} - -function g(deopt) { - return new f(deopt); -} - -assertEquals({x:1}, g(false)); -assertEquals({x:1}, g(false)); -%OptimizeFunctionOnNextCall(g); -assertEquals({x:"1foo"}, g(true)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1246.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1246.js deleted file mode 100644 index f3dbec6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1246.js +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This regression tests the behaviour of the parseInt function when -// the given radix is not a SMI. - -// Flags: --allow-natives-syntax - -var nonSmi10 = Math.log(Math.exp(10)); -var nonSmi16 = Math.log(Math.exp(16)); - -assertTrue(!%_IsSmi(nonSmi10) && nonSmi10 == 10); -assertTrue(!%_IsSmi(nonSmi16) && nonSmi16 == 16); - -// Giving these values as the radix argument triggers radix detection. -var radix_detect = [0, -0, NaN, Infinity, -Infinity, undefined, null, - "0", "-0", "a"]; - -// These values will result in an integer radix outside of the valid range. -var radix_invalid = [1, 37, -2, "-2", "37"]; - -// These values will trigger decimal parsing. -var radix10 = [10, 10.1, "10", "10.1", nonSmi10]; - -// These values will trigger hexadecimal parsing. -var radix16 = [16, 16.1, 0x10, "0X10", nonSmi16]; - -for (var i = 0; i < radix_detect.length; i++) { - var radix = radix_detect[i]; - assertEquals(NaN, parseInt("", radix)); - assertEquals(23, parseInt("23", radix)); - assertEquals(0xaf, parseInt("0xaf", radix)); - assertEquals(NaN, parseInt("af", radix)); -} - -for (var i = 0; i < radix_invalid.length; i++) { - var radix = radix_invalid[i]; - assertEquals(NaN, parseInt("", radix)); - assertEquals(NaN, parseInt("23", radix)); - assertEquals(NaN, parseInt("0xaf", radix)); - assertEquals(NaN, parseInt("af", radix)); -} - -for (var i = 0; i < radix10.length; i++) { - var radix = radix10[i]; - assertEquals(NaN, parseInt("", radix)); - assertEquals(23, parseInt("23", radix)); - assertEquals(0, parseInt("0xaf", radix)); - assertEquals(NaN, parseInt("af", radix)); -} - -for (var i = 0; i < radix16.length; i++) { - var radix = radix16[i]; - assertEquals(NaN, parseInt("", radix)); - assertEquals(0x23, parseInt("23", radix)); - assertEquals(0xaf, parseInt("0xaf", radix)); - assertEquals(0xaf, parseInt("af", radix)); -} - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1254366.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1254366.js deleted file mode 100644 index 2f9e011..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1254366.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function gee() {}; - -Object.prototype.findOrStore = function() { - var z = this.vvv = gee; - return z; -}; - -var a = new Object(); -assertEquals(gee, a.findOrStore()); -assertEquals(gee, a.findOrStore()); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-125515.js b/src/3rdparty/v8/test/mjsunit/regress/regress-125515.js deleted file mode 100644 index 91650ce..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-125515.js +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc --debug-code - -function test(a) { - a[0] = 1.5; - assertEquals(0, a.length = 0); -} -a = new Array(); -test(a); -test(a); -// Make sure that a ends up in old space -gc(); -gc(); -test(a); -test(a); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1257.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1257.js deleted file mode 100644 index c20fb86..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1257.js +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function g(y) { assertEquals(y, 12); } - -var X = 0; - -function foo () { - var cnt = 0; - var l = -1; - var x = 0; - while (1) switch (l) { - case -1: - var y = x + 12; - l = 0; - break; - case 0: - // Loop for to hit OSR. - if (cnt++ < 10000000) { - l = 0; - break; - } else { - l = 1; - break; - } - case 1: - // This case will contain deoptimization - // because it has no type feedback. - g(y); - return; - }; -} - -foo(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-126412.js b/src/3rdparty/v8/test/mjsunit/regress/regress-126412.js deleted file mode 100644 index 0677f70..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-126412.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -"".match(/(A{9999999999}B|C*)*D/); -"C".match(/(A{9999999999}B|C*)*D/); -"".match(/(A{9999999999}B|C*)*/ ); -"C".match(/(A{9999999999}B|C*)*/ ); -"".match(/(9u|(2\`shj{2147483649,}\r|3|f|y|3*)+8\B)\W93+/); -"9u8 ".match(/(9u|(2\`shj{2147483649,}\r|3|f|y|3*)+8\B)\W93+/); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1278.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1278.js deleted file mode 100644 index 7ad8cda..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1278.js +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1278 - -// Test that that handling of 0/-0 is correct for binary operations when the -// TypeRecordingBinaryOpStub transitions through different states. - -function add(x, y) { - return x + y; -} - -function sub(x, y) { - return x - y; -} - -function mul(x, y) { - return x * y; -} - -function div(x, y) { - return x / y; -} - -for (var i = 0; i < 10; i++) { - assertEquals(0, add(0, 0)); - assertEquals(0, add(0, -0)); - assertEquals(0, add(-0, 0)); - assertEquals(-0, add(-0, -0)); - - assertEquals(0, sub(0, 0)); - assertEquals(0, sub(0, -0)); - assertEquals(-0, sub(-0, 0)); - assertEquals(0, sub(-0, -0)); - - assertEquals(0, mul(0, 0)); - assertEquals(-0, mul(0, -0)); - assertEquals(-0, mul(-0, 0)); - assertEquals(0, mul(-0, -0)); - - assertEquals(0, div(0, 1)); - assertEquals(-0, div(0, -1)); - assertEquals(-0, div(-0, 1)); - assertEquals(0, div(-0, -1)); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-128018.js b/src/3rdparty/v8/test/mjsunit/regress/regress-128018.js deleted file mode 100644 index 7bd1585..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-128018.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -function KeyedStoreIC(a) { a[(1)] = Math.E; } -var literal = [1.2]; -literal.length = 0; -literal.push('0' && 0 ); -KeyedStoreIC(literal); -gc(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-128146.js b/src/3rdparty/v8/test/mjsunit/regress/regress-128146.js deleted file mode 100644 index 730dd91..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-128146.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Define accessor properties, resulting in an AccessorPair with 2 transitions. -Object.defineProperty({},"foo",{set:function(){},configurable:false}); -Object.defineProperty({},"foo",{get:function(){},configurable:false}); - -// Define a data property under the same name. -Object.defineProperty({},"foo",{}); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1309.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1309.js deleted file mode 100644 index 122e591..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1309.js +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - -var o = Object.preventExtensions({}); -assertThrows("o.__proto__ = {}"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-131923.js b/src/3rdparty/v8/test/mjsunit/regress/regress-131923.js deleted file mode 100644 index 58da07c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-131923.js +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertFalse(/\u9999{4}/.test("")); -assertTrue(/\u9999{0,4}/.test("")); -assertFalse(/\u9999{4,}/.test("")); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-131994.js b/src/3rdparty/v8/test/mjsunit/regress/regress-131994.js deleted file mode 100644 index 8347653..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-131994.js +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug - -// Test that a variable in the local scope that shadows a context-allocated -// variable is correctly resolved when being evaluated in the debugger. - -Debug = debug.Debug; - -var exception = false; - -function listener(event, exec_state, event_data, data) { - if (event != Debug.DebugEvent.Break) return; - var breakpoint = exec_state.frame(0); - try { - // Assert correct break point. - assertTrue(breakpoint.sourceLineText().indexOf("// Break") > -1); - // Assert correct value. - assertEquals(3, breakpoint.evaluate('x').value()); - } catch (e) { - exception = e; - } -} - -Debug.setListener(listener); - -function h() { - var x; // Context-allocated due to g(). - - var g = function g() { - x = -7; - }; - - var f = function f() { - var x = 3; // Allocated in the local scope. - debugger; // Break. - }; - - f(); -} - -h(); - -assertFalse(exception); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1323.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1323.js deleted file mode 100644 index 552a48d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1323.js +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Regression test for load/store operating with wrong number of bits. -function get(a, index) { - return a[index]; -} - -var a = new Float32Array(2); -a[0] = 2.5; -a[1] = 3.5; -for (var i = 0; i < 5; i++) get(a, 0); -%OptimizeFunctionOnNextCall(get); -assertEquals(2.5, get(a, 0)); -assertEquals(3.5, get(a, 1)); - -function set(a, index, value) { - a[index] = value; -} -for (var i = 0; i < 5; i++) set(a, 0, 4.5); -%OptimizeFunctionOnNextCall(set); -set(a, 0, 4.5); -assertEquals(4.5, a[0]); -assertEquals(3.5, a[1]); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1327557.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1327557.js deleted file mode 100644 index cd8f08f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1327557.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var x = { valueOf: function() { throw "x"; } }; -var y = { valueOf: function() { throw "y"; } }; - -var exception = false; -try { - x * -y; -} catch (e) { - exception = true; - assertEquals("y", e); -} -assertTrue(exception); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-133211.js b/src/3rdparty/v8/test/mjsunit/regress/regress-133211.js deleted file mode 100644 index f9473d1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-133211.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Make sure we don't leak maps when reading intermediate property descriptors. - -var o = {}; -var x = {}; -Object.defineProperty(o, "foo", { get: undefined }); -Object.defineProperty(x, "foo", { get: undefined, set: undefined }); -var pd = Object.getOwnPropertyDescriptor(o, "foo"); -assertEquals(undefined, pd.set); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-133211b.js b/src/3rdparty/v8/test/mjsunit/regress/regress-133211b.js deleted file mode 100644 index 87e35f4..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-133211b.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -setter = function(x) { return; } -var o = {}; -Object.defineProperty(o, "foo", { set: setter }); -var x = {}; -Object.defineProperty(x, "foo", { set: setter }); -x.bar = 20; -x = {}; -gc(); -o.foo = 20; -assertEquals(undefined, o.foo); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1337.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1337.js deleted file mode 100644 index ebcf84b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1337.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test that the throw is not inlined if object literals cannot be -// inlined. -function bar() { throw {}; } - -function foo() { bar(); } - -for (var i = 0; i < 5; ++i) { - try { foo() } catch (e) { } -} -%OptimizeFunctionOnNextCall(foo) -try { foo() } catch (e) { } diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1346700.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1346700.js deleted file mode 100644 index fe2d6fa..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1346700.js +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright 2007-2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var o = {"\u59cb\u53d1\u7ad9": 1}; -assertEquals(1, o.\u59cb\u53d1\u7ad9); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1351.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1351.js deleted file mode 100644 index 656b19f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1351.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test that the arguments value is does not escape when it appears as -// an intermediate value in an expression. - -function h() { } - -function f() { - var a = null; - h(a = arguments); -} - -f(); -%OptimizeFunctionOnNextCall(f); -f(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1355.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1355.js deleted file mode 100644 index de9364a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1355.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that an exception is not thrown when trying to set a value for -// a property that has only a defined getter, except when in strict mode. - -var foo = Object.defineProperty({}, "bar", { - get: function () { - return 10; - } - }); - -assertDoesNotThrow("foo.bar = 20"); - -function shouldThrow() { - 'use strict'; - foo.bar = 20; -} - -assertThrows("shouldThrow()"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1360.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1360.js deleted file mode 100644 index bebad28..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1360.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check the receiver for the sort and replace functions to -// Array.prototype.sort and String.prototype.replace. - -var global = this; -function strict() { "use strict"; assertEquals(void 0, this); } -function non_strict() { assertEquals(global, this); } - -[1,2,3].sort(strict); -[1,2,3].sort(non_strict); - -"axc".replace("x", strict); -"axc".replace("x", non_strict); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-136048.js b/src/3rdparty/v8/test/mjsunit/regress/regress-136048.js deleted file mode 100644 index c9972e9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-136048.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -try { - /foo/\u0069 -} catch (e) { - assertEquals( - "SyntaxError: Invalid flags supplied to RegExp constructor '\\u0069'", - e.toString()); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1365.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1365.js deleted file mode 100644 index 59290f9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1365.js +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1365 - -// Check that builtin methods are passed undefined as the receiver -// when called as functions through variables. - -// Flags: --allow-natives-syntax - -// Global variable. -var valueOf = Object.prototype.valueOf; -var hasOwnProperty = Object.prototype.hasOwnProperty; - -function callGlobalValueOf() { valueOf(); } -function callGlobalHasOwnProperty() { valueOf(); } - -assertEquals(Object.prototype, Object.prototype.valueOf()); -assertThrows(callGlobalValueOf); -assertThrows(callGlobalHasOwnProperty); - -%OptimizeFunctionOnNextCall(Object.prototype.valueOf); -Object.prototype.valueOf(); - -assertEquals(Object.prototype, Object.prototype.valueOf()); -assertThrows(callGlobalValueOf); -assertThrows(callGlobalHasOwnProperty); - -function CheckExceptionCallLocal() { - var valueOf = Object.prototype.valueOf; - var hasOwnProperty = Object.prototype.hasOwnProperty; - var exception = false; - try { valueOf(); } catch(e) { exception = true; } - assertTrue(exception); - exception = false; - try { hasOwnProperty(); } catch(e) { exception = true; } - assertTrue(exception); -} -CheckExceptionCallLocal(); - -function CheckExceptionCallParameter(f) { - var exception = false; - try { f(); } catch(e) { exception = true; } - assertTrue(exception); -} -CheckExceptionCallParameter(Object.prototype.valueOf); -CheckExceptionCallParameter(Object.prototype.hasOwnProperty); - -function CheckPotentiallyShadowedByEval() { - var exception = false; - try { - eval("hasOwnProperty('x')"); - } catch(e) { - exception = true; - } - assertTrue(exception); -} -CheckPotentiallyShadowedByEval(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1369.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1369.js deleted file mode 100644 index 48a8e7e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1369.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -assertDoesNotThrow('gc.call(1)'); -assertDoesNotThrow('gc.call("asdf")'); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-137.js b/src/3rdparty/v8/test/mjsunit/regress/regress-137.js deleted file mode 100644 index cc7b68c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-137.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See <URL:http://code.google.com/p/v8/issues/detail?id=137> - -(function () { - var strNum = 170; - var base = strNum / 16; - var rem = strNum % 16; - var base = base - (rem / 16); // base is now HeapNumber with valid Smi value. - - switch(base) { - case 10: return "A"; // Expected result. - case 11: return "B"; - case 12: return "C"; - case 13: return "D"; - case 14: return "E"; - case 15: return "F"; // Enough cases to trigger fast-case Smi switch. - }; - fail("case 10", "Default case", "Heap number not recognized as Smi value"); -})(); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-137768.js b/src/3rdparty/v8/test/mjsunit/regress/regress-137768.js deleted file mode 100644 index 9fbd7f3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-137768.js +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Create elements in a constructor function to ensure map sharing. -function TestConstructor() { - this[0] = 1; - this[1] = 2; - this[2] = 3; -} - -function bad_func(o,a) { - var s = 0; - for (var i = 0; i < 1; ++i) { - o.newFileToChangeMap = undefined; - var x = a[0]; - s += x; - } - return s; -} - -o = new Object(); -a = new TestConstructor(); -bad_func(o, a); - -// Make sure that we're out of pre-monomorphic state for the member add of -// 'newFileToChangeMap' which causes a map transition. -o = new Object(); -a = new TestConstructor(); -bad_func(o, a); - -// Optimize, before the fix, the element load and subsequent tagged-to-i were -// hoisted above the map check, which can't be hoisted due to the map-changing -// store. -o = new Object(); -a = new TestConstructor(); -%OptimizeFunctionOnNextCall(bad_func); -bad_func(o, a); - -// Pass in a array of doubles. Before the fix, the optimized load and -// tagged-to-i will treat part of a double value as a pointer and de-ref it -// before the map check was executed that should have deopt. -o = new Object(); -// Pass in an elements buffer where the bit representation of the double numbers -// are two adjacent small 32-bit values with the lowest bit set to one, causing -// tagged-to-i to SIGSEGV. -a = [2.122e-314, 2.122e-314, 2.122e-314]; -bad_func(o, a); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1383.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1383.js deleted file mode 100644 index 4b08f5a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1383.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that passing the strict_mode flag in extra ic state from -// StubCache::ComputeKeyedLoadOrStoreExternalArray does not -// hit an assertion in Code::ComputeFlags. - -x=""; -function foo(){ - "use strict"; - var wxemsx=(4); - var wxemsx_0=Float32Array(wxemsx); - wxemsx_0[0]={}; -} - -foo() diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1387.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1387.js deleted file mode 100644 index d171d38..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1387.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Tests that we always return the same type error function when trying to -// access strict mode caller and callee. - -function foo() { - 'use strict'; - return arguments; -} - -var get1 = Object.getOwnPropertyDescriptor(foo(), "caller").get; -var get2 = Object.getOwnPropertyDescriptor(foo(), "callee").get; -assertEquals(get1, get2); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1389.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1389.js deleted file mode 100644 index 9b89bbf..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1389.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test optimized implementation of postfix ++ on undefined input. -// See http://code.google.com/p/v8/issues/detail?id=1389 - -for (var i=0; i<4; i++) { - (function () { - (function () { - (function () { - var x; - y = x++; - })(); - })(); - })(); -} - -assertEquals(NaN, y); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1401.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1401.js deleted file mode 100644 index 33eb067..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1401.js +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1401 - -var bottom = 0; -var sizes = new Array(); - -for (i = 0; i < 10; i++) { - sizes[i] = 0; -} - -function foo() { - var size = bottom + 1 + 10; - var t = (sizes[++bottom] = size); - return t; -} - -for (i = 0; i < 5; i++) { - assertEquals(i + 11, foo()); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1403.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1403.js deleted file mode 100644 index f2520cc..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1403.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1403 - -a = []; -Object.prototype.__proto__ = { __proto__: null }; -a.shift(); - -a = []; -Array.prototype.__proto__ = { __proto__: null }; -a.shift(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1412.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1412.js deleted file mode 100644 index b043f19..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1412.js +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that the apply with arguments optimization passes values -// unchanged to strict-mode functions and builtins. - -// Flags: --allow-natives-syntax - -function strict() { "use strict"; return this; } - -function test_strict() { - assertEquals(void 0, strict.apply(undefined, arguments)); - assertEquals(42, strict.apply(42, arguments)); - assertEquals("asdf", strict.apply("asdf", arguments)); -} - -for (var i = 0; i < 10; i++) test_strict(); -%OptimizeFunctionOnNextCall(test_strict); -test_strict(); - -function test_builtin(receiver) { - Object.prototype.valueOf.apply(receiver, arguments); -} - -for (var i = 0; i < 10; i++) test_builtin(this); -%OptimizeFunctionOnNextCall(test_builtin); -test_builtin(this); - -var exception = false; -try { - test_builtin(undefined); -} catch(e) { - exception = true; -} -assertTrue(exception); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1415.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1415.js deleted file mode 100644 index f993e9b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1415.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Surrogate pair range. -// U+D800 -assertThrows(function(){ decodeURIComponent("%ED%A0%80"); }, URIError); -// U+DBFF -assertThrows(function(){ decodeURIComponent("%ED%AF%BF"); }, URIError); -// U+DC00 -assertThrows(function(){ decodeURIComponent("%ED%B0%80"); }, URIError); -// U+DFFF -assertThrows(function(){ decodeURIComponent("%ED%BF%BF"); }, URIError); - -// Overlong encodings -// U+007F in two bytes. -assertThrows(function(){ decodeURIComponent("%C1%BF"); }, URIError); -// U+07FF in three bytes. -assertThrows(function(){ decodeURIComponent("%E0%9F%BF"); }, URIError); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1419.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1419.js deleted file mode 100644 index 98a8b76..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1419.js +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that using bind several time does not change the length of existing -// bound functions. - -function foo() { -} - -var f1 = function (x) {}.bind(foo); -var f2 = function () {}; - -assertEquals(1, f1.length); - -// the object we bind to can be any object -f2.bind(foo); - -assertEquals(1, f1.length); - -var desc = Object.getOwnPropertyDescriptor(f1, 'length'); -assertEquals(false, desc.writable); -assertEquals(false, desc.enumerable); -assertEquals(false, desc.configurable); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1423.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1423.js deleted file mode 100644 index b0d0ca3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1423.js +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test that the Lithium environment iterator does stop iteration early. -"use strict"; - -function f0() { - return f1('literal', true); -} - -function f1(x, y) { - return f2(x, y); -} - -// Because it's strict, f2 has an environment containing only the constants -// undefined, 'literal', and false. Bug 1423 would cause environment -// iteration to stop early. -// -// Bug manifests as UNREACHABLE code (due to an unallocated register) in -// debug builds. -function f2(x, y) { - if (y) { - if (f3(x, 'other-literal')) { - return 0; - } else { - return 1; - } - } else { - return 2; - } -} - -function f3(x, y) { - return x === y; -} - -for (var i = 0; i < 5; ++i) f0(); -%OptimizeFunctionOnNextCall(f0); -assertEquals(1, f0()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1434.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1434.js deleted file mode 100644 index 6f197af..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1434.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function compare(a, b) { - return a === b; -} - -compare(1.5, 2.5); -%OptimizeFunctionOnNextCall(compare); -assertTrue(compare(undefined, undefined)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1436.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1436.js deleted file mode 100644 index 390ccee..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1436.js +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check that reduce and reduceRight call the callback function with -// undefined as the receiver (which for non-strict functions is -// transformed to the global object). - -// Check receiver for reduce and reduceRight. - -var global = this; -function non_strict(){ assertEquals(global, this); } -function strict(){ "use strict"; assertEquals(void 0, this); } -function strict_null(){ "use strict"; assertEquals(null, this); } - -[2, 3].reduce(non_strict); -[2, 3].reduce(strict); -[2, 3].reduceRight(non_strict); -[2, 3].reduceRight(strict); - - -// Check the receiver for callbacks in other array methods. -[2, 3].every(non_strict); -[2, 3].every(non_strict, undefined); -[2, 3].every(non_strict, null); -[2, 3].every(strict); -[2, 3].every(strict, undefined); -[2, 3].every(strict_null, null); - -[2, 3].filter(non_strict); -[2, 3].filter(non_strict, undefined); -[2, 3].filter(non_strict, null); -[2, 3].filter(strict); -[2, 3].filter(strict, undefined); -[2, 3].filter(strict_null, null); - -[2, 3].forEach(non_strict); -[2, 3].forEach(non_strict, undefined); -[2, 3].forEach(non_strict, null); -[2, 3].forEach(strict); -[2, 3].forEach(strict, undefined); -[2, 3].forEach(strict_null, null); - -[2, 3].map(non_strict); -[2, 3].map(non_strict, undefined); -[2, 3].map(non_strict, null); -[2, 3].map(strict); -[2, 3].map(strict, undefined); -[2, 3].map(strict_null, null); - -[2, 3].some(non_strict); -[2, 3].some(non_strict, undefined); -[2, 3].some(non_strict, null); -[2, 3].some(strict); -[2, 3].some(strict, undefined); -[2, 3].some(strict_null, null); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1439135.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1439135.js deleted file mode 100644 index 737a7ba..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1439135.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - -function Test() { - var left = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; - var right = "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"; - for (var i = 0; i < 100000; i++) { - var cons = left + right; - var substring = cons.substring(20, 80); - var index = substring.indexOf('Y'); - assertEquals(34, index); - } -} - -Test(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-143967.js b/src/3rdparty/v8/test/mjsunit/regress/regress-143967.js deleted file mode 100644 index 7c12e67..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-143967.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check that Accessors::FunctionGetPrototype traverses the prototype -// chain correctly and doesn't get stuck. - -var functionWithoutProto = [].filter; -var obj = Object.create(functionWithoutProto); -functionWithoutProto.__proto__ = function() {}; -assertEquals(functionWithoutProto.prototype, obj.prototype); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1447.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1447.js deleted file mode 100644 index 2c1ee59..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1447.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -[0].forEach(function(){ Object.freeze(Array.prototype.forEach); }); -[0].every(function(){ Object.seal(Array.prototype.every); }); - -function testStrict(){ - "use strict"; - [0].forEach(function(){ Object.freeze(Array.prototype.forEach); }); - [0].every(function(){ Object.seal(Array.prototype.every); }); -} - -testStrict(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-145201.js b/src/3rdparty/v8/test/mjsunit/regress/regress-145201.js deleted file mode 100644 index 7fe7bce..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-145201.js +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Fix some corner cases in skipping native methods using caller. -var net = []; - - -var x = 0; - -function collect () { - function item(operator) { - binary(operator, 1, false); - binary(operator, 1, true); - binary(operator, '{}', false); - binary(operator, '{}', true); - binary(operator, '"x"', false); - binary(operator, '"x"', true); - unary(operator, ""); - } - - function unary(op, after) { - // Capture: - try { - eval(op + " custom " + after); - } catch(e) { - } - } - - function binary(op, other_side, inverted) { - // Capture: - try { - if (inverted) { - eval("custom " + op + " " + other_side); - } else { - eval(other_side + " " + op + " custom"); - } - } catch(e) { - } - } - - function catcher() { - var caller = catcher.caller; - if (/native/i.test(caller) || /ADD/.test(caller)) { - net[caller] = 0; - } - } - - var custom = Object.create(null, { - toString: { value: catcher }, - length: { get: catcher } - }); - - item('^'); - item('~'); - item('<<'); - item('<'); - item('=='); - item('>>>'); - item('>>'); - item('|'); - item('-'); - item('*'); - item('&'); - item('%'); - item('+'); - item('in'); - item('instanceof'); - unary('{}[', ']'); - unary('delete {}[', ']'); - unary('(function() {}).apply(null, ', ')'); -} - -collect(); -collect(); -collect(); - -var keys = 0; -for (var key in net) { - print(key); - keys++; -} - -assertTrue(keys == 0); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1472.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1472.js deleted file mode 100644 index b2a30d2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1472.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Avoid excessive expansions of regexp repetitions inside regexp repetitions. -// Some of these caused stack overflows, others cause out-of-memory. -var r1 = /(?:a(?:b(?:c(?:d(?:e(?:f(?:g(?:h(?:i(?:j(?:k(?:l(?:m(?:n(?:o(?:p(?:q(?:r(?:s(?:t(?:u(?:v(?:w(?:x(?:y(?:z(?:FooBar)+)+)+)+)+)+)+)+)+)+)+)+)+)+)+)+)+)+)+)+)+)+)+)+)+)+)/; -"xxx".match(r1); - -var r2 = /(?:a(?:b(?:c(?:d(?:e(?:f(?:g(?:h(?:i(?:j(?:k(?:l(?:FooBar){0,2}){0,2}){0,2}){0,2}){0,2}){0,2}){0,2}){0,2}){0,2}){0,2}){0,2}){0,2}){0,2}/; -"xxx".match(r2); - -var r3 = /(?:a(?:b(?:c(?:d(?:e(?:f(?:g(?:h(?:i(?:j(?:k(?:l(?:FooBar){2}){2}){2}){2}){2}){2}){2}){2}){2}){2}){2}){2}){2}/; -"xxx".match(r3); - -var r4 = /(?:a(?:b(?:c(?:d(?:e(?:f(?:g(?:h(?:i(?:FooBar){3,6}){3,6}){3,6}){3,6}){3,6}){3,6}){3,6}){3,6}){3,6}){3,6}/; -"xxx".match(r4); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-147497.js b/src/3rdparty/v8/test/mjsunit/regress/regress-147497.js deleted file mode 100644 index 92e29d1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-147497.js +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug - -Debug = debug.Debug; - -function listener(event, exec_state, event_data, data) { - if (event == Debug.DebugEvent.Break) { - exec_state.prepareStep(Debug.StepAction.StepNext, 10); - } -}; - -Debug.setListener(listener); - -var statement = ""; -for (var i = 0; i < 1024; i++) statement += "z"; -statement = 'with(0)' + statement + '=function foo(){}'; - -debugger; -eval(statement); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1476.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1476.js deleted file mode 100644 index 1277e7f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1476.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function foo (i) { return (i % 2) | 0; } - -assertEquals (-1, foo(-1)); -assertEquals (-1, foo(-1)); -%OptimizeFunctionOnNextCall(foo); -assertEquals (-1, foo(-1)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-148378.js b/src/3rdparty/v8/test/mjsunit/regress/regress-148378.js deleted file mode 100644 index d37cea1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-148378.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -"a".replace(/a/g, function() { return "c"; }); - -function test() { - try { - test(); - } catch(e) { - "b".replace(/(b)/g, function() { return "c"; }); - } -} - -test(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-149.js b/src/3rdparty/v8/test/mjsunit/regress/regress-149.js deleted file mode 100644 index 6377a5b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-149.js +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertEquals(String.fromCharCode(0x26B), String.fromCharCode(0x2C62).toLowerCase()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1491.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1491.js deleted file mode 100644 index 1a3d3bf..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1491.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that the Array length accessor correctly deals with non-array -// receivers. - -// Create an object with an array as the prototype. -var o = Object.create([]); - -// Check that writing the length property of the non-array object -// works as expected. -var value = "asdf"; -o.length = value; -assertEquals(value, o.length); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1493017.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1493017.js deleted file mode 100644 index 99a1dad..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1493017.js +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test collection of abandoned maps. Tests that deleted map -// transitions do not show up as properties in for in. - -// Flags: --expose-gc --collect-maps - -function C() {} - - -// Create an instance of C. Add a property to the instance and then -// remove all references to instances of C. -var o = new C(); -o.x = 42; -o = null; - -// Force a global GC. This will collect the maps starting from C and -// delete map transitions. -gc(); - -// Create a new instance of C. -o = new C(); - -// Test that the deleted map transitions do not show up in for in. -for (var p in o) { - assertTrue(false); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1513.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1513.js deleted file mode 100644 index 06c5edf..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1513.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Deleting a mapped arguments property and adding it via -// Object.defineProperty should not crash. - -function testcase() { - return (function (a, b, c) { - delete arguments[0]; - Object.defineProperty(arguments, "0", { - value: 10, - writable: false, - enumerable: false, - configurable: false - }); - assertEquals(10, arguments[0]); - }(0, 1, 2)); -} - -testcase(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1521.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1521.js deleted file mode 100644 index 3149f05..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1521.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// Flags: --allow-natives-syntax - -// Optimized variable access inside through a catch context should work. -function test(x) { - try { - throw new Error(); - } catch (e) { - var y = {f: 1}; - var f = function () { - var z = y; - var g = function () { - if (y.f === z.f) return x; - }; - %OptimizeFunctionOnNextCall(g); - return g; - } - assertEquals(3, f()()); - } -} - -test(3); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1523.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1523.js deleted file mode 100644 index 30b3d59..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1523.js +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1523 - -// Flags: --expose-debug-as debug -// Get the Debug object exposed from the debug context global object. - -Debug = debug.Debug - -var listenerCalled = false; -var result = -1; - -function listener(event, exec_state, event_data, data) { - listenerCalled = true; -}; - -// Add the debug event listener. -Debug.setListener(listener); - -function test_and(x) { - if (x && (bar === this.baz)) - return 0; - return 1; -} - -function test_or(x) { - if (x || (bar === this.baz)) - return 0; - return 1; -} - -// Set a break points and call each function to invoke the debug event listener. -Debug.setBreakPoint(test_and, 0, 0); -Debug.setBreakPoint(test_or, 0, 0); - -listenerCalled = false; -result = test_and(false); -assertEquals(1, result); -assertTrue(listenerCalled); - -listenerCalled = false; -result = test_or(true); -assertEquals(0, result); -assertTrue(listenerCalled); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1528.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1528.js deleted file mode 100644 index 2eb6be1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1528.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// With (or catch) scopes nested inside catch scopes should look at the -// first outer non-catch scope to decide which closure to use when -// allocating the new context. - -// Code below should not assert or crash. -try { - fail; -} catch (e) { - with({}) { // With scope inside catch scope. - // Dynamic declaration forces runtime lookup to observe the context chain. - eval('const x = 7'); - } -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1529.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1529.js deleted file mode 100644 index 212d7b3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1529.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1529 - -try { - Error.prepareStackTrace = function (error, stackTrace) { - stackTrace.some(); - }; - x; -} catch (e) {} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1530.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1530.js deleted file mode 100644 index db21144..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1530.js +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that redefining the 'prototype' property of a function object -// does actually set the internal value and does not screw up any -// shadowing between said property and the internal value. - -var f = function() {}; - -// Verify that normal assignment of 'prototype' property works properly -// and updates the internal value. -var x = { foo: 'bar' }; -f.prototype = x; -assertSame(f.prototype, x); -assertSame(f.prototype.foo, 'bar'); -assertSame(new f().foo, 'bar'); -assertSame(Object.getPrototypeOf(new f()), x); -assertSame(Object.getOwnPropertyDescriptor(f, 'prototype').value, x); - -// Verify that 'prototype' behaves like a data property when it comes to -// redefining with Object.defineProperty() and the internal value gets -// updated. -var y = { foo: 'baz' }; -Object.defineProperty(f, 'prototype', { value: y, writable: true }); -assertSame(f.prototype, y); -assertSame(f.prototype.foo, 'baz'); -assertSame(new f().foo, 'baz'); -assertSame(Object.getPrototypeOf(new f()), y); -assertSame(Object.getOwnPropertyDescriptor(f, 'prototype').value, y); - -// Verify that the previous redefinition didn't screw up callbacks and -// the internal value still gets updated. -var z = { foo: 'other' }; -f.prototype = z; -assertSame(f.prototype, z); -assertSame(f.prototype.foo, 'other'); -assertSame(new f().foo, 'other'); -assertSame(Object.getPrototypeOf(new f()), z); -assertSame(Object.getOwnPropertyDescriptor(f, 'prototype').value, z); - -// Verify that non-writability of other properties is respected. -assertThrows("Object.defineProperty(f, 'name', { value: {} })"); -assertThrows("Object.defineProperty(f, 'length', { value: {} })"); -assertThrows("Object.defineProperty(f, 'caller', { value: {} })"); -assertThrows("Object.defineProperty(f, 'arguments', { value: {} })"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1531.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1531.js deleted file mode 100644 index 09e61a6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1531.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for computing elements keys of arguments object. Should -// not crash or assert. -function test(x) { - arguments[10] = 0; - var arr = []; - for (var p in arguments) arr.push(p); - return arr; -} -assertEquals(["0", "10"], test(0)); - -// Regression test for lookup after delete of a dictionary-mode arguments -// backing store. Should not crash or assert. -function test1(x, y, z) { - // Put into dictionary mode. - arguments.__defineGetter__("5", function () { return 0; }); - // Delete a property from the dictionary. - delete arguments[5]; - // Look up a property in the dictionary. - return arguments[2]; -} - -assertEquals(void 0, test1(0)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1546.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1546.js deleted file mode 100644 index 7f1fa58..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1546.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1546 - -// Should't throw. Scanner incorrectly truncated to char before comparing -// with "*", so it ended the comment early. -eval("/*\u822a/ */");
\ No newline at end of file diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1548.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1548.js deleted file mode 100644 index 074007b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1548.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that the caller and arguments objects are not available on native -// functions. - -function testfn(f) { return [1].map(f)[0]; } -function foo() { return [].map.caller; } -assertEquals(null, testfn(foo)); - -// Try to delete the caller property (to make sure that we can't get to the -// caller accessor on the prototype. -delete Array.prototype.map.caller; -assertEquals(null, testfn(foo)); - -// Redo tests with arguments object. -function testarguments(f) { return [1].map(f)[0]; } -function bar() { return [].map.arguments; } -assertEquals(null, testfn(bar)); - -// Try to delete the arguments property (to make sure that we can't get to the -// caller accessor on the prototype. -delete Array.prototype.map.arguments; -assertEquals(null, testarguments(bar)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-155924.js b/src/3rdparty/v8/test/mjsunit/regress/regress-155924.js deleted file mode 100644 index 666e3ba..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-155924.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// A HeapNumber with certain bits in the mantissa of the floating point -// value should not be able to masquerade as a string in a keyed lookup -// inline cache stub. See http://codereview.chromium.org/155924. - -A = [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ]; - -function foo() { - x = 1 << 26; - x = x * x; - // The following floating-point heap number has a second word similar - // to that of the string "5": - // 2^52 + index << cached_index_shift + cached_index_tag - x = x + (5 << 2) + (1 << 1); - return A[x]; -} - -assertEquals(undefined, foo(), "First lookup A[bad_float]"); -assertEquals(undefined, foo(), "Second lookup A[bad_float]"); -assertEquals(undefined, foo(), "Third lookup A[bad_float]"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1560.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1560.js deleted file mode 100644 index a0aa7e6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1560.js +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --expose-gc - -function mkCOWArray() { - var a = ['']; - assertEquals('', a[0]); - return a; -} - -function mkArray() { - var a = []; - a[0] = ''; - return a; -} - -function mkNumberDictionary() { - var a = new Array(); - a[0] = ''; - a[100000] = ''; - return a; -} - -function write(a, i) { a[i] = "bazinga!"; } - -function test(factories, w) { - factories.forEach(function(f) { w(f(), 0); }); - factories.forEach(function(f) { w(f(), 0); }); - %OptimizeFunctionOnNextCall(w); - factories.forEach(function(f) { w(f(), 0); }); -} - -// Monomorphic case. -for (var i = 0; i < 5; i++) write(mkArray(), 0); -%OptimizeFunctionOnNextCall(write); -write(mkCOWArray(), 0); -var failure = mkCOWArray(); - -// Cleanup, then polymorphic case. -%DeoptimizeFunction(write); -gc(); -test([mkArray, mkNumberDictionary], write); -test([mkArray, mkNumberDictionary, mkCOWArray], write); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1563.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1563.js deleted file mode 100644 index 884b125..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1563.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -obj = new Uint8ClampedArray(10); - -// Test that undefined gets properly clamped in Crankshafted pixel array -// assignments. -function set_pixel(obj, arg) { - obj[0] = arg; -} - -set_pixel(obj, 1.5); -set_pixel(obj, NaN); -%OptimizeFunctionOnNextCall(set_pixel); -set_pixel(obj, undefined); -set_pixel(obj, undefined); - -assertEquals(0, obj[0]); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1582.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1582.js deleted file mode 100644 index 346d68a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1582.js +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function f(restIsArray, rest) { - var arr; - if (typeof rest === "object" && (rest instanceof Array)) { - arr = rest; - } else { - arr = arguments; - } - var i = arr.length; - while (--i >= 0) arr[i]; - var arrIsArguments = (arr[1] !== rest); - assertEquals(restIsArray, arrIsArguments); -} - -f(false, 'b', 'c'); -f(false, 'b', 'c'); -f(false, 'b', 'c'); -%OptimizeFunctionOnNextCall(f); -f(true, ['b', 'c']); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1583.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1583.js deleted file mode 100644 index c4a344c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1583.js +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Regression test for a bug in recompilation of anonymous functions inside -// catch. We would incorrectly hoist them outside the catch in some cases. -function f() { - try { - throw 0; - } catch (e) { - try { - var x = { a: 'hest' }; - x.m = function (e) { return x.a; }; - } catch (e) { - } - } - return x; -} - -var o = f(); -assertEquals('hest', o.m()); -assertEquals('hest', o.m()); -assertEquals('hest', o.m()); -%OptimizeFunctionOnNextCall(o.m); -assertEquals('hest', o.m()); - -// Fixing the bug above introduced (revealed?) an inconsistency in named -// getters and setters. The property name was also treated as a function -// name. -var global = 'horse'; -var p = { get global() { return global; }}; -assertEquals('horse', p.global); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1586.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1586.js deleted file mode 100644 index b15e2f2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1586.js +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug - -// Test debug evaluation for functions without local context, but with -// nested catch contexts. - -function f() { - var i = 1; // Line 1. - { // Line 2. - try { // Line 3. - throw 'stuff'; // Line 4. - } catch (e) { // Line 5. - x = 2; // Line 6. - } - } -}; - -// Get the Debug object exposed from the debug context global object. -Debug = debug.Debug -// Set breakpoint on line 6. -var bp = Debug.setBreakPoint(f, 6); - -function listener(event, exec_state, event_data, data) { - if (event == Debug.DebugEvent.Break) { - result = exec_state.frame().evaluate("i").value(); - } -}; - -// Add the debug event listener. -Debug.setListener(listener); -result = -1; -f(); -assertEquals(1, result); - -// Clear breakpoint. -Debug.clearBreakPoint(bp); -// Get rid of the debug event listener. -Debug.setListener(null); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1591.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1591.js deleted file mode 100644 index 69efd0b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1591.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var stack; -var used_custom_lookup = false; - -({ - __lookupGetter__ : function() { - used_custom_lookup = true; - }, - - test : function() { - try { - f(); - } catch (err) { - stack = err.stack; - } - } -}).test(); - -var expected_message = "ReferenceError: f is not defined"; -assertTrue(stack.indexOf(expected_message) >= 0); -assertFalse(used_custom_lookup); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1592.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1592.js deleted file mode 100644 index 8f6fba0..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1592.js +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -var f = { - apply: function(a, b) {} -}; - -function test(a) { - f.apply(this, arguments); -} - -// Initialize ICs. -test(1); -test(1); - -%OptimizeFunctionOnNextCall(test); - -// Kaboom! -test(1); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1620.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1620.js deleted file mode 100644 index 6d72974..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1620.js +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Don't allow malformed unicode escape sequences in identifiers. -// In strings and regexps we currently allow malformed unicode escape -// sequences without throwing a SyntaxError. Instead "\u22gk" would -// treat the "\u" as an identity escape, and evaluate to "u22gk". -// Due to code sharing, we did the same in identifiers. This should -// no longer be the case. -// See: http://code.google.com/p/v8/issues/detail?id=1620 - -assertThrows("var \\u\\u\\u = 42;"); -assertThrows("var \\u41 = 42;"); -assertThrows("var \\u123 = 42;"); -eval("var \\u1234 = 42;"); -assertEquals(42, eval("\u1234")); -assertThrows("var uuu = 42; var x = \\u\\u\\u"); - -// Regressions introduced and fixed again while fixing the above. - -// Handle 0xFFFD correctly (it's a valid value, and shouldn't be used -// to mark an error). -assertEquals(0xFFFD, "\uFFFD".charCodeAt(0)); - -// Handle unicode escapes in regexp flags correctly. -assertThrows("/x/g\\uim", SyntaxError); -assertThrows("/x/g\\u2im", SyntaxError); -assertThrows("/x/g\\u22im", SyntaxError); -assertThrows("/x/g\\u222im", SyntaxError); -assertThrows("/x/g\\\\u2222im", SyntaxError); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1624-strict.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1624-strict.js deleted file mode 100644 index 8bc58d5..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1624-strict.js +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that global eval calls of strict code (independent from whether being -// direct or indirect) have their own lexical and variable environment. - -"use strict"; -var evil = eval; - -// Test global direct strict eval in strict script. -// Expects new environment. -var no_touch = 0; -eval('"use strict"; var no_touch = 1;'); -assertSame(0, no_touch); - -// Test global indirect strict eval in strict script. -// Expects new environment. -var no_touch = 0; -evil('"use strict"; var no_touch = 2;'); -assertSame(0, no_touch); - -// Test global direct non-strict eval in strict script. -// Expects new environment. -var no_touch = 0; -eval('var no_touch = 3;'); -assertSame(0, no_touch); - -// Test global indirect non-strict eval in strict script. -// Expects global environment. -var no_touch = 0; -evil('var no_touch = 4;'); -assertSame(4, no_touch); - -// Test non-global direct strict eval in strict script. -// Expects new environment. -var no_touch = 0; -(function() { - var no_touch = 0; - eval('"use strict"; var no_touch = 5;'); - assertSame(0, no_touch); -})() -assertSame(0, no_touch); - -// Test non-global indirect strict eval in strict script. -// Expects new environment. -var no_touch = 0; -(function() { - var no_touch = 0; - evil('"use strict"; var no_touch = 6;'); - assertSame(0, no_touch); -})() -assertSame(0, no_touch); - -// Test non-global direct non-strict eval in strict script. -// Expects new environment. -var no_touch = 0; -(function() { - var no_touch = 0; - eval('var no_touch = 7;'); - assertSame(0, no_touch); -})() -assertSame(0, no_touch); - -// Test non-global indirect non-strict eval in strict script. -// Expects global environment. -var no_touch = 0; -(function() { - var no_touch = 0; - evil('var no_touch = 8;'); - assertSame(0, no_touch); -})() -assertSame(8, no_touch); - -// Test non-global direct strict eval in strict script. -// Expects new environment. -var no_touch = 0; -(function() { - "use strict"; - var no_touch = 0; - eval('"use strict"; var no_touch = 9;'); - assertSame(0, no_touch); -})() -assertSame(0, no_touch); - -// Test non-global indirect strict eval in strict script. -// Expects new environment. -var no_touch = 0; -(function() { - "use strict"; - var no_touch = 0; - evil('"use strict"; var no_touch = 10;'); - assertSame(0, no_touch); -})() -assertSame(0, no_touch); - -// Test non-global direct non-strict eval in strict script. -// Expects new environment. -var no_touch = 0; -(function() { - "use strict"; - var no_touch = 0; - eval('var no_touch = 11;'); - assertSame(0, no_touch); -})() -assertSame(0, no_touch); - -// Test non-global indirect non-strict eval in strict script. -// Expects global environment. -var no_touch = 0; -(function() { - "use strict"; - var no_touch = 0; - evil('var no_touch = 12;'); - assertSame(0, no_touch); -})() -assertSame(12, no_touch); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1624.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1624.js deleted file mode 100644 index 987e036..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1624.js +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that global eval calls of strict code (independent from whether being -// direct or indirect) have their own lexical and variable environment. - -var evil = eval; - -// Test global direct strict eval. -// Expects new environment. -var no_touch = 0; -eval('"use strict"; var no_touch = 1;'); -assertSame(0, no_touch); - -// Test global indirect strict eval. -// Expects new environment. -var no_touch = 0; -evil('"use strict"; var no_touch = 2;'); -assertSame(0, no_touch); - -// Test global direct non-strict eval. -// Expects global environment. -var no_touch = 0; -eval('var no_touch = 3;'); -assertSame(3, no_touch); - -// Test global indirect non-strict eval. -// Expects global environment. -var no_touch = 0; -evil('var no_touch = 4;'); -assertSame(4, no_touch); - -// Test non-global direct strict eval in non-strict function. -// Expects new environment. -var no_touch = 0; -(function() { - var no_touch = 0; - eval('"use strict"; var no_touch = 5;'); - assertSame(0, no_touch); -})() -assertSame(0, no_touch); - -// Test non-global indirect strict eval in non-strict function. -// Expects new environment. -var no_touch = 0; -(function() { - var no_touch = 0; - evil('"use strict"; var no_touch = 6;'); - assertSame(0, no_touch); -})() -assertSame(0, no_touch); - -// Test non-global direct non-strict eval in non-strict function. -// Expects function environment. -var no_touch = 0; -(function() { - var no_touch = 0; - eval('var no_touch = 7;'); - assertSame(7, no_touch); -})() -assertSame(0, no_touch); - -// Test non-global indirect non-strict eval in non-strict function. -// Expects global environment. -var no_touch = 0; -(function() { - var no_touch = 0; - evil('var no_touch = 8;'); - assertSame(0, no_touch); -})() -assertSame(8, no_touch); - -// Test non-global direct strict eval in strict function. -// Expects new environment. -var no_touch = 0; -(function() { - "use strict"; - var no_touch = 0; - eval('"use strict"; var no_touch = 9;'); - assertSame(0, no_touch); -})() -assertSame(0, no_touch); - -// Test non-global indirect strict eval in strict function. -// Expects new environment. -var no_touch = 0; -(function() { - "use strict"; - var no_touch = 0; - evil('"use strict"; var no_touch = 10;'); - assertSame(0, no_touch); -})() -assertSame(0, no_touch); - -// Test non-global direct non-strict eval in strict function. -// Expects new environment. -var no_touch = 0; -(function() { - "use strict"; - var no_touch = 0; - eval('var no_touch = 11;'); - assertSame(0, no_touch); -})() -assertSame(0, no_touch); - -// Test non-global indirect non-strict eval in strict function. -// Expects global environment. -var no_touch = 0; -(function() { - "use strict"; - var no_touch = 0; - evil('var no_touch = 12;'); - assertSame(0, no_touch); -})() -assertSame(12, no_touch); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1625.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1625.js deleted file mode 100644 index a2ef8df..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1625.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that overwriting Array.prototype.push does not make -// Object.defineProperties misbehave. - -Array.prototype.push = 1; -var desc = {foo: {value: 10}, bar: {get: function() {return 42; }}}; -var obj = {}; -var x = Object.defineProperties(obj, desc); -assertEquals(x.foo, 10); -assertEquals(x.bar, 42); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1639-2.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1639-2.js deleted file mode 100644 index 01f0dc2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1639-2.js +++ /dev/null @@ -1,96 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug -// Get the Debug object exposed from the debug context global object. -Debug = debug.Debug -var exception = false; - -function sendCommand(state, cmd) { - // Get the debug command processor in paused state. - var dcp = state.debugCommandProcessor(false); - var request = JSON.stringify(cmd); - var response = dcp.processDebugJSONRequest(request); -} - -var state = 0; - -function listener(event, exec_state, event_data, data) { - try { - if (event == Debug.DebugEvent.Break) { - var line = event_data.sourceLineText(); - print('break: ' + line); - print('event data: ' + event_data.toJSONProtocol()); - print(); - assertEquals('// BREAK', line.substr(-8), - "should not break outside evaluate"); - - switch (state) { - case 0: - state = 1; - // While in the debugger and stepping through a set of instructions - // executed in the evaluate command, the stepping must stop at the end - // of the said set of instructions and not step further into native - // debugger code. - sendCommand(exec_state, { - seq : 0, - type : "request", - command : "evaluate", - arguments : { - 'expression' : 'print("A"); debugger; print("B"); // BREAK', - 'global' : true - } - }); - break; - case 1: - sendCommand(exec_state, { - seq : 0, - type : "request", - command : "continue", - arguments : { - stepaction : "next" - } - }); - break; - } - } - } catch (e) { - print(e); - exception = true; - } -} - -// Add the debug event listener. -Debug.setListener(listener); - -function a() { -} // BREAK - -// Set a break point and call to invoke the debug event listener. -Debug.setBreakPoint(a, 0, 0); -a(); -assertFalse(exception); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1639.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1639.js deleted file mode 100644 index 47cdbc4..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1639.js +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug -// Get the Debug object exposed from the debug context global object. -Debug = debug.Debug -var breaks = 0; -var exception = false; - -function sendCommand(state, cmd) { - // Get the debug command processor in paused state. - var dcp = state.debugCommandProcessor(false); - var request = JSON.stringify(cmd); - var response = dcp.processDebugJSONRequest(request); -} - -function listener(event, exec_state, event_data, data) { - try { - if (event == Debug.DebugEvent.Break) { - var line = event_data.sourceLineText(); - print('break: ' + line); - - assertEquals(-1, line.indexOf('NOBREAK'), - "should not break on unexpected lines") - assertEquals('BREAK ' + breaks, line.substr(-7)); - breaks++; - if (breaks < 4) { - sendCommand(exec_state, { - seq: 0, - type: "request", - command: "continue", - arguments: { stepaction: "next" } - }); - } - } - } catch (e) { - print(e); - exception = true; - } -} - -// Add the debug event listener. -Debug.setListener(listener); - -function a(f) { - if (f) { // NOBREAK: should not break here! - try { - f(); - } catch(e) { - } - } -} // BREAK 2 - -function b() { - c(); // BREAK 0 -} // BREAK 1 - -function c() { - a(); -} - -// Set a break point and call to invoke the debug event listener. -Debug.setBreakPoint(b, 0, 0); -a(b); -a(); // BREAK 3 - -assertFalse(exception); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-164442.js b/src/3rdparty/v8/test/mjsunit/regress/regress-164442.js deleted file mode 100644 index 1160d87..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-164442.js +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Should not take a very long time (n^2 algorithms are bad) - - -function ensureNotNegative(x) { - return Math.max(0, x | 0); -} - - -ensureNotNegative(1); -ensureNotNegative(2); - -%OptimizeFunctionOnNextCall(ensureNotNegative); - -var r = ensureNotNegative(-1); - -assertEquals(0, r); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1647.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1647.js deleted file mode 100644 index a6afcc0..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1647.js +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test for correct deoptimization in named function expressions. - -var t = { foo: function() {} }; - -var f = (function bar() { - t.foo(); - assertEquals("function", typeof bar); -}); - -for (var i = 0; i < 10; i++) f(); -%OptimizeFunctionOnNextCall(f); -t.number = 2; -f(); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1650.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1650.js deleted file mode 100644 index fb6a178..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1650.js +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function g(f) { return f.call.apply(f.bind, arguments); } - -var x = new Object; - -function t() { } - -g(t, x); -g(t, x); -g(t, x); -%OptimizeFunctionOnNextCall(g); - -function Fake() {} - -var fakeCallInvoked = false; - -Fake.prototype.call = function () { - assertSame(Fake.prototype.bind, this); - assertEquals(2, arguments.length); - assertSame(fake, arguments[0]); - assertSame(x, arguments[1]); - fakeCallInvoked = true; -}; - -Fake.prototype.bind = function () { -}; - -var fake = new Fake; - -g(fake, x); - -assertTrue(fakeCallInvoked); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-165637.js b/src/3rdparty/v8/test/mjsunit/regress/regress-165637.js deleted file mode 100644 index 72af528..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-165637.js +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Should not take a very long time (n^2 algorithms are bad) - -function do_slices() { - var data = new Array(1024 * 12); // 12kB - - for (var i = 0; i < data.length; i++) { - data[i] = 255; - } - - var start = Date.now(); - - for (i = 0; i < 20000; i++) { - data.slice(4, 1); - } - - return Date.now() - start; -} - -// Reset the GC stress mode to be off. Needed so that the runtime of this test -// stays within bounds even if we run in GC stress mode. -%SetFlags("--gc-interval=-1 --noforce-marking-deque-overflows"); - -// Should never take more than 3 seconds (if the bug is fixed, the test takes -// considerably less time than 3 seconds). -assertTrue(do_slices() < (3 * 1000)); - -// Make sure that packed and unpacked array slices are still properly handled -var holey_array = [1, 2, 3, 4, 5,,,,,,]; -assertFalse(%HasFastHoleyElements(holey_array.slice(6, 1))); -assertEquals(undefined, holey_array.slice(6, 7)[0]) -assertFalse(%HasFastHoleyElements(holey_array.slice(2, 1))); -assertEquals(3, holey_array.slice(2, 3)[0]) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-166379.js b/src/3rdparty/v8/test/mjsunit/regress/regress-166379.js deleted file mode 100644 index b19afbd..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-166379.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function mod(a, b) { return a % b; } - -// Feed integer type info and optimize. -assertEquals(0, mod(4, 2)); -assertEquals(1, mod(3, 2)); -%OptimizeFunctionOnNextCall(mod); - -// Surprise mod with overflow. -assertEquals(-Infinity, 1/mod(-2147483648, -1)); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-166553.js b/src/3rdparty/v8/test/mjsunit/regress/regress-166553.js deleted file mode 100644 index acaf34f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-166553.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose_gc - -JSON.stringify(String.fromCharCode(1, -11).toString()) -gc(); -var s = String.fromCharCode(1, -11) -assertEquals(65525, s.charCodeAt(1)) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1692.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1692.js deleted file mode 100644 index 32be87f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1692.js +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that Object.prototype.propertyIsEnumerable handles array indices -// correctly. - -var p = Object.create({}, { - a : { value : 42, enumerable : true }, - b : { value : 42, enumerable : false }, - 1 : { value : 42, enumerable : true }, - 2 : { value : 42, enumerable : false }, - f : { get: function(){}, enumerable: true }, - g : { get: function(){}, enumerable: false }, - 11 : { get: function(){}, enumerable: true }, - 12 : { get: function(){}, enumerable: false } -}); -var o = Object.create(p, { - c : { value : 42, enumerable : true }, - d : { value : 42, enumerable : false }, - 3 : { value : 42, enumerable : true }, - 4 : { value : 42, enumerable : false }, - h : { get: function(){}, enumerable: true }, - k : { get: function(){}, enumerable: false }, - 13 : { get: function(){}, enumerable: true }, - 14 : { get: function(){}, enumerable: false } -}); - -// Inherited properties are ignored. -assertFalse(o.propertyIsEnumerable("a")); -assertFalse(o.propertyIsEnumerable("b")); -assertFalse(o.propertyIsEnumerable("1")); -assertFalse(o.propertyIsEnumerable("2")); - -// Own properties. -assertTrue(o.propertyIsEnumerable("c")); -assertFalse(o.propertyIsEnumerable("d")); -assertTrue(o.propertyIsEnumerable("3")); -assertFalse(o.propertyIsEnumerable("4")); - -// Inherited accessors. -assertFalse(o.propertyIsEnumerable("f")); -assertFalse(o.propertyIsEnumerable("g")); -assertFalse(o.propertyIsEnumerable("11")); -assertFalse(o.propertyIsEnumerable("12")); - -// Own accessors. -assertTrue(o.propertyIsEnumerable("h")); -assertFalse(o.propertyIsEnumerable("k")); -assertTrue(o.propertyIsEnumerable("13")); -assertFalse(o.propertyIsEnumerable("14")); - -// Nonexisting properties. -assertFalse(o.propertyIsEnumerable("xxx")); -assertFalse(o.propertyIsEnumerable("999")); - -// String object properties. -var o = Object("string"); -// Non-string property on String object. -o[10] = 42; -assertTrue(o.propertyIsEnumerable(10)); -assertTrue(o.propertyIsEnumerable(0)); - -// Fast elements. -var o = [1,2,3,4,5]; -assertTrue(o.propertyIsEnumerable(3)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1708.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1708.js deleted file mode 100644 index ab50e07..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1708.js +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test of a very rare corner case where left-trimming an -// array caused invalid marking bit patterns on lazily swept pages. - -// Flags: --expose-gc --noincremental-marking --max-new-space-size 1000 - -(function() { - var head = new Array(1); - var tail = head; - - // Fill heap to increase old-space size and trigger lazy sweeping on - // some of the old-space pages. - for (var i = 0; i < 200; i++) { - tail[1] = new Array(1000); - tail = tail[1]; - } - array = new Array(100); - gc(); gc(); - - // At this point "array" should have been promoted to old-space and be - // located in a lazy swept page with intact marking bits. Now shift - // the array to trigger left-trimming operations. - assertEquals(100, array.length); - for (var i = 0; i < 50; i++) { - array.shift(); - } - assertEquals(50, array.length); - - // At this point "array" should have been trimmed from the left with - // marking bits being correctly transfered to the new object start. - // Scavenging operations cause lazy sweeping to advance and verify - // that marking bit patterns are still sane. - for (var i = 0; i < 200; i++) { - tail[1] = new Array(1000); - tail = tail[1]; - } -})(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-171.js b/src/3rdparty/v8/test/mjsunit/regress/regress-171.js deleted file mode 100644 index fe981da..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-171.js +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function f(s) { return s.length; } -function g(s, key) { return s[key]; } - -assertEquals(f(new String("a")), 1); -assertEquals(f(new String("a")), 1); -assertEquals(f(new String("a")), 1); -assertEquals(f("a"), 1); -assertEquals(f(new String("a")), 1); - -assertEquals(g(new String("a"), "length"), 1); -assertEquals(g(new String("a"), "length"), 1); -assertEquals(g(new String("a"), "length"), 1); -assertEquals(g("a", "length"), 1); -assertEquals(g(new String("a"), "length"), 1); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1711.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1711.js deleted file mode 100644 index 15591b1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1711.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// string.split needs to evaluate the separator's toString even if limit -// is 0 because toString may have side effects. - -var side_effect = false; -var separator = new Object(); -separator.toString = function() { - side_effect = true; - return undefined; -} -'subject'.split(separator, 0); -assertTrue(side_effect); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1713.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1713.js deleted file mode 100644 index 0af1144..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1713.js +++ /dev/null @@ -1,127 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --always-compact --expose-gc - -var O = { get f() { return 0; } }; - -var CODE = []; - -var R = []; - -function Allocate4Kb(N) { - var arr = []; - do {arr.push(new Array(1024));} while (--N > 0); - return arr; -} - -function AllocateXMb(X) { - return Allocate4Kb((1024 * X) / 4); -} - -function Node(v, next) { this.v = v; this.next = next; } - -Node.prototype.execute = function (O) { - var n = this; - while (n.next !== null) n = n.next; - n.v(O); -}; - -function LongList(N, x) { - if (N == 0) return new Node(x, null); - return new Node(new Array(1024), LongList(N - 1, x)); -} - -var L = LongList(1024, function (O) { - for (var i = 0; i < 5; i++) O.f; -}); - - - -function Incremental(O, x) { - if (!x) { - return; - } - function CreateCode(i) { - var f = new Function("return O.f_" + i); - CODE.push(f); - f(); // compile - f(); // compile - f(); // compile - } - - for (var i = 0; i < 1e4; i++) CreateCode(i); - gc(); - gc(); - gc(); - - print(">>> 1 <<<"); - - L.execute(O); - - try {} catch (e) {} - - L = null; - print(">>> 2 <<<"); - AllocateXMb(8); - //rint("1"); - //llocateXMb(8); - //rint("1"); - //llocateXMb(8); - -} - -function foo(O, x) { - Incremental(O, x); - - print('f'); - - for (var i = 0; i < 5; i++) O.f; - - - print('g'); - - bar(x); -} - -function bar(x) { - if (!x) return; - %DeoptimizeFunction(foo); - AllocateXMb(8); - AllocateXMb(8); -} - -var O1 = {}; -var O2 = {}; -var O3 = {}; -var O4 = {f:0}; - -foo(O1, false); -foo(O2, false); -foo(O3, false); -%OptimizeFunctionOnNextCall(foo); -foo(O4, true); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-171641.js b/src/3rdparty/v8/test/mjsunit/regress/regress-171641.js deleted file mode 100644 index 8db6781..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-171641.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function foo(k, p) { - for (var i = 0; i < 1; i++) { - p = Math.min(p, i); - } - m = Math.floor((k | 0) / p); -} - -foo(0, 1); -foo(0, 1); -%OptimizeFunctionOnNextCall(foo); -foo(0, 1); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1748.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1748.js deleted file mode 100644 index e287e55..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1748.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that /^/ only matches at beginning of string. -// Bug in x64 caused it to match when executing the RegExp on a part -// of a string that starts at a multiplum of 256. - -var str = Array(10000).join("X"); -str.replace(/^|X/g, function(m, i, s) { - if (i > 0) assertEquals("X", m, "at position 0x" + i.toString(16)); -});
\ No newline at end of file diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1757.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1757.js deleted file mode 100644 index f7a5516..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1757.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --string-slices --expose-externalize-string - -var a = "abcdefghijklmnopqrstuvqxy"+"z"; -externalizeString(a, true); -assertEquals('b', a.substring(1).charAt(0));
\ No newline at end of file diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-176.js b/src/3rdparty/v8/test/mjsunit/regress/regress-176.js deleted file mode 100644 index ef0c4f1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-176.js +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://code.google.com/p/v8/issues/detail?id=176 - -assertArrayEquals(["f", undefined], - "foo".match(/(?:(?=(f)o))?f/), - "zero length match in (?:) with capture in lookahead"); -assertArrayEquals(["f", undefined], - "foo".match(/(?=(f)o)?f/), - "zero length match in (?=) with capture in lookahead"); -assertArrayEquals(["fo", "f"], - "foo".match(/(?:(?=(f)o)f)?o/), - "non-zero length match with capture in lookahead"); -assertArrayEquals(["fo", "f"], - "foo".match(/(?:(?=(f)o)f?)?o/), - "non-zero length match with greedy ? in (?:)"); -assertArrayEquals(["fo", "f"], - "foo".match(/(?:(?=(f)o)f??)?o/), - "non-zero length match with non-greedy ? in (?:), o forces backtrack"); -assertArrayEquals(["fo", "f"], - "foo".match(/(?:(?=(f)o)f??)?./), - "non-zero length match with non-greedy ? in (?:), zero length match causes backtrack"); -assertArrayEquals(["f", undefined], - "foo".match(/(?:(?=(f)o)fx)?./), - "x causes backtrack inside (?:)"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1790.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1790.js deleted file mode 100644 index 8848eea..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1790.js +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test checking that the sequence of element access in built-in -// array functions is specification conform (i.e. [[HasProperty]] might return -// bogus result after [[Get]] has been called). - -function CheckSequence(builtin, callback) { - var array = [1,2,3]; - var callback_count = 0; - var callback_wrapper = function() { - callback_count++; - return callback() - } - - // Define getter that will delete itself upon first invocation. - Object.defineProperty(array, '1', { - get: function () { delete array[1]; }, - configurable: true - }); - - assertTrue(array.hasOwnProperty('1')); - builtin.apply(array, [callback_wrapper, 'argument']); - assertFalse(array.hasOwnProperty('1')); - assertEquals(3, callback_count); -} - -CheckSequence(Array.prototype.every, function() { return true; }); -CheckSequence(Array.prototype.filter, function() { return true; }); -CheckSequence(Array.prototype.forEach, function() { return 0; }); -CheckSequence(Array.prototype.map, function() { return 0; }); -CheckSequence(Array.prototype.reduce, function() { return 0; }); -CheckSequence(Array.prototype.reduceRight, function() { return 0; }); -CheckSequence(Array.prototype.some, function() { return false; }); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1849.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1849.js deleted file mode 100644 index 5b8fc50..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1849.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1849 - -// Flags: --allow-natives-syntax - -var count = 1e5; -var arr = new Array(count); -assertFalse(%HasFastDoubleElements(arr)); -for (var i = 0; i < count; i++) { - arr[i] = 0; -} -assertFalse(%HasFastDoubleElements(arr)); -assertTrue(%HasFastSmiElements(arr)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1853.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1853.js deleted file mode 100644 index f80bade..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1853.js +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug - -// Test whether scripts compiled after setting the break point are -// updated correctly. - -Debug = debug.Debug; - -var break_count = 0; -var test_break_1 = false; -var test_break_2 = false; - -function sendCommand(state, cmd) { - // Get the debug command processor in paused state. - var dcp = state.debugCommandProcessor(false); - var request = JSON.stringify(cmd); - var response = dcp.processDebugJSONRequest(request); - return JSON.parse(response); -} - -function setBreakPointByName(state) { - sendCommand(state, { - seq: 0, - type: "request", - command: "setbreakpoint", - arguments: { - type: "script", - target: "testScriptOne", - line: 2 - } - }); -} - -function setBreakPointByRegExp(state) { - sendCommand(state, { - seq: 0, - type: "request", - command: "setbreakpoint", - arguments: { - type: "scriptRegExp", - target: "Scrip.Two", - line: 2 - } - }); -} - -function listener(event, exec_state, event_data, data) { - try { - if (event == Debug.DebugEvent.Break) { - switch (break_count) { - case 0: - // Set break points before the code has been compiled. - setBreakPointByName(exec_state); - setBreakPointByRegExp(exec_state); - break; - case 1: - // Set the flag to prove that we hit the first break point. - test_break_1 = true; - break; - case 2: - // Set the flag to prove that we hit the second break point. - test_break_2 = true; - break; - } - break_count++; - } - } catch (e) { - print(e); - } -} - -Debug.setListener(listener); -debugger; - -eval('function test1() { \n' + - ' assertFalse(test_break_1); \n' + - ' assertTrue(test_break_1); \n' + - '} \n' + - '//@ sourceURL=testScriptOne'); - -eval('function test2() { \n' + - ' assertFalse(test_break_2); \n' + - ' assertTrue(test_break_2); \n' + - '} \n' + - '//@ sourceURL=testScriptTwo'); - -test1(); -test2(); -assertEquals(3, break_count); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-186.js b/src/3rdparty/v8/test/mjsunit/regress/regress-186.js deleted file mode 100644 index 335869d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-186.js +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Make sure that eval can introduce a local variable called __proto__. -// See http://code.google.com/p/v8/issues/detail?id=186 - -var setterCalled = false; - -var o = {}; -o.__defineSetter__("x", function() { setterCalled = true; }); - -function runTest(test) { - setterCalled = false; - test(); -} - -function testLocal() { - // Add property called __proto__ to the extension object. - eval("var __proto__ = o"); - // Check that the extension object's prototype did not change. - eval("var x = 27"); - assertFalse(setterCalled, "prototype of extension object changed"); - assertEquals(o, eval("__proto__")); -} - -function testConstLocal() { - // Add const property called __proto__ to the extension object. - eval("const __proto__ = o"); - // Check that the extension object's prototype did not change. - eval("var x = 27"); - assertFalse(setterCalled, "prototype of extension object changed"); - assertEquals(o, eval("__proto__")); -} - -function testGlobal() { - // Assign to the global __proto__ property. - eval("__proto__ = o"); - // Check that the prototype of the global object changed. - eval("x = 27"); - assertTrue(setterCalled, "prototype of global object did not change"); - setterCalled = false; - assertEquals(o, eval("__proto__")); -} - -runTest(testLocal); -runTest(testConstLocal); -runTest(testGlobal); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-187.js b/src/3rdparty/v8/test/mjsunit/regress/regress-187.js deleted file mode 100644 index 2f8b0a1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-187.js +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://code.google.com/p/v8/issues/detail?id=187 - -assertEquals(["f", undefined], "foo".match(/(?:(?=(f)o)fx|)./)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1878.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1878.js deleted file mode 100644 index fbc47bd..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1878.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1878 - -// Flags: --allow-natives-syntax --expose_natives_as=natives - -var a = Array(); - -for (var i = 0; i < 1000; i++) { - var ai = natives.InternalArray(10000); - assertFalse(%HaveSameMap(ai, a)); - assertTrue(%HasFastObjectElements(ai)); -} - -for (var i = 0; i < 1000; i++) { - var ai = new natives.InternalArray(10000); - assertFalse(%HaveSameMap(ai, a)); - assertTrue(%HasFastObjectElements(ai)); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-189.js b/src/3rdparty/v8/test/mjsunit/regress/regress-189.js deleted file mode 100644 index a84b620..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-189.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that we can handle initialization of a deleted const variable. - -// See http://code.google.com/p/v8/issues/detail?id=189. - -function f() { - eval("delete x; const x = 32"); -} - -f(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1898.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1898.js deleted file mode 100644 index 5440446..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1898.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function f(x) { - Math.log(Math.min(0.1, Math.abs(x))); -} - -f(0.1); -f(0.1); -%OptimizeFunctionOnNextCall(f); -f(0.1); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-191.js b/src/3rdparty/v8/test/mjsunit/regress/regress-191.js deleted file mode 100644 index ca513c9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-191.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Make sure that accessor setters are ignored on context extension -// objects. -// See http://code.google.com/p/v8/issues/detail?id=191 - -var setterCalled = false; - -Object.prototype.__defineSetter__("x", function() { setterCalled = true; }); - -function test() { - eval("var x = 42"); - assertFalse(setterCalled, "accessor setter call on context object"); - assertEquals(42, eval("x")); -} - -test(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1919169.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1919169.js deleted file mode 100644 index a732312..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1919169.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - -function test() { - var s2 = "s2"; - for (var i = 0; i < 2; i++) { - // Crashes in round i==1 with IllegalAccess in %StringAdd(x,y) - var res = 1 + s2; - s2 = 2; - } -} - -// Crash does not occur when code is run at the top level. -test(); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-192.js b/src/3rdparty/v8/test/mjsunit/regress/regress-192.js deleted file mode 100644 index a8e5e9d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-192.js +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that exceptions are correctly propagated when creating object -// literals. - -// See http://code.google.com/p/v8/issues/detail?id=192 - -// UPDATE: This bug report is no longer valid. In ES5, creating object -// literals MUST NOT trigger inherited accessors, but act as if creating -// the properties using DefineOwnProperty. - -Object.prototype.__defineGetter__("x", function() {}); -Object.prototype.__defineSetter__("y", - function() { assertUnreachable("setter"); }); - -// Creating this object literal will *not* throw an exception because we are -// assigning to a property that has only a getter. -var x = ({ x: 42, y: 37 }); -assertEquals(42, x.x); -assertEquals(37, x.y); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1924.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1924.js deleted file mode 100644 index 8039541..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1924.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// For http://code.google.com/p/v8/issues/detail?id=1924 - -a: break a; -a: b: break a; -a: b: break b; -assertThrows("a: break a a", SyntaxError) -assertThrows("a: break a 1", SyntaxError) -assertThrows("a: break a ''", SyntaxError) -assertThrows("a: break a var b", SyntaxError) -assertThrows("a: break a {}", SyntaxError) - -a: if (0) break a; -b: if (0) {break b;} else {} -c: if (0) break c; else {} -d: if (0) break d; else break d; diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-193.js b/src/3rdparty/v8/test/mjsunit/regress/regress-193.js deleted file mode 100644 index f803483..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-193.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that context extension objects do not have a constructor -// property. - -// See http://code.google.com/p/v8/issues/detail?id=193. - -function f() { - return eval("var x; constructor"); -} - -// It should be ok to call the constructor function returned by f. -f()(); - -// The call to f should get the constructor of the receiver which is -// the constructor of the global object. -assertEquals(constructor, f()); - - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1945.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1945.js deleted file mode 100644 index bffc775..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1945.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -var _d = new Date(); -_d.setHours(0,0,0,0); -_d.setHours(0,0,0,0); -%OptimizeFunctionOnNextCall(_d.setHours); -_d.setHours(0,0,0,0); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1973.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1973.js deleted file mode 100644 index 8708bf1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1973.js +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that getters and setters pass unwrapped this values in strict mode -// and wrapped this values is non-strict mode. - -function TestAccessorWrapping(primitive) { - var prototype = Object.getPrototypeOf(Object(primitive)) - // Check that strict mode passes unwrapped this value. - var strict_type = typeof primitive; - Object.defineProperty(prototype, "strict", { - get: function() { "use strict"; assertSame(strict_type, typeof this); }, - set: function() { "use strict"; assertSame(strict_type, typeof this); } - }); - primitive.strict = primitive.strict; - // Check that non-strict mode passes wrapped this value. - var sloppy_type = typeof Object(primitive); - Object.defineProperty(prototype, "sloppy", { - get: function() { assertSame(sloppy_type, typeof this); }, - set: function() { assertSame(sloppy_type, typeof this); } - }); - primitive.sloppy = primitive.sloppy; -} - -TestAccessorWrapping(true); -TestAccessorWrapping(0); -TestAccessorWrapping({}); -TestAccessorWrapping(""); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-1980.js b/src/3rdparty/v8/test/mjsunit/regress/regress-1980.js deleted file mode 100644 index d87ff45..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-1980.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=1980 - -var invalid_this = [ "invalid", 23, undefined, null ]; -for (var i = 0; i < invalid_this.length; i++) { - var exception = false; - try { - Error.prototype.toString.call(invalid_this[i]); - } catch (e) { - exception = true; - assertEquals("Error.prototype.toString called on non-object", e.message); - } - assertTrue(exception); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-20070207.js b/src/3rdparty/v8/test/mjsunit/regress/regress-20070207.js deleted file mode 100644 index b7f7a5c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-20070207.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// The following regression test illustrates a problem in using the -// value of setting a property in the arguments object. - -function f(s) { - arguments.length; - return (s += 10) < 0; -} - -assertTrue(f(-100)); -assertTrue(f(-20)); -assertFalse(f(-10)); -assertFalse(f(-5)); -assertFalse(f(0)); -assertFalse(f(10)); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-201.js b/src/3rdparty/v8/test/mjsunit/regress/regress-201.js deleted file mode 100644 index 8847fc0..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-201.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://code.google.com/p/v8/issues/detail?id=201. - -function testsort(n) { - n=1*n; - var numbers=new Array(n); - for (var i=0;i<n;i++) numbers[i]=i; - numbers.sort(); -} - -testsort("5001") diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2027.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2027.js deleted file mode 100644 index 00ed03f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2027.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var d = new Date(2010, 1, 1); - -function Check(time) { - assertEquals(d.getTime(), time); -} - -Check(d.setMilliseconds(10)); -Check(d.setSeconds(10)); -Check(d.setMinutes(10)); -Check(d.setHours(10)); -Check(d.setDate(10)); -Check(d.setMonth(10)); -Check(d.setFullYear(2010)); -Check(d.setUTCMilliseconds(10)); -Check(d.setUTCSeconds(10)); -Check(d.setUTCMinutes(10)); -Check(d.setUTCHours(10)); -Check(d.setUTCDate(10)); -Check(d.setUTCMonth(10)); -Check(d.setUTCFullYear(2010)); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2030.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2030.js deleted file mode 100644 index fb5a3d0..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2030.js +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function a() { - this.x = 1; -} -var aa = new a(); -%DebugPrint(aa); - -function b() { - this.z = 23; - this.x = 2; -} -var bb = new b(); -%DebugPrint(bb); - -function f(o) { - return o.x; -} - -assertSame(1, f(aa)); -assertSame(1, f(aa)); -assertSame(2, f(bb)); -assertSame(2, f(bb)); -%OptimizeFunctionOnNextCall(f); -assertSame(1, f(aa)); -assertSame(2, f(bb)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2032.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2032.js deleted file mode 100644 index ad6408d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2032.js +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=2032 - -// Case independent regexp that ends on the first character in a block. -assertTrue(/[@-A]/i.test("a")); -assertTrue(/[@-A]/i.test("A")); -assertTrue(/[@-A]/i.test("@")); - -assertFalse(/[@-A]/.test("a")); -assertTrue(/[@-A]/.test("A")); -assertTrue(/[@-A]/.test("@")); - -assertFalse(/[¿-À]/i.test('¾')); -assertTrue(/[¿-À]/i.test('¿')); -assertTrue(/[¿-À]/i.test('À')); -assertTrue(/[¿-À]/i.test('à')); -assertFalse(/[¿-À]/i.test('á')); -assertFalse(/[¿-À]/i.test('Á')); - -assertFalse(/[¿-À]/.test('¾')); -assertTrue(/[¿-À]/.test('¿')); -assertTrue(/[¿-À]/.test('À')); -assertFalse(/[¿-À]/.test('à')); -assertFalse(/[¿-À]/.test('á')); -assertFalse(/[¿-À]/.test('á')); -assertFalse(/[¿-À]/i.test('Á')); - -assertFalse(/[Ö-×]/i.test('Õ')); -assertTrue(/[Ö-×]/i.test('Ö')); -assertTrue(/[Ö-×]/i.test('ö')); -assertTrue(/[Ö-×]/i.test('×')); -assertFalse(/[Ö-×]/i.test('Ø')); - -assertFalse(/[Ö-×]/.test('Õ')); -assertTrue(/[Ö-×]/.test('Ö')); -assertFalse(/[Ö-×]/.test('ö')); -assertTrue(/[Ö-×]/.test('×')); -assertFalse(/[Ö-×]/.test('Ø')); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2034.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2034.js deleted file mode 100644 index c510f97..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2034.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --harmony-collections - -var key = {}; -var map = new WeakMap; -Object.preventExtensions(key); - -// Try querying using frozen key. -assertFalse(map.has(key)); -assertSame(undefined, map.get(key)); - -// Try adding using frozen key. -map.set(key, 1); -assertTrue(map.has(key)); -assertSame(1, map.get(key)); - -// Try deleting using frozen key. -map.delete(key, 1); -assertFalse(map.has(key)); -assertSame(undefined, map.get(key)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2045.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2045.js deleted file mode 100644 index 822ee1f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2045.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function foo() { - assertEquals(2, arguments.length); -} - -function bar() { - G.x; - return foo.apply(this, arguments); -} - -function baz() { - return bar(1, 2); -} - -G = {x: 0}; -baz(); -baz(); -%OptimizeFunctionOnNextCall(baz); -baz(); -delete G.x; -baz(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2054.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2054.js deleted file mode 100644 index 97b989c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2054.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that we can correctly optimize top level code that contains a -// throw (or return) as it's last statement. - -var N = 1e5; // Number of iterations that trigger optimization. -for (var i = 0; i < N; i++) { - if (i > N) throw new Error; -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2055.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2055.js deleted file mode 100644 index 1eaf62c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2055.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that array literal boilerplate objects can be transitioned while -// existing un-transitioned clones are still being populated. - -function test1(depth) { - if (--depth < 0) { - return []; - } else { - return [ 0, test1(depth) ]; - } -} -assertEquals([0,[0,[]]], test1(2)); - -function test2(depth) { - if (--depth < 0) { - return []; - } else { - var o = [ 0, test2(depth) ]; - return (depth == 0) ? 0.5 : o; - } -} -assertEquals([0,0.5], test2(2)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2056.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2056.js deleted file mode 100644 index d34a750..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2056.js +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -var cases = [ - [0.0, 0.0, 0.0, 0,0], - [undefined, 0.0, NaN, NaN], - [0.0, undefined, NaN, NaN], - [NaN, 0.0, NaN, NaN], - [0.0, NaN, NaN, NaN], - [-NaN, 0.0, NaN, NaN], - [0.0, -NaN, NaN, NaN], - [Infinity, 0.0, Infinity, 0.0], - [0.0, Infinity, Infinity, 0.0], - [-Infinity, 0.0, 0.0, -Infinity], - [0.0, -Infinity, 0.0, -Infinity] -]; - -function do_min(a, b) { - return Math.min(a, b); -} - -function do_max(a, b) { - return Math.max(a, b); -} - -// Make sure that non-crankshaft results match expectations. -for (i = 0; i < cases.length; ++i) { - var c = cases[i]; - assertEquals(c[3], do_min(c[0], c[1])); - assertEquals(c[2], do_max(c[0], c[1])); -} - -// Make sure that crankshaft results match expectations. -for (i = 0; i < cases.length; ++i) { - var c = cases[i]; - %OptimizeFunctionOnNextCall(do_min); - %OptimizeFunctionOnNextCall(do_max); - assertEquals(c[3], do_min(c[0], c[1])); - assertEquals(c[2], do_max(c[0], c[1])); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2058.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2058.js deleted file mode 100644 index 9a69ea1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2058.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - -// See http://code.google.com/p/v8/issues/detail?id=2058 - -// A match after a replace with a function argument needs to reset -// the flag that determines whether we are using indices or substrings -// to indicate the last match. -"Now is the".replace(/Now (\w+) the/g, function() { - "foo bar".match(/( )/); - assertEquals(RegExp.$1, " "); -}) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2071.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2071.js deleted file mode 100644 index 91ae2a7..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2071.js +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -a = {}; - -a.b = 42; - -with(a) { - a.f = (function f1() { - function f2() { - return b; - }; - return f2; - })(); -} - -for(var i = 0; i < 10000; i++) { - assertEquals(42, a.f()); -} - -with(a) { - a.g = (function f1() { - function f2() { - function f3() { - return b; - } - return f3; - }; - return f2(); - })(); -} - -for(var i = 0; i < 10000; i++) { - assertEquals(42, a.g()); -} - -function outer() { - with(a) { - a.h = (function f1() { - function f2() { - function f3() { - return b; - } - return f3; - }; - return f2(); - })(); - } -}; - -outer(); - -for(var i = 0; i < 10000; i++) { - assertEquals(42, a.h()); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2073.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2073.js deleted file mode 100644 index 4e40b04..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2073.js +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Running this test with --trace_gc will show heap size growth due to -// leaking objects via embedded maps in optimized code. - -var counter = 0; - -function nextid() { - counter += 1; - return counter; -} - -function Scope() { - this.id = nextid(); - this.parent = null; - this.left = null; - this.right = null; - this.head = null; - this.tail = null; - this.counter = 0; -} - -Scope.prototype = { - new: function() { - var Child, - child; - Child = function() {}; - Child.prototype = this; - child = new Child(); - child.id = nextid(); - child.parent = this; - child.left = this.last; - child.right = null; - child.head = null; - child.tail = null; - child.counter = 0; - if (this.head) { - this.tail.right = child; - this.tail = child; - } else { - this.head = this.tail = child; - } - return child; - }, - - destroy: function() { - if ($root == this) return; - var parent = this.parent; - if (parent.head == this) parent.head = this.right; - if (parent.tail == this) parent.tail = this.left; - if (this.left) this.left.right = this.right; - if (this.right) this.right.left = this.left; - } -}; - -function inc(scope) { - scope.counter = scope.counter + 1; -} - -var $root = new Scope(); - -n = 100000; -m = 10; - -function doit() { - var a = $root.new(); - var b = a.new(); - inc(b); - if (i > m) $root.head.destroy(); -} - -for (var i = 0; i < n; i++) { - doit(); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2110.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2110.js deleted file mode 100644 index d7f78d2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2110.js +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -var uint8 = new Uint8Array(1); - -function test() { - uint8[0] = 0x800000aa; - assertEquals(0xaa, uint8[0]); -} - -test(); -test(); -test(); -%OptimizeFunctionOnNextCall(test); -test(); - -var uint32 = new Uint32Array(1); - -function test2() { - uint32[0] = 0x80123456789abcde; - assertEquals(0x789ac000, uint32[0]); -} - -test2(); -test2(); -%OptimizeFunctionOnNextCall(test2); -test2(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2119.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2119.js deleted file mode 100644 index 54840c2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2119.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --nouse-ic - -function strict_function() { - "use strict" - undeclared = 1; -} - -assertThrows(strict_function); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2153.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2153.js deleted file mode 100644 index 3170042..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2153.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var o = {}; -o.__defineGetter__('foo', function () { return null; }); -var o = {}; -o.foo = 42; -assertEquals(42, o.foo); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2156.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2156.js deleted file mode 100644 index 3482571..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2156.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --harmony-collections - -var key1 = {}; -var key2 = {}; -var map = new WeakMap; - -// Adding hidden properties preserves map sharing. Putting the key into -// a WeakMap will cause the first hidden property to be added. -assertTrue(%HaveSameMap(key1, key2)); -map.set(key1, 1); -map.set(key2, 2); -assertTrue(%HaveSameMap(key1, key2)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2163.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2163.js deleted file mode 100644 index bfce9ff..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2163.js +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -// Handy abbreviation. -var dp = Object.defineProperty; - -function getter() { return 111; } -function setter(x) { print(222); } -function anotherGetter() { return 333; } -function anotherSetter(x) { print(444); } -var obj1, obj2; - -// obj1 and obj2 share the getter accessor. -obj1 = {}; -dp(obj1, "alpha", { get: getter, set: setter }); -obj2 = {} -dp(obj2, "alpha", { get: getter }); -obj1 = {}; -assertEquals(111, obj2.alpha); -gc(); -assertEquals(111, obj2.alpha); - -// obj1, obj2, and obj3 share the getter accessor. -obj1 = {}; -dp(obj1, "alpha", { get: getter, set: setter }); -obj2 = {} -dp(obj2, "alpha", { get: getter }); -obj1 = {}; -gc(); -obj3 = {} -dp(obj3, "alpha", { get: getter }); - - -// obj1 and obj2 share the getter and setter accessor. -obj1 = {}; -dp(obj1, "alpha", { get: getter, set: setter }); -obj1.beta = 10; -obj2 = {} -dp(obj2, "alpha", { get: getter, set: setter }); -obj1 = {}; -assertEquals(111, obj2.alpha); -gc(); -obj2.alpha = 100 -assertEquals(111, obj2.alpha); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2170.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2170.js deleted file mode 100644 index 01cb1ea..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2170.js +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function array_fun() { - for (var i = 0; i < 2; i++) { - var a = [1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8]; - var x = new Array(); - x.fixed$length = true; - for (var j = 0; j < a.length; j++) { - x.push(a[j]); - } - for(var j = 0; j < x.length; j++) { - if (typeof x[j] != 'number') { - throw "foo"; - } - x[j] = x[j]; - } - } -} - -try { - for (var i = 0; i < 10; ++i) { - array_fun(); - } - %OptimizeFunctionOnNextCall(array_fun); - for (var i = 0; i < 10; ++i) { - array_fun(); - } -} catch (e) { - assertUnreachable(); -} - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2172.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2172.js deleted file mode 100644 index 5d06f4e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2172.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -for (var i = 0; i < 10000; i++){ - (i + "\0").split(/(.)\1/i); -} - -for (var i = 0; i < 10000; i++){ - (i + "\u1234\0").split(/(.)\1/i); -} - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2185-2.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2185-2.js deleted file mode 100644 index b1eedb9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2185-2.js +++ /dev/null @@ -1,145 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// These tests used to time out before this was fixed. - -var LEN = 2e4; - -function short() { - var sum = 0; - for (var i = 0; i < 1000; i++) { - var a = [1, 4, 34, 23, 6, 123, 3, 2, 11, 515, 4, 33, 22, 2, 2, 1, 0, 123, - 23, 42, 43, 1002, 44, 43, 101, 23, 55, 11, 101, 102, 45, 11, 404, - 31415, 34, 53, 453, 45, 34, 5, 2, 35, 5, 345, 36, 45, 345, 3, 45, - 3, 5, 5, 2, 2342344, 2234, 23, 2718, 1500, 2, 19, 22, 43, 41, 0, - -1, 33, 45, 78]; - a.sort(function(a, b) { return a - b; }); - sum += a[0]; - } - return sum; -} - -function short_bench(name, array) { - var start = new Date(); - short(); - var end = new Date(); - var ms = end - start; - print("Short " + Math.floor(ms) + "ms"); -} - -function sawseq(a, tooth) { - var count = 0; - while (true) { - for (var i = 0; i < tooth; i++) { - a.push(i); - if (++count >= LEN) return a; - } - } -} - -function sawseq2(a, tooth) { - var count = 0; - while (true) { - for (var i = 0; i < tooth; i++) { - a.push(i); - if (++count >= LEN) return a; - } - for (var i = 0; i < tooth; i++) { - a.push(tooth - i); - if (++count >= LEN) return a; - } - } -} - -function sawseq3(a, tooth) { - var count = 0; - while (true) { - for (var i = 0; i < tooth; i++) { - a.push(tooth - i); - if (++count >= LEN) return a; - } - } -} - -function up(a) { - for (var i = 0; i < LEN; i++) { - a.push(i); - } - return a; -} - -function down(a) { - for (var i = 0; i < LEN; i++) { - a.push(LEN - i); - } - return a; -} - -function ran(a) { - for (var i = 0; i < LEN; i++) { - a.push(Math.floor(Math.random() * LEN)); - } - return a; -} - -var random = ran([]); -var asc = up([]); -var desc = down([]); -var asc_desc = down(up([])); -var desc_asc = up(down([])); -var asc_asc = up(up([])); -var desc_desc = down(down([])); -var saw1 = sawseq([], 1000); -var saw2 = sawseq([], 500); -var saw3 = sawseq([], 200); -var saw4 = sawseq2([], 200); -var saw5 = sawseq3([], 200); - -function bench(name, array) { - var start = new Date(); - array.sort(function(a, b) { return a - b; }); - var end = new Date(); - for (var i = 0; i < array.length - 1; i++) { - if (array[i] > array[i + 1]) throw name + " " + i; - } - var ms = end - start; - print(name + " " + Math.floor(ms) + "ms"); -} - -short_bench(); -bench("random", random); -bench("up", asc); -bench("down", desc); -bench("saw 1000", saw1); -bench("saw 500", saw2); -bench("saw 200", saw3); -bench("saw 200 symmetric", saw4); -bench("saw 200 down", saw4); -bench("up, down", asc_desc); -bench("up, up", asc_asc); -bench("down, down", desc_desc); -bench("down, up", desc_asc); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2185.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2185.js deleted file mode 100644 index 9b91066..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2185.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --noenable-slow-asserts - -var a = []; - -for (var i = 0; i < 2; i++) { - for (var j = 0; j < 30000; j++) { - a.push(j); - } -} - -a.sort(function(a, b) { return a - b; } ); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2186.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2186.js deleted file mode 100644 index 0921dce..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2186.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --harmony-collections - -function heapify(i) { - return 2.0 * (i / 2); -} -heapify(1); - -var ONE = 1; -var ANOTHER_ONE = heapify(ONE); -assertSame(ONE, ANOTHER_ONE); -assertEquals("number", typeof ONE); -assertEquals("number", typeof ANOTHER_ONE); - -var set = new Set; -set.add(ONE); -assertTrue(set.has(ONE)); -assertTrue(set.has(ANOTHER_ONE)); - -var map = new Map; -map.set(ONE, 23); -assertSame(23, map.get(ONE)); -assertSame(23, map.get(ANOTHER_ONE)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-219.js b/src/3rdparty/v8/test/mjsunit/regress/regress-219.js deleted file mode 100644 index b751f0f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-219.js +++ /dev/null @@ -1,148 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Tests handling of flags for regexps. - -// We should now allow duplicates of flags. -// (See http://code.google.com/p/v8/issues/detail?id=219) - -// This has been reversed by issue 1628, since other browsers have also -// tightened their syntax. -// (See http://code.google.com/p/v8/issues/detail?id=1628) - -// Base tests: we recognize the basic flags - -function assertFlags(re, global, multiline, ignoreCase) { - var name = re + " flag: "; - (global ? assertTrue : assertFalse)(re.global, name + "g"); - (multiline ? assertTrue : assertFalse)(re.multiline, name + "m"); - (ignoreCase ? assertTrue : assertFalse)(re.ignoreCase, name + "i"); -} - -var re = /a/; -assertFlags(re, false, false, false) - -re = /a/gim; -assertFlags(re, true, true, true) - -re = RegExp("a",""); -assertFlags(re, false, false, false) - -re = RegExp("a", "gim"); -assertFlags(re, true, true, true) - -// Double i's - -assertThrows("/a/ii"); - -assertThrows("/a/gii"); - -assertThrows("/a/igi"); - -assertThrows("/a/iig"); - -assertThrows("/a/gimi"); - -assertThrows("/a/giim"); - -assertThrows("/a/igim"); - -assertThrows(function(){ return RegExp("a", "ii"); }) - -assertThrows(function(){ return RegExp("a", "gii"); }) - -assertThrows(function(){ return RegExp("a", "igi"); }) - -assertThrows(function(){ return RegExp("a", "iig"); }) - -assertThrows(function(){ return RegExp("a", "gimi"); }) - -assertThrows(function(){ return RegExp("a", "giim"); }) - -assertThrows(function(){ return RegExp("a", "igim"); }) - -// Tripple i's - -assertThrows("/a/iii"); - -assertThrows("/a/giii"); - -assertThrows("/a/igii"); - -assertThrows("/a/iigi"); - -assertThrows("/a/iiig"); - -assertThrows("/a/miiig"); - -assertThrows(function(){ return RegExp("a", "iii"); }) - -assertThrows(function(){ return RegExp("a", "giii"); }) - -assertThrows(function(){ return RegExp("a", "igii"); }) - -assertThrows(function(){ return RegExp("a", "iigi"); }) - -assertThrows(function(){ return RegExp("a", "iiig"); }) - -assertThrows(function(){ return RegExp("a", "miiig"); }) - -// Illegal flags - valid flags late in string. - -assertThrows("/a/arglebargleglopglyf"); - -assertThrows("/a/arglebargleglopglif"); - -assertThrows("/a/arglebargleglopglym"); - -assertThrows("/a/arglebargleglopglim"); - -// Case of flags still matters. - -var re = /a/gmi; -assertFlags(re, true, true, true) - -assertThrows("/a/Gmi"); - -assertThrows("/a/gMi"); - -assertThrows("/a/gmI"); - -assertThrows("/a/GMi"); - -assertThrows("/a/GmI"); - -assertThrows("/a/gMI"); - -assertThrows("/a/GMI"); - -// Unicode escape sequences are not interpreted. - -assertThrows("/a/\\u0067"); -assertThrows("/a/\\u0069"); -assertThrows("/a/\\u006d"); -assertThrows("/a/\\u006D"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2193.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2193.js deleted file mode 100644 index 50509bf..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2193.js +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --cache-optimized-code - -function bozo() {}; -function MakeClosure() { - return function f(use_literals) { - if (use_literals) { - return [1,2,3,3,4,5,6,7,8,9,bozo]; - } else { - return 0; - } - } -} - -// Create two closures that share the same literal boilerplates. -var closure1 = MakeClosure(); -var closure2 = MakeClosure(); -var expected = [1,2,3,3,4,5,6,7,8,9,bozo]; - -// Make sure we generate optimized code for the first closure after -// warming it up properly so that the literals boilerplate is generated -// and the optimized code uses CreateArrayLiteralShallow runtime call. -assertEquals(0, closure1(false)); -assertEquals(expected, closure1(true)); -%OptimizeFunctionOnNextCall(closure1); -assertEquals(expected, closure1(true)); - -// Optimize the second closure, which should reuse the optimized code -// from the first closure with the same literal boilerplates. -assertEquals(0, closure2(false)); -%OptimizeFunctionOnNextCall(closure2); -assertEquals(expected, closure2(true)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-220.js b/src/3rdparty/v8/test/mjsunit/regress/regress-220.js deleted file mode 100644 index 32c6471..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-220.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function foo(f) { eval(f); } - -// Ensure that compiling a declaration of a function does not crash. -foo("(function (x) { with ({x: []}) function x(){} })"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2219.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2219.js deleted file mode 100644 index 946c75b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2219.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --harmony-proxies --expose-gc - -var p = Proxy.create({getPropertyDescriptor: function() { gc() }}); -var o = Object.create(p); -assertSame(23, o.x = 23); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2225.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2225.js deleted file mode 100644 index 9957d8d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2225.js +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --harmony-proxies - -var proxy_has_x = false; -var proxy = Proxy.create({ getPropertyDescriptor:function(key) { - assertSame('x', key); - if (proxy_has_x) { - return { configurable:true, writable:false, value:19 }; - } -}}); - -// Test __lookupGetter__/__lookupSetter__ with proxy. -assertSame(undefined, Object.prototype.__lookupGetter__.call(proxy, 'foo')); -assertSame(undefined, Object.prototype.__lookupSetter__.call(proxy, 'bar')); -assertSame(undefined, Object.prototype.__lookupGetter__.call(proxy, '123')); -assertSame(undefined, Object.prototype.__lookupSetter__.call(proxy, '456')); - -// Test __lookupGetter__/__lookupSetter__ with proxy in prototype chain. -var object = Object.create(proxy); -assertSame(undefined, Object.prototype.__lookupGetter__.call(object, 'foo')); -assertSame(undefined, Object.prototype.__lookupSetter__.call(object, 'bar')); -assertSame(undefined, Object.prototype.__lookupGetter__.call(object, '123')); -assertSame(undefined, Object.prototype.__lookupSetter__.call(object, '456')); - -// Test inline constructors with proxy as prototype. -function f() { this.x = 23; } -f.prototype = proxy; -proxy_has_x = false; -assertSame(23, new f().x); -proxy_has_x = true; -assertSame(19, new f().x); - -// Test inline constructors with proxy in prototype chain. -function g() { this.x = 42; } -g.prototype.__proto__ = proxy; -proxy_has_x = false; -assertSame(42, new g().x); -proxy_has_x = true; -assertSame(19, new g().x); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2226.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2226.js deleted file mode 100644 index 1ac3d30..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2226.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var foo = function() { 0; /* foo function */ }; -var bar = function() { 1; /* bar function */ }; -var baz = function() { 2; /* baz function */ }; - -var test = foo.test = bar.test = baz; - -assertEquals(baz, test); -assertEquals(baz, foo.test); -assertEquals(baz, bar.test); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2234.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2234.js deleted file mode 100644 index 8da513e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2234.js +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function test(i) { - // Overwrite random parts of the transcendental cache. - Math.sin(i / 1779 * Math.PI); - // Check whether the first cache line has been accidentally overwritten - // with incorrect key. - assertEquals(0, Math.sin(0)); -} - -for (i = 0; i < 10000; ++i) { - test(i); - if (i == 0) %OptimizeFunctionOnNextCall(test); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2243.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2243.js deleted file mode 100644 index 31c2e55..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2243.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --harmony-scoping - -assertThrows("'use strict'; (function f() { f = 123; })", SyntaxError); -assertThrows("(function f() { 'use strict'; f = 123; })", SyntaxError); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2249.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2249.js deleted file mode 100644 index 07d687d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2249.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --gc-interval=10 --stress-compaction - -var o = {}; -o[Math.pow(2,30)-1] = 0; -o[Math.pow(2,31)-1] = 0; -o[1] = 0; diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2249423.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2249423.js deleted file mode 100644 index a590f33..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2249423.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://code.google.com/p/chromium/issues/detail?id=27227 -// Regression test for stack corruption issue. - -function top() { - function g(a, b) {} - function t() { - for (var i=0; i<1; ++i) { - g(32768, g()); - } - } - t(); -} -top(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-225.js b/src/3rdparty/v8/test/mjsunit/regress/regress-225.js deleted file mode 100644 index e101ca0..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-225.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://code.google.com/p/v8/issues/detail?id=225 - -assertEquals("foo", "foo".replace(/(?:)/g, function() { return ""; })); - -assertEquals("foo", "foo".replace(/(?:)/g, "")); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2250.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2250.js deleted file mode 100644 index b3b0db3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2250.js +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// The original problem from the bug: In the example below SMI check for b -// generated for inlining of equals invocation (marked with (*)) will be hoisted -// out of the loop across the typeof b === "object" condition and cause an -// immediate deopt. Another problem here is that no matter how many time we -// deopt and reopt we will continue to produce the wrong code. -// -// The fix is to notice when a deopt and subsequent reopt doesn't find -// additional type information, indicating that optimistic LICM should be -// disabled during compilation. - -function eq(a, b) { - if (typeof b === "object") { - return b.equals(a); // (*) - } - return a === b; -} - -Object.prototype.equals = function (other) { - return (this === other); -}; - -function test() { - for (var i = 0; !eq(i, 10); i++) - ; -} - -eq({}, {}); -eq({}, {}); -eq(1, 1); -eq(1, 1); -test(); -%OptimizeFunctionOnNextCall(test); -test(); -%OptimizeFunctionOnNextCall(test); -// Second compilation should have noticed that LICM wasn't a good idea, and now -// function should no longer deopt when called. -test(); -assertTrue(2 != %GetOptimizationStatus(test)); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2261.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2261.js deleted file mode 100644 index 000e07d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2261.js +++ /dev/null @@ -1,113 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test materialization of the arguments object when deoptimizing a -// strict mode closure after modifying an argument. - -(function () { - var forceDeopt = 0; - function inner(x) { - "use strict"; - x = 2; - // Do not remove this %DebugPrint as it makes sure the deopt happens - // after the assignment and is not hoisted above the assignment. - %DebugPrint(arguments[0]); - forceDeopt + 1; - return arguments[0]; - } - - assertEquals(1, inner(1)); - assertEquals(1, inner(1)); - %OptimizeFunctionOnNextCall(inner); - assertEquals(1, inner(1)); - forceDeopt = "not a number"; - assertEquals(1, inner(1)); -})(); - - -// Test materialization of the arguments object when deoptimizing an -// inlined strict mode closure after modifying an argument. - -(function () { - var forceDeopt = 0; - function inner(x) { - "use strict"; - x = 2; - // Do not remove this %DebugPrint as it makes sure the deopt happens - // after the assignment and is not hoisted above the assignment. - %DebugPrint(arguments[0]); - forceDeopt + 1; - return arguments[0]; - } - - function outer(x) { - return inner(x); - } - - assertEquals(1, outer(1)); - assertEquals(1, outer(1)); - %OptimizeFunctionOnNextCall(outer); - assertEquals(1, outer(1)); - forceDeopt = "not a number"; - assertEquals(1, outer(1)); -})(); - - -// Test materialization of the multiple arguments objects when -// deoptimizing several inlined closure after modifying an argument. - -(function () { - var forceDeopt = 0; - function inner(x,y,z) { - "use strict"; - x = 3; - // Do not remove this %DebugPrint as it makes sure the deopt happens - // after the assignment and is not hoisted above the assignment. - %DebugPrint(arguments[0]); - forceDeopt + 1; - return arguments[0]; - } - - function middle(x) { - "use strict"; - x = 2; - return inner(10*x, 20*x, 30*x) + arguments[0]; - } - - function outer(x) { - return middle(x); - } - - assertEquals(21, outer(1)); - assertEquals(21, outer(1)); - %OptimizeFunctionOnNextCall(outer); - assertEquals(21, outer(1)); - forceDeopt = "not a number"; - assertEquals(21, outer(1)); -})(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2263.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2263.js deleted file mode 100644 index 9a9db58..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2263.js +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var obj = { length: { valueOf: function(){ throw { type: "length" }}}}; -var sep = { toString: function(){ throw { type: "toString" }}}; -assertThrows("Array.prototype.join.call(obj, sep)", undefined, "length"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-227.js b/src/3rdparty/v8/test/mjsunit/regress/regress-227.js deleted file mode 100644 index ebb4627..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-227.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var re = /\u23a1|x/; -var res = re.exec("!"); -assertEquals(null, res, "Throwing away high bits on ASCII string"); - -res = re.exec("!x"); -assertEquals(["x"], res, "Throwing away high bits on ASCII string"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2284.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2284.js deleted file mode 100644 index 5614019..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2284.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -assertThrows("%foobar();", TypeError); -assertThrows("%constructor();", TypeError); -assertThrows("%constructor(23);", TypeError); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2285.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2285.js deleted file mode 100644 index efda4cd..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2285.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -assertThrows(function() { %_CallFunction(null, 0, ""); }); -assertThrows(function() { %_CallFunction(null, 0, 1); }); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2286.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2286.js deleted file mode 100644 index 372451e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2286.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -assertThrows("f()", ReferenceError); -assertThrows("%f()", TypeError); -assertThrows("%_f()", SyntaxError); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2289.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2289.js deleted file mode 100644 index e89ec6e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2289.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var foo = "a"; -for (var i = 0; i < 12; i++) foo += foo; -foo = foo + 'b' + foo; - -foo.replace(/b/, "a"); - - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2291.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2291.js deleted file mode 100644 index 96627fc..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2291.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function StrictCompare(x) { return x === Object(x); } - -var obj = new Object(); -var obj2 = new Object(); -obj == obj; // Populate IC cache with non-strict comparison. - -StrictCompare(obj); // Set IC in StrictCompare from IC cache. - -assertFalse(StrictCompare('foo')); // Use == stub for === operation. diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2294.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2294.js deleted file mode 100644 index 43ba10d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2294.js +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -var clampedArray = new Uint8ClampedArray(10); - -function test() { - clampedArray[0] = 0.499; - assertEquals(0, clampedArray[0]); - clampedArray[0] = 0.5; - assertEquals(0, clampedArray[0]); - clampedArray[0] = 0.501; - assertEquals(1, clampedArray[0]); - clampedArray[0] = 1.499; - assertEquals(1, clampedArray[0]); - clampedArray[0] = 1.5; - assertEquals(2, clampedArray[0]); - clampedArray[0] = 1.501; - assertEquals(2, clampedArray[0]); - clampedArray[0] = 2.5; - assertEquals(2, clampedArray[0]); - clampedArray[0] = 3.5; - assertEquals(4, clampedArray[0]); - clampedArray[0] = 252.5; - assertEquals(252, clampedArray[0]); - clampedArray[0] = 253.5; - assertEquals(254, clampedArray[0]); - clampedArray[0] = 254.5; - assertEquals(254, clampedArray[0]); - clampedArray[0] = 256.5; - assertEquals(255, clampedArray[0]); - clampedArray[0] = -0.5; - assertEquals(0, clampedArray[0]); - clampedArray[0] = -1.5; - assertEquals(0, clampedArray[0]); - clampedArray[0] = 1000000000000; - assertEquals(255, clampedArray[0]); - clampedArray[0] = -1000000000000; - assertEquals(0, clampedArray[0]); -} - -test(); -test(); -%OptimizeFunctionOnNextCall(test); -test(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2296.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2296.js deleted file mode 100644 index c00f14f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2296.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug - -Debug = debug.Debug - -function listener(event, exec_state, event_data, data) { - event_data.script().setSource(1); -}; - -Debug.setListener(listener); - -eval('0'); - -Debug.setListener(null); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-231.js b/src/3rdparty/v8/test/mjsunit/regress/regress-231.js deleted file mode 100644 index 0c6e5b3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-231.js +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See issue 231 <URL: http://code.google.com/p/v8/issues/detail?id=231 > -// A stack growth during a look-ahead could restore a pointer to the old stack. -// (Test derived from crash at ibs.blumex.com). - -var re = /Ggcy\b[^D]*D((?:(?=([^G]+))\2|G(?!gcy\b[^D]*D))*?)GIgcyD/; - -var str = 'GgcyDGgcy.saaaa.aDGaaa.aynaaaaaaaaacaaaaagcaaaaaaaancaDGgnayr' + - '.aryycnaaaataaaa.aryyacnaaataaaa.aaaaraaaaa.aaagaaaaaaaaDGgaaaaDGga' + - '.aaagaaaaaaaaDGga.nyataaaaragraa.anyataaagaca.agayraaarataga.aaacaa' + - '.aaagaa.aaacaaaDGaaa.aynaaaaaaaaacaaaaagcaaaaaacaagaa.agayraaaGgaaa' + - '.trgaaaaaagaatGanyara.caagaaGaD.araaaa_aat_aayDDaaDGaaa.aynaaaaaaaa' + - 'acaaaaagcaaaaaacaaaaa.agayraaaGgaaa.trgaaaaaaatGanyaraDDaaDGacna.ay' + - 'naaaaaaaaacaaaaagcaaaaaacaaaraGgaaa.naaaaagaaaaaaraynaaGanyaraDDaaD' + - 'aGgaaa.saaangaaaaraaaGgaaa.trgaaaragaaaarGanyaraDDDaGIacnaDGIaaaDGI' + - 'aaaDGIgaDGga.anyataaagaca.agayraaaaagaa.aaaaa.cnaaaata.aca.aca.aca.' + - 'acaaaDGgnayr.aaaaraaaaa.aaagaaaaaaaaDGgaaaaDGgaDGga.aayacnaaaaa.ayn' + - 'aaaaaaaaacaaaaagcaaaaaanaraDGaDacaaaaag_anaraGIaDGIgaDGIgaDGgaDGga.' + - 'aayacnaaaaa.aaagaaaaaaaaDGaa.aaagaaaaaaaa.aaaraaaa.aaaanaraaaa.IDGI' + - 'gaDGIgaDGgaDGga.aynaaaaaaaaacaaaaagcaaaaaaaraaaa.anyataaagacaDaGgaa' + - 'a.trgGragaaaacgGaaaaaaaG_aaaaa_Gaaaaaaaaa,.aGanar.anaraDDaaGIgaDGga' + - '.aynaaaaaaaaacaaaaagcaaaaaaanyara.anyataaagacaDGaDaaaaag_caaaaag_an' + - 'araGIaDGIgaDGIgaDGgaDGga.aynaaaaaaaaacaaaaagcaaaaaaaraaaa.anyataaag' + - 'acaDaGgaaa.trgGragaaaacgGaaaaaaaG_aaaaa_aaaaaa,.aaaaacaDDaaGIgaDGga' + - '.aynaaaaaaaaacaaaaagcaaaaaaanyara.anyataaagacaDGaDataaac_araaaaGIaD' + - 'GIgaDGIgaDaagcyaaGgaDGga.aayacnaaaaa.aaagaaaaaaaaDGaa.aaagaaaaaaaa.' + - 'aaaraaaa.aaaanaraaaa.IDGIgaDGIgaDGgcy.asaadanyaga.aa.aaaDGgaDGga.ay' + - 'naaaaaaaaacaaaaagcaaaaaaaraaaa.anyataaagacaDaGgaaa.trgGragaaaacgGaa' + - 'aaaaaG_aaaaa_DaaaaGaa,.aDanyagaaDDaaGIgaDGga.aynaaaaaaaaacaaaaagcaa' + - 'aaaaanyara.anyataaagacaDGaDadanyagaaGIaDGIgaDGIgaDGIgcyDGgcy.asaaga' + - 'cras.agra_yratga.aa.aaaarsaaraa.aa.agra_yratga.aa.aaaDGgaDGga.aynaa' + - 'aaaaaaacaaaaagcaaaaaaaraaaa.anyataaagacaDaGgaaa.trgGragaaaacgGaaaaa' + - 'aaG_aaaaa_aGaaaaaaGaa,.aaratgaaDDaaGIgaDGga.aynaaaaaaaaacaaaaagcaaa' + - 'aaaanyara.anyataaagacaDGaDaagra_yratgaaGIaDGIgaDGIgaDGIgcyDGgcy.asa' + - 'agacras.aratag.aa.aaaarsaaraa.aa.aratag.aa.aaaDGgaDGga.aynaaaaaaaaa' + - 'caaaaagcaaaaaaaraaaa.anyataaagacaDaGgaaa.trgGragaaaacgGaaaaaaaG_aaa' + - 'aa_aaaaaGa,.aaratagaDDaaGIgaDGga.aynaaaaaaaaacaaaaagcaaaaaaanyara.a' + - 'nyataaagacaDGaDaaratagaGIaDGIgaDGIgaDGIgcyDGgcy.asaagacras.gaaax_ar' + - 'atag.aa.aaaarsaaraa.aa.gaaax_aratag.aa.aaaDGgaDGga.aynaaaaaaaaacaaa' + - 'aagcaaaaaaaraaaa.anyataaagacaDaGgaaa.trgGragaaaacgGaaaaaaaG_aaaaa_G' + - 'aaaaaaaaaGa,.aaratagaDDaaGIgaDGga.aynaaaaaaaaacaaaaagcaaaaaaanyara.' + - 'anyataaagacaDGaDagaaax_aratagaGIaDGIgaDGIgaDGIgcyDGgcy.asaagacras.c' + - 'ag_aaar.aa.aaaarsaaraa.aa.cag_aaar.aa.aaaDGgaDGga.aynaaaaaaaaacaaaa' + - 'agcaaaaaaaraaaa.anyataaagacaDaGgaaa.trgGragaaaacgGaaaaaaaG_aaaaa_aa' + - 'Gaaaaa,.aaagaaaraDDaaGIgaDGga.aynaaaaaaaaacaaaaagcaaaaaaanyara.anya' + - 'taaagacaDGaDacag_aaaraGIaDGIgaDGIgaDGIgcyDGgcy.asaagacras.aaggaata_' + - 'aa_cynaga_cc.aa.aaaarsaaraa.aa.aaggaata_aa_cynaga_cc.aa.aaaDGgaDGga' + - '.aynaaaaaaaaacaaaaagcaaaaaaaraaaa.anyataaagacaDaGgaaa.trgGragaaaacg' + - 'GaaaaaaaG_aaaaa_aaGGaaaa_aa_aaaaGa_aaa,.aaynagaIcagaDDaaGIgaDGga.ay' + - 'naaaaaaaaacaaaaagcaaaaaaanyara.anyataaagacaDGaDaaaggaata_aa_cynaga_' + - 'ccaGIaDGIgaDGIgaDGIgcyDGgcy.asaagacras.syaara_aanargra.aa.aaaarsaar' + - 'aa.aa.syaara_aanargra.aa.aaaDGgaDGga.aynaaaaaaaaacaaaaagcaaaaaaaraa' + - 'aa.anyataaagacaDaGgaaa.trgGragaaaacgGaaaaaaaG_aaaaa_aaaaaaaaaaaGaaa' + - ',.aaanargraaDDaaGIgaDGga.aynaaaaaaaaacaaaaagcaaaaaaanyara.anyataaag' + - 'acaDGaDasyaara_aanargraaGIaDGIgaDGIgaDGIgcyDGgcy.asaagacras.cynag_a' + - 'anargra.aa.aaaarsaaraa.aa.cynag_aanargra.aa.aaaDGgaDGga.aynaaaaaaaa' + - 'acaaaaagcaaaaaaaraaaa.anyataaagacaDaGgaaa.trgGragaaaacgGaaaaaaaG_aa' + - 'aaa_aaaaGaaaaaGaaa,.aaanargraaDDaaGIgaDGga.aynaaaaaaaaacaaaaagcaaaa' + - 'aaanyara.anyataaagacaDGaDacynag_aanargraaGIaDGIgaDGIgaDGIgcyDGgaDGg' + - 'a.aynaaaaaaaaacaaaaagcaaaaaaaraaaa.anyataaagacaDaGgaaa.trgGragaaaac' + - 'gGaaaaaaaG'; - -//Shouldn't crash. - -var res = re.test(str); -assertTrue(res);
\ No newline at end of file diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2315.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2315.js deleted file mode 100644 index a3f9182..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2315.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -var foo = (function() { - return eval("(function bar() { return 1; })"); -})(); - -foo(); -foo(); -%OptimizeFunctionOnNextCall(foo); -foo(); - -// Function should be optimized now. -assertTrue(%GetOptimizationStatus(foo) != 2); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2318.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2318.js deleted file mode 100644 index ca67ab2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2318.js +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug --nostack-trace-on-abort - -function f() { - var i = 0; - - // Stack-allocate to reach the end of stack quickly. - var _A0 = 00; var _A1 = 01; var _A2 = 02; var _A3 = 03; var _A4 = 04; - var _B0 = 05; var _B1 = 06; var _B2 = 07; var _B3 = 08; var _B4 = 09; - var _C0 = 10; var _C1 = 11; var _C2 = 12; var _C3 = 13; var _C4 = 14; - var _D0 = 15; var _D1 = 16; var _D2 = 17; var _D3 = 18; var _D4 = 19; - var _E0 = 20; var _E1 = 21; var _E2 = 22; var _E3 = 23; var _E4 = 24; - var _F0 = 25; var _F1 = 26; var _F2 = 27; var _F3 = 28; var _F4 = 29; - var _G0 = 30; var _G1 = 31; var _G2 = 32; var _G3 = 33; var _G4 = 34; - var _H0 = 35; var _H1 = 36; var _H2 = 37; var _H3 = 38; var _H4 = 39; - var _I0 = 40; var _I1 = 41; var _I2 = 42; var _I3 = 43; var _I4 = 44; - var _J0 = 45; var _J1 = 46; var _J2 = 47; var _J3 = 48; var _J4 = 49; - var _K0 = 50; var _K1 = 51; var _K2 = 52; var _K3 = 53; var _K4 = 54; - var _L0 = 55; var _L1 = 56; var _L2 = 57; var _L3 = 58; var _L4 = 59; - var _M0 = 60; var _M1 = 61; var _M2 = 62; var _M3 = 63; var _M4 = 64; - var _N0 = 65; var _N1 = 66; var _N2 = 67; var _N3 = 68; var _N4 = 69; - var _O0 = 70; var _O1 = 71; var _O2 = 72; var _O3 = 73; var _O4 = 74; - var _P0 = 75; var _P1 = 76; var _P2 = 77; var _P3 = 78; var _P4 = 79; - var _Q0 = 80; var _Q1 = 81; var _Q2 = 82; var _Q3 = 83; var _Q4 = 84; - var _R0 = 85; var _R1 = 86; var _R2 = 87; var _R3 = 88; var _R4 = 89; - var _S0 = 90; var _S1 = 91; var _S2 = 92; var _S3 = 93; var _S4 = 94; - var _T0 = 95; var _T1 = 96; var _T2 = 97; var _T3 = 98; var _T4 = 99; - - f(); -}; - -Debug = debug.Debug; -var bp = Debug.setBreakPoint(f, 0); - -function listener(event, exec_state, event_data, data) { - result = exec_state.frame().evaluate("i").value(); -}; - -Debug.setListener(listener); -assertThrows(function() { f(); }, RangeError); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2322.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2322.js deleted file mode 100644 index 1195bab..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2322.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --harmony-scoping - -"use strict"; - -assertThrows("'use strict'; for (let x in x);", ReferenceError); - -let s; -for (let pppp in {}) {}; -assertThrows(function() { pppp = true }, ReferenceError); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2326.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2326.js deleted file mode 100644 index d2edf2b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2326.js +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This tests that we do not share optimized code across closures that -// were optimized using OSR (for a particular OSR entry AST id) even if -// caching of optimized code kicks in. - -function makeClosure() { - function f(mode, iterations) { - var accumulator = 0; - if (mode == 1) { - while (--iterations > 0) accumulator = Math.ceil(accumulator); - return 1; - } else { - while (--iterations > 0) accumulator = Math.floor(accumulator); - return 2; - } - } - return f; -} - -// Generate two closures sharing the same underlying function literal. -var f1 = makeClosure(); -var f2 = makeClosure(); - -// This function should be optimized via OSR in the first tight loop. -assertSame(1, f1(1, 100000)); - -// This function should be optimized via OSR in the second tight loop. -assertSame(2, f2(2, 100000)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-233.js b/src/3rdparty/v8/test/mjsunit/regress/regress-233.js deleted file mode 100644 index 8723679..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-233.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See issue 233 <URL: http://code.google.com/p/v8/issues/detail?id=233 > -// A stack overflow detected by a global regexp match wasn't handled correctly. - -// This code shouldn't segmentation fault. -function loop(s) { - loop(s.replace(/\s/g, "")); -} -try { - loop("No"); -} catch(e) { - // Stack overflow caught. -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2336.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2336.js deleted file mode 100644 index edfff60..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2336.js +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug --expose-gc - -// Check that we can cope with a debug listener that runs in the -// GC epilogue and causes enough allocation to trigger a new GC during -// the epilogue. - -var f = eval("(function f() { return 42; })"); - -Debug = debug.Debug; - -var called = false; - -function listener(event, exec_state, event_data, data) { - if (event == Debug.DebugEvent.ScriptCollected) { - if (!called) { - called = true; - gc(); - } - } -}; - -Debug.scripts(); -Debug.setListener(listener); -f = void 0; -gc(); -assertTrue(called); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2339.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2339.js deleted file mode 100644 index b16821d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2339.js +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --expose-gc - -/** - * The possible optimization states of a function. Must be in sync with the - * return values of Runtime_GetOptimizationStatus() in runtime.cc! - */ - -var OptimizationState = { - YES: 1, - NO: 2, - ALWAYS: 3, - NEVER: 4 -}; - -function simple() { - return simple_two_args(0, undefined); -} - -function simple_two_args(always_zero, always_undefined) { - var always_five = always_undefined || 5; - return always_zero * always_five * .5; -} - - -simple(); -simple(); -%OptimizeFunctionOnNextCall(simple); -simple(); -var raw_optimized = %GetOptimizationStatus(simple); -assertFalse(raw_optimized == OptimizationState.NO); -gc(); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2346.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2346.js deleted file mode 100644 index 4c88b3e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2346.js +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This file only tests very simple descriptors that always have -// configurable, enumerable, and writable set to true. -// A range of more elaborate tests are performed in -// object-define-property.js - -// Flags: --stress-runs=5 - -function get() { return x; } -function set(x) { this.x = x; } - -var obj = {x: 1}; -obj.__defineGetter__("accessor", get); -obj.__defineSetter__("accessor", set); -var a = new Array(); -a[1] = 42; -obj[1] = 42; - -var descIsData = Object.getOwnPropertyDescriptor(obj, 'x'); -assertTrue(descIsData.enumerable); -assertTrue(descIsData.writable); -assertTrue(descIsData.configurable); - -var descIsAccessor = Object.getOwnPropertyDescriptor(obj, 'accessor'); -assertTrue(descIsAccessor.enumerable); -assertTrue(descIsAccessor.configurable); -assertTrue(descIsAccessor.get == get); -assertTrue(descIsAccessor.set == set); - -var descIsNotData = Object.getOwnPropertyDescriptor(obj, 'not-x'); -assertTrue(descIsNotData == undefined); - -var descIsNotAccessor = Object.getOwnPropertyDescriptor(obj, 'not-accessor'); -assertTrue(descIsNotAccessor == undefined); - -var descArray = Object.getOwnPropertyDescriptor(a, '1'); -assertTrue(descArray.enumerable); -assertTrue(descArray.configurable); -assertTrue(descArray.writable); -assertEquals(descArray.value, 42); - -var descObjectElement = Object.getOwnPropertyDescriptor(obj, '1'); -assertTrue(descObjectElement.enumerable); -assertTrue(descObjectElement.configurable); -assertTrue(descObjectElement.writable); -assertEquals(descObjectElement.value, 42); - -// String objects. -var a = new String('foobar'); -for (var i = 0; i < a.length; i++) { - var descStringObject = Object.getOwnPropertyDescriptor(a, i); - assertTrue(descStringObject.enumerable); - assertFalse(descStringObject.configurable); - assertFalse(descStringObject.writable); - assertEquals(descStringObject.value, a.substring(i, i+1)); -} - -// Support for additional attributes on string objects. -a.x = 42; -a[10] = 'foo'; -var descStringProperty = Object.getOwnPropertyDescriptor(a, 'x'); -assertTrue(descStringProperty.enumerable); -assertTrue(descStringProperty.configurable); -assertTrue(descStringProperty.writable); -assertEquals(descStringProperty.value, 42); - -var descStringElement = Object.getOwnPropertyDescriptor(a, '10'); -assertTrue(descStringElement.enumerable); -assertTrue(descStringElement.configurable); -assertTrue(descStringElement.writable); -assertEquals(descStringElement.value, 'foo'); - -// Test that elements in the prototype chain is not returned. -var proto = {}; -proto[10] = 42; - -var objWithProto = new Array(); -objWithProto.prototype = proto; -objWithProto[0] = 'bar'; -var descWithProto = Object.getOwnPropertyDescriptor(objWithProto, '10'); -assertEquals(undefined, descWithProto); - -// Test elements on global proxy object. -var global = (function() { return this; })(); - -global[42] = 42; - -function el_getter() { return 239; }; -function el_setter() {}; -Object.defineProperty(global, '239', {get: el_getter, set: el_setter}); - -var descRegularElement = Object.getOwnPropertyDescriptor(global, '42'); -assertEquals(42, descRegularElement.value); - -var descAccessorElement = Object.getOwnPropertyDescriptor(global, '239'); -assertEquals(el_getter, descAccessorElement.get); -assertEquals(el_setter, descAccessorElement.set); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2373.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2373.js deleted file mode 100644 index 16a87ec..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2373.js +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var o = JSON.parse('{"a":2600753951}'); -assertEquals(2600753951, o.a); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2374.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2374.js deleted file mode 100644 index b12e5f2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2374.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var msg = '{"result":{"profile":{"head":{"functionName":"(root)","url":"","lineNumber":0,"totalTime":495.7243772462511,"selfTime":0,"numberOfCalls":0,"visible":true,"callUID":2771605942,"children":[{"functionName":"(program)","url":"","lineNumber":0,"totalTime":495.7243772462511,"selfTime":495.7243772462511,"numberOfCalls":0,"visible":true,"callUID":1902715303,"children":[]}]},"bottomUpHead":{"functionName":"(root)","url":"","lineNumber":0,"totalTime":495.7243772462511,"selfTime":0,"numberOfCalls":0,"visible":true,"callUID":2771605942,"children":[{"functionName":"(program)","url":"","lineNumber":0,"totalTime":495.7243772462511,"selfTime":495.7243772462511,"numberOfCalls":0,"visible":true,"callUID":1902715303,"children":[]}]}}},"id":41}'; - -var obj = JSON.parse(msg); -var obj2 = JSON.parse(msg); - -assertEquals(JSON.stringify(obj), JSON.stringify(obj2)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2398.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2398.js deleted file mode 100644 index 1c66e7f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2398.js +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -"use strict"; - -var observed = false; - -var object = { get toString() { observed = true; } }; -Object.defineProperty(object, "ro", { value: 1 }); - -try { - object.ro = 2; // TypeError caused by trying to write to read-only. -} catch (e) { - e.message; // Forces formatting of the message object. -} - -assertFalse(observed); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2410.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2410.js deleted file mode 100644 index c16fd14..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2410.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Object.prototype should be ignored in Object.getOwnPropertyNames -// -// See http://code.google.com/p/v8/issues/detail?id=2410 for details. - -Object.defineProperty(Object.prototype, - 'thrower', - { get: function() { throw Error('bug') } }); -var obj = { thrower: 'local' }; -assertEquals(['thrower'], Object.getOwnPropertyNames(obj)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2416.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2416.js deleted file mode 100644 index 02afeb9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2416.js +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertFalse(2147483647 < -2147483648) -assertFalse(2147483647 <= -2147483648) -assertFalse(2147483647 == -2147483648) -assertTrue(2147483647 >= -2147483648) -assertTrue(2147483647 > -2147483648) - -assertTrue(-2147483648 < 2147483647) -assertTrue(-2147483648 <= 2147483647) -assertFalse(-2147483648 == 2147483647) -assertFalse(-2147483648 >= 2147483647) -assertFalse(-2147483648 > 2147483647) - -assertFalse(2147483647 < 2147483647) -assertTrue(2147483647 <= 2147483647) -assertTrue(2147483647 == 2147483647) -assertTrue(2147483647 >= 2147483647) -assertFalse(2147483647 > 2147483647) - -assertFalse(-2147483648 < -2147483648) -assertTrue(-2147483648 <= -2147483648) -assertTrue(-2147483648 == -2147483648) -assertTrue(-2147483648 >= -2147483648) -assertFalse(-2147483648 > -2147483648) - - -assertFalse(1073741823 < -1073741824) -assertFalse(1073741823 <= -1073741824) -assertFalse(1073741823 == -1073741824) -assertTrue(1073741823 >= -1073741824) -assertTrue(1073741823 > -1073741824) - -assertTrue(-1073741824 < 1073741823) -assertTrue(-1073741824 <= 1073741823) -assertFalse(-1073741824 == 1073741823) -assertFalse(-1073741824 >= 1073741823) -assertFalse(-1073741824 > 1073741823) - -assertFalse(1073741823 < 1073741823) -assertTrue(1073741823 <= 1073741823) -assertTrue(1073741823 == 1073741823) -assertTrue(1073741823 >= 1073741823) -assertFalse(1073741823 > 1073741823) - -assertFalse(-1073741824 < -1073741824) -assertTrue(-1073741824 <= -1073741824) -assertTrue(-1073741824 == -1073741824) -assertTrue(-1073741824 >= -1073741824) -assertFalse(-1073741824 > -1073741824) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2419.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2419.js deleted file mode 100644 index 9cd453a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2419.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var a = [5, 4, 3, 2, 1, 0]; -Object.freeze(a); -a.sort(); -assertArrayEquals([5, 4, 3, 2, 1, 0], a); - -var b = {0: 5, 1: 4, 2: 3, 3: 2, 4: 1, 5: 0, length: 6}; -Object.freeze(b); -Array.prototype.sort.call(b); -assertPropertiesEqual({0: 5, 1: 4, 2: 3, 3: 2, 4: 1, 5: 0, length: 6}, b); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2433.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2433.js deleted file mode 100644 index dfe7131..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2433.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Transitioning from a PackedSmi to PackedDouble should fill the destination -// with holes. -// -// See http://code.google.com/p/v8/issues/detail?id=2433 for details. - -arr = []; -arr[0] = 0; -arr[0] = 1.1; -assertEquals(undefined, arr[1]); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2437.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2437.js deleted file mode 100644 index c82293a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2437.js +++ /dev/null @@ -1,156 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Summary of the spec: lastIndex is reset to 0 if -// - a regexp fails to match, regardless of global or non-global. -// - a global regexp is used in a function that returns multiple results, -// such as String.prototype.replace or String.prototype.match, since it -// repeats the regexp until it fails to match. -// Otherwise lastIndex is only set when a global regexp matches, to the index -// after the match. - -// Test Regexp.prototype.exec -r = /a/; -r.lastIndex = 1; -r.exec("zzzz"); -assertEquals(0, r.lastIndex); - -// Test Regexp.prototype.test -r = /a/; -r.lastIndex = 1; -r.test("zzzz"); -assertEquals(0, r.lastIndex); - -// Test String.prototype.match -r = /a/; -r.lastIndex = 1; -"zzzz".match(r); -assertEquals(0, r.lastIndex); - -// Test String.prototype.replace with atomic regexp and empty string. -r = /a/; -r.lastIndex = 1; -"zzzz".replace(r, ""); -assertEquals(0, r.lastIndex); - -// Test String.prototype.replace with non-atomic regexp and empty string. -r = /\d/; -r.lastIndex = 1; -"zzzz".replace(r, ""); -assertEquals(0, r.lastIndex); - -// Test String.prototype.replace with atomic regexp and non-empty string. -r = /a/; -r.lastIndex = 1; -"zzzz".replace(r, "a"); -assertEquals(0, r.lastIndex); - -// Test String.prototype.replace with non-atomic regexp and non-empty string. -r = /\d/; -r.lastIndex = 1; -"zzzz".replace(r, "a"); -assertEquals(0, r.lastIndex); - -// Test String.prototype.replace with replacement function -r = /a/; -r.lastIndex = 1; -"zzzz".replace(r, function() { return ""; }); -assertEquals(0, r.lastIndex); - -// Regexp functions that returns multiple results: -// A global regexp always resets lastIndex regardless of whether it matches. -r = /a/g; -r.lastIndex = -1; -"0123abcd".replace(r, "x"); -assertEquals(0, r.lastIndex); - -r.lastIndex = -1; -"01234567".replace(r, "x"); -assertEquals(0, r.lastIndex); - -r.lastIndex = -1; -"0123abcd".match(r); -assertEquals(0, r.lastIndex); - -r.lastIndex = -1; -"01234567".match(r); -assertEquals(0, r.lastIndex); - -// A non-global regexp resets lastIndex iff it does not match. -r = /a/; -r.lastIndex = -1; -"0123abcd".replace(r, "x"); -assertEquals(-1, r.lastIndex); - -r.lastIndex = -1; -"01234567".replace(r, "x"); -assertEquals(0, r.lastIndex); - -r.lastIndex = -1; -"0123abcd".match(r); -assertEquals(-1, r.lastIndex); - -r.lastIndex = -1; -"01234567".match(r); -assertEquals(0, r.lastIndex); - -// Also test RegExp.prototype.exec and RegExp.prototype.test -r = /a/g; -r.lastIndex = 1; -r.exec("01234567"); -assertEquals(0, r.lastIndex); - -r.lastIndex = 1; -r.exec("0123abcd"); -assertEquals(5, r.lastIndex); - -r = /a/; -r.lastIndex = 1; -r.exec("01234567"); -assertEquals(0, r.lastIndex); - -r.lastIndex = 1; -r.exec("0123abcd"); -assertEquals(1, r.lastIndex); - -r = /a/g; -r.lastIndex = 1; -r.test("01234567"); -assertEquals(0, r.lastIndex); - -r.lastIndex = 1; -r.test("0123abcd"); -assertEquals(5, r.lastIndex); - -r = /a/; -r.lastIndex = 1; -r.test("01234567"); -assertEquals(0, r.lastIndex); - -r.lastIndex = 1; -r.test("0123abcd"); -assertEquals(1, r.lastIndex); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2438.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2438.js deleted file mode 100644 index 3f4fd7d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2438.js +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function testSideEffects(subject, re) { - var counter = 0; - var side_effect_object = { valueOf: function() { return counter++; } }; - re.lastIndex = side_effect_object; - re.exec(subject); - assertEquals(1, counter); - - re.lastIndex = side_effect_object; - re.test(subject); - assertEquals(2, counter); - - re.lastIndex = side_effect_object; - subject.match(re); - assertEquals(3, counter); - - re.lastIndex = side_effect_object; - subject.replace(re, ""); - assertEquals(4, counter); -} - -testSideEffects("zzzz", /a/); -testSideEffects("zzzz", /a/g); -testSideEffects("xaxa", /a/); -testSideEffects("xaxa", /a/g); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-244.js b/src/3rdparty/v8/test/mjsunit/regress/regress-244.js deleted file mode 100644 index 7503b15..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-244.js +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var kLegalPairs = [ - [0x00, '%00'], - [0x01, '%01'], - [0x7f, '%7F'], - [0x80, '%C2%80'], - [0x81, '%C2%81'], - [0x7ff, '%DF%BF'], - [0x800, '%E0%A0%80'], - [0x801, '%E0%A0%81'], - [0xd7ff, '%ED%9F%BF'], - [0xffff, '%EF%BF%BF'] -]; - -var kIllegalEncoded = [ - '%80', '%BF', '%80%BF', '%80%BF%80', '%C0%22', '%DF', - '%EF%BF', '%F7BFBF', '%FE', '%FF', '%FE%FE%FF%FF', - '%C0%AF', '%E0%9F%BF', '%F0%8F%BF%BF', '%C0%80', - '%E0%80%80' -]; - -function run() { - for (var i = 0; i < kLegalPairs.length; i++) { - var decoded = String.fromCharCode(kLegalPairs[i][0]); - var encoded = kLegalPairs[i][1]; - assertEquals(decodeURI(encoded), decoded); - assertEquals(encodeURI(decoded), encoded); - } - for (var i = 0; i < kIllegalEncoded.length; i++) { - var value = kIllegalEncoded[i]; - var exception = false; - try { - decodeURI(value); - } catch (e) { - exception = true; - assertInstanceof(e, URIError); - } - assertTrue(exception); - } -} - -run(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2441.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2441.js deleted file mode 100644 index 72ce248..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2441.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var o = {}; -Object.preventExtensions(o); -assertThrows("Object.defineProperty(o, 'foobarloo', {value:{}});", TypeError); -assertThrows("Object.defineProperty(o, '__proto__', {value:{}});", TypeError); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2443.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2443.js deleted file mode 100644 index 0800c45..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2443.js +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Number.prototype methods on non-Numbers. - -assertThrows(function() { Number.prototype.toExponential.call({}) }, - TypeError); - -assertThrows(function() { Number.prototype.toPrecision.call({}) }, - TypeError); - -assertThrows(function() { Number.prototype.toFixed.call({}) }, - TypeError); - -assertThrows(function() { Number.prototype.toString.call({}) }, - TypeError); - -assertThrows(function() { Number.prototype.toLocaleString.call({}) }, - TypeError); - -assertThrows(function() { Number.prototype.ValueOf.call({}) }, - TypeError); - - -// Call on Number objects with custom valueOf method. - -var x_obj = new Number(1); -x_obj.valueOf = function() { assertUnreachable(); }; - -assertEquals("1.00e+0", - Number.prototype.toExponential.call(x_obj, 2)); - -assertEquals("1.0", - Number.prototype.toPrecision.call(x_obj, 2)); - -assertEquals("1.00", - Number.prototype.toFixed.call(x_obj, 2)); - -// Call on primitive numbers. -assertEquals("1.00e+0", - Number.prototype.toExponential.call(1, 2)); - -assertEquals("1.0", - Number.prototype.toPrecision.call(1, 2)); - -assertEquals("1.00", - Number.prototype.toFixed.call(1, 2)); - - -// toExponential and toPrecision does following steps in order -// 1) convert the argument using ToInteger -// 2) check for non-finite receiver, on which it returns, -// 3) check argument range and throw exception if out of range. -// Note that the the last two steps are reversed for toFixed. -// Luckily, the receiver is expected to be a number or number -// wrapper, so that getting its value is not observable. - -var f_flag = false; -var f_obj = { valueOf: function() { f_flag = true; return 1000; } }; - -assertEquals("NaN", - Number.prototype.toExponential.call(NaN, f_obj)); -assertTrue(f_flag); - -f_flag = false; -assertEquals("Infinity", - Number.prototype.toExponential.call(1/0, f_obj)); -assertTrue(f_flag); - -f_flag = false; -assertEquals("-Infinity", - Number.prototype.toExponential.call(-1/0, f_obj)); -assertTrue(f_flag); - -f_flag = false; -assertEquals("NaN", - Number.prototype.toPrecision.call(NaN, f_obj)); -assertTrue(f_flag); - -f_flag = false; -assertEquals("Infinity", - Number.prototype.toPrecision.call(1/0, f_obj)); -assertTrue(f_flag); - -f_flag = false; -assertEquals("-Infinity", - Number.prototype.toPrecision.call(-1/0, f_obj)); -assertTrue(f_flag); - -// The odd man out: toFixed. - -f_flag = false; -assertThrows(function() { Number.prototype.toFixed.call(NaN, f_obj) }, - RangeError); -assertTrue(f_flag); - -f_flag = false; -assertThrows(function() { Number.prototype.toFixed.call(1/0, f_obj) }, - RangeError); -assertTrue(f_flag); - -f_flag = false; -assertThrows(function() { Number.prototype.toFixed.call(-1/0, f_obj) }, - RangeError); -assertTrue(f_flag); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2444.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2444.js deleted file mode 100644 index 8fb8d8b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2444.js +++ /dev/null @@ -1,120 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - -var flags; - -function resetFlags(size) { - flags = Array(size); - while (size--) flags[size] = 0; -} - -function assertFlags(array) { - assertArrayEquals(array, flags); -} - -function object_factory(flag_index, value, expected_flags) { - var obj = {}; - obj.valueOf = function() { - assertFlags(expected_flags); - flags[flag_index]++; - return value; - } - return obj; -} - - -assertEquals(-Infinity, Math.max()); - -resetFlags(1); -assertEquals(NaN, - Math.max(object_factory(0, NaN, [0]))); -assertFlags([1]); - -resetFlags(2); -assertEquals(NaN, - Math.max(object_factory(0, NaN, [0, 0]), - object_factory(1, 0, [1, 0]))); -assertFlags([1, 1]); - -resetFlags(3); -assertEquals(NaN, - Math.max(object_factory(0, NaN, [0, 0, 0]), - object_factory(1, 0, [1, 0, 0]), - object_factory(2, 1, [1, 1, 0]))); -assertFlags([1, 1, 1]); - -resetFlags(3); -assertEquals(NaN, - Math.max(object_factory(0, 2, [0, 0, 0]), - object_factory(1, 0, [1, 0, 0]), - object_factory(2, NaN, [1, 1, 0]))); -assertFlags([1, 1, 1]); - -resetFlags(3); -assertEquals(2, - Math.max(object_factory(0, 2, [0, 0, 0]), - object_factory(1, 0, [1, 0, 0]), - object_factory(2, 1, [1, 1, 0]))); -assertFlags([1, 1, 1]); - - -assertEquals(+Infinity, Math.min()); - -resetFlags(1); -assertEquals(NaN, - Math.min(object_factory(0, NaN, [0]))); -assertFlags([1]); - -resetFlags(2); -assertEquals(NaN, - Math.min(object_factory(0, NaN, [0, 0]), - object_factory(1, 0, [1, 0]))); -assertFlags([1, 1]); - -resetFlags(3); -assertEquals(NaN, - Math.min(object_factory(0, NaN, [0, 0, 0]), - object_factory(1, 0, [1, 0, 0]), - object_factory(2, 1, [1, 1, 0]))); -assertFlags([1, 1, 1]); - -resetFlags(3); -assertEquals(NaN, - Math.min(object_factory(0, 2, [0, 0, 0]), - object_factory(1, 0, [1, 0, 0]), - object_factory(2, NaN, [1, 1, 0]))); -assertFlags([1, 1, 1]); - -resetFlags(3); -assertEquals(0, - Math.min(object_factory(0, 2, [0, 0, 0]), - object_factory(1, 0, [1, 0, 0]), - object_factory(2, 1, [1, 1, 0]))); -assertFlags([1, 1, 1]); - - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2451.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2451.js deleted file mode 100644 index 465e4e6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2451.js +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function f() { - assertEquals(-1.0, Math.round(-1.5)); - assertEquals(-2.0, Math.round(-2.5)); - assertEquals(-1.0, Math.round(-0.5000000000000001)); -} - -f(); -f(); -%OptimizeFunctionOnNextCall(f); -f(); -assertTrue(%GetOptimizationStatus(f) != 2); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-246.js b/src/3rdparty/v8/test/mjsunit/regress/regress-246.js deleted file mode 100644 index 09b746b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-246.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=246 - -assertTrue(/(?:text)/.test("text")); -assertEquals(["text"], /(?:text)/.exec("text"));
\ No newline at end of file diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2489.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2489.js deleted file mode 100644 index 882c4f7..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2489.js +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -"use strict"; - -function f(a, b) { - return g("c", "d"); -} - -function g(a, b) { - g.constructor.apply(this, arguments); -} - -g.constructor = function(a, b) { - assertEquals("c", a); - assertEquals("d", b); -} - -f("a", "b"); -f("a", "b"); -%OptimizeFunctionOnNextCall(f); -f("a", "b"); -g.x = "deopt"; -f("a", "b"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2499.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2499.js deleted file mode 100644 index 52aad87..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2499.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function foo(word, nBits) { - return (word[1] >>> nBits) | (word[0] << (32 - nBits)); -} - -word = [0x1001, 0]; - -var expected = foo(word, 1); -foo(word, 1); -%OptimizeFunctionOnNextCall(foo); -var optimized = foo(word, 1); -assertEquals(expected, optimized) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-253.js b/src/3rdparty/v8/test/mjsunit/regress/regress-253.js deleted file mode 100644 index 72c5dc1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-253.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var x = 0; -x[0] = 0; -x[0] = 1; -x[0] = 2; diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2537.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2537.js deleted file mode 100644 index c6b5af9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2537.js +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -var large_int = 0x40000000; - -function foo(x, expected) { - assertEquals(expected, x); // This succeeds. - x += 0; // Force int32 representation so that CompareIDAndBranch is used. - if (3 != x) { - x += 0; // Poor man's "iDef". - // Fails due to Smi-tagging without overflow check. - assertEquals(expected, x); - } -} - -foo(1, 1); -foo(3, 3); -%OptimizeFunctionOnNextCall(foo); -foo(large_int, large_int); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-2539.js b/src/3rdparty/v8/test/mjsunit/regress/regress-2539.js deleted file mode 100644 index 5d263f8..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-2539.js +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -"use strict"; -var dispatcher = {}; -dispatcher.func = C; - -function A() { - B(10, 11); -} - -function B(x,y) { - x = 0; y = 0; - dispatcher.func.apply(this, arguments); - assertSame(2, arguments.length); - assertSame(10, arguments[0]); - assertSame(11, arguments[1]); -} - -function C(x,y) { - assertSame(2, arguments.length); - assertSame(10, arguments[0]); - assertSame(11, arguments[1]); -} - -A(); -A(); -%OptimizeFunctionOnNextCall(A); -A(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-254.js b/src/3rdparty/v8/test/mjsunit/regress/regress-254.js deleted file mode 100644 index ec4b40a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-254.js +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=254 - -// RegExp with global flag: exec and test updates lastIndex. -var re = /x/g; - -assertEquals(0, re.lastIndex, "Global, initial lastIndex"); - -assertTrue(re.test("x"), "Global, test 1"); -assertEquals(1, re.lastIndex, "Global, lastIndex after test 1"); -assertFalse(re.test("x"), "Global, test 2"); -assertEquals(0, re.lastIndex, "Global, lastIndex after test 2"); - -assertEquals(["x"], re.exec("x"), "Global, exec 1"); -assertEquals(1, re.lastIndex, "Global, lastIndex after exec 1"); -assertEquals(null, re.exec("x"), "Global, exec 2"); -assertEquals(0, re.lastIndex, "Global, lastIndex after exec 2"); - -// RegExp without global flag: exec and test leavs lastIndex at zero. -var re2 = /x/; - -assertEquals(0, re2.lastIndex, "Non-global, initial lastIndex"); - -assertTrue(re2.test("x"), "Non-global, test 1"); -assertEquals(0, re2.lastIndex, "Non-global, lastIndex after test 1"); -assertTrue(re2.test("x"), "Non-global, test 2"); -assertEquals(0, re2.lastIndex, "Non-global, lastIndex after test 2"); - -assertEquals(["x"], re2.exec("x"), "Non-global, exec 1"); -assertEquals(0, re2.lastIndex, "Non-global, lastIndex after exec 1"); -assertEquals(["x"], re2.exec("x"), "Non-global, exec 2"); -assertEquals(0, re2.lastIndex, "Non-global, lastIndex after exec 2"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-259.js b/src/3rdparty/v8/test/mjsunit/regress/regress-259.js deleted file mode 100644 index f0476ff..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-259.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that we do not crash when compiling a try/finally with an -// infinite loop (with no normal exits) in the try block. - -// See http://code.google.com/p/v8/issues/detail?id=259 - -assertThrows("try { while (true) { throw 0; }} finally {}"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-260.js b/src/3rdparty/v8/test/mjsunit/regress/regress-260.js deleted file mode 100644 index 65242bc..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-260.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// We should not compile the bodies of function literals in loop -// conditions twice, even in cases where the loop condition is -// compiled twice. - -function test() { eval("while(!function () { var x; });"); } -test(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-263.js b/src/3rdparty/v8/test/mjsunit/regress/regress-263.js deleted file mode 100644 index 123bde6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-263.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Exits via return, break, or continue from within try/finally or -// for/in should not crash or trigger a debug assert. - -// See http://code.google.com/p/v8/issues/detail?id=263 - -function test0() { with({}) for(var x in {}) return; } -test0(); - - -function test1() { with({}) try { } finally { with({}) return; } } -test1(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-265.js b/src/3rdparty/v8/test/mjsunit/regress/regress-265.js deleted file mode 100644 index 21ac1a6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-265.js +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// When returning or breaking out of a deeply nested try/finally, we -// should not crash. - -// See http://code.google.com/p/v8/issues/detail?id=263 - -function test0() { - try { - try { - return 0; - } finally { - try { - return 0; - } finally { - } - } - } finally { - } -} - -test0(); - -function test1() { -L0: - try { - try { - break L0; - } finally { - try { - break L0; - } finally { - } - } - } finally { - } -} - -test1(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-267.js b/src/3rdparty/v8/test/mjsunit/regress/regress-267.js deleted file mode 100644 index bb61606..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-267.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://code.google.com/p/v8/issues/detail?id=267 - -var global = (function(){ return this; })(); -function taint(fn){var v = fn(); eval("taint"); return v; } -function getThis(){ return this; } -var obj = taint(getThis); - -assertEquals(global, obj, "Should be the global object."); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-269.js b/src/3rdparty/v8/test/mjsunit/regress/regress-269.js deleted file mode 100644 index ce165e0..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-269.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug -// Get the Debug object exposed from the debug context global object. -Debug = debug.Debug - -function listener(event, exec_state, event_data, data) { - if (event == Debug.DebugEvent.Break) { - exec_state.prepareStep(Debug.StepAction.StepIn); - } -}; - -// Add the debug event listener. -Debug.setListener(listener); - -function g() { -} - -function f() { - debugger; - g.apply(null, ['']); -} - -f() diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-279.js b/src/3rdparty/v8/test/mjsunit/regress/regress-279.js deleted file mode 100644 index e500dd6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-279.js +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function makeArrayInObject() { - return { foo: [] }; -} - -var a = makeArrayInObject(); -a.foo.push(5); -var b = makeArrayInObject(); -assertEquals(0, b.foo.length, "Array in object"); - -function makeObjectInObject() { - return { foo: {} }; -} - -a = makeObjectInObject(); -a.foo.bar = 1; -b = makeObjectInObject(); -assertEquals('undefined', typeof(b.foo.bar), "Object in object"); - -function makeObjectInArray() { - return [ {} ]; -} - -a = makeObjectInArray(); -a[0].bar = 1; -b = makeObjectInArray(); -assertEquals('undefined', typeof(b[0].bar), "Object in array"); - -function makeArrayInArray() { - return [ [] ]; -} - -a = makeArrayInArray(); -a[0].push(5); -b = makeArrayInArray(); -assertEquals(0, b[0].length, "Array in array"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-284.js b/src/3rdparty/v8/test/mjsunit/regress/regress-284.js deleted file mode 100644 index ecfdeea..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-284.js +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://code.google.com/p/v8/issues/detail?id=284 - -function continueWithinLoop() { - var result; - for (var key in [0]) { - result = "hopla"; - continue; - } - return result; -}; - -assertEquals("hopla", continueWithinLoop()); - -function breakWithinLoop() { - var result; - for (var key in [0]) { - result = "hopla"; - break; - } - return result; -}; - -assertEquals("hopla", continueWithinLoop()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-286.js b/src/3rdparty/v8/test/mjsunit/regress/regress-286.js deleted file mode 100644 index 361b726..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-286.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://code.google.com/p/v8/issues/detail?id=286 - -function test() { - var o = [1]; - var a = o[o ^= 1]; - return a; -}; - -assertEquals(1, test()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-294.js b/src/3rdparty/v8/test/mjsunit/regress/regress-294.js deleted file mode 100644 index 285b447..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-294.js +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Should not crash. -// See http://code.google.com/p/v8/issues/detail?id=294 - -function f() { return false; } - -function test(x) { - var y = x; - if (x == "kat") x = "kat"; - else { - x = "hund"; - var z = f(); - if (!z) x = "kat"; - } -} - -test("hund"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-3006390.js b/src/3rdparty/v8/test/mjsunit/regress/regress-3006390.js deleted file mode 100644 index 4f916ef..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-3006390.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function X() { } -X.prototype.valueOf = function () { return 7; } - -function f(x, y) { return x % y; } - -assertEquals(1, f(8, new X())); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-312.js b/src/3rdparty/v8/test/mjsunit/regress/regress-312.js deleted file mode 100644 index 0fb8c21..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-312.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Should not trigger debug ASSERT. -// See http://code.google.com/p/v8/issues/detail?id=312 - -var o = { f: "x" ? function () {} : function () {} }; diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-317.js b/src/3rdparty/v8/test/mjsunit/regress/regress-317.js deleted file mode 100644 index b742fa1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-317.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Ensure replacement with string allows $ in replacement string. - -assertEquals("a$ec", "abc".replace("b", "$e"), "$e isn't meaningful"); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-318.js b/src/3rdparty/v8/test/mjsunit/regress/regress-318.js deleted file mode 100644 index e94f1cb..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-318.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Should not crash or raise an exception. - -function test(value) { - if (typeof(value) == 'boolean') value = value + ''; - if (typeof(value) == 'number') value = value + ''; -} - -assertDoesNotThrow('test(0)'); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-3185905.js b/src/3rdparty/v8/test/mjsunit/regress/regress-3185905.js deleted file mode 100644 index bd611ab..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-3185905.js +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function test1(x) { - var a = arguments.callee; - x = 1; - x = 2; - assertEquals(2, x); -} -test1(0) - -function test2(x) { - var a = arguments.callee; - x++; - x++; - assertEquals(2, x); -} -test2(0) - -function test3(x) { - var a = arguments.callee; - x += 1; - x += 1; - assertEquals(2, x); -} -test3(0) - -function test4(x) { - var arguments = { 0 : 3, 'x' : 4 }; - x += 1; - x += 1; - assertEquals(2, x); - assertEquals(3, arguments[0]) - assertEquals(4, arguments['x']) -} -test4(0) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-3199913.js b/src/3rdparty/v8/test/mjsunit/regress/regress-3199913.js deleted file mode 100644 index e202af1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-3199913.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that bailout during evaluation of the key for a keyed call works as -// intended. - -var y = { - 'a' : function (x, y) { return 'called a(' + x + ', ' + y + ')' }, - 'b' : function (x, y) { return 'called b(' + x + ', ' + y + ')' } -} - -function C() { -} - -C.prototype.f = function () { - return y[(this.a == 1 ? "a" : "b")](0, 1); -} - -obj = new C() -assertEquals('called b(0, 1)', obj.f()) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-3218530.js b/src/3rdparty/v8/test/mjsunit/regress/regress-3218530.js deleted file mode 100644 index 247f3df..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-3218530.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This tests that a global key values are preserved when used in -// an expression which will bail out. - -var m = Math; -var p = "floor"; - -function test() { - var bignumber = 31363200000; - assertDoesNotThrow(assertEquals(m[p](Math.round(bignumber/864E5)/7)+1, 52)); -} - -test(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-3218915.js b/src/3rdparty/v8/test/mjsunit/regress/regress-3218915.js deleted file mode 100644 index 4b08a6e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-3218915.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Checks that comma expression in conditional context is processed correctly. - -function withCommaExpressionInConditional(x) { - if (x > 1000) { for (var i = 0; i < 10000; i++) { } } - var y; - if (y = x, y > 1) { - return 'big'; - } - return (y = x + 1, y > 1) ? 'medium' : 'small'; -} - -for (var i = 0; i < 5; i++) { - withCommaExpressionInConditional(i); -} -%OptimizeFunctionOnNextCall(withCommaExpressionInConditional); -withCommaExpressionInConditional(i); -withCommaExpressionInConditional("1") diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-3230771.js b/src/3rdparty/v8/test/mjsunit/regress/regress-3230771.js deleted file mode 100644 index bd00798..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-3230771.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for missing stack-overflow check in -// VisitForStatement in hydrogen graph building. - -function f() { - for (var h = typeof arguments[0] == "object" ? 0 : arguments; false; ) { } -} - -f(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-3247124.js b/src/3rdparty/v8/test/mjsunit/regress/regress-3247124.js deleted file mode 100644 index fe4ec4e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-3247124.js +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var foo = unescape("%E0%E2%EA%F4%FB%E3%F5%E1%E9%ED%F3%FA%E7%FC%C0%C2%CA%D4%DB%C3%D5%C1%C9%CD%D3%DA%C7%DC"); - -function bar(x) { - var s = new String(x); - var a = new String(foo); - var b = new String('aaeouaoaeioucuAAEOUAOAEIOUCU'); - - var i = new Number(); - var j = new Number(); - var c = new String(); - var r = ''; - - for (i = 0; i < s.length; i++) { - c = s.substring(i, i + 1); - for (j = 0; j < a.length; j++) { - if (a.substring(j, j + 1) == c) { - c = b.substring(j, j + 1); - } - } - r += c; - } - - return r.toLowerCase(); -} - -for (var i = 0; i < 100; i++) bar(foo); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-3252443.js b/src/3rdparty/v8/test/mjsunit/regress/regress-3252443.js deleted file mode 100644 index cd7aa40..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-3252443.js +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var document = new Object(); -document.getElementById = function(s) { return { style: {}}}; -function x(p0, p1, p2, p3) { - document.getElementById(p1+p0).style.display=''; - document.getElementById(p1+''+p0).style.backgroundColor = ""; - document.getElementById(p1+''+p0).style.color=""; - document.getElementById(p1+''+p0).style.borderBottomColor = ""; - for (var i = p3; i <= p2; ++i) { - if (i != p0) { - document.getElementById(p1+i).style.display=''; - document.getElementById(p1+''+i).style.backgroundColor = ""; - document.getElementById(p1+''+i).style.color=""; - document.getElementById(p1+''+i).style.borderBottomColor = ""; - } - } -} - -x(1, "xxx", 10000, 1) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-326.js b/src/3rdparty/v8/test/mjsunit/regress/regress-326.js deleted file mode 100644 index fcd102e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-326.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Should not crash or raise an exception. -// Should sort non-array into equivalent of [37,42,undefined,,0] - -var nonArray = { length: 4, 0: 42, 2: 37, 3: undefined, 4: 0 }; -Array.prototype.sort.call(nonArray); - -assertEquals(4, nonArray.length, "preserve length"); -assertEquals(37, nonArray[0], "sort smallest first"); -assertEquals(42, nonArray[1], "sort largest last"); -assertTrue(2 in nonArray, "don't delete undefined"); -assertEquals(undefined, nonArray[2], "sort undefined after largest"); -assertFalse(3 in nonArray, "don't create non-existing"); -assertEquals(0, nonArray[4], "don't affect after length."); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-334.js b/src/3rdparty/v8/test/mjsunit/regress/regress-334.js deleted file mode 100644 index 37dd299..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-334.js +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test for http://code.google.com/p/v8/issues/detail?id=334 - -var READ_ONLY = 1; -var DONT_ENUM = 2; -var DONT_DELETE = 4; - -function func1(){} -function func2(){} - -var object = {__proto__:{}}; -%SetProperty(object, "foo", func1, DONT_ENUM | DONT_DELETE); -%SetProperty(object, "bar", func1, DONT_ENUM | READ_ONLY); -%SetProperty(object, "baz", func1, DONT_DELETE | READ_ONLY); -%SetProperty(object.__proto__, "bif", func1, DONT_ENUM | DONT_DELETE); -object.bif = func2; - -function enumerable(obj) { - var res = []; - for (var i in obj) { - res.push(i); - } - res.sort(); - return res; -} - -// Sanity check: expected initial state. -assertArrayEquals(["baz", "bif"], enumerable(object), "enum0"); -assertFalse(delete object.foo, "delete foo"); -assertFalse(delete object.baz, "delete baz"); -assertEquals(func1, object.foo, "read foo"); -assertEquals(func1, object.bar, "read bar"); -assertEquals(func1, object.baz, "read baz"); -assertEquals(func2, object.bif, "read bif"); - -// Can't assign to READ_ONLY. -object.bar = "NO WAY"; -assertEquals(func1, object.bar, "read bar 2"); -assertArrayEquals(["baz", "bif"], enumerable(object), "enum1"); - -// Assignment to non-readonly. Assignment shouldn't change attributes! -object.foo = func2; -assertArrayEquals(["baz", "bif"], enumerable(object), "enum2"); -assertFalse(delete object.foo, "delete foo 2"); - -// Delete should erase attributes if value set again. -assertTrue(delete object.bar, "delete bar"); -assertFalse("bar" in object, "has bar"); -object.bar = func2; -assertTrue("bar" in object, "has bar 2"); -assertEquals(func2, object.bar, "read bar 3"); - -assertArrayEquals(["bar", "baz", "bif"], enumerable(object), "enum3"); - -// Unshadowing a prototype property exposes its attributes. -assertTrue(delete object.bif, "delete bif"); -assertArrayEquals(["bar", "baz"], enumerable(object), "enum4"); -assertEquals(func1, object.bif, "read bif 2"); -// Can't delete prototype property. -assertTrue(delete object.bif, "delete bif 2"); -assertArrayEquals(["bar", "baz"], enumerable(object), "enum5"); -assertEquals(func1, object.bif, "read bif3"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-3408144.js b/src/3rdparty/v8/test/mjsunit/regress/regress-3408144.js deleted file mode 100644 index 6e292d6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-3408144.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test incorrect code generation for alternations on ARM. - - -// Flags: --nofull-compiler - -function foo() { - return (0 > ("10"||10) - 1); -} - -assertFalse(foo()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-341.js b/src/3rdparty/v8/test/mjsunit/regress/regress-341.js deleted file mode 100644 index 4db6bc6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-341.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Should not crash. -// See http://code.google.com/p/v8/issues/detail?id=341 - -function F() {} - -F.prototype = 1; -var o = {}; - -assertThrows("o instanceof F"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-345.js b/src/3rdparty/v8/test/mjsunit/regress/regress-345.js deleted file mode 100644 index f7f28a1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-345.js +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Escaping to the same target from both the try and catch blocks of -// try...catch...finally should not fail at compile-time. -// -// Reported by nth10sd. -// See http://code.google.com/p/v8/issues/detail?id=345 - -do { - try { - continue; - } catch (e) { - continue; - } finally { - } -} while (false); - - -L: { - try { - break L; - } catch (e) { - break L; - } finally { - } -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-349.js b/src/3rdparty/v8/test/mjsunit/regress/regress-349.js deleted file mode 100644 index 1a60e3e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-349.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Should not crash. -// See http://code.google.com/p/v8/issues/detail?id=349 - -var str = "bbaabbbbbbbbabbaaaabbaaabbbaaaabbaaabbabaaabb"; -assertEquals(str, str.replace(/aabab/g, "foo")); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-35.js b/src/3rdparty/v8/test/mjsunit/regress/regress-35.js deleted file mode 100644 index 2fcdbe7..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-35.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var result; -eval("result = 42; while(true)break"); -assertEquals(42, result); - -eval("result = 87; while(false)continue"); -assertEquals(87, result); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-351.js b/src/3rdparty/v8/test/mjsunit/regress/regress-351.js deleted file mode 100644 index 44470db..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-351.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Should use index of 0 if provided index is negative. -// See http://code.google.com/p/v8/issues/detail?id=351 - -assertEquals(0, "test".lastIndexOf("test", -1)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-386.js b/src/3rdparty/v8/test/mjsunit/regress/regress-386.js deleted file mode 100644 index 06e4b8e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-386.js +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - -// Test for http://code.google.com/p/v8/issues/detail?id=386 -// This test creates enough properties in A so that adding i as -// a constant function, in the first call to the constructor, leaves -// the object's map in the fast case and adds a constant function map -// transition. -// Adding i in the second call to the constructor creates a real property, -// and simultaneously converts the object from fast case to slow case -// and changes i from a map transition to a real property. There was -// a flaw in the code that handled this combination of events. - -function A() { - for (var i = 0; i < 13; i++) { - this['a' + i] = i; - } - this.i = function(){}; -}; - -new A(); -new A(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-392.js b/src/3rdparty/v8/test/mjsunit/regress/regress-392.js deleted file mode 100644 index 3cabcac..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-392.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for issue 392 reported by nth10sd; see -// http://code.google.com/p/v8/issues/detail?id=392 - -assertTrue(isNaN((function(){return arguments++})())); -assertTrue(isNaN((function(){return ++arguments})())); -assertTrue(isNaN((function(){return arguments--})())); -assertTrue(isNaN((function(){return --arguments})())); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-394.js b/src/3rdparty/v8/test/mjsunit/regress/regress-394.js deleted file mode 100644 index 7b98205..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-394.js +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See <URL:http://code.google.com/p/v8/issues/detail?id=394> - -function setx(){ - x=1; -} - -function getx(){ - return x; -} - -setx() -setx() -__defineSetter__('x',function(){}); -__defineGetter__('x',function(){return 2;}); -setx() -assertEquals(2, x); - -assertEquals(2, getx()); -assertEquals(2, getx()); -assertEquals(2, getx()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-396.js b/src/3rdparty/v8/test/mjsunit/regress/regress-396.js deleted file mode 100644 index e6f2ce3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-396.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// http://code.google.com/p/v8/issues/detail?id=396 - -function DateYear(date) { - var string = date.getYear() + ''; - if (string.length < 4) { - string = '' + (string - 0 + 1900); - } - return string; -} - -assertEquals('1995', DateYear(new Date('Dec 25, 1995'))); -assertEquals('2005', DateYear(new Date('Dec 25, 2005'))); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-397.js b/src/3rdparty/v8/test/mjsunit/regress/regress-397.js deleted file mode 100644 index 0e4143d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-397.js +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax -// See http://code.google.com/p/v8/issues/detail?id=397 - - -function test() { - assertEquals("Infinity", String(Math.pow(Infinity, 0.5))); - assertEquals(0, Math.pow(Infinity, -0.5)); - - assertEquals("Infinity", String(Math.pow(-Infinity, 0.5))); - assertEquals(0, Math.pow(-Infinity, -0.5)); -} - -test(); -test(); -%OptimizeFunctionOnNextCall(test); -test(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-399.js b/src/3rdparty/v8/test/mjsunit/regress/regress-399.js deleted file mode 100644 index 6c8eab5..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-399.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://code.google.com/p/v8/issues/detail?id=399 - -var date = new Date(1.009804e12); -var year = Number(String(date).match(/.*(200\d)/)[1]); -assertEquals(year, date.getFullYear()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-406.js b/src/3rdparty/v8/test/mjsunit/regress/regress-406.js deleted file mode 100644 index f48a5de..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-406.js +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test of constant folding of boolean-valued expressions. - -// See http://code.google.com/p/v8/issues/detail?id=406 - -assertFalse(typeof(0) == "zero"); -assertTrue(typeof(0) != "zero"); - -// The and and or truth tables with both operands constant. -assertFalse(typeof(0) == "zero" && typeof(0) == "zero"); -assertFalse(typeof(0) == "zero" && typeof(0) != "zero"); -assertFalse(typeof(0) != "zero" && typeof(0) == "zero"); -assertTrue(typeof(0) != "zero" && typeof(0) != "zero"); - -assertFalse(typeof(0) == "zero" || typeof(0) == "zero"); -assertTrue(typeof(0) == "zero" || typeof(0) != "zero"); -assertTrue(typeof(0) != "zero" || typeof(0) == "zero"); -assertTrue(typeof(0) != "zero" || typeof(0) != "zero"); - -// Same with just the left operand constant. -// Helper function to prevent simple constant folding. -function one() { return 1; } - -assertFalse(typeof(0) == "zero" && one() < 0); -assertFalse(typeof(0) == "zero" && one() > 0); -assertFalse(typeof(0) != "zero" && one() < 0); -assertTrue(typeof(0) != "zero" && one() > 0); - -assertFalse(typeof(0) == "zero" || one() < 0); -assertTrue(typeof(0) == "zero" || one() > 0); -assertTrue(typeof(0) != "zero" || one() < 0); -assertTrue(typeof(0) != "zero" || one() > 0); - -// Same with just the right operand constant. -assertFalse(one() < 0 && typeof(0) == "zero"); -assertFalse(one() < 0 && typeof(0) != "zero"); -assertFalse(one() > 0 && typeof(0) == "zero"); -assertTrue(one() > 0 && typeof(0) != "zero"); - -assertFalse(one() < 0 || typeof(0) == "zero"); -assertTrue(one() < 0 || typeof(0) != "zero"); -assertTrue(one() > 0 || typeof(0) == "zero"); -assertTrue(one() > 0 || typeof(0) != "zero"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-416.js b/src/3rdparty/v8/test/mjsunit/regress/regress-416.js deleted file mode 100644 index d204bd3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-416.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test of invalid Date construction, and TimeClip function. - -// See http://code.google.com/p/v8/issues/detail?id=416 - -assertTrue(isNaN(new Date(1e81).getTime()), "new Date(1e81)"); -assertTrue(isNaN(new Date(-1e81).getTime()), "new Date(-1e81)"); -assertTrue(isNaN(new Date(1e81, "").getTime()), "new Date(1e81, \"\")"); -assertTrue(isNaN(new Date(-1e81, "").getTime()), "new Date(-1e81, \"\")"); -assertTrue(isNaN(new Date(Number.NaN).getTime()), "new Date(Number.NaN)"); -assertTrue(isNaN(new Date(Number.NaN, "").getTime()), - "new Date(Number.NaN, \"\")"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-45469.js b/src/3rdparty/v8/test/mjsunit/regress/regress-45469.js deleted file mode 100644 index 832a73f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-45469.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that global regexps capture and fail in the correct cyclic way. - -var re = /x/g; - -for (var i = 0; i < 15; i++) { - assertEquals(i % 3, re.lastIndex, "preindex" + i); - var res = re.exec("xx"); - assertEquals(i % 3 == 2 ? null : ["x"], res, "res" + i); -} - -re = /x/g; - -for (var i = 0; i < 15; i++) { - assertEquals(i % 3, re.lastIndex, "testpreindex" + i); - var res = re.test("xx"); - assertEquals(i % 3 != 2, res, "testres" + i); -} - - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-475.js b/src/3rdparty/v8/test/mjsunit/regress/regress-475.js deleted file mode 100644 index 4b7dbbd..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-475.js +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertEquals(1, (function (){return 1|-1%1})()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-483.js b/src/3rdparty/v8/test/mjsunit/regress/regress-483.js deleted file mode 100644 index db93f59..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-483.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function X() { - this.x = this.x.x; -} - -X.prototype.x = {x:1} - -new X() - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-485.js b/src/3rdparty/v8/test/mjsunit/regress/regress-485.js deleted file mode 100755 index f26e0eb..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-485.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=485 - -// Ensure that we don't expose the builtins object when calling -// builtin functions that use or return "this". - -var global = this; -var global2 = (function(){return this;})(); -assertEquals(global, global2, "direct call to local function returns global"); - -// Builtin that depends on value of this to compute result. -var builtin2 = Object.prototype.toString; - -// Global object has class "Object" according to Object.prototype.toString. -// Builtins object displays as "[object builtins]". -assertTrue("[object builtins]" != builtin2(), "Direct call to toString"); -assertTrue("[object builtins]" != builtin2.call(), "call() to toString"); -assertTrue("[object builtins]" != builtin2.apply(), "call() to toString"); -assertTrue("[object builtins]" != builtin2.call.call(builtin2), - "call.call() to toString"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-486.js b/src/3rdparty/v8/test/mjsunit/regress/regress-486.js deleted file mode 100644 index c1e29a6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-486.js +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var st = "\u0422\u0435\u0441\u0442"; // Test in Cyrillic characters. -var cyrillicMatch = /^[\u0430-\u044fa-z]+$/i.test(st); // a-ja a-z. -assertTrue(cyrillicMatch); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-490.js b/src/3rdparty/v8/test/mjsunit/regress/regress-490.js deleted file mode 100644 index 8dd8959..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-490.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=490 - -var kXXX = 11 -// Build a string longer than 2^11. See StringBuilderConcatHelper and -// Runtime_StringBuilderConcat in runtime.cc and -// ReplaceResultBuilder.prototype.addSpecialSlice in string.js. -var a = ''; -while (a.length < (2 << 11)) { a+= 'x'; } - -// Test specific for bug introduced in r3153. -a.replace(/^(.*)/, '$1$1$1'); - -// More generalized test. -for (var i = 0; i < 10; i++) { - var b = ''; - for (var j = 0; j < 10; j++) { - b += '$1'; - a.replace(/^(.*)/, b); - } - a += a; -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-491.js b/src/3rdparty/v8/test/mjsunit/regress/regress-491.js deleted file mode 100644 index 2cf5e20..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-491.js +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=491 -// This should not hit any asserts in debug mode on ARM. - -function function_with_n_strings(n) { - var source = '(function f(){'; - for (var i = 0; i < n; i++) { - if (i != 0) source += ';'; - source += '"x"'; - } - source += '})()'; - eval(source); -} - -var i; -for (i = 500; i < 600; i++) { - function_with_n_strings(i); -} -for (i = 1100; i < 1200; i++) { - function_with_n_strings(i); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-492.js b/src/3rdparty/v8/test/mjsunit/regress/regress-492.js deleted file mode 100644 index 53b3195..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-492.js +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=492 -// This should not hit any asserts in debug mode on ARM. - -function function_with_n_args(n) { - var source = '(function f' + n + '('; - for (var arg = 0; arg < n; arg++) { - if (arg != 0) source += ','; - source += 'arg' + arg; - } - source += ') { })()'; - eval(source); -} - -var args; -for (args = 250; args < 270; args++) { - function_with_n_args(args); -} - -for (args = 500; args < 520; args++) { - function_with_n_args(args); -} - -for (args = 1019; args < 1041; args++) { - function_with_n_args(args); -} - - -function foo( - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, - x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x -) {} - -for (var i = 0; i < 10000; ++i) foo(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-496.js b/src/3rdparty/v8/test/mjsunit/regress/regress-496.js deleted file mode 100644 index 33c1a67..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-496.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for http://code.google.com/p/v8/issues/detail?id=496. -// -// Tests that we do not treat the unaliased eval call in g as an -// aliased call to eval. - -function h() { - function f() { return eval; } - function g() { var x = 44; return eval("x"); } - assertEquals(44, g()); -} - -h(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-502.js b/src/3rdparty/v8/test/mjsunit/regress/regress-502.js deleted file mode 100644 index d3c9381..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-502.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for http://code.google.com/p/v8/issues/detail?id=502. -// -// Test that we do not generate an inlined version of the constructor -// function C. - -var X = 'x'; -function C() { this[X] = 42; } -var a = new C(); -var b = new C(); -assertEquals(42, a.x); -assertEquals(42, b.x); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-503.js b/src/3rdparty/v8/test/mjsunit/regress/regress-503.js deleted file mode 100644 index 5b156b2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-503.js +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertTrue(undefined == undefined, 1); -assertFalse(undefined <= undefined, 2); -assertFalse(undefined >= undefined, 3); -assertFalse(undefined < undefined, 4); -assertFalse(undefined > undefined, 5); - -assertTrue(null == null, 6); -assertTrue(null <= null, 7); -assertTrue(null >= null, 8); -assertFalse(null < null, 9); -assertFalse(null > null, 10); - -assertTrue(void 0 == void 0, 11); -assertFalse(void 0 <= void 0, 12); -assertFalse(void 0 >= void 0, 13); -assertFalse(void 0 < void 0, 14); -assertFalse(void 0 > void 0, 15); - -var x = void 0; - -assertTrue(x == x, 16); -assertFalse(x <= x, 17); -assertFalse(x >= x, 18); -assertFalse(x < x, 19); -assertFalse(x > x, 20); - -var not_undefined = [null, 0, 1, 1/0, -1/0, "", true, false]; -for (var i = 0; i < not_undefined.length; i++) { - x = not_undefined[i]; - - assertTrue(x == x, "" + 21 + x); - assertTrue(x <= x, "" + 22 + x); - assertTrue(x >= x, "" + 23 + x); - assertFalse(x < x, "" + 24 + x); - assertFalse(x > x, "" + 25 + x); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-515.js b/src/3rdparty/v8/test/mjsunit/regress/regress-515.js deleted file mode 100644 index 7675fe1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-515.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for http://code.google.com/p/v8/issues/detail?id=515. -// -// The test passes if it does not crash. - -var length = 2048; -var s = ""; -for (var i = 0; i < 2048; i++) { - s += '.'; -} - -var string = s + 'x' + s + 'x' + s; - -string.replace(/x/g, "") diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-524.js b/src/3rdparty/v8/test/mjsunit/regress/regress-524.js deleted file mode 100644 index b37ad8a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-524.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test allocation of a large number of maps. - -var i = 500000 -var a = new Array(i) -for (var j = 0; j < i; j++) { var o = {}; o.x = 42; delete o.x; a[j] = o; } diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-526.js b/src/3rdparty/v8/test/mjsunit/regress/regress-526.js deleted file mode 100644 index 0cae97a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-526.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test object literals with computed property and getter. - -var o = { foo: function() { }, get bar() { return {x:42} } }; - -assertEquals(42, o.bar.x); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-52801.js b/src/3rdparty/v8/test/mjsunit/regress/regress-52801.js deleted file mode 100644 index 9a34b81..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-52801.js +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Whenever we enter a with-scope, we copy the context. This in itself is fine -// (contexts may escape), but when leaving a with-scope, we currently also copy -// the context instead of reverting to the original. This does not work because -// inner functions may already have been created using the original context. In -// the failing test case below, the inner function is run in the original context -// (where x is undefined), but the assignment to x after the with-statement is -// run in the copied context: - -// RegExp caching doesn't set lastIndex correctly. -// See http://code.google.com/p/chromium/issues/detail?id=52801 - -var re = /a/g; - -var str = "bbbbabbbbabbbb"; - -// Test - -re.test(str); -assertEquals(5, re.lastIndex); - -re.lastIndex = 0; -re.test(str); -assertEquals(5, re.lastIndex); // Fails if caching. - -re.lastIndex = 0; -re.test(str); -assertEquals(5, re.lastIndex); // Fails if caching. - -// Exec - -re = /a/g; - -re.exec(str); -assertEquals(5, re.lastIndex); - -re.lastIndex = 0; -re.exec(str); -assertEquals(5, re.lastIndex); // Fails if caching. - -re.lastIndex = 0; -re.exec(str); -assertEquals(5, re.lastIndex); // Fails if caching. diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-540.js b/src/3rdparty/v8/test/mjsunit/regress/regress-540.js deleted file mode 100644 index c40fa2c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-540.js +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test context slot declarations in the arguments object. -// See http://code.google.com/p/v8/issues/detail?id=540 - -function f(x, y) { eval(x); return y(); } -var result = f("function y() { return 1; }", function () { return 0; }) -assertEquals(1, result); - -result = - (function (x) { - function x() { return 3; } - return x(); - })(function () { return 2; }); -assertEquals(3, result); - -result = - (function (x) { - function x() { return 5; } - return arguments[0](); - })(function () { return 4; }); -assertEquals(5, result); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-545.js b/src/3rdparty/v8/test/mjsunit/regress/regress-545.js deleted file mode 100644 index 36cde6d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-545.js +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=545 -// and: http://code.google.com/p/chromium/issues/detail?id=28353 - -// The "this" variable proxy was reused. If context annotations differ between -// uses, this can cause a use in a value context to assume a test context. Since -// it has no true/false labels set, it causes a null-pointer dereference and -// segmentation fault. - -// Code should not crash: - -// Original bug report by Robert Swiecki (wrapped to not throw): -try { - new IsPrimitive(load())?this.join():String(' ').charCodeAt((!this>Math)); -} catch (e) {} - -// Shorter examples: - -this + !this; - -this + (this ? 1 : 2); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-57.js b/src/3rdparty/v8/test/mjsunit/regress/regress-57.js deleted file mode 100644 index 1d410b9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-57.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -try { - delete (void 0).x; -} catch (e) { - print(e.toString()); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-580.js b/src/3rdparty/v8/test/mjsunit/regress/regress-580.js deleted file mode 100644 index 6b1d098..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-580.js +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test constant folding of smi operations that overflow a 32-bit int -// See http://code.google.com/p/v8/issues/detail?id=580 - -function num_ops() { - var x; - var tmp = 0; - x = (tmp = 1578221999, tmp)+(tmp = 572285336, tmp); - assertEquals(2150507335, x, "++"); - x = 1578221999 + 572285336; - assertEquals(2150507335, x); - - x = (tmp = -1500000000, tmp)+(tmp = -2000000000, tmp); - assertEquals(-3500000000, x, "+-"); - x = -1500000000 + -2000000000; - assertEquals(-3500000000, x); - - x = (tmp = 1578221999, tmp)-(tmp = -572285336, tmp); - assertEquals(2150507335, x, "--"); - x = 1578221999 - -572285336; - assertEquals(2150507335, x); - - x = (tmp = -1500000000, tmp)-(tmp = 2000000000, tmp); - assertEquals(-3500000000, x, "-+"); - x = -1500000000 - 2000000000; - assertEquals(-3500000000, x); -} - -num_ops(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-58740.js b/src/3rdparty/v8/test/mjsunit/regress/regress-58740.js deleted file mode 100644 index ab3e93b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-58740.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/chromium/issues/detail?id=58740 - -var re = /.+/g; -re.exec(""); -re.exec("anystring"); -re=/.+/g; -re.exec(""); -assertEquals(0, re.lastIndex); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-588599.js b/src/3rdparty/v8/test/mjsunit/regress/regress-588599.js deleted file mode 100644 index a1c16e2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-588599.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertFalse(Infinity == -Infinity); -assertEquals(Infinity, 1 / 1e-9999); -assertEquals(-Infinity, 1 / -1e-9999); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-6-9-regexp.js b/src/3rdparty/v8/test/mjsunit/regress/regress-6-9-regexp.js deleted file mode 100644 index c73b37d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-6-9-regexp.js +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check that the perfect mask check isn't overly optimistic. - -assertFalse(/[6-9]/.test('2')); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-603.js b/src/3rdparty/v8/test/mjsunit/regress/regress-603.js deleted file mode 100644 index f9344ee..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-603.js +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Calling non-objects directly or via Function.prototype.call should -// not mess up the stack. -// http://code.google.com/p/v8/issues/detail?id=603 - -var re = /b../; -assertThrows(function() { - return re('abcdefghijklm') + 'z'; -}); - -var re1 = /c../; -re1.call = Function.prototype.call; -assertThrows(function() { - re1.call(null, 'abcdefghijklm') + 'z'; -}); - -var re2 = /d../; -assertThrows(function() { - Function.prototype.call.call(re2, null, 'abcdefghijklm') + 'z'; -}); - -var re3 = /e../; -assertThrows(function() { - Function.prototype.call.apply( - re3, [null, 'abcdefghijklm']) + 'z'; -}); - -var re4 = /f../; -assertThrows(function() { - Function.prototype.apply.call( - re4, null, ['abcdefghijklm']) + 'z'; -}); - -var re5 = /g../; -assertThrows(function() { - Function.prototype.apply.apply( - re4, [null, ['abcdefghijklm']]) + 'z'; -}); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-612.js b/src/3rdparty/v8/test/mjsunit/regress/regress-612.js deleted file mode 100644 index aee6d53..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-612.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Tests intercation between __defineGetter__/__defineSetter and fast and slow -// mode of the objects due to series of assignments optimization. -// (See http://code.google.com/p/v8/issues/detail?id=612) - -obj = {} - -// Define getter which currently moves object into slow mode. -obj.__defineGetter__('foobar', function() { return 42; }) - -// Starts initialization block mode. And turns object into slow mode. -obj.a = 1 -obj.b = 2; -obj.c = 3; -// Now object is turned into fast mode, but it has getter defined above... - -// Now assert is triggered. -obj.__defineGetter__('foobar', function() { return 42; }) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-619.js b/src/3rdparty/v8/test/mjsunit/regress/regress-619.js deleted file mode 100644 index 4d3e66b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-619.js +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Tests that Object.defineProperty works correctly on array indices. -// Please see http://code.google.com/p/v8/issues/detail?id=619 for details. - -var obj = {}; -obj[1] = 42; -assertEquals(42, obj[1]); -Object.defineProperty(obj, '1', {value:10, writable:false}); -assertEquals(10, obj[1]); - -// We should not be able to override obj[1]. -obj[1] = 5; -assertEquals(10, obj[1]); - -// Try on a range of numbers. -for(var i = 0; i < 1024; i++) { - obj[i] = 42; -} - -for(var i = 0; i < 1024; i++) { - Object.defineProperty(obj, i, {value: i, writable:false}); -} - -for(var i = 0; i < 1024; i++) { - assertEquals(i, obj[i]); -} - -for(var i = 0; i < 1024; i++) { - obj[1] = 5; -} - -for(var i = 0; i < 1024; i++) { - assertEquals(i, obj[i]); -} - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-634.js b/src/3rdparty/v8/test/mjsunit/regress/regress-634.js deleted file mode 100644 index b68e843..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-634.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -for (var i = 0; i < 1000000; i++) { - a = new Array(0); - assertEquals(0, a.length); - assertEquals(0, a.length); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-636.js b/src/3rdparty/v8/test/mjsunit/regress/regress-636.js deleted file mode 100644 index 8e0196d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-636.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function test() { - var i, result = ""; - var value = parseFloat(5.5); - value = Math.abs(1025); - for(i = 12; --i; result = ( value % 2 ) + result, value >>= 1); - return result; -}; - -assertEquals("10000000001", test()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-641.js b/src/3rdparty/v8/test/mjsunit/regress/regress-641.js deleted file mode 100644 index 957caa8..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-641.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for http://code.google.com/p/v8/issues/detail?id=641. - - function f(){ - while (window + 1) { - const window=[,]; - } -} -f() diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-643.js b/src/3rdparty/v8/test/mjsunit/regress/regress-643.js deleted file mode 100644 index 39c467b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-643.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for http://code.google.com/p/v8/issues/detail?id=643. - -function f() { - var test = {x:1}; - var a = test; - a.x = a = 42; - return test.x; -} - -assertEquals(42, f()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-646.js b/src/3rdparty/v8/test/mjsunit/regress/regress-646.js deleted file mode 100644 index b862350..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-646.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for http://code.google.com/p/v8/issues/detail?id=646. - -function f() { this.__proto__ = 42 } -var count = 0; -for (var x in new f()) count++; -assertEquals(0, count); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-662254.js b/src/3rdparty/v8/test/mjsunit/regress/regress-662254.js deleted file mode 100644 index daf5e17..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-662254.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function f() { - for (var c in []) { } -} - -f(); - - -function g() { - var c; - for (c in []) { } -} - -g(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-666721.js b/src/3rdparty/v8/test/mjsunit/regress/regress-666721.js deleted file mode 100644 index e2c632f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-666721.js +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function len0(a) { return a.length; } -function len1(a) { return a.length; } -function len2(a) { return a.length; } -function len3(a) { return a.length; } - -assertEquals(0, len0([])); -assertEquals(1, len0({length:1})); -assertEquals(2, len0([1,2])); -assertEquals(3, len0('123')); - -assertEquals(0, len1('')); -assertEquals(1, len1({length:1})); -assertEquals(2, len1('12')); -assertEquals(3, len1([1,2,3])); - -assertEquals(0, len2({length:0})); -assertEquals(1, len2([1])); -assertEquals(2, len2({length:2})); -assertEquals(3, len2([1,2,3])); -assertEquals(4, len2('1234')); - -assertEquals(0, len3({length:0})); -assertEquals(1, len3('1')); -assertEquals(2, len3({length:2})); -assertEquals(3, len3('123')); -assertEquals(4, len3([1,2,3,4])); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-667061.js b/src/3rdparty/v8/test/mjsunit/regress/regress-667061.js deleted file mode 100644 index 4d29a1a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-667061.js +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test non-ICC case. -var caught = false; -try { - (('foo'))(); -} catch (o) { - assertTrue(o instanceof TypeError); - caught = true; -} -assertTrue(caught); - - -// Test uninitialized case. -function h(o) { - return o.x(); -} - -var caught = false; -try { - h({ x: 1 }); -} catch (o) { - assertTrue(o instanceof TypeError); - caught = true; -} -assertTrue(caught); - - -// Test monomorphic case. -function g(o) { - return o.x(); -} - -function O(x) { this.x = x; }; -var o = new O(function() { return 1; }); -assertEquals(1, g(o)); // go monomorphic -assertEquals(1, g(o)); // stay monomorphic - -var caught = false; -try { - g(new O(3)); -} catch (o) { - assertTrue(o instanceof TypeError); - caught = true; -} -assertTrue(caught); - - -// Test megamorphic case. -function f(o) { - return o.x(); -} - -assertEquals(1, f({ x: function () { return 1; }})); // go monomorphic -assertEquals(2, f({ x: function () { return 2; }})); // go megamorphic -assertEquals(3, f({ x: function () { return 3; }})); // stay megamorphic - -var caught = false; -try { - f({ x: 4 }); -} catch (o) { - assertTrue(o instanceof TypeError); - caught = true; -} -assertTrue(caught); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-670147.js b/src/3rdparty/v8/test/mjsunit/regress/regress-670147.js deleted file mode 100644 index b5b00d0..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-670147.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function XXX(x) { - var k = delete x; - return k; -} - -assertFalse(XXX('Hello')); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-674753.js b/src/3rdparty/v8/test/mjsunit/regress/regress-674753.js deleted file mode 100644 index 361b457..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-674753.js +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Number -assertTrue(typeof 0 == 'number'); -assertTrue(typeof 0 === 'number'); -assertTrue(typeof 1.2 == 'number'); -assertTrue(typeof 1.2 === 'number'); -assertFalse(typeof 'x' == 'number'); -assertFalse(typeof 'x' === 'number'); - -// String -assertTrue(typeof 'x' == 'string'); -assertTrue(typeof 'x' === 'string'); -assertTrue(typeof ('x' + 'x') == 'string'); -assertTrue(typeof ('x' + 'x') === 'string'); -assertFalse(typeof 1 == 'string'); -assertFalse(typeof 1 === 'string'); -assertFalse(typeof Object() == 'string'); -assertFalse(typeof Object() === 'string'); - -// Boolean -assertTrue(typeof true == 'boolean'); -assertTrue(typeof true === 'boolean'); -assertTrue(typeof false == 'boolean'); -assertTrue(typeof false === 'boolean'); -assertFalse(typeof 1 == 'boolean'); -assertFalse(typeof 1 === 'boolean'); -assertFalse(typeof Object() == 'boolean'); -assertFalse(typeof Object() === 'boolean'); - -// Undefined -assertTrue(typeof void 0 == 'undefined'); -assertTrue(typeof void 0 === 'undefined'); -assertFalse(typeof 1 == 'undefined'); -assertFalse(typeof 1 === 'undefined'); -assertFalse(typeof Object() == 'undefined'); -assertFalse(typeof Object() === 'undefined'); - -// Function -assertTrue(typeof Object == 'function'); -assertTrue(typeof Object === 'function'); -assertFalse(typeof 1 == 'function'); -assertFalse(typeof 1 === 'function'); -assertFalse(typeof Object() == 'function'); -assertFalse(typeof Object() === 'function'); - -// Object -assertTrue(typeof Object() == 'object'); -assertTrue(typeof Object() === 'object'); -assertTrue(typeof new String('x') == 'object'); -assertTrue(typeof new String('x') === 'object'); -assertTrue(typeof ['x'] == 'object'); -assertTrue(typeof ['x'] === 'object'); -assertTrue(typeof null == 'object'); -assertTrue(typeof null === 'object'); -assertFalse(typeof 1 == 'object'); -assertFalse(typeof 1 === 'object'); -assertFalse(typeof 'x' == 'object'); // bug #674753 -assertFalse(typeof 'x' === 'object'); -assertFalse(typeof Object == 'object'); -assertFalse(typeof Object === 'object'); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-675.js b/src/3rdparty/v8/test/mjsunit/regress/regress-675.js deleted file mode 100644 index 19ca646..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-675.js +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for http://code.google.com/p/v8/issues/detail?id=675. -// -// Test that load ICs for nonexistent properties check global -// property cells. - -function f() { return this.x; } - -// Initialize IC for nonexistent x property on global object. -f(); -f(); - -// Assign to global property cell for x. -this.x = 23; - -// Check that we bail out from the IC. -assertEquals(23, f()); - - -// Same test, but test that the global property cell is also checked -// if the global object is the last object in the prototype chain for -// the load. -this.__proto__ = null; -function g() { return this.y; } - -// Initialize IC. -g(); -g(); - -// Update global property cell. -this.y = 42; - -// Check that IC bails out. -assertEquals(42, g()); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-676025.js b/src/3rdparty/v8/test/mjsunit/regress/regress-676025.js deleted file mode 100644 index 15157f2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-676025.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var result; -try { eval('a=/(/'); } catch (e) { result = e; } -assertEquals('object', typeof result); -assertTrue(result instanceof SyntaxError); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-678525.js b/src/3rdparty/v8/test/mjsunit/regress/regress-678525.js deleted file mode 100644 index 11eaf74..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-678525.js +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertEquals(0, '\0'.charCodeAt(0)); -assertEquals(1, '\1'.charCodeAt(0)); -assertEquals(2, '\2'.charCodeAt(0)); -assertEquals(3, '\3'.charCodeAt(0)); -assertEquals(4, '\4'.charCodeAt(0)); -assertEquals(5, '\5'.charCodeAt(0)); -assertEquals(6, '\6'.charCodeAt(0)); -assertEquals(7, '\7'.charCodeAt(0)); -assertEquals(56, '\8'.charCodeAt(0)); - -assertEquals('\010', '\10'); -assertEquals('\011', '\11'); -assertEquals('\012', '\12'); -assertEquals('\013', '\13'); -assertEquals('\014', '\14'); -assertEquals('\015', '\15'); -assertEquals('\016', '\16'); -assertEquals('\017', '\17'); - -assertEquals('\020', '\20'); -assertEquals('\021', '\21'); -assertEquals('\022', '\22'); -assertEquals('\023', '\23'); -assertEquals('\024', '\24'); -assertEquals('\025', '\25'); -assertEquals('\026', '\26'); -assertEquals('\027', '\27'); - -assertEquals(73, '\111'.charCodeAt(0)); -assertEquals(105, '\151'.charCodeAt(0)); - - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-681.js b/src/3rdparty/v8/test/mjsunit/regress/regress-681.js deleted file mode 100644 index 6708d05..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-681.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for http://code.google.com/p/v8/issues/detail?id=681. -// -// Test that load ICs for nonexistent properties bail out on smi receiver. - - -var x = {}; -function f() { return x.y; } - -// Initialize IC for nonexistent y property on x. -f(); -f(); - -// Make x a smi. -x = 23; - -// Check that we bail out from the IC. -assertEquals(undefined, f()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-682649.js b/src/3rdparty/v8/test/mjsunit/regress/regress-682649.js deleted file mode 100644 index f23aed5..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-682649.js +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Should return [object global], v8 returns [object Object] - -assertEquals(this.toString(), eval("this.toString()")); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-685.js b/src/3rdparty/v8/test/mjsunit/regress/regress-685.js deleted file mode 100644 index d77d61b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-685.js +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for http://code.google.com/p/v8/issues/detail?id=685. -// -// Test that keyed load IC generic stub uses unsigned comparison for -// for the length field of arrays. -// -// The test passes if it does not crash. - -function test() { - var N = 0xFFFFFFFF; - var a = []; - a[N - 1] = 0; - a[N - 2] = 1; - a.reverse(); -} - -test(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-687.js b/src/3rdparty/v8/test/mjsunit/regress/regress-687.js deleted file mode 100644 index a917a44..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-687.js +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This regression includes a number of cases where we did not correctly -// update a accessor property to a data property using Object.defineProperty. - -var obj = { get value() {}, set value (v) { throw "Error";} }; -assertDoesNotThrow( - Object.defineProperty(obj, "value", - { value: 5, writable:true, configurable: true })); -var desc = Object.getOwnPropertyDescriptor(obj, "value"); -assertEquals(obj.value, 5); -assertTrue(desc.configurable); -assertTrue(desc.enumerable); -assertTrue(desc.writable); -assertEquals(desc.get, undefined); -assertEquals(desc.set, undefined); - - -var proto = { - get value() {}, - set value(v) { Object.defineProperty(this, "value", {value: v}); } -}; - -var create = Object.create(proto); - -assertEquals(create.value, undefined); -assertDoesNotThrow(create.value = 4); -assertEquals(create.value, 4); - -// These tests where provided in bug 959, but are all related to the this issue. -var obj1 = {}; -Object.defineProperty(obj1, 'p', {get: undefined, set: undefined}); -assertTrue("p" in obj1); -desc = Object.getOwnPropertyDescriptor(obj1, "p"); -assertFalse(desc.configurable); -assertFalse(desc.enumerable); -assertEquals(desc.value, undefined); -assertEquals(desc.get, undefined); -assertEquals(desc.set, undefined); - - -var obj2 = { get p() {}}; -Object.defineProperty(obj2, 'p', {get: undefined}) -assertTrue("p" in obj2); -desc = Object.getOwnPropertyDescriptor(obj2, "p"); -assertTrue(desc.configurable); -assertTrue(desc.enumerable); -assertEquals(desc.value, undefined); -assertEquals(desc.get, undefined); -assertEquals(desc.set, undefined); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-69.js b/src/3rdparty/v8/test/mjsunit/regress/regress-69.js deleted file mode 100644 index 3fb1f76..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-69.js +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This tests a switch statement with only default clause leaves -// balanced stack. It should not trigger the break point when --debug_code -// flag is turned on. -// See issue: http://code.google.com/p/v8/issues/detail?id=69 - -// Flags: --debug-code --expose-gc -function unbalanced_switch(a) { - try { - switch (a) { - default: break; - } - } catch (e) {} - gc(); -} - -unbalanced_switch(1); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-696.js b/src/3rdparty/v8/test/mjsunit/regress/regress-696.js deleted file mode 100644 index e443c42..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-696.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=696 -// Because of the change in dateparser in revision 4557 to support time -// only strings in Date.parse we also misleadingly supported strings with non -// leading numbers. - -assertTrue(isNaN(Date.parse('x'))); -assertTrue(isNaN(Date.parse('1x'))); -assertTrue(isNaN(Date.parse('xT10:00:00'))); -assertTrue(isNaN(Date.parse('This is a relatively long string'))); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-697.js b/src/3rdparty/v8/test/mjsunit/regress/regress-697.js deleted file mode 100644 index a59e2b2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-697.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=697 - -try { - Object.create(function(){}); -} catch (e) { - assertTrue(false); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-70066.js b/src/3rdparty/v8/test/mjsunit/regress/regress-70066.js deleted file mode 100644 index 01c2f4f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-70066.js +++ /dev/null @@ -1,142 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for Chromium issue 70066. Delete should work properly -// from inside 'with' scopes. -// http://code.google.com/p/chromium/issues/detail?id=70066 - -x = 0; - -// Delete on a slot from a function's own context. -function test1() { - var value = 1; - var status; - with ({}) { status = delete value; } - return value + ":" + status; -} - -assertEquals("1:false", test1(), "test1"); -assertEquals(0, x, "test1"); // Global x is undisturbed. - - -// Delete on a slot from an outer context. -function test2() { - function f() { - with ({}) { return delete value; } - } - var value = 2; - var status = f(); - return value + ":" + status; -} - -assertEquals("2:false", test2(), "test2"); -assertEquals(0, x, "test2"); // Global x is undisturbed. - - -// Delete on a parameter. -function test3(value) { - var status; - with ({}) { status = delete value; } - return value + ":" + status; -} - -assertEquals("3:false", test3(3), "test3"); -assertEquals(0, x, "test3"); // Global x is undisturbed. - - -// Delete on a parameter found in an outer context. -function test4(value) { - function f() { - with ({}) { return delete value; } - } - var status = f(); - return value + ":" + status; -} - -assertEquals("4:false", test4(4), "test4"); -assertEquals(0, x, "test4"); // Global x is undisturbed. - - -// Delete on a parameter, arguments object should be unaffected. -function test5(value) { - var status; - with ({}) { status = delete value; } - return arguments[0] + ":" + status; -} - -assertEquals("5:false", test5(5), "test5"); -assertEquals(0, x, "test5"); // Global x is undisturbed. - -function test6(value) { - function f() { - with ({}) { return delete value; } - } - var status = f(); - return arguments[0] + ":" + status; -} - -assertEquals("6:false", test6(6), "test6"); -assertEquals(0, x, "test6"); // Global x is undisturbed. - - -// Delete on a property found on 'with' object. -function test7(object) { - with (object) { return delete value; } -} - -var o = {value: 7}; -assertEquals(true, test7(o), "test7"); -assertEquals(void 0, o.value, "test7"); -assertEquals(0, x, "test7"); // Global x is undisturbed. - - -// Delete on a global property. -function test8() { - with ({}) { return delete x; } -} - -assertEquals(true, test8(), "test8"); -assertThrows("x", "test8"); // Global x should be deleted. - - -// Delete on a property that is not found anywhere. -function test9() { - with ({}) { return delete x; } -} - -assertThrows("x", "test9"); // Make sure it's not there. -assertEquals(true, test9(), "test9"); - - -// Delete on a DONT_DELETE property of the global object. -var y = 10; -function test10() { - with ({}) { return delete y; } -} - -assertEquals(false, test10(), "test10"); -assertEquals(10, y, "test10"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-712.js b/src/3rdparty/v8/test/mjsunit/regress/regress-712.js deleted file mode 100644 index b26b94a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-712.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This regression test is used to ensure that Object.defineProperty -// can't be called with an empty property descriptor on a non-configurable -// existing property and override the existing property. -// See: http://code.google.com/p/v8/issues/detail?id=712 - -var obj = {}; -Object.defineProperty(obj, "x", { get: function() { return "42"; }, - configurable: false }); -assertEquals(obj.x, "42"); -Object.defineProperty(obj, 'x', {}); -assertEquals(obj.x, "42"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-71647.js b/src/3rdparty/v8/test/mjsunit/regress/regress-71647.js deleted file mode 100644 index 4451011..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-71647.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var qe = 'object'; - -function g() { - for (var i = 0; i < 10000; i++) typeof i === qe; -} - -g(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-720.js b/src/3rdparty/v8/test/mjsunit/regress/regress-720.js deleted file mode 100644 index 267b32d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-720.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This regression test is used to ensure that Object.defineProperty -// keeps the existing value of the writable flag if none is given -// in the provided descriptor. -// See: http://code.google.com/p/v8/issues/detail?id=720 - -var o = {x: 10}; -Object.defineProperty(o, "x", {value: 5}); -var desc = Object.getOwnPropertyDescriptor(o, "x"); -assertTrue(desc["writable"]); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-728.js b/src/3rdparty/v8/test/mjsunit/regress/regress-728.js deleted file mode 100644 index 196b118..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-728.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var obj = { 0: "obj0" }; - -// Array index k is to big to fit into the string hash field. -var k = 16777217; -var h = "" + k; - -obj[k] = "obj" + k; - -// Force computation of hash for the string representation of array index. -for (var i = 0; i < 10; i++) { ({})[h]; } - -function get(idx) { return obj[idx]; } - -assertEquals(get(0), "obj0"); -assertEquals(get(h), "obj" + h); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-732.js b/src/3rdparty/v8/test/mjsunit/regress/regress-732.js deleted file mode 100644 index 2b02ea6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-732.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// idx is a valid array index but is too big to be cached in hash field. -var idx = 10000000; - -// Create a JSObject with NumberDictionary as a backing store for elements. -var obj = { }; -for (var i = 0; i < 100000; i += 100) { obj[i] = "obj" + i; } - -// Set value using numeric index. -obj[idx] = "obj" + idx; - -// Make a string from index. -var str = "" + idx; - -// Force hash computation for the string representation of index. -for (var i = 0; i < 10; i++) { ({})[str]; } - -// Try getting value back using string and number representations of -// the same index. -assertEquals(obj[str], obj[idx]) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-734862.js b/src/3rdparty/v8/test/mjsunit/regress/regress-734862.js deleted file mode 100644 index 6239047..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-734862.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function catcher(o, p) { - try { o[p]; } catch (e) { return e; } - throw p; -} - -assertTrue(catcher(null, 'foo') instanceof TypeError); -assertTrue(catcher(void 0, 'foo') instanceof TypeError); -assertTrue(catcher(null, 123) instanceof TypeError); -assertTrue(catcher(void 0, 123) instanceof TypeError); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-737588.js b/src/3rdparty/v8/test/mjsunit/regress/regress-737588.js deleted file mode 100644 index 0f71dfc..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-737588.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var goog = goog || {} ; -goog.global = this; -goog.globalEval = function(script) { - return goog.global.eval(script); -}; - -assertEquals(125, goog.globalEval('var foofoofoo = 125; foofoofoo')); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-74.js b/src/3rdparty/v8/test/mjsunit/regress/regress-74.js deleted file mode 100644 index f22b33c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-74.js +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that the variable introduced by catch blocks is DontDelete. -// See http://code.google.com/p/v8/issues/detail?id=74 - -function test() { - try { - throw 42; - } catch(e) { - assertFalse(delete e, "deleting catch variable"); - assertEquals(42, e); - } -} - -test(); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-747.js b/src/3rdparty/v8/test/mjsunit/regress/regress-747.js deleted file mode 100644 index 648c366..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-747.js +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose_gc - -// This test makes sure that we do flush code with heap allocated locals. -// This can be a problem if eval is used within the scope. -// See: http://code.google.com/p/v8/issues/detail?id=747 - -(function() { - var x = 42; - this.callEval = function() {eval('x');}; -})(); - -try { - callEval(); -} catch (e) { - assertUnreachable(); -} - -gc(); -gc(); -gc(); -gc(); -gc(); -gc(); - -try { - callEval(); -} catch (e) { - assertUnreachable(); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-752.js b/src/3rdparty/v8/test/mjsunit/regress/regress-752.js deleted file mode 100644 index d38870e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-752.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that JSON.stringify correctly unwraps Boolean objects. - -// See: http://code.google.com/p/v8/issues/detail?id=752 - -function replacer(key, value) { - return value === 42 ? new Boolean(false) : value; -} - -assertEquals("[false]", JSON.stringify([42], replacer)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-753.js b/src/3rdparty/v8/test/mjsunit/regress/regress-753.js deleted file mode 100644 index 6a6d87b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-753.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that JSON.stringify correctly truncates floating point numbers. -// This test is based on chapter15/15.12/15.12.3/15.12.3-6-a-2.js in the -// ES5 conformance tests. - -// See: http://code.google.com/p/v8/issues/detail?id=753 - -var obj = {a1: {b1: [1,2,3,4], b2: {c1: 1, c2: 2}},a2: 'a2'}; -assertEquals(JSON.stringify(obj,null, 5.99999), JSON.stringify(obj,null, 5)); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-754.js b/src/3rdparty/v8/test/mjsunit/regress/regress-754.js deleted file mode 100644 index 0b84416..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-754.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that Array.prototype.lastIndexOf correctly handles null and undefined -// as fromIndex argument. - -// See: http://code.google.com/p/v8/issues/detail?id=754 - -var a = new Array(1,2,1); -assertEquals(1, a.lastIndexOf(2)); -assertEquals(2, a.lastIndexOf(1)); -assertEquals(0, a.lastIndexOf(1, undefined)); -assertEquals(0, a.lastIndexOf(1, null)); -assertEquals(-1, a.lastIndexOf(2, undefined)); -assertEquals(-1, a.lastIndexOf(2, null)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-760-1.js b/src/3rdparty/v8/test/mjsunit/regress/regress-760-1.js deleted file mode 100644 index 081c993..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-760-1.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check that when valueOf for a String object is overwritten it is called and -// the result used when that object is added with a string. - -// See: http://code.google.com/p/v8/issues/detail?id=760 - -String.prototype.valueOf = function() { return 'y' }; - -function test() { - var o = Object('x'); - assertEquals('y', o + ''); - assertEquals('y', '' + o); -} - -for (var i = 0; i < 10; i++) { - var o = Object('x'); - assertEquals('y', o + ''); - assertEquals('y', '' + o); -} - -for (var i = 0; i < 10; i++) { - test() -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-760-2.js b/src/3rdparty/v8/test/mjsunit/regress/regress-760-2.js deleted file mode 100644 index 549ed4e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-760-2.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check that when valueOf for a String object is overwritten it is called and -// the result used when that object is added with a string. - -// See: http://code.google.com/p/v8/issues/detail?id=760 - -function test() { - var o = Object('x'); - o.valueOf = function() { return 'y' }; - assertEquals('y', o + ''); - assertEquals('y', '' + o); -} - -for (var i = 0; i < 10; i++) { - var o = Object('x'); - o.valueOf = function() { return 'y' }; - assertEquals('y', o + ''); - assertEquals('y', '' + o); -} - -for (var i = 0; i < 10; i++) { - test() -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-780423.js b/src/3rdparty/v8/test/mjsunit/regress/regress-780423.js deleted file mode 100644 index 862db32..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-780423.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var Class = { - create: function() { - return function kurt() { - } - } -}; - -var o1 = Class.create(); -var o2 = Class.create(); - -assertTrue(o1 !== o2, "different functions"); -assertTrue(o1.prototype !== o2.prototype, "different protos"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-78270.js b/src/3rdparty/v8/test/mjsunit/regress/regress-78270.js deleted file mode 100644 index b9ce286..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-78270.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -for (var i = 0; i < 10000; i++) { - try { - var object = { }; - function g(f0) { - var f0 = (object instanceof encodeURI)('foo'); - } - g(75); - } catch (g) { - } -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-784.js b/src/3rdparty/v8/test/mjsunit/regress/regress-784.js deleted file mode 100644 index 4ba0227..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-784.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that CallApplyLazy, generating optimized code for apply calls of the -// form x.apply(y, arguments), does not leave an extra copy of the result -// on the stack. - -// See http://code.google.com/p/v8/issues/detail?id=784 - -A = {x:{y:function(i){return i;}}}; -B = function(x){return 17;}; - -foo = function () { - A.x.y(B.apply(this, arguments)); -}; - -foo(); -foo("Hello", "There"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-794.js b/src/3rdparty/v8/test/mjsunit/regress/regress-794.js deleted file mode 100644 index 409b2ef..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-794.js +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test the a bound function does not have a prototype. - -function foo() {} -assertFalse("prototype" in foo.bind()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-798.js b/src/3rdparty/v8/test/mjsunit/regress/regress-798.js deleted file mode 100644 index 182eb4d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-798.js +++ /dev/null @@ -1,108 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var x = {}; - -// Add property a with getter/setter. -x.__defineGetter__("a", function() { - try { - y.x = 40; - } catch (e) { - assertEquals(3, e.stack.split('\n').length); - } - return 40; -}); - -x.__defineSetter__("a", function(val) { - try { - y.x = 40; - } catch(e) { - assertEquals(3, e.stack.split('\n').length); - } -}); - -// Add property b with getter/setter. -function getB() { - try { - y.x = 30; - } catch (e) { - assertEquals(3, e.stack.split('\n').length); - } - return 30; -} - -function setB(val) { - try { - y.x = 30; - } catch(e) { - assertEquals(3, e.stack.split('\n').length); - } -} - -x.__defineGetter__("b", getB); -x.__defineSetter__("b", setB); - -// Add property c with getter/setter. -var descriptor = { - get: function() { - try { - y.x = 40; - } catch (e) { - assertEquals(3, e.stack.split('\n').length); - } - return 40; - }, - set: function(val) { - try { - y.x = 40; - } catch(e) { - assertEquals(3, e.stack.split('\n').length); - } - } -} - -Object.defineProperty(x, 'c', descriptor) - -// Check that the stack for an exception in a getter and setter produce the -// expected stack height. -x.a; -x.b; -x.c; -x.a = 1; -x.b = 1; -x.c = 1; - -// Do the same with the getters/setters on the a prototype object. -xx = {} -xx.__proto__ = x - -xx.a; -xx.b; -xx.c; -xx.a = 1; -xx.b = 1; -xx.c = 1; diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-799761.js b/src/3rdparty/v8/test/mjsunit/regress/regress-799761.js deleted file mode 100644 index d3be1bd..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-799761.js +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// const variables should be read-only -const c = 42; -c = 87; -assertEquals(42, c); - - -// const variables are not behaving like other JS variables when it comes -// to scoping - in fact they behave more sanely. Inside a 'with' they do -// not interfere with the 'with' scopes. - -(function () { - with ({ x: 42 }) { - const x = 7; - } - x = 5; - assertEquals(7, x); -})(); - - -// const variables may be declared but never initialized, in which case -// their value is undefined. - -(function (sel) { - if (sel == 0) - with ({ x: 42 }) { - const x; - } - else - x = 3; - x = 5; - assertTrue(typeof x == 'undefined'); -})(1); - - -// const variables may be initialized to undefined. -(function () { - with ({ x: 42 }) { - const x = undefined; - } - x = 5; - assertTrue(typeof x == 'undefined'); -})(); - - -// const variables may be accessed in inner scopes like any other variable. -(function () { - function bar() { - assertEquals(7, x); - } - with ({ x: 42 }) { - const x = 7; - } - x = 5 - bar(); -})(); - - -// const variables may be declared via 'eval' -(function () { - with ({ x: 42 }) { - eval('const x = 7'); - } - x = 5; - assertEquals(7, x); -})(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-806.js b/src/3rdparty/v8/test/mjsunit/regress/regress-806.js deleted file mode 100644 index 1bb3e0f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-806.js +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that we do no use r12 as a receiver in inlined NamedStores on x64. - -// See: http://code.google.com/p/v8/issues/detail?id=806 - -function foo(a) { - for (var o = 1; o < 2; o++) { - for (var n = 1; n < 2; n++) { - for (var m = 1; m < 2; m++) { - for (var l = 1; l < 2; l++) { - for (var i = 1; i < 2; i++) { - for (var j = 1; j < 2; j++) { - for (var k = 1; k < 2; k++) { - var z = a.foo; - z.foo = i * j * k * m * n * o; - } - } - } - } - } - } - } -} - -foo({foo: {foo: 1}}); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-806473.js b/src/3rdparty/v8/test/mjsunit/regress/regress-806473.js deleted file mode 100644 index 6d6485d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-806473.js +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -function catchThese() { - L: { - try { - break L; - } catch (e) {} - } -} - -function finallyThese() { - L: { - try { - break L; - } finally {} - } -} - - -for (var i = 0; i < 10; i++) { - catchThese(); - gc(); -} - -for (var j = 0; j < 10; j++) { - finallyThese(); - gc(); -} - -assertEquals(10, i); -assertEquals(10, j); - - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-815.js b/src/3rdparty/v8/test/mjsunit/regress/regress-815.js deleted file mode 100644 index 803c0fb..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-815.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// 815 describes a situation in which the ARM code generator could -// end up in a spilled scope in code that only worked in a register -// allocated scope. Test that this no longer happens. -// -// The code generated for unary + assumes that we are not in a spilled -// scope. - -var o = new Object(); - -// The code for the iterated-over object in for-in used to be emitted -// in a spilled scope: -for (x in +o) { } - -// Emitting code for the left hand side of a for-in. -for (a[+o] in o) {} - -// The receiver in an obj[index](1, 2, 3) call: -try { - o[+o](1,2,3) -} catch(e) { - // It's OK as long as it does not hit an assert. -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-82769.js b/src/3rdparty/v8/test/mjsunit/regress/regress-82769.js deleted file mode 100644 index 6a95e9a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-82769.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --noinline-new - -x = -1; -y = -0; -for (var i = 0; i < 5; i++) { - assertEquals(0xFFFFFFFF, (x >>> y)); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-842.js b/src/3rdparty/v8/test/mjsunit/regress/regress-842.js deleted file mode 100644 index 18ad6d3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-842.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// 842 describes a scenario where Object.prototype or Array.prototype is -// changed (a property is added) after which freeze and seal would fail -// since that property would be listed when doing a "for (var key in names)" - -Array.prototype.myfunc = function() {}; -Array.prototype[10] = 42; -Array.prototype.length = 3000; - -var obj = { name: "n1" }; - -try { - obj = Object.freeze(obj); -} catch (e) { - assertUnreachable(); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-842017.js b/src/3rdparty/v8/test/mjsunit/regress/regress-842017.js deleted file mode 100644 index 3a367bb..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-842017.js +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -function break_from_for_in() { - L: { - try { - for (var x in [1,2,3]) { - break L; - } - } finally {} - } -} - -function break_from_finally() { - L: { - try { - } finally { - break L; - } - } -} - -for (var i = 0; i < 10; i++) { - break_from_for_in(); - gc(); -} - -for (var j = 0; j < 10; j++) { - break_from_finally(); - gc(); -} - -assertEquals(10, i); -assertEquals(10, j); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-84234.js b/src/3rdparty/v8/test/mjsunit/regress/regress-84234.js deleted file mode 100644 index 6377fb3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-84234.js +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc --noopt - -var gTestcases = new Array(); - -function TestCase(n, d, e, a) { - gTestcases[gTc++] = this; - for ( gTc=0; gTc < gTestcases.length; gTc++ ); -} - -for ( var i = 0x0530; i <= 0x058F; i++ ) { - new TestCase("15.5.4.11-6", - eval("var s = new String(String.fromCharCode(i)); s.toLowerCase().charCodeAt(0)")); -} -var gTc= 0; - - -for (var j = 0; j < 10; j++) { - test(); - function test() { - for ( 0; gTc < gTestcases.length; gTc++ ) { - var MYOBJECT = new MyObject(); - } - gc(); - } - function MyObject( n ) { - this.__proto__ = Number.prototype; - } -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-851.js b/src/3rdparty/v8/test/mjsunit/regress/regress-851.js deleted file mode 100644 index d8f693e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-851.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var i = 0; -for (var i = 0; i < 10000; i++) { - Object.freeze({}); - assertNull(JSON.stringify({x: null}).match(/\0/)); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-85177.js b/src/3rdparty/v8/test/mjsunit/regress/regress-85177.js deleted file mode 100644 index 275bbe7..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-85177.js +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -gW=gH=175; -g=[]; - -for(var n=0; n<gW; n++){ - var l=[]; - for(var p=0; p<gH; p++){ - l.push(1) - } - g.push(l) -} - -function k(a,b){ - if(a<0||b<0||a>=gW||b>=gH) - return 0; - return g[a][b]; -} - -function f(){ - for(var a=[],f=0; f<gW; f++){ - var b=[]; - for(var h=0; h<gH; h++){ - var e=0; - for(var i=-1; i<=1; i++) - for(var j=-1; j<=1; j++) - e+=k(f+i,h+j); - e=k(f,h)==1?1:0; - b.push(e) - } - a.push(b) - } -} - -f(); -%OptimizeFunctionOnNextCall(f); -f(); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-857.js b/src/3rdparty/v8/test/mjsunit/regress/regress-857.js deleted file mode 100644 index 183248d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-857.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Make sure ES5 15.9.1.15 (ISO 8601 / RFC 3339) time zone offsets of -// the form "+09:00" & "-09:00" get parsed as expected -assertEquals(1283326536000, Date.parse("2010-08-31T22:35:36-09:00")); -assertEquals(1283261736000, Date.parse("2010-08-31T22:35:36+09:00")); -assertEquals(1283326536000, Date.parse("2010-08-31T22:35:36.0-09:00")); -assertEquals(1283261736000, Date.parse("2010-08-31T22:35:36.0+09:00")); -// colon-less time expressions in time zone offsets are not conformant -// with ES5 15.9.1.15 but are nonetheless supported in V8 -assertEquals(1283326536000, Date.parse("2010-08-31T22:35:36-0900")); -assertEquals(1283261736000, Date.parse("2010-08-31T22:35:36+0900")); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-86.js b/src/3rdparty/v8/test/mjsunit/regress/regress-86.js deleted file mode 100644 index a33b60b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-86.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var aList = [1, 2, 3]; -var loopCount = 0; -var leftThroughFinally = false; -var enteredFinally = false; -for (x in aList) { - leftThroughFinally = true; - try { - throw "ex1"; - } catch(er1) { - loopCount += 1; - } finally { - enteredFinally = true; - continue; - } - leftThroughFinally = false; -} -assertEquals(3, loopCount); -assertTrue(enteredFinally); -assertTrue(leftThroughFinally); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-87.js b/src/3rdparty/v8/test/mjsunit/regress/regress-87.js deleted file mode 100644 index 10446fd..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-87.js +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// In Issue 87, we allowed unicode escape sequences in RegExp flags. -// However, according to ES5, they should not be interpreted, but passed -// verbatim to the RegExp constructor. -// (On top of that, the original test was bugged and never tested anything). -// The behavior was changed in r8969 to not interpret escapes, but this -// test didn't test that, and only failed when making invalid flag characters -// an error too. - -assertThrows("/x/\\u0067"); -assertThrows("/x/\\u0069"); -assertThrows("/x/\\u006d"); - -assertThrows("/x/\\u0067i"); -assertThrows("/x/\\u0069m"); -assertThrows("/x/\\u006dg"); - -assertThrows("/x/m\\u0067"); -assertThrows("/x/g\\u0069"); -assertThrows("/x/i\\u006d"); - -assertThrows("/x/m\\u0067i"); -assertThrows("/x/g\\u0069m"); -assertThrows("/x/i\\u006dg"); - -assertThrows("/x/\\u0068"); -assertThrows("/x/\\u0020"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-874.js b/src/3rdparty/v8/test/mjsunit/regress/regress-874.js deleted file mode 100644 index 384d9c7..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-874.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var x = { }; - -var getter = function(){ return 42; }; -var setter = function(value){ }; -x.__defineGetter__(0, getter); -x.__defineSetter__(0, setter); - -assertEquals (undefined, Object.getOwnPropertyDescriptor(x, 0).value); -assertEquals (getter, Object.getOwnPropertyDescriptor(x, 0).get); -assertEquals (setter, Object.getOwnPropertyDescriptor(x, 0).set); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-874178.js b/src/3rdparty/v8/test/mjsunit/regress/regress-874178.js deleted file mode 100644 index 0ed5434..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-874178.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function foo(){} -assertTrue(Function.prototype.isPrototypeOf(foo)); - -foo.bar = 'hello'; -assertTrue(foo.propertyIsEnumerable('bar')); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-875031.js b/src/3rdparty/v8/test/mjsunit/regress/regress-875031.js deleted file mode 100644 index f18b084..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-875031.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for issue 875031. - -var caught = false; -try { - eval("return;"); - assertTrue(false); // should not reach here -} catch (e) { - caught = true; -} -assertTrue(caught); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-877615.js b/src/3rdparty/v8/test/mjsunit/regress/regress-877615.js deleted file mode 100644 index bec5a4d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-877615.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -Number.prototype.toLocaleString = function() { return 'invalid'; }; -assertEquals('invalid', [1].toLocaleString()); // invalid - -Number.prototype.toLocaleString = 'invalid'; -assertThrows(function() { [1].toLocaleString(); }); // Not callable. - -delete Number.prototype.toLocaleString; -Number.prototype.toString = function() { return 'invalid' }; -assertEquals([1].toLocaleString(), 'invalid'); // Uses ToObject on elements. -assertEquals([1].toString(), '1'); // Uses ToString directly on elements. diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-88591.js b/src/3rdparty/v8/test/mjsunit/regress/regress-88591.js deleted file mode 100644 index e42570a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-88591.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for a crash. A data property in the global object's -// prototype shadowed by a setter in the global object's prototype's -// prototype would crash or assert when seen by Runtime_DeclareContextSlot. -var called = false; -Object.prototype.__defineSetter__('x', function(x) { called = true; }); -Object.prototype.__defineGetter__('x', function () { return 0; }); - -this.__proto__ = { x: 1 }; - -try { fail; } catch (e) { eval('const x = 2'); } - -var o = Object.getOwnPropertyDescriptor(this, 'x'); -assertFalse(called); -assertEquals(2, o.value); -assertEquals(false, o.writable); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-88858.js b/src/3rdparty/v8/test/mjsunit/regress/regress-88858.js deleted file mode 100644 index ba33f87..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-88858.js +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -// Verify that JSObject::PreventExtensions works for arguments objects. - -try { - function make_watcher(name) { } - var o, p; - function f(flag) { - if (flag) { - o = arguments; - } else { - p = arguments; - o.watch(0, (arguments-1901)('o')); - p.watch(0, make_watcher('p')); - p.unwatch(0); - o.unwatch(0); - p[0] = 4; - assertEq(flag, 4); - } - } - f(true); - f(false); - reportCompare(true, true); -} catch(exc1) { } - -try { - function __noSuchMethod__() { - if (anonymous == "1") - return NaN; - return __construct__; - } - f.p = function() { }; - Object.freeze(p); - new new freeze().p; - reportCompare(0, 0, "ok"); -} catch(exc2) { } - -gc(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-892742.js b/src/3rdparty/v8/test/mjsunit/regress/regress-892742.js deleted file mode 100644 index 78a57b2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-892742.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function f() { - return/* Counts as non-line-terminating whitespace */1; -}; - -// According to ECMA-262, this comment should be parsed as a -// line terminator making g() return undefined. -function g() { - return/* Counts as line-terminator whitespace. - */2; -}; - -function h() { - return// Comment doesn't include line-terminator at end. - 3; -}; - - -assertEquals(1, f()); -assertEquals(undefined, g()); -assertEquals(undefined, h()); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-900.js b/src/3rdparty/v8/test/mjsunit/regress/regress-900.js deleted file mode 100644 index 9f94348..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-900.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check that we allow accessors on JSArray elements. - -var a = []; -var b = {} -Object.defineProperty(a, "1", {get: function() {return "foo";}}); -Object.defineProperty( - b, "1", {get: function() {return "bar";}, set: function() {this.x = 42;}}); -assertEquals(a[1], 'foo'); -assertEquals(b[1], 'bar'); -// Make sure we can't overwrite an accessor, but that the setter is -// instead called. -b[1] = 'foobar'; -assertEquals(b[1], 'bar'); -assertEquals(b.x, 42); - -var desc = Object.getOwnPropertyDescriptor(b, "1"); -assertEquals(desc['writable'], undefined); -assertFalse(desc['enumerable']); -assertFalse(desc['configurable']); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-900055.js b/src/3rdparty/v8/test/mjsunit/regress/regress-900055.js deleted file mode 100644 index 9a02f22..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-900055.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var alias = eval; -function e(s) { return alias(s); } - -assertEquals(42, e("42")); -assertEquals(Object, e("Object")); -assertEquals(e, e("e")); - -var caught = false; -try { - e('s'); // should throw exception since aliased eval is global -} catch (e) { - caught = true; - assertTrue(e instanceof ReferenceError); -} -assertTrue(caught); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-900966.js b/src/3rdparty/v8/test/mjsunit/regress/regress-900966.js deleted file mode 100644 index 99603c1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-900966.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertTrue('abc'[10] === undefined); -String.prototype[10] = 'x'; -assertEquals('abc'[10], 'x'); - -// Test that the fast case character-at stub handles an out-of-bound -// index correctly. We need to call the function twice to initialize -// the character-at stub. -function f() { - assertEquals('abc'[10], 'x'); -} -f(); -f(); -f(); -f(); - -assertTrue(2[11] === undefined); -Number.prototype[11] = 'y'; -assertEquals(2[11], 'y'); - -assertTrue(true[12] === undefined); -Boolean.prototype[12] = 'z'; -assertEquals(true[12], 'z'); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-91.js b/src/3rdparty/v8/test/mjsunit/regress/regress-91.js deleted file mode 100644 index 7f6263d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-91.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var date = new Date(); -var year = date.getYear(); -date.setMilliseconds(Number.NaN); -date.setYear(1900 + year); -assertEquals(year, date.getYear()); -assertEquals(0, date.getMonth()); -assertEquals(1, date.getDate()); -assertEquals(0, date.getHours()); -assertEquals(0, date.getMinutes()); -assertEquals(0, date.getSeconds()); -assertEquals(0, date.getMilliseconds()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-91008.js b/src/3rdparty/v8/test/mjsunit/regress/regress-91008.js deleted file mode 100644 index d7ea2df..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-91008.js +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function testsort(n) { - var numbers=new Array(n); - for (var i=0;i<n;i++) numbers[i]=i; - delete numbers[50]; - delete numbers[150]; - delete numbers[25000]; - delete numbers[n-1]; - delete numbers[n-2]; - delete numbers[30]; - delete numbers[2]; - delete numbers[1]; - delete numbers[0]; - numbers.sort(); -} - -testsort(100000) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-91010.js b/src/3rdparty/v8/test/mjsunit/regress/regress-91010.js deleted file mode 100644 index a077999..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-91010.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -try { - try { - var N = 100*1000; - var array = Array(N); - for (var i = 0; i != N; ++i) - array[i] = i; - } catch(ex) {} - array.unshift('Kibo'); -} catch(ex) {} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-91013.js b/src/3rdparty/v8/test/mjsunit/regress/regress-91013.js deleted file mode 100644 index c61e2b1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-91013.js +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that KeyedStore stub for unboxed double arrays backing store -// correctly returns stored value as the result. - -// Flags: --allow-natives-syntax --unbox-double-arrays - -// Create array with unboxed double array backing store. -var i = 100000; -var a = new Array(i); -for (var j = 0; j < i; j++) { - a[j] = 0.5; -} - -assertTrue(%HasFastDoubleElements(a)); - -// Store some smis into it. -for (var j = 0; j < 10; j++) { - assertEquals(j, a[j] = j); -} - -// Store some heap numbers into it. -for (var j = 0; j < 10; j++) { - var v = j + 0.5; - assertEquals(v, a[j] = v); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-91120.js b/src/3rdparty/v8/test/mjsunit/regress/regress-91120.js deleted file mode 100644 index 117acac..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-91120.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// We intend that the function declaration for g inside catch is hoisted to -// function f's scope. Invoke it before try/catch, in the try block, in the -// catch block, after try/catch, and outside f, and verify that it has -// access to the proper binding of x. -var x = 'global'; - -function f() { - var x = 'function'; - assertEquals('function', g()); - try { - assertEquals('function', g()); - throw 'catch'; - } catch (x) { - function g() { return x; } - assertEquals('function', g()); - } - assertEquals('function', g()); - return g; -} - -assertEquals('function', f()()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-91787.js b/src/3rdparty/v8/test/mjsunit/regress/regress-91787.js deleted file mode 100644 index 96310d0..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-91787.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Unterminated non-ASCII string literals in JSON code were not -// detected correctly. - -// Shouldn't crash (due to stack overflow). -// Should throw due to invalid syntax. -assertThrows(function() { - JSON.parse('"\x80unterminated'); -}); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-918.js b/src/3rdparty/v8/test/mjsunit/regress/regress-918.js deleted file mode 100644 index 871e9d9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-918.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Parser should not accept parentheses around labels. -// See http://code.google.com/p/v8/issues/detail?id=918 - -// The label was parsed as an expression and then tested for being a -// single identifier. This threw away the parentheses. -assertThrows("(label):42;"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-925537.js b/src/3rdparty/v8/test/mjsunit/regress/regress-925537.js deleted file mode 100644 index d50c568..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-925537.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function assertClose(expected, actual) { - var delta = 0.00001; - if (Math.abs(expected - actual) > delta) { - print('Failure: Expected <' + actual + '> to be close to <' + - expected + '>'); - } -} - -assertEquals(1, Math.pow(NaN, 0)); -var pinf = Number.POSITIVE_INFINITY, ninf = Number.NEGATIVE_INFINITY; -assertClose( Math.PI / 4, Math.atan2(pinf, pinf)); -assertClose(-Math.PI / 4, Math.atan2(ninf, pinf)); -assertClose( 3 * Math.PI / 4, Math.atan2(pinf, ninf)); -assertClose(-3 * Math.PI / 4, Math.atan2(ninf, ninf)); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-927.js b/src/3rdparty/v8/test/mjsunit/regress/regress-927.js deleted file mode 100644 index c671f7d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-927.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function a1() { - var a2 = -1756315459; - return ((((a2 & a2) ^ 1) * a2) << -10); -} - -assertEquals(a1(), -2147483648); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-931.js b/src/3rdparty/v8/test/mjsunit/regress/regress-931.js deleted file mode 100644 index d2fb8cc..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-931.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://code.google.com/p/v8/issues/detail?id=931. - -var sequence = ''; - -var o = { f: function (x, y) { return x + y; }, - 2: function (x, y) { return x - y} }; - -function first() { sequence += "1"; return o; } -function second() { sequence += "2"; return "f"; } -function third() { sequence += "3"; return 3; } -function fourth() { sequence += "4"; return 4; } - -var result = (first()[second()](third(), fourth())) -assertEquals(7, result); -assertEquals("1234", sequence); - -function second_prime() { sequence += "2'"; return 2; } - -var result = (first()[second_prime()](third(), fourth())) -assertEquals(-1, result); -assertEquals("123412'34", sequence); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-937896.js b/src/3rdparty/v8/test/mjsunit/regress/regress-937896.js deleted file mode 100644 index e7831da..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-937896.js +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This used to crash because the label collector in the parser didn't -// discard duplicates which caused the outer-most continue statement -// to try to unlink the inner try-handler that wasn't on the stack. - -function f() { - try { - for (var i = 0; i < 2; i++) { - continue; - try { - continue; - continue; - } catch (ex) { - // Empty. - } - } - } catch (e) { - // Empty. - } - return 42; -} - - -assertEquals(42, f()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-944.js b/src/3rdparty/v8/test/mjsunit/regress/regress-944.js deleted file mode 100644 index d165336..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-944.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check for parsing of proper ES5 15.9.1.15 (ISO 8601 / RFC 3339) time -// strings that contain millisecond values with exactly 3 digits (as is -// required by the spec format if the string has milliseconds at all). -assertEquals(1290722550521, Date.parse("2010-11-25T22:02:30.521Z")); - -// Check for parsing of extension/generalization of the ES5 15.9.1.15 spec -// format where millisecond values have only 1 or 2 digits. -assertEquals(1290722550500, Date.parse("2010-11-25T22:02:30.5Z")); -assertEquals(1290722550520, Date.parse("2010-11-25T22:02:30.52Z")); -assertFalse(Date.parse("2010-11-25T22:02:30.5Z") === Date.parse("2010-11-25T22:02:30.005Z")); - -// Check that we truncate millisecond values having more than 3 digits. -assertEquals(Date.parse("2010-11-25T22:02:30.1005Z"), Date.parse("2010-11-25T22:02:30.100Z")); - -// Check that we accept lots of digits. -assertEquals(Date.parse("2010-11-25T22:02:30.999Z"), Date.parse("2010-11-25T22:02:30.99999999999999999999999999999999999999999999999999999999999999999999999999999999999999Z")); - -// Fail if there's a decimal point but zero digits for (expected) milliseconds. -assertTrue(isNaN(Date.parse("2010-11-25T22:02:30.Z"))); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-94425.js b/src/3rdparty/v8/test/mjsunit/regress/regress-94425.js deleted file mode 100644 index 4a48f4a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-94425.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -var N = 2040 - 2 + 10; -var arr = new Array(N); - -gc(); -gc(); -gc(); - -// arr is in the large object space now. -// Write new space object into it. -arr[arr.length - 2] = new Object; - -// Shift array multiple times to ensure that young -// object crosses region boundary. -for (var i = 0; i < 9; i++) arr.shift(); - -// Do a GC to verify region dirty marks. -gc(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-94873.js b/src/3rdparty/v8/test/mjsunit/regress/regress-94873.js deleted file mode 100644 index 41ca992..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-94873.js +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug -// Get the Debug object exposed from the debug context global object. -Debug = debug.Debug; - -function sendCommand(state, cmd) { - // Get the debug command processor in paused state. - var dcp = state.debugCommandProcessor(false); - var request = JSON.stringify(cmd); - var response = dcp.processDebugJSONRequest(request); - return JSON.parse(response); -} - -function listener(event, exec_state, event_data, data) { - try { - if (event == Debug.DebugEvent.Break) { - var line = event_data.sourceLineText(); - print('break: ' + line); - - var frame = sendCommand(exec_state, { - seq: 0, - type: "request", - command: "frame" - }); - - sendCommand(exec_state, { - seq: 0, - type: "request", - command: "evaluate", - arguments: { - expression: "obj.x.toString()", - additional_context: [{ - name: "obj", - handle: frame.body.receiver.ref - }] - } - }); - } - } catch (e) { - print(e); - } -} - -Debug.setListener(listener); - -function a(x, y) { - this.x = x; - this.y = y; -} - -Debug.setBreakPoint(a, 0, 0); -new a(1, 2);
\ No newline at end of file diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-95113.js b/src/3rdparty/v8/test/mjsunit/regress/regress-95113.js deleted file mode 100644 index 468bff8..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-95113.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function get_double_array() { - var a = new Array(100000); - var i = 0; - while (!%HasFastDoubleElements(a)) { - a[i] = i; - i += 0.5; - } - assertTrue(%HasFastDoubleElements(a)); - a.length = 1; - a[0] = 1.5; - a.length = 2; - a[1] = 2.5; - assertEquals(a[0], 1.5); - assertEquals(a[1], 2.5); - assertTrue(%HasFastDoubleElements(a)); - return a; -} - -var a = get_double_array(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-95485.js b/src/3rdparty/v8/test/mjsunit/regress/regress-95485.js deleted file mode 100644 index 2510072..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-95485.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function Test() { - var left = 'XXX'; - var right = 'YYY'; - for (var i = 0; i < 3; i++) { - var cons = left + right; - var substring = cons.substring(2, 4); - try { - with ({Test: i}) - continue; - } finally { } - } - return substring; -} - -assertEquals('XY', Test()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-955.js b/src/3rdparty/v8/test/mjsunit/regress/regress-955.js deleted file mode 100644 index 9a9a0b0..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-955.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See: http://code.google.com/p/v8/issues/detail?id=955 - -// Correctly parse signed numbers. -assertEquals(-0, parseInt("-0")); -assertEquals(0, parseInt("+0")); - -// Don't allow whitespace after signs in parseInt. -assertEquals(NaN, parseInt("- 0")); -assertEquals(NaN, parseInt("+ 0")); -assertEquals(NaN, parseInt("-\t0")); -assertEquals(NaN, parseInt("+\t0")); - -// Do allow whitespace at start. -assertEquals(-0, parseInt(" -0")); -assertEquals(0, parseInt(" +0")); -assertEquals(-0, parseInt("\t-0")); -assertEquals(0, parseInt("\t+0")); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-95920.js b/src/3rdparty/v8/test/mjsunit/regress/regress-95920.js deleted file mode 100644 index 20e73fb..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-95920.js +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Tests that objects with external arrays cannot be sealed or have their -// properties redefined. - -(function() { - assertThrows(function() { - [0].every(function(){ Object.seal((new Int8Array(42))); }); - assertUnreable(); - }, TypeError) -})(); - -(function() { - assertThrows(function() { - [0].every(function(){ Object.freeze((new Int8Array(42))); }); - assertUnreable(); - }, TypeError) -})(); - -(function() { - assertThrows(function() { - [0].every(function(){ Object.preventExtensions((new Int8Array(42))); }); - assertUnreable(); - }, TypeError) -})(); - -(function() { - assertThrows(function() { - Object.defineProperty(new Int8Array(42), "1", - { writable: false, value: "1" }); - assertUnreable(); - }) -})(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-962.js b/src/3rdparty/v8/test/mjsunit/regress/regress-962.js deleted file mode 100644 index 85ada0c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-962.js +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function L(scope) { this.s = new Object(); } - -L.prototype.c = function() { return true; } - -function F() { - this.l = [new L, new L]; -} - -F.prototype.foo = function () { - var f, d = arguments, - e, b = this.l, - g; - for (e = 0; e < b.length; e++) { - g = b[e]; - f = g.c.apply(g.s, d); - if (f === false) { - break - } - } - return f -} - - -var ctx = new F; - -for (var i = 0; i < 5; i++) ctx.foo(); -%OptimizeFunctionOnNextCall(F.prototype.foo); -ctx.foo(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-96523.js b/src/3rdparty/v8/test/mjsunit/regress/regress-96523.js deleted file mode 100644 index e611ce3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-96523.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -with ({x:'outer'}) { - (function() { - var x = 'inner'; - try { - throw 'Exception'; - } catch (e) { - assertEquals('inner', x); - } - })() -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-969.js b/src/3rdparty/v8/test/mjsunit/regress/regress-969.js deleted file mode 100644 index c2ba0ac..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-969.js +++ /dev/null @@ -1,127 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Regression test for bugs when deoptimizing after assignments in effect -// contexts. - -// Bug 989 is that there was an extra value on the expression stack when -// deoptimizing after an assignment in effect context (the value of the -// assignment was lingering). This is hard to observe in the unoptimized -// code. -// -// This test uses comma expressions to put assignments in effect contexts, -// references to deleted global variables to force deoptimization, and -// function calls to observe an extra value. - -function first(x, y) { return x; } -var y = 0; -var o = {}; -o.x = 0; -o[0] = 0; - -// Assignment to global variable. -x0 = 0; -function test0() { return first((y = 1, typeof x0), 2); } -// Call the function once to compile it. -assertEquals('number', test0()); -// Delete to force deoptimization on the next call. -delete x0; -assertEquals('undefined', test0()); - -// Compound assignment to global variable. -x1 = 0; -function test1() { return first((y += 1, typeof x1), 2); } -assertEquals('number', test1(), 'test1 before'); -delete x1; -assertEquals('undefined', test1(), 'test1 after'); - -// Pre and post-increment of global variable. -x2 = 0; -function test2() { return first((++y, typeof x2), 2); } -assertEquals('number', test2(), 'test2 before'); -delete x2; -assertEquals('undefined', test2(), 'test2 after'); - -x3 = 0; -function test3() { return first((y++, typeof x3), 2); } -assertEquals('number', test3(), 'test3 before'); -delete x3; -assertEquals('undefined', test3(), 'test3 after'); - - -// Assignment, compound assignment, and pre and post-increment of named -// properties. -x4 = 0; -function test4() { return first((o.x = 1, typeof x4), 2); } -assertEquals('number', test4()); -delete x4; -assertEquals('undefined', test4()); - -x5 = 0; -function test5() { return first((o.x += 1, typeof x5), 2); } -assertEquals('number', test5()); -delete x5; -assertEquals('undefined', test5()); - -x6 = 0; -function test6() { return first((++o.x, typeof x6), 2); } -assertEquals('number', test6()); -delete x6; -assertEquals('undefined', test6()); - -x7 = 0; -function test7() { return first((o.x++, typeof x7), 2); } -assertEquals('number', test7()); -delete x7; -assertEquals('undefined', test7()); - - -// Assignment, compound assignment, and pre and post-increment of indexed -// properties. -x8 = 0; -function test8(index) { return first((o[index] = 1, typeof x8), 2); } -assertEquals('number', test8()); -delete x8; -assertEquals('undefined', test8()); - -x9 = 0; -function test9(index) { return first((o[index] += 1, typeof x9), 2); } -assertEquals('number', test9()); -delete x9; -assertEquals('undefined', test9()); - -x10 = 0; -function test10(index) { return first((++o[index], typeof x10), 2); } -assertEquals('number', test10()); -delete x10; -assertEquals('undefined', test10()); - -x11 = 0; -function test11(index) { return first((o[index]++, typeof x11), 2); } -assertEquals('number', test11()); -delete x11; -assertEquals('undefined', test11()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-97116.js b/src/3rdparty/v8/test/mjsunit/regress/regress-97116.js deleted file mode 100644 index b858ca5..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-97116.js +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc --allow-natives-syntax - -// Check that we are not flushing code for inlined functions that -// have a pending lazy deoptimization on the stack. - -function deopt() { - try { } catch (e) { } // Avoid inlining. - %DeoptimizeFunction(outer); - for (var i = 0; i < 10; i++) gc(); // Force code flushing. -} - -function outer(should_deopt) { - inner(should_deopt); -} - -function inner(should_deopt) { - if (should_deopt) deopt(); -} - -outer(false); -outer(false); -%OptimizeFunctionOnNextCall(outer); -outer(true); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-974.js b/src/3rdparty/v8/test/mjsunit/regress/regress-974.js deleted file mode 100644 index d6362cd..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-974.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -// Verify that GC is safe in a finally block entered by falling off the try -// block. -eval("(function(){try { } catch(x) { } finally { gc() }})")(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-982.js b/src/3rdparty/v8/test/mjsunit/regress/regress-982.js deleted file mode 100644 index d88543a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-982.js +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function f(a) { - return {className: 'xxx'}; -}; - -var x = 1; - -function g(active) { - for (i = 1; i <= 20000; i++) { - if (i == active) { - x = i; - if (f("" + i) != null) { } - } else { - if (f("" + i) != null) { } - } - } -} - -g(0); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-98773.js b/src/3rdparty/v8/test/mjsunit/regress/regress-98773.js deleted file mode 100644 index eb24eb5..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-98773.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Calling Array.sort on an external array is not supposed to crash. - -var array = new Int16Array(23); -array[7] = 7; array[9] = 9; -assertEquals(23, array.length); -assertEquals(7, array[7]); -assertEquals(9, array[9]); - -Array.prototype.sort.call(array); -assertEquals(23, array.length); -assertEquals(7, array[21]); -assertEquals(9, array[22]); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-990205.js b/src/3rdparty/v8/test/mjsunit/regress/regress-990205.js deleted file mode 100644 index b3024c2..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-990205.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// We throw syntax errors early for invalid break and continue statements. -// (Notice that the example isn't valid ECMAScript due to the -// function declaration that is not at top level.) - -function f() { - // Force eager compilation of x through the use of eval. The break - // in function x should not try to break out of the enclosing while. - return eval("while(0) function x() { break; }; 42"); -}; - -assertThrows("f()"); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-99167.js b/src/3rdparty/v8/test/mjsunit/regress/regress-99167.js deleted file mode 100644 index 5053ae5..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-99167.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc --max-new-space-size=1024 - -eval("function Node() { this.a = 1; this.a = 3; }"); -new Node; -for (var i = 0; i < 4; ++i) gc(); -for (var i = 0; i < 100000; ++i) new Node; diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-992.js b/src/3rdparty/v8/test/mjsunit/regress/regress-992.js deleted file mode 100644 index dbe25a5..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-992.js +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Object.defineProperty with generic desc on existing property -// should just update enumerable/configurable flags. - -var obj = { get p() { return 42; } }; -var desc = Object.getOwnPropertyDescriptor(obj, 'p'); -var getter = desc.get; - -Object.defineProperty(obj, 'p', {enumerable: false }); -assertEquals(obj.p, 42); -desc = Object.getOwnPropertyDescriptor(obj, 'p'); -assertFalse(desc.enumerable); -assertTrue(desc.configurable); -assertEquals(desc.get, getter); -assertEquals(desc.set, undefined); -assertFalse(desc.hasOwnProperty('value')); -assertFalse(desc.hasOwnProperty('writable')); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-992733.js b/src/3rdparty/v8/test/mjsunit/regress/regress-992733.js deleted file mode 100644 index d0f7511..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-992733.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertEquals("object", typeof this); -var threw = false; -try { - this(); -} catch (e) { - threw = true; -} -assertTrue(threw); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-995.js b/src/3rdparty/v8/test/mjsunit/regress/regress-995.js deleted file mode 100644 index e88121a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-995.js +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// -// A number of hydrogen instructions did not correctly compare its -// data during GVN. -// -// Flags: --allow-natives-syntax - -// HHasInstance. -function f(value) { - if (%_IsSpecObject(value)) { - if ((%_IsArray(value))) assertTrue(false); - } -} -f(new String("bar")); - -// HClassOf. -function g(value) { - if (%_ClassOf(value) === 'Date') { - if (%_ClassOf(value) === 'String') assertTrue(false); - } -} -g(new Date()); - -// HIsNull. -function h(value) { - if (value == null) { - if (value === null) assertTrue(false); - } -} -h(undefined); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-996542.js b/src/3rdparty/v8/test/mjsunit/regress/regress-996542.js deleted file mode 100644 index 8fc704e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-996542.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var zero = 0; -var one = 1; -var minus_one = -1; - -assertEquals(-Infinity, 1 / (0 / -1)); -assertEquals(-Infinity, one / (zero / minus_one)); -assertEquals(Infinity, 1 / (0 / 1)); -assertEquals(Infinity, one / (zero / one)); - -assertEquals(-Infinity, 1 / (-1 % 1)); -assertEquals(-Infinity, one / (minus_one % one)) -assertEquals(Infinity, 1 / (1 % 1)); -assertEquals(Infinity, one / (one % one)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-998565.js b/src/3rdparty/v8/test/mjsunit/regress/regress-998565.js deleted file mode 100644 index 260b791..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-998565.js +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2008 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug -// Get the Debug object exposed from the debug context global object. -Debug = debug.Debug - -listenerCalled = false; - -function listener(event, exec_state, event_data, data) { - listenerCalled = true; - throw 1; -}; - -// Add the debug event listener. -Debug.setListener(listener); - -function f() { - a=1 -}; - -// Set a break point and call to invoke the debug event listener. -Debug.setBreakPoint(f, 0, 0); -f(); - -// Make sure that the debug event listener vas invoked. -assertTrue(listenerCalled);
\ No newline at end of file diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-arguments-gc.js b/src/3rdparty/v8/test/mjsunit/regress/regress-arguments-gc.js deleted file mode 100644 index baa4e16..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-arguments-gc.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc --nocleanup_code_caches_at_gc - -function f(x) { - gc(); - arguments[0] = {}; -} - -f(1); -f(1); -f(1); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-bind-receiver.js b/src/3rdparty/v8/test/mjsunit/regress/regress-bind-receiver.js deleted file mode 100644 index fc83a4e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-bind-receiver.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function strict() { 'use strict'; return this; } -function lenient() { return this; } -var obj = {}; - -assertEquals(true, strict.bind(true)()); -assertEquals(42, strict.bind(42)()); -assertEquals("", strict.bind("")()); -assertEquals(null, strict.bind(null)()); -assertEquals(undefined, strict.bind(undefined)()); -assertEquals(obj, strict.bind(obj)()); - -assertEquals(true, lenient.bind(true)() instanceof Boolean); -assertEquals(true, lenient.bind(42)() instanceof Number); -assertEquals(true, lenient.bind("")() instanceof String); -assertEquals(this, lenient.bind(null)()); -assertEquals(this, lenient.bind(undefined)()); -assertEquals(obj, lenient.bind(obj)()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-builtin-array-op.js b/src/3rdparty/v8/test/mjsunit/regress/regress-builtin-array-op.js deleted file mode 100644 index 1e37af3..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-builtin-array-op.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that we invoke the correct sort function in -// array operations. - -var foo = "hest"; -Array.prototype.sort = function(fn) { foo = "fisk"; }; -Function.prototype.call = function() { foo = "caramel"; }; -var a = [2,3,1]; -a[100000] = 0; -a.join(); -assertEquals("hest", foo); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-cnlt-elements.js b/src/3rdparty/v8/test/mjsunit/regress/regress-cnlt-elements.js deleted file mode 100644 index 634534c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-cnlt-elements.js +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -var a = JSON.parse('{"b":1,"c":2,"d":3,"e":4}'); -var b = JSON.parse('{"12040200":1, "a":2, "b":2}'); -var c = JSON.parse('{"24050300":1}'); -b = null; -gc(); -gc(); -c.a1 = 2; -c.a2 = 2; -c.a3 = 2; -c.a4 = 2; -c.a5 = 2; -c.a6 = 2; -c.a7 = 2; -c.a8 = 2; diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-cnlt-enum-indices.js b/src/3rdparty/v8/test/mjsunit/regress/regress-cnlt-enum-indices.js deleted file mode 100644 index 03582bb..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-cnlt-enum-indices.js +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --expose-gc - -var o = {}; -var o2 = {}; - -o.a = 1; -o2.a = 1; -function f() { return 10; } -// Adds a non-field enumerable property. -Object.defineProperty(o, "b", { get: f, enumerable: true }); -Object.defineProperty(o2, "b", { get: f, enumerable: true }); -assertTrue(%HaveSameMap(o, o2)); -o.c = 2; - -for (var x in o) { } -o = null; - -gc(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-cntl-descriptors-enum.js b/src/3rdparty/v8/test/mjsunit/regress/regress-cntl-descriptors-enum.js deleted file mode 100644 index ee72faf..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-cntl-descriptors-enum.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --expose-gc - -DontEnum = 2; - -var o = {}; -%SetProperty(o, "a", 0, DontEnum); - -var o2 = {}; -%SetProperty(o2, "a", 0, DontEnum); - -assertTrue(%HaveSameMap(o, o2)); - -o.y = 2; - -for (var v in o) { print(v); } -o = {}; -gc(); - -for (var v in o2) { print(v); } diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-conditional-position.js b/src/3rdparty/v8/test/mjsunit/regress/regress-conditional-position.js deleted file mode 100644 index cd8f7bd..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-conditional-position.js +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --always-full-compiler - -var functionToCatch; -var lineNumber; - -function catchLineNumber () { - var x = {}; - - Error.prepareStackTrace = function (error, stackTrace) { - stackTrace.some(function (frame) { - if (frame.getFunction() == functionToCatch) { - lineNumber = frame.getLineNumber(); - return true; - } - return false; - }); - return lineNumber; - }; - - Error.captureStackTrace(x); - return x.stack; -} - -function log() { - catchLineNumber(); -} - -function foo() {} - -function test1() { - log(foo() == foo() - ? 'a' - : 'b'); -} - -function test2() { - var o = { foo: function () {}} - log(o.foo() == o.foo() - ? 'a' - : 'b'); -} - -function test3() { - var o = { log: log, foo: function() { } }; - o.log(o.foo() == o.foo() - ? 'a' - : 'b'); - -} - -function test(f, expectedLineNumber) { - functionToCatch = f; - f(); - - assertEquals(expectedLineNumber, lineNumber); -} - -test(test1, 58); -test(test2, 65); -test(test3, 72); - -eval(test1.toString() + "//@ sourceUrl=foo"); -eval(test2.toString() + "//@ sourceUrl=foo"); -eval(test3.toString() + "//@ sourceUrl=foo"); - -test(test1, 2); -test(test2, 3); -test(test3, 3); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-convert-enum.js b/src/3rdparty/v8/test/mjsunit/regress/regress-convert-enum.js deleted file mode 100644 index c624cad..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-convert-enum.js +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -// Create a transition tree A (no descriptors) -> B (descriptor for a) -> C -// (descriptor for a and c), that all share the descriptor array [a,c]. C is the -// owner of the descriptor array. -var o = {}; -o.a = 1; -o.c = 2; - -// Add a transition B -> D where D has its own descriptor array [a,b] where b is -// a constant function. -var o1 = {}; -o1.a = 1; - -// Install an enumeration cache in the descriptor array [a,c] at map B. -for (var x in o1) { } -o1.b = function() { return 1; }; - -// Return ownership of the descriptor array [a,c] to B and trim it to [a]. -o = null; -gc(); - -// Convert the transition B -> D into a transition to B -> E so that E uses the -// instance descriptors [a,b] with b being a field. -var o2 = {}; -o2.a = 1; -o2.b = 10; - -// Create an object with map B and iterate over it. -var o3 = {}; -o3.a = 1; - -for (var y in o3) { } diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-convert-enum2.js b/src/3rdparty/v8/test/mjsunit/regress/regress-convert-enum2.js deleted file mode 100644 index cdc7fbe..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-convert-enum2.js +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var o = {}; -o.a = 1; -o.b = function() { return 1; }; -o.d = 2; - -for (var x in o) { } - -var o1 = {}; -o1.a = 1; -o1.b = 10; -o1.c = 20; - -var keys = ["a", "b", "c"]; - -var i = 0; -for (var y in o1) { - assertEquals(keys[i], y); - i += 1; -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-convert-transition.js b/src/3rdparty/v8/test/mjsunit/regress/regress-convert-transition.js deleted file mode 100644 index 057dc80..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-convert-transition.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var input = '{ "a1":1, "a2":1, "a3":1, "a4":1, "a5":1, "a6":1, "a7":1,\ - "a8":1, "a9":1, "a10":1, "a11":1, "a12":1, "a13":1}'; -var a = JSON.parse(input); -a.a = function() { return 10; }; - -// Force conversion of field to slow mode. -var b = JSON.parse(input); -b.a = 10; - -// Add another property to the object that would transition to a. -var c = JSON.parse(input); -c.x = 10; -assertEquals(undefined, c.a); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-100859.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-100859.js deleted file mode 100644 index 6824426..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-100859.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This used to trigger a crash because of an unhandled stack overflow. -function setx() { - setx(typeof new Uint16Array('x') === 'object'); -} -var exception = false; -try { - setx(); -} catch (ex) { - assertTrue(ex instanceof RangeError); - exception = true; -} -assertTrue(exception); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-107996.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-107996.js deleted file mode 100644 index dfe07e5..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-107996.js +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-debug-as debug - -Debug = debug.Debug; - -Debug.setListener(listener); - -var fourteen; -var four_in_debugger = []; - -function listener(event, exec_state, event_data, data) { - if (event == Debug.DebugEvent.Break) { - for (var i = 0; i < exec_state.frameCount(); i++) { - var frame = exec_state.frame(i); - four_in_debugger[i] = frame.evaluate("four", false).value(); - } - } -} - -function f1() { - var three = 3; - var four = 4; - (function f2() { - var seven = 7; - (function f3() { - debugger; - fourteen = three + four + seven; - })(); - })(); -} - -f1(); -assertEquals(14, fourteen); -assertEquals(4, four_in_debugger[0]); -assertEquals(4, four_in_debugger[1]); -assertEquals(4, four_in_debugger[2]); - -Debug.setListener(null); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-119926.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-119926.js deleted file mode 100644 index 1ad250a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-119926.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --gc-global - -// Test that array elements don't break upon garbage collection. - -var a = new Array(500); -for (var i = 0; i < 100000; i++) { - a[i] = new Object(); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-122271.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-122271.js deleted file mode 100644 index 8ae91e8..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-122271.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Tests that ElementsKind transitions and regular transitions don't -// interfere badly with each other. - -var a = [0, 0, 0, 1]; -var b = [0, 0, 0, "one"]; -var c = [0, 0, 0, 1]; -c.foo = "baz"; - -function foo(array) { - array.foo = "bar"; -} - -assertTrue(%HasFastSmiElements(a)); -assertTrue(%HasFastObjectElements(b)); - -foo(a); -foo(b); - -assertTrue(%HasFastSmiElements(a)); -assertTrue(%HasFastObjectElements(b)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-125148.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-125148.js deleted file mode 100644 index 0f7bcd8..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-125148.js +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function ToDictionaryMode(x) { - %OptimizeObjectForAddingMultipleProperties(x, 100); -} - -var A, B, C; - -// The initial bug report was about calling a know function... -A = {}; -Object.defineProperty(A, "foo", { value: function() { assertUnreachable(); }}); - -B = Object.create(A); -Object.defineProperty(B, "foo", { value: function() { return 111; }}); - -C = Object.create(B); - -function bar(x) { return x.foo(); } - -assertEquals(111, bar(C)); -assertEquals(111, bar(C)); -ToDictionaryMode(B); -%OptimizeFunctionOnNextCall(bar); -assertEquals(111, bar(C)); - -// Although this was not in the initial bug report: The same for getters... -A = {}; -Object.defineProperty(A, "baz", { get: function() { assertUnreachable(); }}); - -B = Object.create(A); -Object.defineProperty(B, "baz", { get: function() { return 111; }}); - -C = Object.create(B); - -function boo(x) { return x.baz; } - -assertEquals(111, boo(C)); -assertEquals(111, boo(C)); -ToDictionaryMode(B); -%OptimizeFunctionOnNextCall(boo); -assertEquals(111, boo(C)); - -// And once more for setters... -A = {}; -Object.defineProperty(A, "huh", { set: function(x) { assertUnreachable(); }}); - -B = Object.create(A); -var setterValue; -Object.defineProperty(B, "huh", { set: function(x) { setterValue = x; }}); - -C = Object.create(B); - -function fuu(x) { - setterValue = 222; - x.huh = 111; - return setterValue; -} - -assertEquals(111, fuu(C)); -assertEquals(111, fuu(C)); -ToDictionaryMode(B); -%OptimizeFunctionOnNextCall(fuu); -assertEquals(111, fuu(C)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-126414.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-126414.js deleted file mode 100644 index 6674267..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-126414.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function foo(bar) { - return arguments[bar]; -} -foo(0); // Handled in runtime. -foo(-536870912); // Triggers bug. diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-134055.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-134055.js deleted file mode 100644 index 9b658fb..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-134055.js +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function crash(obj) { - return obj.foo; -} - -function base(number_of_properties) { - var result = new Array(); - for (var i = 0; i < number_of_properties; i++) { - result["property" + i] = "value" + i; - } - result.foo = number_of_properties; - return result; -} - -var a = base(12); -var b = base(13); -var c = base(14); -var d = base(15); - -crash(a); // Premonomorphic. -crash(a); -crash(b); -crash(c); -crash(d); // Polymorphic, degree 4. - -//Prepare ElementsKind transition map chain. -var x = base(13); -x[0] = "object"; -x = base(14); -x[0] = "object"; -x = base(15); -x[0] = "object"; - -%OptimizeFunctionOnNextCall(crash); -crash(a); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-134609.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-134609.js deleted file mode 100644 index da7d85d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-134609.js +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --inline-accessors - -var forceDeopt = {x:0}; - -var objectWithGetterProperty = (function (value) { - var obj = {}; - Object.defineProperty(obj, "getterProperty", { - get: function foo() { - forceDeopt.x; - return value; - }, - }); - return obj; -})("bad"); - -function test() { - var iAmContextAllocated = "good"; - objectWithGetterProperty.getterProperty; - return iAmContextAllocated; - - // Make sure that the local variable is context allocated. - function unused() { iAmContextAllocated; } -} - -assertEquals("good", test()); -assertEquals("good", test()); -%OptimizeFunctionOnNextCall(test); -assertEquals("good", test()); - -// At this point, foo should have been inlined into test. Let's deopt... -delete forceDeopt.x; -assertEquals("good", test()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-135008.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-135008.js deleted file mode 100644 index 2be396e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-135008.js +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Filler long enough to trigger lazy parsing. -var filler = "//" + new Array(1024).join('x'); - -var scope = { x:23 }; - -with(scope) { - eval( - "scope.f = (function outer() {" + - " function inner() {" + - " return x;" + - " }" + - " return inner;" + - "})();" + - filler - ); -}; - -assertSame(23, scope.f()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-135066.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-135066.js deleted file mode 100644 index 35e9ff8..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-135066.js +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Filler long enough to trigger lazy parsing. -var filler = "//" + new Array(1024).join('x'); - -// Test strict eval in global context. -assertEquals(23, eval( - "'use strict';" + - "var x = 23;" + - "var f = function bozo1() {" + - " return x;" + - "};" + - "assertSame(23, f());" + - "f;" + - filler -)()); - -// Test default eval in strict context. -assertEquals(42, (function() { - "use strict"; - return eval( - "var y = 42;" + - "var g = function bozo2() {" + - " return y;" + - "};" + - "assertSame(42, g());" + - "g;" + - filler - )(); -})()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-137689.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-137689.js deleted file mode 100644 index ef79d24..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-137689.js +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function getter() { return 10; } -function setter(v) { } -function getter2() { return 20; } - -var o = {}; -var o2 = {}; - -Object.defineProperty(o, "foo", { get: getter, configurable: true }); -Object.defineProperty(o2, "foo", { get: getter, configurable: true }); -assertTrue(%HaveSameMap(o, o2)); - -Object.defineProperty(o, "bar", { get: getter2 }); -Object.defineProperty(o2, "bar", { get: getter2 }); -assertTrue(%HaveSameMap(o, o2)); - -Object.defineProperty(o, "foo", { set: setter, configurable: true }); -Object.defineProperty(o2, "foo", { set: setter, configurable: true }); -assertTrue(%HaveSameMap(o, o2)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-138887.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-138887.js deleted file mode 100644 index 8d8e169..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-138887.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function worker1(ignored) { - return 100; -} - -function factory(worker) { - return function(call_depth) { - if (call_depth == 0) return 10; - return 1 + worker(call_depth - 1); - } -} - -var f1 = factory(worker1); -var f2 = factory(f1); -assertEquals(11, f2(1)); // Result: 1 + f1(0) == 1 + 10. -assertEquals(11, f2(1)); -%OptimizeFunctionOnNextCall(f1); -assertEquals(10, f1(0)); // Terminates immediately -> returns 10. -%OptimizeFunctionOnNextCall(f2); -assertEquals(102, f2(1000)); // 1 + f1(999) == 1 + 1 + worker1(998) == 102 diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-140083.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-140083.js deleted file mode 100644 index e38192c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-140083.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test that the absence of a setter in a compound/count operation works. - -Object.defineProperty(Object.prototype, "foo", - { get: function() { return 123; } }); - -function bar(o) { - o.foo += 42; - o.foo++; -} - -var baz = {}; -bar(baz); -bar(baz); -%OptimizeFunctionOnNextCall(bar) -bar(baz); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-142087.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-142087.js deleted file mode 100644 index 881ca60..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-142087.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var string = "What are you looking for?"; - -var expected_match = [""]; -for (var i = 0; i < string.length; i++) { - expected_match.push(""); -} - -string.replace(/(_)|(_|)/g, ""); -assertArrayEquals(expected_match, string.match(/(_)|(_|)/g, "")); - -'***************************************'.match(/((\\)|(\*)|(\$))/g, "."); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-142218.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-142218.js deleted file mode 100644 index 373f83b..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-142218.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -length = 1 << 16; -a = new Array(length); - -function insert_element(key) { - a[key] = 42; -} - -insert_element(1); -%OptimizeFunctionOnNextCall(insert_element); -insert_element(new Object()); -count = 0; -for (var i = 0; i < length; i++) { - if (a[i] != undefined) count++; -} -assertEquals(1, count); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-145961.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-145961.js deleted file mode 100644 index eb88945..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-145961.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// This test causes the operands to be passed in as Integer32 registers. -// Flags: --allow-natives-syntax -function test() { - var a = new Int32Array(2); - var x = a[0]; - return Math.min(x, x); -} - -assertEquals(0, test()); -assertEquals(0, test()); -%OptimizeFunctionOnNextCall(test); -assertEquals(0, test()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-146910.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-146910.js deleted file mode 100644 index 1b2a60a..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-146910.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertEquals(String.fromCharCode(97, 220, 256), 'a' + '\u00DC' + '\u0100'); -assertEquals(String.fromCharCode(97, 220, 256), 'a\u00DC\u0100'); - -assertEquals(['a', 'b', '\xdc'], ['b', '\xdc', 'a'].sort()); -assertEquals(['\xfc\xdc', '\xfc'], new RegExp('(\xdc)\\1', 'i').exec('\xfc\xdc')); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-147475.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-147475.js deleted file mode 100644 index 180744c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-147475.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function worker1(ignored) { - return 100; -} - -function factory(worker) { - return function(call_depth) { - if (call_depth == 0) return 10; - return 1 + worker(call_depth - 1); - } -} - -var f1 = factory(worker1); -var f2 = factory(f1); -assertEquals(11, f2(1)); -%OptimizeFunctionOnNextCall(f1); -assertEquals(10, f1(0)); -%OptimizeFunctionOnNextCall(f2); -assertEquals(102, f2(2)); -assertEquals(102, f2(2)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-148376.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-148376.js deleted file mode 100644 index 55bb5f1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-148376.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function defineSetter(o) { - o.__defineSetter__('property', function() {}); -} - -defineSetter(Object.prototype); -property = 0; -defineSetter(this); -var keys = Object.keys(this); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-150545.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-150545.js deleted file mode 100644 index 68efdbf..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-150545.js +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test that we do not generate OSR entry points that have an arguments -// stack height different from zero. The OSR machinery cannot generate -// frames for that. - -(function() { - "use strict"; - - var instantReturn = false; - function inner() { - if (instantReturn) return; - assertSame(3, arguments.length); - assertSame(1, arguments[0]); - assertSame(2, arguments[1]); - assertSame(3, arguments[2]); - } - - function outer() { - inner(1,2,3); - // Trigger OSR. - while (%GetOptimizationStatus(outer) == 2) {} - } - - outer(); -})(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-150729.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-150729.js deleted file mode 100644 index 15aa587..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-150729.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -var t = 0; -function burn() { - i = [t, 1]; - var M = [i[0], Math.cos(t) + i[7074959]]; - t += .05; -} -for (var j = 0; j < 5; j++) { - if (j == 2) %OptimizeFunctionOnNextCall(burn); - burn(); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-157019.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-157019.js deleted file mode 100644 index 1c54089..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-157019.js +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --nocrankshaft - -function makeConstructor() { - return function() { - this.a = 1; - this.b = 2; - }; -} - -var c1 = makeConstructor(); -var o1 = new c1(); - -c1.prototype = {}; - -for (var i = 0; i < 10; i++) { - var o = new c1(); - for (var j = 0; j < 8; j++) { - o["x" + j] = 0; - } -} - -var c2 = makeConstructor(); -var o2 = new c2(); - -for (var i = 0; i < 50000; i++) { - new c2(); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-157520.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-157520.js deleted file mode 100644 index 17081df..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-157520.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --nocrankshaft - -(function(){ - var f = function(arg) { - arg = 2; - return arguments[0]; - }; - for (var i = 0; i < 50000; i++) { - assertSame(2, f(1)); - } -})(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-158185.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-158185.js deleted file mode 100644 index 99f19c7..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-158185.js +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertEquals("0023456", - Object.keys(JSON.parse('{"0023456": 1}'))[0]); -assertEquals("1234567890123", - Object.keys(JSON.parse('{"1234567890123": 1}'))[0]); -assertEquals("123456789ABCD", - Object.keys(JSON.parse('{"123456789ABCD": 1}'))[0]); -assertEquals("12A", - Object.keys(JSON.parse('{"12A": 1}'))[0]); - -assertEquals(1, JSON.parse('{"0":1}')[0]); -assertEquals(undefined, JSON.parse('{"00":1}')[0]); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-160010.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-160010.js deleted file mode 100644 index 586bddd..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-160010.js +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -var str = "a"; -for (var i = 0; i < 28; i++) { - str += str; - %FlattenString(str); // Evil performance hack -} -JSON.stringify(str); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-162085.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-162085.js deleted file mode 100644 index a53b2c9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-162085.js +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Ensure extending an empty packed smi array with a double initializes the -// array with holes. -var a = [1,2,3]; -a.length = 0; -a[0] = 1.4; -assertEquals(1.4, a[0]); -assertEquals(undefined, a[1]); -assertEquals(undefined, a[2]); -assertEquals(undefined, a[3]); - -// Ensure the double array growstub initializes the array with holes. -function grow_store(a,i,v) { - a[i] = v; -} - -var a2 = [1.3]; -grow_store(a2,1,1.4); -a2.length = 0; -grow_store(a2,0,1.5); -assertEquals(1.5, a2[0]); -assertEquals(undefined, a2[1]); -assertEquals(undefined, a2[2]); -assertEquals(undefined, a2[3]); - -// Check storing objects using the double grow stub. -var a3 = [1.3]; -var o = {}; -grow_store(a3, 1, o); -assertEquals(1.3, a3[0]); -assertEquals(o, a3[1]); - -// Ensure the double array growstub initializes the array with holes. -function grow_store2(a,i,v) { - a[i] = v; -} - -var a4 = [1.3]; -grow_store2(a4,1,1.4); -a4.length = 0; -grow_store2(a4,0,1); -assertEquals(1, a4[0]); -assertEquals(undefined, a4[1]); -assertEquals(undefined, a4[2]); -assertEquals(undefined, a4[3]); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-163530.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-163530.js deleted file mode 100644 index 7abae14..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-163530.js +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test materialization of an arguments object with unknown argument -// values in non-strict mode (length has to be zero). -(function() { - var deoptimize = { deopt:true }; - var object = {}; - - object.a = function A(x, y, z) { - assertSame(0, arguments.length); - return this.b(); - }; - - object.b = function B() { - assertSame(0, arguments.length); - deoptimize.deopt; - return arguments.length; - }; - - assertSame(0, object.a()); - assertSame(0, object.a()); - %OptimizeFunctionOnNextCall(object.a); - assertSame(0, object.a()); - delete deoptimize.deopt; - assertSame(0, object.a()); -})(); - - -// Test materialization of an arguments object with unknown argument -// values in strict mode (length is allowed to exceed stack size). -(function() { - 'use strict'; - var deoptimize = { deopt:true }; - var object = {}; - - object.a = function A(x, y, z) { - assertSame(0, arguments.length); - return this.b(1, 2, 3, 4, 5, 6, 7, 8); - }; - - object.b = function B(a, b, c, d, e, f, g, h) { - assertSame(8, arguments.length); - deoptimize.deopt; - return arguments.length; - }; - - assertSame(8, object.a()); - assertSame(8, object.a()); - %OptimizeFunctionOnNextCall(object.a); - assertSame(8, object.a()); - delete deoptimize.deopt; - assertSame(8, object.a()); -})(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-168545.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-168545.js deleted file mode 100644 index acc065e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-168545.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var o = {}; -Object.defineProperty(o, "length", { get: function() { throw "bail"; }}); -assertThrows("new Int16Array(o);"); - -var a = []; -Object.defineProperty(a, "0", { get: function() { throw "bail"; }}); -assertThrows("new Int16Array(a);"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-170856.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-170856.js deleted file mode 100644 index 2e73b12..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-170856.js +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -r = new RegExp("a"); -for (var i = 0; i < 100; i++) { - r["abc" + i] = i; -} -"zzzz".replace(r, ""); -assertEquals(0, r.lastIndex); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-172345.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-172345.js deleted file mode 100644 index 711501c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-172345.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function f(a,i) { - return a[i]; -} - -f([1,2,3], "length"); -f([1,2,3], "length"); -f([1,2,3], 2); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-173907.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-173907.js deleted file mode 100644 index 9f92fef..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-173907.js +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -var X = 1.1; -var K = 0.5; - -var O = 0; -var result = new Float64Array(2); - -function spill() { - try { } catch (e) { } -} - -function buggy() { - var v = X; - var phi1 = v + K; - var phi2 = v - K; - - spill(); // At this point initial values for phi1 and phi2 are spilled. - - var xmm1 = v; - var xmm2 = v*v*v; - var xmm3 = v*v*v*v; - var xmm4 = v*v*v*v*v; - var xmm5 = v*v*v*v*v*v; - var xmm6 = v*v*v*v*v*v*v; - var xmm7 = v*v*v*v*v*v*v*v; - var xmm8 = v*v*v*v*v*v*v*v*v; - - // All registers are blocked and phis for phi1 and phi2 are spilled because - // their left (incoming) value is spilled, there are no free registers, - // and phis themselves have only ANY-policy uses. - - for (var x = 0; x < 2; x++) { - xmm1 += xmm1 * xmm6; - xmm2 += xmm1 * xmm5; - xmm3 += xmm1 * xmm4; - xmm4 += xmm1 * xmm3; - xmm5 += xmm1 * xmm2; - - // Now swap values of phi1 and phi2 to create cycle between phis. - var t = phi1; - phi1 = phi2; - phi2 = t; - } - - // Now we want to get values of phi1 and phi2. However we would like to - // do it in a way that does not produce any uses of phi1&phi2 that have - // a register beneficial policy. How? We just hide these uses behind phis. - result[0] = (O === 0) ? phi1 : phi2; - result[1] = (O !== 0) ? phi1 : phi2; -} - -function test() { - buggy(); - assertArrayEquals([X + K, X - K], result); -} - -test(); -test(); -%OptimizeFunctionOnNextCall(buggy); -test(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-173974.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-173974.js deleted file mode 100644 index 905bd60..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-173974.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function f() { - var count = ""; - count[0] --; -} -f(); -%OptimizeFunctionOnNextCall(f); -f(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-178790.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-178790.js deleted file mode 100644 index 57071ea..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-178790.js +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Create a regexp in the form of a?a?...a? so that fully -// traversing the entire graph would be prohibitively expensive. -// This should not cause time out. -var r1 = ""; -for (var i = 0; i < 1000; i++) { - r1 += "a?"; -} -"test".match(RegExp(r1)); - -var r2 = ""; -for (var i = 0; i < 100; i++) { - r2 += "(a?|b?|c?|d?|e?|f?|g?)"; -} -"test".match(RegExp(r2)); - -// Create a regexp in the form of ((..(a)a..)a. -// Compiling it causes EatsAtLeast to reach the maximum -// recursion depth possible with a given budget. -// This should not cause a stack overflow. -var r3 = "a"; -for (var i = 0; i < 1000; i++) { - r3 = "(" + r3 + ")a"; -} -"test".match(RegExp(r3)); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-18639.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-18639.js deleted file mode 100644 index 4f4bb7c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-18639.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://crbug.com/18639 - -try { - toString = toString; - __defineGetter__("z", (0).toLocaleString); - z; - z; - ((0).toLocaleString)(); -} catch (e) { - assertInstanceof(e, TypeError); -}
\ No newline at end of file diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-3184.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-3184.js deleted file mode 100644 index ed78183..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-3184.js +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -Object.extend = function (dest, source) { - for (property in source) dest[property] = source[property]; - return dest; -}; - -Object.extend ( Function.prototype, -{ - wrap : function (wrapper) { - var method = this; - var bmethod = (function(_method) { - return function () { - this.$$$parentMethodStore$$$ = this.$proceed; - this.$proceed = function() { return _method.apply(this, arguments); }; - }; - })(method); - var amethod = function () { - this.$proceed = this.$$$parentMethodStore$$$; - if (this.$proceed == undefined) delete this.$proceed; - delete this.$$$parentMethodStore$$$; - }; - var value = function() { bmethod.call(this); retval = wrapper.apply(this, arguments); amethod.call(this); return retval; }; - return value; - } -}); - -String.prototype.cap = function() { - return this.charAt(0).toUpperCase() + this.substring(1).toLowerCase(); -}; - -String.prototype.cap = String.prototype.cap.wrap( - function(each) { - if (each && this.indexOf(" ") != -1) { - return this.split(" ").map( - function (value) { - return value.cap(); - } - ).join(" "); - } else { - return this.$proceed(); - } -}); - -Object.extend( Array.prototype, -{ - map : function(fun) { - if (typeof fun != "function") throw new TypeError(); - var len = this.length; - var res = new Array(len); - var thisp = arguments[1]; - for (var i = 0; i < len; i++) { if (i in this) res[i] = fun.call(thisp, this[i], i, this); } - return res; - } -}); -assertEquals("Test1 test1", "test1 test1".cap()); -assertEquals("Test2 Test2", "test2 test2".cap(true)); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-37853.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-37853.js deleted file mode 100644 index 047fbcb..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-37853.js +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://crbug.com/37853 - -function f(o, k) { return o[k]; } -a = {'a':1, 1:'a'} -f(a, 'a') -f(a, 'a') -f(a, 1); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-3867.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-3867.js deleted file mode 100644 index 03001b6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-3867.js +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function props(x) { - var result = []; - for (var p in x) result.push(p); - return result; -} - -function A() { - this.a1 = 1234; - this.a2 = "D"; - this.a3 = false; -} - -function B() { - this.b3 = false; - this.b2 = "D"; - this.b1 = 1234; -} - -function C() { - this.c3 = false; - this.c1 = 1234; - this.c2 = "D"; -} - -assertArrayEquals(["a1", "a2", "a3"], props(new A())); -assertArrayEquals(["b3", "b2", "b1"], props(new B())); -assertArrayEquals(["c3", "c1", "c2"], props(new C())); -assertArrayEquals(["s1", "s2", "s3"], props({s1: 0, s2: 0, s3: 0})); -assertArrayEquals(["s3", "s2", "s1"], props({s3: 0, s2: 0, s1: 0})); -assertArrayEquals(["s3", "s1", "s2"], props({s3: 0, s1: 0, s2: 0})); - -var a = new A() -a.a0 = 0; -a.a4 = 0; -assertArrayEquals(["a1", "a2", "a3", "a0", "a4"], props(a)); - -var b = new B() -b.b4 = 0; -b.b0 = 0; -assertArrayEquals(["b3", "b2", "b1", "b4", "b0"], props(b)); - -var o1 = {s1: 0, s2: 0, s3: 0} -o1.s0 = 0; -o1.s4 = 0; -assertArrayEquals(["s1", "s2", "s3", "s0", "s4"], props(o1)); - -var o2 = {s3: 0, s2: 0, s1: 0} -o2.s4 = 0; -o2.s0 = 0; -assertArrayEquals(["s3", "s2", "s1", "s4", "s0"], props(o2)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-39160.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-39160.js deleted file mode 100644 index a8a8567..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-39160.js +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://crbug.com/39160 - -// To reproduce the bug we need an inlined comparison (i.e. in a loop) where -// the left hand side is known to be a smi (max smi value is 1073741823). This -// test crashes with the bug. -function f(a) { - for (var i = 1073741820; i < 1073741822; i++) { - if (a < i) { - a += i; - } - } -} - -f(5) diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-40931.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-40931.js deleted file mode 100644 index 2dbff6e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-40931.js +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://crbug.com/40931 - -// To reproduce this we need to split a comma separated string and check the -// indices which should only contain the numeric indices corresponding to the -// number of values of the split. - -var names = "a,b,c,d"; - -for(var i = 0; i < 10; i++) { - var splitNames = names.split(/,/); - var forInNames = []; - var count = 0; - for (name in splitNames) { - forInNames[count++] = name; - } - forInNames.sort(); - assertEquals("0,1,2,3", forInNames.join()); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-72736.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-72736.js deleted file mode 100644 index 4b4b145..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-72736.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// See http://crbug.com/72736 - -// This tests that Object.defineProperty actually allows to change the value of -// a non-writable property if configurable is true. - -var obj = {}; -Object.defineProperty(obj, 'foo', { value: 10, configurable: true }); -assertEquals(obj.foo, 10); -Object.defineProperty(obj, 'foo', { value: 20, configurable: true }); -assertEquals(obj.foo, 20); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-84186.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-84186.js deleted file mode 100644 index 865bf9e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-84186.js +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test that the expected string is parsed in the json parser when the length -// is so big that the string can't fit in new space, and it includes special -// characters. - -var json = '{"key":"'; -var key = ''; -var expected = ''; -for(var i = 0; i < 60000; i++) { - key = key + "TESTING" + i + "\\n"; - expected = expected + "TESTING" + i + "\n"; -} -json = json + key + '"}'; -var out = JSON.parse(json); -assertEquals(expected, out.key); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-87478.js b/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-87478.js deleted file mode 100644 index 115b3fd..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-crbug-87478.js +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check that arguments access ICs correctly handle non-JSObject -// receivers. -function f(array) { return array[0]; } -function args(a) { return arguments; } -// Put the keyed load in f into the keyed-load-arguments state. -for (var i = 0; i < 10; i++) { - f(args(1)); -} -f('123'); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-create-exception.js b/src/3rdparty/v8/test/mjsunit/regress/regress-create-exception.js deleted file mode 100644 index d3face9..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-create-exception.js +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --max-new-space-size=256 -"use strict"; - -// Check for GC bug constructing exceptions. -var v = [1, 2, 3, 4] - -Object.preventExtensions(v); - -function foo() { - var re = /2147483647/; // Equal to 0x7fffffff. - for (var i = 0; i < 10000; i++) { - var ok = false; - try { - var j = 1; - // Allocate some heap numbers in order to randomize the behaviour of the - // garbage collector. 93 is chosen to be a prime number to avoid the - // allocation settling into a too neat pattern. - for (var j = 0; j < i % 93; j++) { - j *= 1.123567; // An arbitrary floating point number. - } - v[0x7fffffff] = 0; // Trigger exception. - assertTrue(false); - return j; // Make sure that future optimizations don't eliminate j. - } catch(e) { - ok = true; - assertTrue(re.test(e), 'e: ' + e); - } - assertTrue(ok); - } -} - -foo(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-debug-code-recompilation.js b/src/3rdparty/v8/test/mjsunit/regress/regress-debug-code-recompilation.js deleted file mode 100644 index 4723ec1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-debug-code-recompilation.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --hydrogen-filter=Debug.setBreakPoint -// Flags: --expose-debug-as debug - -Debug = debug.Debug - -function f() {a=1;b=2}; -function g() { - a=1; - b=2; -} - -bp = Debug.setBreakPoint(f, 0, 0); -Debug.clearBreakPoint(bp); -%OptimizeFunctionOnNextCall(Debug.setBreakPoint); -bp = Debug.setBreakPoint(f, 0, 0); -Debug.clearBreakPoint(bp); -bp = Debug.setBreakPoint(f, 0, 0); -Debug.clearBreakPoint(bp); -%OptimizeFunctionOnNextCall(Debug.setBreakPoint); -bp = Debug.setBreakPoint(f, 0, 0); -Debug.clearBreakPoint(bp); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-deep-proto.js b/src/3rdparty/v8/test/mjsunit/regress/regress-deep-proto.js deleted file mode 100644 index 5d2758c..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-deep-proto.js +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -function poly(x) { - return x.foo; -} - -var one = {foo: 0}; -var two = {foo: 0, bar: 1}; -var three = {bar: 0}; -three.__proto__ = {}; -three.__proto__.__proto__ = {}; -three.__proto__.__proto__.__proto__ = {}; -three.__proto__.__proto__.__proto__.__proto__ = {}; -three.__proto__.__proto__.__proto__.__proto__.__proto__ = {}; - -for (var i = 0; i < 1e6; i++) { - poly(one); - poly(two); - poly(three); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-delete-empty-double.js b/src/3rdparty/v8/test/mjsunit/regress/regress-delete-empty-double.js deleted file mode 100644 index f7af2b1..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-delete-empty-double.js +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -a = [1.1,2.2,3.3]; -a.length = 1; -delete a[1]; - -assertTrue(%HasFastDoubleElements(a)); -assertFalse(%HasFastHoleyElements(a)); - -delete a[0]; - -assertTrue(%HasFastDoubleElements(a)); -assertTrue(%HasFastHoleyElements(a)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-deopt-gc.js b/src/3rdparty/v8/test/mjsunit/regress/regress-deopt-gc.js deleted file mode 100644 index a74e2c5..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-deopt-gc.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --expose-gc - -// This tests that we can correctly handle a GC immediately after a function -// has been deoptimized, even when we have an activation of this function on -// the stack. - -// Ensure that there is code objects before the code for the opt_me function. -(function() { var a = 10; a++; })(); - -function opt_me() { - deopt(); -} - -function deopt() { - // Make sure we don't inline this function - try { var a = 42; } catch(o) {}; - %DeoptimizeFunction(opt_me); - gc(); -} - - -opt_me(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-fast-literal-transition.js b/src/3rdparty/v8/test/mjsunit/regress/regress-fast-literal-transition.js deleted file mode 100644 index 72110f5..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-fast-literal-transition.js +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --always-opt --expose-gc - -// Test that the elements kind of the boilerplate object is sufficiently -// checked in LFastLiteral, so that unoptimized code can transition the -// boilerplate. The --always-opt flag makes sure that optimized code is -// not thrown away at deoptimization. - -// The switch statement in f() makes sure that f() is not inlined. If we -// start inlining switch statements, we will still catch the bug on the -// final --stress-opt run. - -function f(x) { - switch(x) { - case 1: return 1.4; - case 2: return 1.5; - case 3: return {}; - default: gc(); - } -} - -function g(x) { - return [1.1, 1.2, 1.3, f(x)]; -} - -// Step 1: Optimize g() to contain a FAST_DOUBLE_ELEMENTS boilerplate. -assertEquals([1.1, 1.2, 1.3, 1.4], g(1)); -assertEquals([1.1, 1.2, 1.3, 1.5], g(2)); -%OptimizeFunctionOnNextCall(g); - -// Step 2: Deoptimize g() and transition to FAST_ELEMENTS boilerplate. -assertEquals([1.1, 1.2, 1.3, {}], g(3)); - -// Step 3: Cause a GC while broken clone of boilerplate is on the heap, -// hence causing heap verification to catch it. -assertEquals([1.1, 1.2, 1.3, undefined], g(4)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-fundecl.js b/src/3rdparty/v8/test/mjsunit/regress/regress-fundecl.js deleted file mode 100644 index fddb589..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-fundecl.js +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Test hoisting of function declarations in the optimizing -// compiler in case of deoptimization. - -function h(a, b) { - var r = a + b; - function X() { return 42; } - return r + X(); -} - -for (var i = 0; i < 5; i++) h(1,2); - -%OptimizeFunctionOnNextCall(h); - -assertEquals(45, h(1,2)); -assertEquals("foo742", h("foo", 7)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-inlining-function-literal-context.js b/src/3rdparty/v8/test/mjsunit/regress/regress-inlining-function-literal-context.js deleted file mode 100644 index 9b7f7ac..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-inlining-function-literal-context.js +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax --expose-gc - -function mkbaz(x) { - function baz() { - return function () { - return [x]; - } - } - return baz; -} - -var baz = mkbaz(1); - -function foo() { - var f = baz(); - return f(); -} - -// Tenure. -gc(); -gc(); - -assertArrayEquals([1], foo()); -assertArrayEquals([1], foo()); -%OptimizeFunctionOnNextCall(foo); -assertArrayEquals([1], foo()); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-iteration-order.js b/src/3rdparty/v8/test/mjsunit/regress/regress-iteration-order.js deleted file mode 100644 index 76f5c3f..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-iteration-order.js +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var x = {a: 1, b: 2, c: 3}; - -x.__proto__ = {}; - -delete x.b; - -x.d = 4; - -s = ""; - -for (key in x) { - s += x[key]; -} - -assertEquals("134", s); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-json-stringify-gc.js b/src/3rdparty/v8/test/mjsunit/regress/regress-json-stringify-gc.js deleted file mode 100644 index c0a71bf..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-json-stringify-gc.js +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var a = []; -var new_space_string = ""; -for (var i = 0; i < 128; i++) { - new_space_string += String.fromCharCode((Math.random() * 26 + 65) | 0); -} -for (var i = 0; i < 10000; i++) a.push(new_space_string); - -// At some point during the first stringify, allocation causes a GC and -// new_space_string is moved to old space. Make sure that this does not -// screw up reading from the correct location. -json1 = JSON.stringify(a); -json2 = JSON.stringify(a); -assertTrue(json1 == json2, "GC caused JSON.stringify to fail."); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-latin-1.js b/src/3rdparty/v8/test/mjsunit/regress/regress-latin-1.js deleted file mode 100644 index a988ebd..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-latin-1.js +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2013 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -assertEquals(String.fromCharCode(97, 220, 256), 'a' + '\u00DC' + '\u0100'); -assertEquals(String.fromCharCode(97, 220, 256), 'a\u00DC\u0100'); - -assertEquals(0x80, JSON.stringify("\x80").charCodeAt(1)); - -assertEquals(['a', 'b', '\xdc'], ['b', '\xdc', 'a'].sort()); - -assertEquals(['\xfc\xdc', '\xfc'], new RegExp('(\xdc)\\1', 'i').exec('\xfc\xdc')); -// Same test but for all values in Latin-1 range. -var total_lo = 0; -for (var i = 0; i < 0xff; i++) { - var base = String.fromCharCode(i); - var escaped = base; - if (base == '(' || base == ')' || base == '*' || base == '+' || - base == '?' || base == '[' || base == ']' || base == '\\' || - base == '$' || base == '^' || base == '|') { - escaped = '\\' + base; - } - var lo = String.fromCharCode(i + 0x20); - base_result = new RegExp('(' + escaped + ')\\1', 'i').exec(base + base); - assertEquals( base_result, [base + base, base]); - lo_result = new RegExp('(' + escaped + ')\\1', 'i').exec(base + lo); - if (base.toLowerCase() == lo) { - assertEquals([base + lo, base], lo_result); - total_lo++; - } else { - assertEquals(null, lo_result); - } -} -// Should have hit the branch for the following char codes: -// [A-Z], [192-222] but not 215 -assertEquals((90-65+1)+(222-192-1+1), total_lo); - -// Latin-1 whitespace character -assertEquals( 1, +(String.fromCharCode(0xA0) + '1') ); - -// Latin-1 \W characters -assertEquals(["+\u00a3", "=="], "+\u00a3==".match(/\W\W/g)); - -// Latin-1 character that uppercases out of Latin-1. -assertTrue(/\u0178/i.test('\u00ff')); - -// Unicode equivalence -assertTrue(/\u039c/i.test('\u00b5')); -assertTrue(/\u039c/i.test('\u03bc')); -assertTrue(/\u00b5/i.test('\u03bc')); -// Unicode equivalence ranges -assertTrue(/[\u039b-\u039d]/i.test('\u00b5')); -assertFalse(/[^\u039b-\u039d]/i.test('\u00b5')); -assertFalse(/[\u039b-\u039d]/.test('\u00b5')); -assertTrue(/[^\u039b-\u039d]/.test('\u00b5')); - -// Check a regression in QuoteJsonSlow and WriteQuoteJsonString -for (var testNumber = 0; testNumber < 2; testNumber++) { - var testString = "\xdc"; - var loopLength = testNumber == 0 ? 0 : 20; - for (var i = 0; i < loopLength; i++ ) { - testString += testString; - } - var stringified = JSON.stringify({"test" : testString}, null, 0); - var stringifiedExpected = '{"test":"' + testString + '"}'; - assertEquals(stringifiedExpected, stringified); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-lazy-deopt-reloc.js b/src/3rdparty/v8/test/mjsunit/regress/regress-lazy-deopt-reloc.js deleted file mode 100644 index f1fe6d5..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-lazy-deopt-reloc.js +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Do not generate debug code since that will space things differently -// in the generated code. -// Flags: --allow-natives-syntax --expose-gc --nodebug-code - -// Regression test for issue where we did not pad the relocation -// information enough to have room for lazy deoptimization. - -function kaboom() { - var a = function () {}, - b = function () {}, - c, d = function () { var d = []; }, - e = function () { var e = {}; }; - c = function () { d(); b(); }; - return function (x, y) { - c(); - a(); - return function f() { }({}); - }; -} - -kaboom(); - -%DeoptimizeFunction(kaboom); - -gc(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-load-elements.js b/src/3rdparty/v8/test/mjsunit/regress/regress-load-elements.js deleted file mode 100644 index 68cdc8e..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-load-elements.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function bad_func(o,a) { - for (var i = 0; i < 1; ++i) { - o.prop = 0; - var x = a[0]; - } -} - -o = new Object(); -a = {}; -a[0] = 1; -bad_func(o, a); - -o = new Object(); -bad_func(o, a); - -// Optimize. Before the fix, the elements-load and subsequent fixed-array-length -// were hoisted above the map check. This is invalid since not all types -// necessarily have elements. -%OptimizeFunctionOnNextCall(bad_func); -bad_func(o, ""); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-observe-empty-double-array.js b/src/3rdparty/v8/test/mjsunit/regress/regress-observe-empty-double-array.js deleted file mode 100644 index 4b65169..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-observe-empty-double-array.js +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --harmony-observation --allow-natives-syntax -// -// Test passes if it does not crash. - -arr = [1.1]; -Object.observe(arr, function(){}); -arr.length = 0; -// TODO(observe): we currently disallow fast elements for observed object. -// assertTrue(%HasFastDoubleElements(arr)); -// Should not crash -arr.push(1.1); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-push-args-twice.js b/src/3rdparty/v8/test/mjsunit/regress/regress-push-args-twice.js deleted file mode 100644 index faa6007..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-push-args-twice.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check that the ADD binary op stub correctly handles non-number arguments -// passed on registers. - -try { - for (var key = 0; key != 10; key++) { - var x = 1 + undefined; - } -} catch(e) { - fail("no exception", e); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-r3391.js b/src/3rdparty/v8/test/mjsunit/regress/regress-r3391.js deleted file mode 100644 index d557284..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-r3391.js +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2009 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check what we do if toLocaleString doesn't return a string when we are -// calling Array.prototype.toLocaleString. The standard is somewhat -// vague on this point. This test is now passed by both V8 and JSC. - -var evil_called = 0; -var evil_locale_called = 0; -var exception_thrown = 0; - -function evil_to_string() { - evil_called++; - return this; -} - -function evil_to_locale_string() { - evil_locale_called++; - return this; -} - -var o = {toString: evil_to_string, toLocaleString: evil_to_locale_string}; - -try { - [o].toLocaleString(); -} catch(e) { - exception_thrown++; -} - -assertEquals(1, evil_called, "evil1"); -assertEquals(1, evil_locale_called, "local1"); -assertEquals(1, exception_thrown, "exception1"); - -try { - [o].toString(); -} catch(e) { - exception_thrown++; -} - -assertEquals(2, evil_called, "evil2"); -assertEquals(1, evil_locale_called, "local2"); -assertEquals(2, exception_thrown, "exception2"); - -try { - [o].join(o); -} catch(e) { - exception_thrown++; -} - -assertEquals(3, evil_called, "evil3"); -assertEquals(1, evil_locale_called, "local3"); -assertEquals(3, exception_thrown, "exception3"); -print("ok"); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-r4998.js b/src/3rdparty/v8/test/mjsunit/regress/regress-r4998.js deleted file mode 100644 index 9cf3371..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-r4998.js +++ /dev/null @@ -1,94 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Test for a broken fast-smi-loop that does not save the incremented value -// of the loop index. If this test fails, it loops forever, and times out. - -// Flags: --nofull-compiler - -// Calling foo() spills the virtual frame. -function foo() { - return; -} - -function bar() { - var x1 = 3; - var x2 = 3; - var x3 = 3; - var x4 = 3; - var x5 = 3; - var x6 = 3; - var x7 = 3; - var x8 = 3; - var x9 = 3; - var x10 = 3; - var x11 = 3; - var x12 = 3; - var x13 = 3; - - foo(); - - x1 = 257; - x2 = 258; - x3 = 259; - x4 = 260; - x5 = 261; - x6 = 262; - x7 = 263; - x8 = 264; - x9 = 265; - x10 = 266; - x11 = 267; - x12 = 268; - x13 = 269; - - // The loop variable x7 is initialized to 3, - // and then MakeMergeable is called on the virtual frame. - // MakeMergeable has forced the loop variable x7 to be spilled, - // so it is marked as synced - // The back edge then merges its virtual frame, which incorrectly - // claims that x7 is synced, and does not save the modified - // value. - for (x7 = 3; x7 < 10; ++x7) { - foo(); - } -} - -bar(); - -function aliasing() { - var x = 3; - var j; - for (j = 7; j < 11; ++j) { - x = j; - } - - assertEquals(10, x); - assertEquals(11, j); -} - -aliasing(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-regexp-codeflush.js b/src/3rdparty/v8/test/mjsunit/regress/regress-regexp-codeflush.js deleted file mode 100644 index 5fa42bf..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-regexp-codeflush.js +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --gc_global - -// Regression test for regexp that has multiple matches and which -// internally calls RegExpImpl::IrregexpExecOnce more than once without -// ensuring that the regexp is compiled. -// This can create a crash if the code was exchanged with the sweep -// generation (for code flushing support) in GC durring the matching. - -var re = new RegExp('(s)', "g"); - -function foo() { - return "42"; -} - -// Run enough times to get a number of GC's (all mark sweep because of the -// --gc_global) flag. -for ( var i = 0; i < 10; i++) { - // Make a long string with plenty of matches for re. - var x = "s foo s bar s foo s bar s"; - x = x + x; - x = x + x; - x = x + x; - x = x + x; - x = x + x; - x = x + x; - x = x + x; - x.replace(re, foo); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-smi-only-concat.js b/src/3rdparty/v8/test/mjsunit/regress/regress-smi-only-concat.js deleted file mode 100644 index 55ca299..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-smi-only-concat.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// This tests that concatenating a fast smi-only array and a fast object array -// results in a fast object array. - -var fast_array = ['a', 'b']; -var array = fast_array.concat(fast_array); - -assertTrue(%HasFastObjectElements(fast_array)); -assertTrue(%HasFastObjectElements(array)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-sqrt.js b/src/3rdparty/v8/test/mjsunit/regress/regress-sqrt.js deleted file mode 100644 index f2a7e55..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-sqrt.js +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -// Check that Math.sqrt returns the same value regardless of being -// optimized or not. - -function f(x) { - return Math.sqrt(x); -} - -var x = 7.0506280066499245e-233; - -var a = f(x); - -f(0.1); -f(0.2); -%OptimizeFunctionOnNextCall(f); - -var b = f(x); - -assertEquals(a, b); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-swapelements.js b/src/3rdparty/v8/test/mjsunit/regress/regress-swapelements.js deleted file mode 100644 index 7c7a683..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-swapelements.js +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2010 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Check that modifying an array while sorting it does not segfault. See -// http://code.google.com/p/chromium/issues/detail?id=66099. - -function Item(val) { - this.value = val; -} - - -var size = 23; -var array1 = new Array(size); - - -function myToString() { - array1.splice(0, 1); - return this.value.toString(); -} - - -function test() { - for (var i = 0; i < size; i++) { - array1[i] = new Item(i); - array1[i].toString = myToString; - } - array1.sort(); -} - - -test(); diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-transcendental.js b/src/3rdparty/v8/test/mjsunit/regress/regress-transcendental.js deleted file mode 100644 index b5dbcb4..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-transcendental.js +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -// Test whether the runtime implementation and generated code of -// sine and tangens return the same results. - -function test(f, x, name) { - // Reset transcendental cache. - gc(); - // Initializing cache leads to a runtime call. - var runtime_result = f(x); - // Flush transcendental cache entries and optimize f. - for (var i = 0; i < 100000; i++) f(i); - // Calculate using generated code. - var gencode_result = f(x); - print(name + " runtime function: " + runtime_result); - print(name + " generated code : " + gencode_result); - assertEquals(gencode_result, runtime_result); -} - -test(Math.tan, -1.57079632679489660000, "Math.tan"); -test(Math.sin, 6.283185307179586, "Math.sin"); - diff --git a/src/3rdparty/v8/test/mjsunit/regress/regress-undefined-store-keyed-fast-element.js b/src/3rdparty/v8/test/mjsunit/regress/regress-undefined-store-keyed-fast-element.js deleted file mode 100644 index 9e6ec9d..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/regress-undefined-store-keyed-fast-element.js +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2012 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --allow-natives-syntax - -function f(v) { - return [0.0, 0.1, 0.2, v]; -} - -assertEquals([0.0, 0.1, 0.2, NaN], f(NaN)); -assertEquals([0.0, 0.1, 0.2, NaN], f(NaN)); -%OptimizeFunctionOnNextCall(f); -assertEquals([0.0, 0.1, 0.2, undefined], f(undefined)); diff --git a/src/3rdparty/v8/test/mjsunit/regress/short-circuit.js b/src/3rdparty/v8/test/mjsunit/regress/short-circuit.js deleted file mode 100644 index 25363d6..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/short-circuit.js +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -var arr = []; - -for (var i = 0; i < 28000; i++) { - arr.push(new RegExp("prefix" + i.toString() + i.toString() + i.toString())); -} diff --git a/src/3rdparty/v8/test/mjsunit/regress/splice-missing-wb.js b/src/3rdparty/v8/test/mjsunit/regress/splice-missing-wb.js deleted file mode 100644 index 5ff0d81..0000000 --- a/src/3rdparty/v8/test/mjsunit/regress/splice-missing-wb.js +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Flags: --expose-gc - -// Create array large enough to span several page regions. -var a = new Array(500); - -// Fill it with values. -for (var i = 0; i < a.length; i++) a[i] = {idx:i}; - -// Force it into oldspace. -gc(); -gc(); - -// Array should be in old space now. Store young object into array. -// Region will be marked. -a[0] = {idx:0}; - -// Delete elements a[2] .. a[201]. Internally we will use -// trimming of backing store. a[0] a[1] will be moved to -// memory location previously occupied by a[200] a[201]. -a.splice(2, 200); - -// Force gc and heap verification. -gc(); - -// Try accessing a[0].idx. It will segfault if write-barrier was accidentally -// omitted. -assertEquals(0, a[0].idx); -assertEquals(1, a[1].idx); -assertEquals(202, a[2].idx); |