* configure.ac: New switch for disabling -O2 (--disable-optimizations).
[cacao.git] / man / cacao.1
1 .TH CACAO 1 "November 23, 2005"
2 .UC
3 .SH NAME
4 cacao \- a Java just-in-time compiler
5 .SH SYNOPSIS
6 .B cacao 
7 [
8 .I options
9 ]
10 .I classname
11 [
12 .I argument ... 
13 ]
14 .br
15 .B cacao
16 [
17 .I options
18 ]
19 .B -jar
20 .I file.jar
21 [
22 .I argument ...
23 ]
24 .br
25 .SH DESCRIPTION
26 The method \fBmain\fP of the class \fIclassname\fP is executed.
27 Method \fBmain\fP must have the signature \fBpublic static void
28 main(String[] argv)\fP. The program arguments are passed to method
29 \fBmain\fP in the string array \fBargv\fP. The environment variable
30 \fICLASSPATH\fP must contain the directory of the Java class files.
31 .SH OPTIONS
32 Currently recognized options are:
33
34 .TP
35 .B -classpath \fIpath\fP
36 Set the search path for user-defined class files. Usually the environment variable CLASSPATH
37 specifies the search path, but this option overrides the value of the environment variable.
38 \fIpath\fP may be a colon-separated list of directories and .jar files.
39
40 .TP
41 .B -cp \fIpath\fP
42 Equivalent to \fB-classpath \fIpath\fP.
43
44 .TP
45 .B -D\fIproperty\fB=\fIvalue\fP
46 Assign a value to an entry of the system property list.
47
48 .TP
49 .BR -verbose [ :class | gc | jni ]
50 Enable specific verbose output.
51
52 .TP
53 .B -version
54 Print product version and exit.
55
56 .TP
57 .B -fullversion
58 Print jpackage-compatible product version and exit.
59
60 .TP
61 .B -showversion
62 Print product version and continue.
63
64 .TP
65 .B -help\fP, \fB-?
66 Print this help message and exit.
67
68 .TP
69 .B -X
70 Print help on non-standard Java options.
71
72 .SH NON-STANDARD OPTIONS
73 Currently recognized options are:
74
75 .TP
76 .B -Xbootclasspath/a:\fIpath\fP
77 Append \fIpath\fP to the search path of the bootstrap loader.
78
79 .TP
80 .B -Xbootclasspath/p:\fIpath\fP
81 Prepend \fIpath\fP to the search path of the bootstrap loader.
82
83 .TP
84 .B -Xbootclasspath:\fIpath\fP
85 Set the search path of the bootstrap loader to \fIpath\fP.
86 \fIpath\fP is a list of .zip files, .jar files, or directories, separated by \fB:\fP.
87
88 .TP
89 .B -Xint
90 Interpreter mode execution.
91
92 .TP
93 .B -Xjit
94 JIT mode execution (default).
95
96 .TP
97 .B -Xms\fIsize\fP
98 Set the initial size of the heap (default: 2MB).
99
100 .TP
101 .B -Xmx\fIsize\fP
102 Set the maximum size of the heap (default: 64MB).
103
104 .TP
105 .B -Xss\fIsize\fP
106 Set the thread stack size (default: 128kB).
107
108 .TP
109 .B -all
110 Compile all methods, no execution.
111
112 .TP
113 .B -cb
114 Disable array bounds checks.
115
116 .TP
117 .B -cs
118 Disable synchronization.
119
120 .TP
121 .B -l
122 Don't start the class after loading.
123
124 .TP
125 .B -liberalutf
126 Don't warn about overlong UTF-8 sequences.
127
128 .TP     
129 .B -log \fIlogfile\fP
130 Specifies the logfile. Default is \fIstdout\fP.
131
132 .TP
133 .B -lsra
134 Use linear scan register allocation.
135
136 .TP
137 .B -m \fImethod\fP
138 Compile only a specific method.
139
140 .TP
141 .B -noverify
142 Turn off bytecode verification and other verifier checks.
143
144 .TP
145 .B -sig \fIsignature\fP
146 Specify signature for the method given by the \fB-m\fP option.
147
148 .TP
149 .B -softnull
150 Use software nullpointer check.
151
152 .TP
153 .B -stat
154 Print detailed compiler statistics.
155
156 .TP     
157 .B -time
158 Gives statistics about run time after the program has completed.
159
160 .TP
161 .B -v
162 Print state information.
163
164 .SH DEBUGGING OPTIONS
165
166 The following options are useful for debugging \fBcacao\fP:
167
168 .TP
169 .B -sa
170 Show a disassembled listing of the generated code.
171
172 .TP
173 .B -sc
174 Show the constant pool.
175
176 .TP
177 .B -sd 
178 Show data segment listing.
179
180 .TP
181 .B -se
182 Show disassembled exception stubs (only with \fB-sa\fP).
183
184 .TP
185 .B -si
186 Show intermediate representation.
187
188 .TP
189 .B -sm
190 Show class fields and methods.
191
192 .TP
193 .B -sn
194 Show disassembled native stubs.
195
196 .TP
197 .B -su
198 Show the internal utf hash.
199
200 .TP
201 .B -verbose
202 Print more information.
203
204 .TP
205 .B -verbosecall
206 Trace method calls.
207
208 .TP
209 .B -verboseexception
210 Trace exceptions and stack unwinding.
211
212 .TP
213 .B -verbosegc
214 Print a message for each garbage collection.
215
216 .SH EXPERIMENTAL OPTIONS
217
218 .TP
219 .B -eager
220 Perform eager class loading and linking.
221
222 .TP
223 .B -ie
224 Inline methods with exceptions.
225
226 .TP
227 .B -in
228 Activate inlining of methods.
229
230 .TP
231 .B -io
232 Inline methods of foreign classes.
233
234 .TP
235 .B -ip
236 Optimize argument renaming when inlining.
237
238 .TP
239 .B -iv
240 Inline virtual methods (uses/turns \fB-rt\fP option on).
241
242 .TP
243 .B -oloop
244 Optimize array accesses in loops.
245
246 .TP
247 .B -rt
248 Use rapid type analysis.
249
250 .TP
251 .B -vta
252 Use variable type analysis.
253
254 .TP
255 .B -xta
256 Use X type analysis.
257
258 .SH ENVIRONMENT VARIABLES
259
260 .TP
261 .B CLASSPATH
262 A colon-separated list of directories and .jar files to search for
263 user-defined classes.
264
265 .TP
266 .B BOOTCLASSPATH
267 A colon-separated list of directories and .jar files searched
268 by the bootstrap loader.
269
270 .SH AUTHOR
271
272 The CACAO Team:
273
274 Reinhard Grafl, 
275 Andreas Krall, 
276 Christopher Kruegel, 
277 Carolyn Oates, 
278 Roman Obermaisser, 
279 Martin Platter, 
280 Mark Probst, 
281 Stefan Ring, 
282 Edwin Steiner, 
283 Christian Thalinger, 
284 Dieter Thuernbeck, 
285 Philipp Tomsich, 
286 Christian Ullrich, 
287 Joseph Wenninger 
288
289 Send mail to cacao@cacaojvm.org
290