@@ -14,34 +14,9 @@ The B<llc> command compiles LLVM bytecode into assembly language for a
14
14
specified architecture. The assembly language output can then be passed through
15
15
a native assembler and linker to generate native code.
16
16
17
- The choice of architecture for the output assembly code is determined as
18
- follows, by attempting to satisfy each of the following rules in turn (first
19
- one wins):
20
-
21
- =over
22
-
23
- =item *
24
-
25
- If the user has specified an architecture with the -m option, use that
26
- architecture.
27
-
28
- =item *
29
-
30
- Examine the input LLVM bytecode file: if it is little endian and has a
31
- pointer size of 32 bits, select the Intel IA-32 architecture. If it is big
32
- endian and has a pointer size of 64 bits, select the SparcV9 architecture.
33
-
34
- =item *
35
-
36
- If B<llc> was compiled on an architecture for which it can generate code, select
37
- the architecture upon which B<llc> was compiled.
38
-
39
- =item *
40
-
41
- Exit with an error message telling the user to specify the output
42
- architecture explicitly.
43
-
44
- =back
17
+ The choice of architecture for the output assembly code is automatically
18
+ determined from the input bytecode file, unless a B<-m> option is used to override
19
+ the default.
45
20
46
21
=head1 OPTIONS
47
22
@@ -90,41 +65,31 @@ Emit C code, not assembly
90
65
91
66
=back
92
67
93
- =item B<-enable-correct-eh-support>
68
+ =item B<--disable-fp-elim>
69
+
70
+ Disable frame pointer elimination optimization.
71
+
72
+ =item B<--enable-correct-eh-support>
94
73
95
- Instruct the B<- lowerinvoke> pass to insert code for correct exception handling
74
+ Instruct the B<lowerinvoke> pass to insert code for correct exception handling
96
75
support. This is expensive and is by default omitted for efficiency.
97
76
98
- =item B<-help>
77
+ =item B<-- help>
99
78
100
79
Print a summary of command line options.
101
80
102
- =item B<-stats>
81
+ =item B<-- stats>
103
82
104
83
Print statistics recorded by code-generation passes.
105
84
106
- =item B<-time-passes>
85
+ =item B<-- time-passes>
107
86
108
87
Record the amount of time needed for each pass and print a report to standard
109
88
error.
110
89
111
- =back
112
-
113
- =head2 Intel IA-32-specific Options
114
-
115
- =over
116
-
117
- =item B<--disable-fp-elim>
118
-
119
- Disable frame pointer elimination optimization.
120
-
121
- =item B<--disable-pattern-isel>
122
-
123
- Use the 'simple' X86 instruction selector (the default).
124
-
125
90
=item B<--print-machineinstrs>
126
91
127
- Print generated machine code.
92
+ Print generated machine code between compilation phases (useful for debugging) .
128
93
129
94
=item B<--regalloc>=I<allocator>
130
95
@@ -171,6 +136,17 @@ Local spiller
171
136
172
137
=back
173
138
139
+ =head2 Intel IA-32-specific Options
140
+
141
+ =over
142
+
143
+ =item B<--x86-asm-syntax=att|intel>
144
+
145
+ Specify whether to emit assembly code in AT&T syntax (the default) or intel
146
+ syntax.
147
+
148
+ =back
149
+
174
150
=head2 SPARCV9-specific Options
175
151
176
152
=over
@@ -183,15 +159,6 @@ Disable peephole optimization pass.
183
159
184
160
Disable local scheduling pass.
185
161
186
- =item B<--disable-strip>
187
-
188
- The Sparc backend embeds the LLVM bytecode into the assembly output. This
189
- option requests that symbol names be retained; by default, they are stripped out.
190
-
191
- =item B<--enable-maps>
192
-
193
- Emit LLVM-to-machine code mapping information into the assembly output.
194
-
195
162
=back
196
163
197
164
=head1 EXIT STATUS
0 commit comments