Commit Graph

23 Commits

Author SHA1 Message Date
Attila Szegedi
75d6c996f1 8141550: Introduce a command line option instead of nashorn.unstable.relink.threshold system property
Reviewed-by: hannesw, sundar
2015-11-09 15:37:07 +01:00
Hannes Wallnöfer
2cbce413a0 8067215: Disable dual fields when not using optimistic types
Reviewed-by: attila, lagergren
2015-04-10 14:18:31 +02:00
Marcus Lagergren
88fcdf5d05 8060204: Fix warnings in Joni and tests
Reviewed-by: hannesw, sundar, attila
2014-11-03 11:47:41 +01:00
Hannes Wallnöfer
02308fac34 8059813: Type Info Cache flag must must be documented
Reviewed-by: attila, jlaskey
2014-10-23 17:25:39 +02:00
Attila Szegedi
9227b18d8a 8055199: Tidy up Nashorn codebase for code standards (August 2014)
Reviewed-by: hannesw, lagergren
2014-08-15 17:30:49 +02:00
Marcus Lagergren
a6e90a4ba3 8044012: Integrate the latest best known performance flags int ant octane jobs, and make sure that it's easy to compare 'ant octane-nashorn' and 'ant octane-v8' at the push of a button. (or rather; the entry of a command line)
Reviewed-by: jlaskey, sundar
2014-05-27 21:25:07 +02:00
Marcus Lagergren
b4b7b4e53d 8043632: Parallelize class installation and various script fixes
Reviewed-by: sundar, attila
2014-05-21 16:12:40 +02:00
Marcus Lagergren
6d31b3a15f 8023454: Updated DEVELOPER_README and command line flags, ensuring that undocumented flags that aren't guaranteed to work (disabled by default) and that are work in progress show up with an EXPERIMENTAL tag
Reviewed-by: attila, jlaskey
2013-08-23 15:46:09 +02:00
Attila Szegedi
75501c6993 8017768: allow dot as inner class name separator for Java.type
Reviewed-by: jlaskey, sundar
2013-07-03 18:10:12 +02:00
Athijegannathan Sundararajan
249d0ae5b4 8015969: Needs to enforce and document that global "context" and "engine" can't be modified when running via jsr223
Reviewed-by: hannesw, jlaskey
2013-06-25 17:31:19 +05:30
Attila Szegedi
34bc5ff07f 8014797: rename Java.toJavaArray/toJavaScriptArray to Java.to/from, respectively
Reviewed-by: jlaskey, sundar
2013-05-20 21:25:14 +02:00
Attila Szegedi
a3e2765ce8 8014646: Update the Java interop documentation in the Java Scripting Programmer's Guide
Reviewed-by: jlaskey, hannesw, lagergren
2013-05-15 14:54:28 +02:00
David Katleman
e574671868 8012048: JDK8 b85 source with GPL header errors
Reviewed-by: iris, mduigou, jjg
2013-04-12 15:22:56 -07:00
Marcus Lagergren
f20cadfd8b 8010706: -Dnashorn.args system property to create command lines to wrapped nashorn.jar:s
Reviewed-by: hannesw, sundar
2013-03-26 08:42:35 +01:00
Athijegannathan Sundararajan
bb6c34adc7 8009757: Package access clean up and refactoring
Reviewed-by: jlaskey, lagergren, attila
2013-03-12 18:12:42 +05:30
Hannes Wallnöfer
1867421e9b 8006028: Integrate Joni regexp engine with Nashorn
Reviewed-by: lagergren, attila
2013-02-22 17:00:22 +01:00
Hannes Wallnöfer
b98a77d26c 8007956: Wrong or obsolete system properties in docs/DEVELOPER_README
Reviewed-by: attila, jlaskey
2013-02-12 13:55:05 +01:00
Athijegannathan Sundararajan
31aa060b11 8007452: add scripting programmers doc changes for nashorn
Reviewed-by: jlaskey, hannesw
2013-02-05 09:11:03 +05:30
Marcus Lagergren
30b950d2d2 8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes
Lower suffered from being a "God class" trying to do everything at once.  As Nashorn code generation has grown, so has Lower. It does several post processing passes, tries to do several things at once even though all type information isn't in place, adjusting state afterwards and so on. It also performs control flow analysis, type attribution and constant folding, and  everything else code generation related before byte code emission. I have now separated the compilation process into Lower (create low level nodes from high level ones, copy code such as finally block inlining etc), Attr (assign types and symbols to all nodes - freeze slot and scope information) and FinalizeTypes (insert explicit casts, specialize invoke dynamic types for scope accesses). I've removed the kludgy AccessSpecializer, as this now integrates naturally with typing. Everything is now much easier to read and each module performs only one thing. I have added separate loggers for the separate tiers. In the process I have also fixed: (1) problems with type coercion (see test/script/basic/typecoercion.js, basically our coercion was too late and our symbol inference was erroneous. This only manifested itself in very rare occasions where toNumber coercion has side effects, such as for example when valueOf is overridden)  (2) copying literal nodes (literal copy did not use the superclass copy, which made all the Node specific fields not to be copied  (3) erroneous literal tokenization (literals shouldn't always just inherit token information from whatever node that creates them) (4) splitter weighnodes - unary nodes were considered weightless  (4) removed the hateful and kludgy "VarNode.shouldAppend", which really isn't needed when we have an attribution phase that determines self reference symbols (the only thing it was used for) (5) duplicate line number issues in the parser (6) convert bug in CodeGenerator for intermediate results of scope accesses (see test/script/basic/access-specializer.js) ... Several of these things just stopped being problems with the new architecture "can't happen anymore" and are not bug fixes per se. All tests run. No performance regressions exist that I've been able to measure. Some increases in performance were measured, but in the statistical margin of error (which is very wide as HotSpot currently has warmup issues with LambdaForms/invoke dynamic). Compile speed has not measurably increased.

Reviewed-by: jlaskey, attila
2013-01-30 12:26:45 +01:00
Marcus Lagergren
8bbf26bc89 8005976: Break out AccessSpecializer into one pass before CodeGenerator instead of iterative applications from CodeGenerator
Now scope and slot information is guaranteed to be fixed AND NOT CHANGE before CodeGeneration. We want to keep it that way to build future type specializations and bring all type work out of CodeGenerator.

Reviewed-by: attila, hannesw
2013-01-11 10:40:51 +01:00
Marcus Lagergren
24e583d55f 8005789: Forgot to document -Dnashorn.unstable.relink.threshold
Added documentation to DEVELOPER_README, fixed code convention warnings

Reviewed-by: attila
2013-01-07 19:31:36 +01:00
James Laskey
311f43d5a6 8005663: Update copyright year to 2013
Reviewed-by: sundar
2013-01-04 09:58:33 -04:00
Jim Laskey
98762d6ee0 8005403: Open-source Nashorn
Co-authored-by: Akhil Arora <akhil.arora@oracle.com>
Co-authored-by: Andreas Woess <andreas.woess@jku.at>
Co-authored-by: Attila Szegedi <attila.szegedi@oracle.com>
Co-authored-by: Hannes Wallnoefer <hannes.wallnoefer@oracle.com>
Co-authored-by: Henry Jen <henry.jen@oracle.com>
Co-authored-by: Marcus Lagergren <marcus.lagergren@oracle.com>
Co-authored-by: Pavel Semenov <pavel.semenov@oracle.com>
Co-authored-by: Pavel Stepanov <pavel.stepanov@oracle.com>
Co-authored-by: Petr Hejl <petr.hejl@oracle.com>
Co-authored-by: Petr Pisl <petr.pisl@oracle.com>
Co-authored-by: Sundararajan Athijegannathan <sundararajan.athijegannathan@oracle.com>
Reviewed-by: attila, hannesw, lagergren, sundar
2012-12-21 16:36:24 -04:00