diff options
Diffstat (limited to 'deps/v8/test/mjsunit/parallel-compile-tasks.js')
-rw-r--r-- | deps/v8/test/mjsunit/parallel-compile-tasks.js | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/deps/v8/test/mjsunit/parallel-compile-tasks.js b/deps/v8/test/mjsunit/parallel-compile-tasks.js new file mode 100644 index 0000000000..fbde569556 --- /dev/null +++ b/deps/v8/test/mjsunit/parallel-compile-tasks.js @@ -0,0 +1,70 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Flags: --compiler-dispatcher --parallel-compile-tasks --use-external-strings + +(function(a) { + assertEquals(a, "IIFE"); +})("IIFE"); + +(function(a, ...rest) { + assertEquals(a, 1); + assertEquals(rest.length, 2); + assertEquals(rest[0], 2); + assertEquals(rest[1], 3); +})(1,2,3); + +var outer_var = 42; + +function lazy_outer() { + return 42; +} + +var eager_outer = (function() { return 42; }); + +(function() { + assertEquals(outer_var, 42); + assertEquals(lazy_outer(), 42); + assertEquals(eager_outer(), 42); +})(); + +var gen = (function*() { + yield 1; + yield 2; +})(); + +assertEquals(gen.next().value, 1); +assertEquals(gen.next().value, 2); + +var result = (function recursive(a=0) { + if (a == 1) { + return 42; + } + return recursive(1); +})(); + +assertEquals(result, 42); + +var a = 42; +var b; +var c = (a, b = (function z(){ return a+1; })()); +assertEquals(b, 43); +assertEquals(c, 43); +var c = (a, b = (function z(){ return a+1; })()) => { return b; }; +assertEquals(c(314), 315); + +// http://crbug.com/898076 +(function() { + class foo {}; +}); // Don't call IIFE so that it is compiled during idle time + +// http://crbug.com/900535 +(function() { + "use asm"; + function bar(i, j) { + i = i|0; + j = j|0; + } + return {bar: bar}; +}); // Don't call IIFE so that it is compiled during idle time |