Please review https://jbs.oracle.com/bugs/browse/JDK-8008648
Attila Szegedi
attila.szegedi at oracle.com
Thu Feb 21 07:17:48 PST 2013
+1, with the understanding that lazy inner functions force their outer functions to have all their variables in scope. Might want to raise an issue to track that.
On Feb 21, 2013, at 3:00 PM, Marcus Lagergren <marcus.lagergren at oracle.com> wrote:
> Various scoping and callee problem related to the lazy JIT. Modified wall clock timing framework slightly to enable better logging.
>
> http://cr.openjdk.java.net/~lagergren/8008648/
>
> Lazy JIT now bootstraps significantly faster than normal JIT for large scripts.
>
>
> --
>
> Mandreel startup (3 MB of JavaScript) - with the harness lazy jit and normal jit respectively
>
> cthulhu:tip marcus$ java -Dnashorn.time -Dnashorn.compiler.lazy -jar dist/nashorn.jar test/script/external/octane/mandreel.js
> test/script/external/octane/mandreel.js:30 ReferenceError: "BenchmarkSuite" is not defined
> [JavaScript Parsing] 845 ms
> [Lazy JIT Initialization] 66 ms
> [Constant Folding] 86 ms
> [Control Flow Lowering] 549 ms
> [Type Attribution] 128 ms
> [Code Splitting] 105 ms
> [Type Finalization] 20 ms
> [Bytecode Generation] 660 ms
> [Code Installation] 27 ms
> Total runtime: 3176 ms (Non-runtime: 2486 [78%])
>
> cthulhu:tip marcus$ java -Dnashorn.time -Dznashorn.compiler.lazy -jar dist/nashorn.jar test/script/external/octane/mandreel.js
> test/script/external/octane/mandreel.js:30 ReferenceError: "BenchmarkSuite" is not defined
> [JavaScript Parsing] 902 ms
> [Constant Folding] 102 ms
> [Control Flow Lowering] 1545 ms
> [Type Attribution] 1656 ms
> [Code Splitting] 428 ms
> [Type Finalization] 559 ms
> [Bytecode Generation] 3710 ms
> [Code Installation] 628 ms
> Total runtime: 12353 ms (Non-runtime: 9530 [77%])
>
More information about the nashorn-dev
mailing list