author | rschatz |
Tue, 10 May 2016 11:18:40 +0200 | |
changeset 38660 | 7d4a92c4706b |
parent 33686 | 1391474a6405 |
child 40219 | b381e616c242 |
permissions | -rw-r--r-- |
16147 | 1 |
This document describes system properties that are used for internal |
2 |
debugging and instrumentation purposes, along with the system loggers, |
|
3 |
which are used for the same thing. |
|
4 |
||
5 |
This document is intended as a developer resource, and it is not |
|
6 |
needed as Nashorn documentation for normal usage. Flags and system |
|
7 |
properties described herein are subject to change without notice. |
|
8 |
||
9 |
===================================== |
|
10 |
1. System properties used internally |
|
11 |
===================================== |
|
12 |
||
13 |
This documentation of the system property flags assume that the |
|
14 |
default value of the flag is false, unless otherwise specified. |
|
15 |
||
16533
6ae708677f92
8010706: -Dnashorn.args system property to create command lines to wrapped nashorn.jar:s
lagergren
parents:
16259
diff
changeset
|
16 |
SYSTEM PROPERTY: -Dnashorn.args=<string> |
6ae708677f92
8010706: -Dnashorn.args system property to create command lines to wrapped nashorn.jar:s
lagergren
parents:
16259
diff
changeset
|
17 |
|
6ae708677f92
8010706: -Dnashorn.args system property to create command lines to wrapped nashorn.jar:s
lagergren
parents:
16259
diff
changeset
|
18 |
This property takes as its value a space separated list of Nashorn |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
19 |
command line options that should be passed to Nashorn. This might be |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
20 |
useful in environments where it is hard to tell how a nashorn.jar is |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
21 |
launched. |
16533
6ae708677f92
8010706: -Dnashorn.args system property to create command lines to wrapped nashorn.jar:s
lagergren
parents:
16259
diff
changeset
|
22 |
|
6ae708677f92
8010706: -Dnashorn.args system property to create command lines to wrapped nashorn.jar:s
lagergren
parents:
16259
diff
changeset
|
23 |
Example: |
6ae708677f92
8010706: -Dnashorn.args system property to create command lines to wrapped nashorn.jar:s
lagergren
parents:
16259
diff
changeset
|
24 |
|
6ae708677f92
8010706: -Dnashorn.args system property to create command lines to wrapped nashorn.jar:s
lagergren
parents:
16259
diff
changeset
|
25 |
> java -Dnashorn.args="--lazy-complation --log=compiler" large-java-app-with-nashorn.jar |
6ae708677f92
8010706: -Dnashorn.args system property to create command lines to wrapped nashorn.jar:s
lagergren
parents:
16259
diff
changeset
|
26 |
> ant -Dnashorn.args="--log=codegen" antjob |
6ae708677f92
8010706: -Dnashorn.args system property to create command lines to wrapped nashorn.jar:s
lagergren
parents:
16259
diff
changeset
|
27 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
28 |
SYSTEM PROPERTY: -Dnashorn.args.prepend=<string> |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
29 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
30 |
This property behaves like nashorn.args, but adds the given arguments |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
31 |
before the existing ones instead of after them. Later arguments will |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
32 |
overwrite earlier ones, so this is useful for setting default arguments |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
33 |
that can be overwritten. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
34 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
35 |
|
16152
ea430b83d74d
8005789: Forgot to document -Dnashorn.unstable.relink.threshold
lagergren
parents:
16147
diff
changeset
|
36 |
SYSTEM PROPERTY: -Dnashorn.unstable.relink.threshold=x |
ea430b83d74d
8005789: Forgot to document -Dnashorn.unstable.relink.threshold
lagergren
parents:
16147
diff
changeset
|
37 |
|
33686
1391474a6405
8141550: Introduce a command line option instead of nashorn.unstable.relink.threshold system property
attila
parents:
29834
diff
changeset
|
38 |
NOTE: This property is deprecated in favor of the |
1391474a6405
8141550: Introduce a command line option instead of nashorn.unstable.relink.threshold system property
attila
parents:
29834
diff
changeset
|
39 |
"--unstable-relink-threshold" command line option. It controls how many |
1391474a6405
8141550: Introduce a command line option instead of nashorn.unstable.relink.threshold system property
attila
parents:
29834
diff
changeset
|
40 |
call site misses are allowed before a callsite is relinked with "apply" |
1391474a6405
8141550: Introduce a command line option instead of nashorn.unstable.relink.threshold system property
attila
parents:
29834
diff
changeset
|
41 |
semantics to never change again. In the case of megamorphic callsites, |
1391474a6405
8141550: Introduce a command line option instead of nashorn.unstable.relink.threshold system property
attila
parents:
29834
diff
changeset
|
42 |
this is necessary, or the program would spend all its time swapping out |
1391474a6405
8141550: Introduce a command line option instead of nashorn.unstable.relink.threshold system property
attila
parents:
29834
diff
changeset
|
43 |
callsite targets. When neither the system property nor the command line |
1391474a6405
8141550: Introduce a command line option instead of nashorn.unstable.relink.threshold system property
attila
parents:
29834
diff
changeset
|
44 |
option are specified, defaults to 8, or 16 with optimistic types turned |
1391474a6405
8141550: Introduce a command line option instead of nashorn.unstable.relink.threshold system property
attila
parents:
29834
diff
changeset
|
45 |
on. |
16152
ea430b83d74d
8005789: Forgot to document -Dnashorn.unstable.relink.threshold
lagergren
parents:
16147
diff
changeset
|
46 |
|
16147 | 47 |
|
16227
1bafb74d17b2
8007956: Wrong or obsolete system properties in docs/DEVELOPER_README
hannesw
parents:
16201
diff
changeset
|
48 |
SYSTEM PROPERTY: -Dnashorn.compiler.splitter.threshold=x |
16168
f0c208287983
8005976: Break out AccessSpecializer into one pass before CodeGenerator instead of iterative applications from CodeGenerator
lagergren
parents:
16152
diff
changeset
|
49 |
|
f0c208287983
8005976: Break out AccessSpecializer into one pass before CodeGenerator instead of iterative applications from CodeGenerator
lagergren
parents:
16152
diff
changeset
|
50 |
This will change the node weight that requires a subgraph of the IR to |
f0c208287983
8005976: Break out AccessSpecializer into one pass before CodeGenerator instead of iterative applications from CodeGenerator
lagergren
parents:
16152
diff
changeset
|
51 |
be split into several classes in order not to run out of bytecode space. |
f0c208287983
8005976: Break out AccessSpecializer into one pass before CodeGenerator instead of iterative applications from CodeGenerator
lagergren
parents:
16152
diff
changeset
|
52 |
The default value is 0x8000 (32768). |
f0c208287983
8005976: Break out AccessSpecializer into one pass before CodeGenerator instead of iterative applications from CodeGenerator
lagergren
parents:
16152
diff
changeset
|
53 |
|
f0c208287983
8005976: Break out AccessSpecializer into one pass before CodeGenerator instead of iterative applications from CodeGenerator
lagergren
parents:
16152
diff
changeset
|
54 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
55 |
SYSTEM PROPERTY: -Dnashorn.serialize.compression=<x> |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
56 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
57 |
This property sets the compression level used when deflating serialized |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
58 |
AST structures of anonymous split functions. Valid values range from 0 to 9, |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
59 |
the default value is 4. Higher values will reduce memory size of serialized |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
60 |
AST but increase CPU usage required for compression. |
16147 | 61 |
|
62 |
||
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
63 |
SYSTEM PROPERTY: -Dnashorn.codegen.debug.trace=<x> |
16147 | 64 |
|
65 |
See the description of the codegen logger below. |
|
66 |
||
67 |
||
29834
f678f348c947
8067215: Disable dual fields when not using optimistic types
hannesw
parents:
27210
diff
changeset
|
68 |
SYSTEM PROPERTY: -Dnashorn.fields.objects, -Dnashorn.fields.dual |
16147 | 69 |
|
29834
f678f348c947
8067215: Disable dual fields when not using optimistic types
hannesw
parents:
27210
diff
changeset
|
70 |
When the nashorn.fields.objects property is true, Nashorn will always |
f678f348c947
8067215: Disable dual fields when not using optimistic types
hannesw
parents:
27210
diff
changeset
|
71 |
use object fields for AccessorProperties, requiring boxing for all |
f678f348c947
8067215: Disable dual fields when not using optimistic types
hannesw
parents:
27210
diff
changeset
|
72 |
primitive property values. When nashorn.fields.dual is set, Nashorn |
f678f348c947
8067215: Disable dual fields when not using optimistic types
hannesw
parents:
27210
diff
changeset
|
73 |
will always use dual long/object fields, which allows primitives to be |
f678f348c947
8067215: Disable dual fields when not using optimistic types
hannesw
parents:
27210
diff
changeset
|
74 |
stored without boxing. When neither system property is set, Nashorn |
f678f348c947
8067215: Disable dual fields when not using optimistic types
hannesw
parents:
27210
diff
changeset
|
75 |
chooses a setting depending on the optimistic types setting (dual |
f678f348c947
8067215: Disable dual fields when not using optimistic types
hannesw
parents:
27210
diff
changeset
|
76 |
fields when optimistic types are enabled, object-only fields otherwise). |
16147 | 77 |
|
29834
f678f348c947
8067215: Disable dual fields when not using optimistic types
hannesw
parents:
27210
diff
changeset
|
78 |
With dual fields, Nashorn uses long fields to store primitive values. |
f678f348c947
8067215: Disable dual fields when not using optimistic types
hannesw
parents:
27210
diff
changeset
|
79 |
Ints are represented as the 32 low bits of the long fields. Doubles |
f678f348c947
8067215: Disable dual fields when not using optimistic types
hannesw
parents:
27210
diff
changeset
|
80 |
are represented as the doubleToLongBits of their value. This way a |
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
81 |
single field can be used for all primitive types. Packing and |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
82 |
unpacking doubles to their bit representation is intrinsified by |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
83 |
the JVM and extremely fast. |
16147 | 84 |
|
85 |
In the future, this might complement or be replaced by experimental |
|
86 |
feature sun.misc.TaggedArray, which has been discussed on the mlvm |
|
87 |
mailing list. TaggedArrays are basically a way to share data space |
|
88 |
between primitives and references, and have the GC understand this. |
|
89 |
||
90 |
||
16201
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
91 |
SYSTEM PROPERTY: -Dnashorn.compiler.symbol.trace=[<x>[,*]], |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
92 |
-Dnashorn.compiler.symbol.stacktrace=[<x>[,*]] |
16147 | 93 |
|
94 |
When this property is set, creation and manipulation of any symbol |
|
95 |
named "x" will show information about when the compiler changes its |
|
96 |
type assumption, bytecode local variable slot assignment and other |
|
97 |
data. This is useful if, for example, a symbol shows up as an Object, |
|
98 |
when you believe it should be a primitive. Usually there is an |
|
99 |
explanation for this, for example that it exists in the global scope |
|
16201
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
100 |
and type analysis has to be more conservative. |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
101 |
|
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
102 |
Several symbols names to watch can be specified by comma separation. |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
103 |
|
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
104 |
If no variable name is specified (and no equals sign), all symbols |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
105 |
will be watched |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
106 |
|
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
107 |
By using "stacktrace" instead of or together with "trace", stack |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
108 |
traces will be displayed upon symbol changes according to the same |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
109 |
semantics. |
16147 | 110 |
|
111 |
||
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
112 |
SYSTEM PROPERTY: -Dnashorn.lexer.xmlliterals |
16147 | 113 |
|
114 |
If this property it set, it means that the Lexer should attempt to |
|
115 |
parse XML literals, which would otherwise generate syntax |
|
116 |
errors. Warning: there are currently no unit tests for this |
|
117 |
functionality. |
|
118 |
||
119 |
XML literals, when this is enabled, end up as standard LiteralNodes in |
|
120 |
the IR. |
|
121 |
||
122 |
||
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
123 |
SYSTEM_PROPERTY: -Dnashorn.debug |
16147 | 124 |
|
125 |
If this property is set to true, Nashorn runs in Debug mode. Debug |
|
126 |
mode is slightly slower, as for example statistics counters are enabled |
|
127 |
during the run. Debug mode makes available a NativeDebug instance |
|
128 |
called "Debug" in the global space that can be used to print property |
|
129 |
maps and layout for script objects, as well as a "dumpCounters" method |
|
130 |
that will print the current values of the previously mentioned stats |
|
131 |
counters. |
|
132 |
||
133 |
These functions currently exists for Debug: |
|
134 |
||
135 |
"map" - print(Debug.map(x)) will dump the PropertyMap for object x to |
|
136 |
stdout (currently there also exist functions called "embedX", where X |
|
137 |
is a value from 0 to 3, that will dump the contents of the embed pool |
|
138 |
for the first spill properties in any script object and "spill", that |
|
139 |
will dump the contents of the growing spill pool of spill properties |
|
140 |
in any script object. This is of course subject to change without |
|
141 |
notice, should we change the script object layout. |
|
142 |
||
143 |
"methodHandle" - this method returns the method handle that is used |
|
144 |
for invoking a particular script function. |
|
145 |
||
146 |
"identical" - this method compares two script objects for reference |
|
147 |
equality. It is a == Java comparison |
|
148 |
||
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
149 |
"equals" - Returns true if two objects are either referentially |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
150 |
identical or equal as defined by java.lang.Object.equals. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
151 |
|
16147 | 152 |
"dumpCounters" - will dump the debug counters' current values to |
153 |
stdout. |
|
154 |
||
155 |
Currently we count number of ScriptObjects in the system, number of |
|
156 |
Scope objects in the system, number of ScriptObject listeners added, |
|
157 |
removed and dead (without references). |
|
158 |
||
159 |
We also count number of ScriptFunctions, ScriptFunction invocations |
|
160 |
and ScriptFunction allocations. |
|
161 |
||
162 |
Furthermore we count PropertyMap statistics: how many property maps |
|
163 |
exist, how many times were property maps cloned, how many times did |
|
164 |
the property map history cache hit, prevent new allocations, how many |
|
165 |
prototype invalidations were done, how many time the property map |
|
166 |
proto cache hit. |
|
167 |
||
168 |
Finally we count callsite misses on a per callsite bases, which occur |
|
169 |
when a callsite has to be relinked, due to a previous assumption of |
|
170 |
object layout being invalidated. |
|
171 |
||
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
172 |
"getContext" - return the current Nashorn context. |
16147 | 173 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
174 |
"equalWithoutType" - Returns true if if the two objects are both |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
175 |
property maps, and they have identical properties in the same order, |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
176 |
but allows the properties to differ in their types. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
177 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
178 |
"diffPropertyMaps" Returns a diagnostic string representing the difference |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
179 |
of two property maps. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
180 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
181 |
"getClass" - Returns the Java class of an object, or undefined if null. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
182 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
183 |
"toJavaString" - Returns the Java toString representation of an object. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
184 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
185 |
"toIdentString" - Returns a string representation of an object consisting |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
186 |
of its java class name and hash code. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
187 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
188 |
"getListenerCount" - Return the number of property listeners for a |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
189 |
script object. |
16147 | 190 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
191 |
"getEventQueueCapacity" - Get the capacity of the event queue. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
192 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
193 |
"setEventQueueCapacity" - Set the event queue capacity. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
194 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
195 |
"addRuntimeEvent" - Add a runtime event to the runtime event queue. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
196 |
The queue has a fixed size (see -Dnashorn.runtime.event.queue.size) |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
197 |
and the oldest entry will be thrown out of the queue is about to overflow. |
16147 | 198 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
199 |
"expandEventQueueCapacity" - Expands the event queue capacity, |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
200 |
or truncates if capacity is lower than current capacity. Then only |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
201 |
the newest entries are kept. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
202 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
203 |
"clearRuntimeEvents" - Clear the runtime event queue. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
204 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
205 |
"removeRuntimeEvent" - Remove a specific runtime event from the event queue. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
206 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
207 |
"getRuntimeEvents" - Return all runtime events in the queue as an array. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
208 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
209 |
"getLastRuntimeEvent" - Return the last runtime event in the queue. |
16147 | 210 |
|
211 |
||
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
212 |
SYSTEM PROPERTY: -Dnashorn.methodhandles.debug.stacktrace |
16147 | 213 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
214 |
This enhances methodhandles logging (see below) to also dump the |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
215 |
stack trace for every instrumented method handle operation. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
216 |
Warning: This is enormously verbose, but provides a pretty |
16147 | 217 |
decent "grep:able" picture of where the calls are coming from. |
218 |
||
219 |
||
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
220 |
SYSTEM PROPERTY: -Dnashorn.cce |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
221 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
222 |
Setting this system property causes the Nashorn linker to rely on |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
223 |
ClassCastExceptions for triggering a callsite relink. If not set, the linker |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
224 |
will add an explicit instanceof guard. |
16147 | 225 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
226 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
227 |
SYSTEM PROPERTY: -Dnashorn.spill.threshold=<x> |
16147 | 228 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
229 |
This property sets the number of fields in an object from which to use |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
230 |
generic array based spill storage instead of Java fields. The default value |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
231 |
is 256. |
16147 | 232 |
|
233 |
||
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
234 |
SYSTEM PROPERTY: -Dnashorn.tcs.miss.samplePercent=<x> |
16147 | 235 |
|
236 |
When running with the trace callsite option (-tcs), Nashorn will count |
|
237 |
and instrument any callsite misses that require relinking. As the |
|
238 |
number of relinks is large and usually produces a lot of output, this |
|
239 |
system property can be used to constrain the percentage of misses that |
|
240 |
should be logged. Typically this is set to 1 or 5 (percent). 1% is the |
|
241 |
default value. |
|
242 |
||
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
243 |
SYSTEM PROPERTY: -Dnashorn.persistent.code.cache |
16147 | 244 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
245 |
This property can be used to set the directory where Nashorn stores |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
246 |
serialized script classes generated with the -pcc/--persistent-code-cache |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
247 |
option. The default directory name is "nashorn_code_cache". |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
248 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
249 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
250 |
SYSTEM PROPERTY: -Dnashorn.typeInfo.maxFiles |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
251 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
252 |
Maximum number of files to store in the type info cache. The type info cache |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
253 |
is used to cache type data of JavaScript functions when running with |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
254 |
optimistic types (-ot/--optimistic-types). There is one file per JavaScript |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
255 |
function in the cache. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
256 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
257 |
The default value is 0 which means the feature is disabled. Setting this |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
258 |
to something like 20000 is probably good enough for most applications and |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
259 |
will usually cap the cache directory to about 80MB presuming a 4kB |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
260 |
filesystem allocation unit. Set this to "unlimited" to run without limit. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
261 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
262 |
If the value is not 0 or "unlimited", Nashorn will spawn a cleanup thread |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
263 |
that makes sure the number of files in the cache does not exceed the given |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
264 |
value by deleting the least recently modified files. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
265 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
266 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
267 |
SYSTEM PROPERTY: -Dnashorn.typeInfo.cacheDir |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
268 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
269 |
This property can be used to set the directory where Nashorn stores the |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
270 |
type info cache when -Dnashorn.typeInfo.maxFiles is set to a nonzero |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
271 |
value. The default location is platform specific. On Windows, it is |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
272 |
"${java.io.tmpdir}\com.oracle.java.NashornTypeInfo". On Linux and |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
273 |
Solaris it is "~/.cache/com.oracle.java.NashornTypeInfo". On Mac OS X, |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
274 |
it is "~/Library/Caches/com.oracle.java.NashornTypeInfo". |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
275 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
276 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
277 |
SYSTEM PROPERTY: -Dnashorn.typeInfo.cleanupDelaySeconds=<value> |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
278 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
279 |
This sets the delay between cleanups of the typeInfo cache, in seconds. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
280 |
The default delay is 20 seconds. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
281 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
282 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
283 |
SYSTEM PROPERTY: -Dnashorn.profilefile=<filename> |
16147 | 284 |
|
285 |
When running with the profile callsite options (-pcs), Nashorn will |
|
286 |
dump profiling data for all callsites to stderr as a shutdown hook. To |
|
287 |
instead redirect this to a file, specify the path to the file using |
|
288 |
this system property. |
|
289 |
||
290 |
||
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
291 |
SYSTEM_PROPERTY: -Dnashorn.regexp.impl=[jdk|joni] |
16259
bb504280c322
8006028: Integrate Joni regexp engine with Nashorn
hannesw
parents:
16227
diff
changeset
|
292 |
|
bb504280c322
8006028: Integrate Joni regexp engine with Nashorn
hannesw
parents:
16227
diff
changeset
|
293 |
This property defines the regular expression engine to be used by |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
294 |
Nashorn. Set this flag to "jdk" to get an implementation based on the |
16259
bb504280c322
8006028: Integrate Joni regexp engine with Nashorn
hannesw
parents:
16227
diff
changeset
|
295 |
JDK's java.util.regex package. Set this property to "joni" to install |
bb504280c322
8006028: Integrate Joni regexp engine with Nashorn
hannesw
parents:
16227
diff
changeset
|
296 |
an implementation based on Joni, the regular expression engine used by |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
297 |
the JRuby project. The default value for this flag is "joni" |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
298 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
299 |
SYSTEM PROPERTY: -Dnashorn.runtime.event.queue.size=<value> |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
300 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
301 |
Nashorn provides a fixed sized runtime event queue for debugging purposes. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
302 |
See -Dnashorn.debug for methods to access the event queue. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
303 |
The default value is 1024. |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
304 |
|
16147 | 305 |
=============== |
306 |
2. The loggers. |
|
307 |
=============== |
|
308 |
||
16201
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
309 |
It is very simple to create your own logger. Use the DebugLogger class |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
310 |
and give the subsystem name as a constructor argument. |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
311 |
|
16147 | 312 |
The Nashorn loggers can be used to print per-module or per-subsystem |
313 |
debug information with different levels of verbosity. The loggers for |
|
314 |
a given subsystem are available are enabled by using |
|
315 |
||
316 |
--log=<systemname>[:<level>] |
|
317 |
||
318 |
on the command line. |
|
319 |
||
320 |
Here <systemname> identifies the name of the subsystem to be logged |
|
321 |
and the optional colon and level argument is a standard |
|
322 |
java.util.logging.Level name (severe, warning, info, config, fine, |
|
323 |
finer, finest). If the level is left out for a particular subsystem, |
|
324 |
it defaults to "info". Any log message logged as the level or a level |
|
325 |
that is more important will be output to stderr by the logger. |
|
326 |
||
327 |
Several loggers can be enabled by a single command line option, by |
|
328 |
putting a comma after each subsystem/level tuple (or each subsystem if |
|
329 |
level is unspecified). The --log option can also be given multiple |
|
330 |
times on the same command line, with the same effect. |
|
331 |
||
332 |
For example: --log=codegen,fields:finest is equivalent to |
|
333 |
--log=codegen:info --log=fields:finest |
|
334 |
||
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
335 |
The following is an incomplete list of subsystems that currently |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
336 |
support logging. Look for classes implementing |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
337 |
jdk.nashorn.internal.runtime.logging.Loggable for more loggers. |
16147 | 338 |
|
339 |
||
340 |
* compiler |
|
341 |
||
342 |
The compiler is in charge of turning source code and function nodes |
|
343 |
into byte code, and installs the classes into a class loader |
|
344 |
controlled from the Context. Log messages are, for example, about |
|
345 |
things like new compile units being allocated. The compiler has global |
|
346 |
settings that all the tiers of codegen (e.g. Lower and CodeGenerator) |
|
16201
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
347 |
use.s |
16147 | 348 |
|
349 |
||
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
350 |
* recompile |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
351 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
352 |
This logger shows information about recompilation of scripts and |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
353 |
functions at runtime. Recompilation may happen because a function |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
354 |
was called with different parameter types, or because an optimistic |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
355 |
assumption failed while executing a function with -ot/--optimistic-types. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
356 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
357 |
|
16147 | 358 |
* codegen |
359 |
||
360 |
The code generator is the emitter stage of the code pipeline, and |
|
361 |
turns the lowest tier of a FunctionNode into bytecode. Codegen logging |
|
362 |
shows byte codes as they are being emitted, line number information |
|
363 |
and jumps. It also shows the contents of the bytecode stack prior to |
|
364 |
each instruction being emitted. This is a good debugging aid. For |
|
365 |
example: |
|
366 |
||
367 |
[codegen] #41 line:2 (f)_afc824e |
|
368 |
[codegen] #42 load symbol x slot=2 |
|
369 |
[codegen] #43 {1:O} load int 0 |
|
370 |
[codegen] #44 {2:I O} dynamic_runtime_call GT:ZOI_I args=2 returnType=boolean |
|
371 |
[codegen] #45 signature (Ljava/lang/Object;I)Z |
|
372 |
[codegen] #46 {1:Z} ifeq ternary_false_5402fe28 |
|
373 |
[codegen] #47 load symbol x slot=2 |
|
374 |
[codegen] #48 {1:O} goto ternary_exit_107c1f2f |
|
375 |
[codegen] #49 ternary_false_5402fe28 |
|
376 |
[codegen] #50 load symbol x slot=2 |
|
377 |
[codegen] #51 {1:O} convert object -> double |
|
378 |
[codegen] #52 {1:D} neg |
|
379 |
[codegen] #53 {1:D} convert double -> object |
|
380 |
[codegen] #54 {1:O} ternary_exit_107c1f2f |
|
381 |
[codegen] #55 {1:O} return object |
|
382 |
||
383 |
shows a ternary node being generated for the sequence "return x > 0 ? |
|
384 |
x : -x" |
|
385 |
||
386 |
The first number on the log line is a unique monotonically increasing |
|
387 |
emission id per bytecode. There is no guarantee this is the same id |
|
388 |
between runs. depending on non deterministic code |
|
389 |
execution/compilation, but for small applications it usually is. If |
|
390 |
the system variable -Dnashorn.codegen.debug.trace=<x> is set, where x |
|
391 |
is a bytecode emission id, a stack trace will be shown as the |
|
392 |
particular bytecode is about to be emitted. This can be a quick way to |
|
393 |
determine where it comes from without attaching the debugger. "Who |
|
394 |
generated that neg?" |
|
395 |
||
396 |
The --log=codegen option is equivalent to setting the system variable |
|
397 |
"nashorn.codegen.debug" to true. |
|
398 |
||
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
399 |
* fold |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
400 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
401 |
Shows constant folding taking place before lowering |
16147 | 402 |
|
403 |
* lower |
|
404 |
||
16201
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
405 |
This is the first lowering pass. |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
406 |
|
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
407 |
Lower is a code generation pass that turns high level IR nodes into |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
408 |
lower level one, for example substituting comparisons to RuntimeNodes |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
409 |
and inlining finally blocks. |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
410 |
|
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
411 |
Lower is also responsible for determining control flow information |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
412 |
like end points. |
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
413 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
414 |
* symbols |
16201
889ddb179cdf
8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
lagergren
parents:
16168
diff
changeset
|
415 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
416 |
The symbols logger tracks the assignment os symbols to identifiers. |
16147 | 417 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
418 |
* scopedepths |
16147 | 419 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
420 |
This logs the calculation of scope depths for non-local symbols. |
16147 | 421 |
|
422 |
* fields |
|
423 |
||
424 |
The --log=fields option (at info level) is equivalent to setting the |
|
425 |
system variable "nashorn.fields.debug" to true. At the info level it |
|
426 |
will only show info about type assumptions that were invalidated. If |
|
427 |
the level is set to finest, it will also trace every AccessorProperty |
|
428 |
getter and setter in the program, show arguments, return values |
|
429 |
etc. It will also show the internal representation of respective field |
|
430 |
(Object in the normal case, unless running with the dual field |
|
16168
f0c208287983
8005976: Break out AccessSpecializer into one pass before CodeGenerator instead of iterative applications from CodeGenerator
lagergren
parents:
16152
diff
changeset
|
431 |
representation) |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
432 |
|
24766
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
433 |
* time |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
434 |
|
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
435 |
This enables timers for various phases of script compilation. The timers |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
436 |
will be dumped when the Nashorn process exits. We see a percentage value |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
437 |
of how much time was spent not executing bytecode (i.e. compilation and |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
438 |
internal tasks) at the end of the report. |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
439 |
|
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
440 |
A finer level than "info" will show individual compilation timings as they |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
441 |
happen. |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
442 |
|
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
443 |
Here is an example: |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
444 |
|
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
445 |
[time] Accumulated complation phase Timings: |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
446 |
[time] |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
447 |
[time] 'JavaScript Parsing' 1076 ms |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
448 |
[time] 'Constant Folding' 159 ms |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
449 |
[time] 'Control Flow Lowering' 303 ms |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
450 |
[time] 'Program Point Calculation' 282 ms |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
451 |
[time] 'Builtin Replacement' 71 ms |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
452 |
[time] 'Code Splitting' 670 ms |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
453 |
[time] 'Symbol Assignment' 474 ms |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
454 |
[time] 'Scope Depth Computation' 249 ms |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
455 |
[time] 'Optimistic Type Assignment' 186 ms |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
456 |
[time] 'Local Variable Type Calculation' 526 ms |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
457 |
[time] 'Bytecode Generation' 5177 ms |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
458 |
[time] 'Class Installation' 1854 ms |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
459 |
[time] |
7b54e2362c6c
8043632: Parallelize class installation and various script fixes.
lagergren
parents:
19632
diff
changeset
|
460 |
[time] Total runtime: 11994 ms (Non-runtime: 11027 ms [91%]) |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
461 |
|
27210
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
462 |
* methodhandles |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
463 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
464 |
If this logger is enabled, each MethodHandle related call that uses |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
465 |
the java.lang.invoke package gets its MethodHandle intercepted and an |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
466 |
instrumentation printout of arguments and return value appended to |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
467 |
it. This shows exactly which method handles are executed and from |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
468 |
where. (Also MethodTypes and SwitchPoints). |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
469 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
470 |
* classcache |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
471 |
|
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
472 |
This logger shows information about reusing code classes using the |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
473 |
in-memory class cache. Nashorn will try to avoid compilation of |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
474 |
scripts by using existing classes. This can significantly improve |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
475 |
performance when repeatedly evaluating the same script. |
a04ede4787ba
8059813: Type Info Cache flag must must be documented
hannesw
parents:
24767
diff
changeset
|
476 |
|
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
477 |
======================= |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
478 |
3. Undocumented options |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
479 |
======================= |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
480 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
481 |
Here follows a short description of undocumented options for Nashorn. |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
482 |
To see a list of all undocumented options, use the (undocumented) flag |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
483 |
"-xhelp". |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
484 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
485 |
i.e. jjs -xhelp or java -jar nashorn.jar -xhelp |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
486 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
487 |
Undocumented options are not guaranteed to work, run correctly or be |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
488 |
bug free. They are experimental and for internal or debugging use. |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
489 |
They are also subject to change without notice. |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
490 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
491 |
In practice, though, all options below not explicitly documented as |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
492 |
EXPERIMENTAL can be relied upon, for example --dump-on-error is useful |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
493 |
for any JavaScript/Nashorn developer, but there is no guarantee. |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
494 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
495 |
A short summary follows: |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
496 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
497 |
-D (-Dname=value. Set a system property. This option can be repeated.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
498 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
499 |
-ccs, --class-cache-size (Size of the Class cache size per global scope.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
500 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
501 |
-cp, -classpath (-cp path. Specify where to find user class files.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
502 |
|
24767
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
503 |
-co, --compile-only (Compile without running.) |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
504 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
505 |
|
24767
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
506 |
-d, --dump-debug-dir (specify a destination directory to dump class files.) |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
507 |
param: <path> |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
508 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
509 |
--debug-lines (Generate line number table in .class files.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
510 |
param: [true|false] default: true |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
511 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
512 |
--debug-locals (Generate local variable table in .class files.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
513 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
514 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
515 |
-doe, -dump-on-error (Dump a stack trace on errors.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
516 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
517 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
518 |
--early-lvalue-error (invalid lvalue expressions should be reported as early errors.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
519 |
param: [true|false] default: true |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
520 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
521 |
--empty-statements (Preserve empty statements in AST.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
522 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
523 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
524 |
-fv, -fullversion (Print full version info of Nashorn.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
525 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
526 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
527 |
--function-statement-error (Report an error when function declaration is used as a statement.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
528 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
529 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
530 |
--function-statement-warning (Warn when function declaration is used as a statement.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
531 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
532 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
533 |
-fx (Launch script as an fx application.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
534 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
535 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
536 |
--global-per-engine (Use single Global instance per script engine instance.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
537 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
538 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
539 |
-h, -help (Print help for command line flags.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
540 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
541 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
542 |
--loader-per-compile (Create a new class loader per compile.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
543 |
param: [true|false] default: true |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
544 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
545 |
-l, --locale (Set Locale for script execution.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
546 |
param: <locale> default: en-US |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
547 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
548 |
--log (Enable logging of a given level for a given number of sub systems. |
24767
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
549 |
[for example: --log=fields:finest,codegen:info].) |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
550 |
param: <module:level>,* |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
551 |
|
24767
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
552 |
-nj, --no-java (Disable Java support.) |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
553 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
554 |
|
24767
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
555 |
-nse, --no-syntax-extensions (Disallow non-standard syntax extensions.) |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
556 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
557 |
|
24767
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
558 |
-nta, --no-typed-arrays (Disable typed arrays support.) |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
559 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
560 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
561 |
--parse-only (Parse without compiling.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
562 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
563 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
564 |
--print-ast (Print abstract syntax tree.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
565 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
566 |
|
24767
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
567 |
-pc, --print-code (Print generated bytecode. If a directory is specified, nothing will |
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
568 |
be dumped to stderr. Also, in that case, .dot files will be generated |
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
569 |
for all functions or for the function with the specified name only.) |
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
570 |
param: [dir:<output-dir>,function:<name>] |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
571 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
572 |
--print-lower-ast (Print lowered abstract syntax tree.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
573 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
574 |
|
24767
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
575 |
-plp, --print-lower-parse (Print the parse tree after lowering.) |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
576 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
577 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
578 |
--print-mem-usage (Print memory usage of IR after each compile stage.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
579 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
580 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
581 |
--print-no-newline (Print function will not print new line char.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
582 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
583 |
|
24767
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
584 |
-pp, --print-parse (Print the parse tree.) |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
585 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
586 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
587 |
--print-symbols (Print the symbol table.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
588 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
589 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
590 |
-pcs, --profile-callsites (Dump callsite profile data.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
591 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
592 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
593 |
-scripting (Enable scripting features.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
594 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
595 |
|
24767
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
596 |
--stderr (Redirect stderr to a filename or to another tty, e.g. stdout.) |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
597 |
param: <output console> |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
598 |
|
24767
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
599 |
--stdout (Redirect stdout to a filename or to another tty, e.g. stderr.) |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
600 |
param: <output console> |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
601 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
602 |
-strict (Run scripts in strict mode.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
603 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
604 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
605 |
-t, -timezone (Set timezone for script execution.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
606 |
param: <timezone> default: Europe/Stockholm |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
607 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
608 |
-tcs, --trace-callsites (Enable callsite trace mode. Options are: miss [trace callsite misses] |
24767
0b8af588070b
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)
lagergren
parents:
24766
diff
changeset
|
609 |
enterexit [trace callsite enter/exit], objects [print object properties].) |
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
610 |
param: [=[option,]*] |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
611 |
|
33686
1391474a6405
8141550: Introduce a command line option instead of nashorn.unstable.relink.threshold system property
attila
parents:
29834
diff
changeset
|
612 |
-urt, --unstable-relink-threshold (Number of times a dynamic call site has to be relinked before it |
1391474a6405
8141550: Introduce a command line option instead of nashorn.unstable.relink.threshold system property
attila
parents:
29834
diff
changeset
|
613 |
is considered unstable, when the runtime will try to link it as |
1391474a6405
8141550: Introduce a command line option instead of nashorn.unstable.relink.threshold system property
attila
parents:
29834
diff
changeset
|
614 |
if it is megamorphic.) |
1391474a6405
8141550: Introduce a command line option instead of nashorn.unstable.relink.threshold system property
attila
parents:
29834
diff
changeset
|
615 |
|
19632
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
616 |
--verify-code (Verify byte code before running.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
617 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
618 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
619 |
-v, -version (Print version info of Nashorn.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
620 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
621 |
|
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
622 |
-xhelp (Print extended help for command line flags.) |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
623 |
param: [true|false] default: false |
c9d704ad422e
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.
lagergren
parents:
16533
diff
changeset
|
624 |