blob: e80f7f415e8964c03c23e3560ba794c04f5754a0 [file] [log] [blame]
John Criswellecf32e52003-09-11 19:58:03 +00001<html>
2<title>
Chris Lattneree43b692003-09-25 19:50:05 +00003LLVM: analyze tool
John Criswellecf32e52003-09-11 19:58:03 +00004</title>
5
Chris Lattner08a04fd2003-10-07 20:12:05 +00006<body bgcolor=white>
John Criswellecf32e52003-09-11 19:58:03 +00007
Chris Lattner644b8ee2003-10-07 20:36:00 +00008<center><h1>LLVM: <tt>analyze</tt> tool</h1></center>
John Criswellecf32e52003-09-11 19:58:03 +00009<HR>
10
Chris Lattner644b8ee2003-10-07 20:36:00 +000011<h3>NAME</h3>
12<tt>analyze</tt>
John Criswellecf32e52003-09-11 19:58:03 +000013
Chris Lattner644b8ee2003-10-07 20:36:00 +000014<h3>SYNOPSIS</h3>
15<tt>analyze [options] [filename]</tt>
John Criswellecf32e52003-09-11 19:58:03 +000016
Chris Lattner644b8ee2003-10-07 20:36:00 +000017<h3>DESCRIPTION</h3>
John Criswellecf32e52003-09-11 19:58:03 +000018
Chris Lattner644b8ee2003-10-07 20:36:00 +000019The <tt>analyze</tt> command performs various analysis of LLVM assembly code or
John Criswellfa4f1812003-09-29 14:05:08 +000020bytecode. It will usually print the results on standard output, but in a few
21cases, it will print output to standard error or generate a file with the
22analysis output (which is usually done when the output is meant for another
23program).
24<p>
Chris Lattner644b8ee2003-10-07 20:36:00 +000025If filename is omitted or is -, <tt>analyze</tt> reads its input from standard
26input. It first attempts to interpret its input as LLVM bytecode. If it
27encounters an error, it then attempts to parse the input as LLVM assembly
28language.
29
30<h3>OPTIONS</h3>
John Criswellecf32e52003-09-11 19:58:03 +000031
32<ul>
33 <li> -help
34 <br>
35 Print a summary of command line options.
36 <p>
37
38 <li> -stats
39 <br>
40 Print statistics.
41 <p>
42
43 <li> -time-passes
44 <br>
45 Record the amount of time needed for each pass and print it to standard
46 error.
47 <p>
48
49 <li> -q
50 <br>
51 Quiet mode. With this option, analysis pass names are not printed.
52 <p>
53
54 <li> -load &lt;plugin.so&gt;
55 <br>
56 Load the specified dynamic object with name plugin.so. This file
57 should contain additional analysis passes that register themselves with
Chris Lattner644b8ee2003-10-07 20:36:00 +000058 the <tt>analyze</tt> program after being loaded.
John Criswellecf32e52003-09-11 19:58:03 +000059 <p>
Chris Lattner644b8ee2003-10-07 20:36:00 +000060
John Criswellecf32e52003-09-11 19:58:03 +000061 After being loaded, additional command line options are made available
Chris Lattner644b8ee2003-10-07 20:36:00 +000062 for running the passes made available by plugin.so. Use
63 '<tt><tt>analyze</tt> -load &lt;plugin.so&gt; -help</tt>' to see the new
64 list of available analysis passes.
John Criswellecf32e52003-09-11 19:58:03 +000065 <p>
66</ul>
67
Chris Lattner644b8ee2003-10-07 20:36:00 +000068<h3>EXIT STATUS</h3>
John Criswellecf32e52003-09-11 19:58:03 +000069
Chris Lattner644b8ee2003-10-07 20:36:00 +000070If <tt>analyze</tt> succeeds, it will exit with 0. Otherwise, if an error
71occurs, it will exit with a non-zero value.
John Criswellecf32e52003-09-11 19:58:03 +000072
Chris Lattner644b8ee2003-10-07 20:36:00 +000073<h3>SEE ALSO</h3>
74
75<a href="opt.html"><tt>opt</tt></a>
John Criswellecf32e52003-09-11 19:58:03 +000076
77<HR>
Chris Lattner08a04fd2003-10-07 20:12:05 +000078Maintained by the <a href="http://llvm.cs.uiuc.edu">LLVM Team</a>.
John Criswellecf32e52003-09-11 19:58:03 +000079</body>
80</html>
81