aboutsummaryrefslogtreecommitdiff
path: root/docs/CommandGuide/llc.html
blob: 250d995f0fe52021a367ce74bc9a8aa3f43a3d5b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
<html>
<title>
llc
</title>

<body>

<center>
<h1>Low Level Virtual Machine</h1>
</center>
<HR>

<h3>
NAME
</h3>

llc

<h3>
SYNOPSIS
</h3>

llc [options] &lt; filename&gt;
<h3>
DESCRIPTION
</h3>

The llc command compiles LLVM bytecode into assembly language for a specified
architecture.  The assembly language output can then be passed through a native
assembler and linker to generate native code.

<h3>
OPTIONS
</h3>

<ul>
	<li>-disable-fp-elim     
	<br>
	Disable frame pointer elimination optimization
	<p>

	<li>-disable-local-ra    
	<br>
	Use Simple RA instead of Local RegAlloc
	<p>

	<li>-disable-pattern-isel
	<br>
	Use the 'simple' X86 instruction selector
	<p>

	<li>-disable-peephole    
	<br>
	Disable peephole optimization pass
	<p>

	<li>-disable-preopt      
	<br>
	Disable optimizations prior to instruction selection
	<p>

	<li>-disable-sched       
	<br>
	Disable local scheduling pass
	<p>

	<li>-disable-strip       
	<br>
	Do not strip the LLVM bytecode included in executable
	<p>

	<li>-enable-maps         
	<br>
	Emit LLVM-to-MachineCode mapping info to assembly
	<p>

	<li>-f                   
	<br>
	Overwrite output files
	<p>

	<li>-load=&lt;plugin.so&gt;
	<br>
	Load the specified plugin
	<p>

	<li>-m&lt;arch&gt;
	<br>
	Specify the architecture for which to generate assembly.  Valid
	<p>
	architectures are:

	<dl compact>
		<di> x86               
		<dd>
		IA-32 (Pentium and above)
		<p>

		<di> sparc             
		<dd>SPARC V9
	</dl>
	<p>

	<li>-o &lt;filename&gt;
	<br>
	Output filename
	<p>

	<li>-print-machineinstrs 
	<br>
	Print generated machine code
	<p>

	<li> -help
	<br>
	Print a summary of command line options.
	<p>

	<li> -stats
	<br>
	Print statistics.
	<p>

	<li> -time-passes
	<br>
	Record the amount of time needed for each pass and print it to standard
	error.
	<p>
</ul>

<h3>
EXIT STATUS
</h3>

If llc succeeds, it will exit with 0.  Otherwise, if an error occurs, it
will exit with a non-zero value.

<h3>
SEE ALSO
</h3>
llvm-dis, lli

<HR>
<a href="http://llvm.cs.uiuc.edu">LLVM Team</a>
</body>
</html>