Mercurial > hg > CbC > CbC_gcc
comparison gcc/common.opt @ 67:f6334be47118
update gcc from gcc-4.6-20100522 to gcc-4.6-20110318
author | nobuyasu <dimolto@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 22 Mar 2011 17:18:12 +0900 |
parents | b7f97abdc517 |
children | 04ced10e8804 |
comparison
equal
deleted
inserted
replaced
65:65488c3d617d | 67:f6334be47118 |
---|---|
1 ; Options for the language- and target-independent parts of the compiler. | 1 ; Options for the language- and target-independent parts of the compiler. |
2 | 2 |
3 ; Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 | 3 ; Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 |
4 ; Free Software Foundation, Inc. | 4 ; Free Software Foundation, Inc. |
5 ; | 5 ; |
6 ; This file is part of GCC. | 6 ; This file is part of GCC. |
7 ; | 7 ; |
8 ; GCC is free software; you can redistribute it and/or modify it under | 8 ; GCC is free software; you can redistribute it and/or modify it under |
21 | 21 |
22 ; See the GCC internals manual (options.texi) for a description of this file's format. | 22 ; See the GCC internals manual (options.texi) for a description of this file's format. |
23 | 23 |
24 ; Please try to keep this file in ASCII collating order. | 24 ; Please try to keep this file in ASCII collating order. |
25 | 25 |
26 Variable | |
27 int target_flags | |
28 | |
29 Variable | |
30 int optimize | |
31 | |
32 Variable | |
33 int optimize_size | |
34 | |
35 ; Not used directly to control optimizations, only to save -Ofast | |
36 ; setting for "optimize" attributes. | |
37 Variable | |
38 int optimize_fast | |
39 | |
40 ; 0 means straightforward implementation of complex divide acceptable. | |
41 ; 1 means wide ranges of inputs must work for complex divide. | |
42 ; 2 means C99-like requirements for complex multiply and divide. | |
43 Variable | |
44 int flag_complex_method = 1 | |
45 | |
46 ; Nonzero if subexpressions must be evaluated from left-to-right. | |
47 Variable | |
48 int flag_evaluation_order = 0 | |
49 | |
50 ; Language specific warning pass for unused results. | |
51 Variable | |
52 bool flag_warn_unused_result = false | |
53 | |
54 Variable | |
55 int *param_values | |
56 | |
57 ; Nonzero if we should write GIMPLE bytecode for link-time optimization. | |
58 Variable | |
59 int flag_generate_lto | |
60 | |
61 ; True to warn about any objects definitions whose size is larger | |
62 ; than N bytes. Also want about function definitions whose returned | |
63 ; values are larger than N bytes, where N is 'larger_than_size'. | |
64 Variable | |
65 bool warn_larger_than | |
66 | |
67 Variable | |
68 HOST_WIDE_INT larger_than_size | |
69 | |
70 ; True to warn about any function whose frame size is larger | |
71 ; than N bytes. | |
72 Variable | |
73 bool warn_frame_larger_than | |
74 | |
75 Variable | |
76 HOST_WIDE_INT frame_larger_than_size | |
77 | |
78 ; Nonzero means we should be saving declaration info into a .X file. | |
79 Variable | |
80 int flag_gen_aux_info = 0 | |
81 | |
82 ; Nonzero if we are compiling code for a shared library, zero for | |
83 ; executable. | |
84 Variable | |
85 int flag_shlib | |
86 | |
87 ; These two are really VEC(char_p,heap) *. | |
88 | |
89 Variable | |
90 void *flag_instrument_functions_exclude_functions | |
91 | |
92 Variable | |
93 void *flag_instrument_functions_exclude_files | |
94 | |
95 ; Generic structs (e.g. templates not explicitly specialized) | |
96 ; may not have a compilation unit associated with them, and so | |
97 ; may need to be treated differently from ordinary structs. | |
98 ; | |
99 ; Structs only handled by reference (indirectly), will also usually | |
100 ; not need as much debugging information. | |
101 | |
102 Variable | |
103 enum debug_struct_file debug_struct_ordinary[DINFO_USAGE_NUM_ENUMS] = { DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY } | |
104 | |
105 Variable | |
106 enum debug_struct_file debug_struct_generic[DINFO_USAGE_NUM_ENUMS] = { DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY } | |
107 | |
108 ; True if we should exit after parsing options. | |
109 Variable | |
110 bool exit_after_options | |
111 | |
112 ; Type(s) of debugging information we are producing (if any). See | |
113 ; flag-types.h for the definitions of the different possible types of | |
114 ; debugging information. | |
115 Variable | |
116 enum debug_info_type write_symbols = NO_DEBUG | |
117 | |
118 ; Level of debugging information we are producing. See flag-types.h | |
119 ; for the definitions of the different possible levels. | |
120 Variable | |
121 enum debug_info_levels debug_info_level = DINFO_LEVEL_NONE | |
122 | |
123 ; Nonzero means use GNU-only extensions in the generated symbolic | |
124 ; debugging information. Currently, this only has an effect when | |
125 ; write_symbols is set to DBX_DEBUG, XCOFF_DEBUG, or DWARF_DEBUG. | |
126 Variable | |
127 bool use_gnu_debug_info_extensions | |
128 | |
129 ; Original value of maximum field alignment in bytes, specified via | |
130 ; -fpack-struct=<value>. | |
131 Variable | |
132 unsigned int initial_max_fld_align = TARGET_DEFAULT_PACK_STRUCT | |
133 | |
134 Variable | |
135 enum vect_verbosity_levels user_vect_verbosity_level = MAX_VERBOSITY_LEVEL | |
136 | |
137 ; Type of stack check. | |
138 Variable | |
139 enum stack_check_type flag_stack_check = NO_STACK_CHECK | |
140 | |
141 ; -dA causes debug commentary information to be produced in | |
142 ; the generated assembly code (to make it more readable). This option | |
143 ; is generally only of use to those who actually need to read the | |
144 ; generated assembly code (perhaps while debugging the compiler itself). | |
145 ; Currently, this switch is only used by dwarf2out.c; however, it is intended | |
146 ; to be a catchall for printing debug information in the assembler file. | |
147 Variable | |
148 int flag_debug_asm | |
149 | |
150 ; -dP causes the rtl to be emitted as a comment in assembly. | |
151 Variable | |
152 int flag_dump_rtl_in_asm | |
153 | |
154 ; Whether -da was passed (used only in handle_common_deferred_options). | |
155 Variable | |
156 bool flag_dump_all_passed | |
157 | |
158 ; Other flags saying which kinds of debugging dump have been requested. | |
159 | |
160 Variable | |
161 int rtl_dump_and_exit | |
162 | |
163 Variable | |
164 int flag_print_asm_name | |
165 | |
166 Variable | |
167 enum graph_dump_types graph_dump_format = no_graph | |
168 | |
169 ; Name of top-level original source file (what was input to cpp). | |
170 ; This comes from the #-command at the beginning of the actual input. | |
171 ; If there isn't any there, then this is the cc1 input file name. | |
172 Variable | |
173 const char *main_input_filename | |
174 | |
175 ; Pointer to base name in main_input_filename, with directories and a | |
176 ; single final extension removed, and the length of this base | |
177 ; name. | |
178 | |
179 Variable | |
180 const char *main_input_basename | |
181 | |
182 Variable | |
183 int main_input_baselength | |
184 | |
185 ; Which options have been printed by --help. | |
186 Variable | |
187 char *help_printed | |
188 | |
189 ; Which enums have been printed by --help. 0 = not printed, no | |
190 ; relevant options seen, 1 = relevant option seen, not yet printed, 2 | |
191 ; = printed. | |
192 Variable | |
193 char *help_enum_printed | |
194 | |
195 ; The number of columns for --help output. | |
196 Variable | |
197 unsigned int help_columns | |
198 | |
199 ; Whether this options structure has been through finish_options | |
200 Variable | |
201 bool flag_opts_finished | |
202 | |
203 ### | |
204 Driver | |
205 | |
206 -assemble | |
207 Driver Alias(S) | |
208 | |
209 -compile | |
210 Driver Alias(c) | |
211 | |
212 -coverage | |
213 Driver Alias(coverage) | |
214 | |
215 -debug | |
216 Common Alias(g) | |
217 | |
218 -dump | |
219 Common Separate Alias(d) | |
220 | |
221 -dump= | |
222 Common Joined Alias(d) | |
223 | |
224 -dumpbase | |
225 Common Separate Alias(dumpbase) | |
226 | |
227 -dumpdir | |
228 Common Separate Alias(dumpdir) | |
229 | |
230 -entry | |
231 Driver Separate Alias(e) | |
232 | |
233 -entry= | |
234 Driver Joined Alias(e) | |
235 | |
236 -extra-warnings | |
237 Common Warning Alias(Wextra) | |
238 | |
239 -for-assembler | |
240 Driver Separate Alias(Xassembler) | |
241 | |
242 -for-assembler= | |
243 Driver JoinedOrMissing Alias(Xassembler) | |
244 | |
245 -for-linker | |
246 Driver Separate Alias(Xlinker) | |
247 | |
248 -for-linker= | |
249 Driver JoinedOrMissing Alias(Xlinker) | |
250 | |
251 -force-link | |
252 Driver Separate Alias(u) | |
253 | |
254 -force-link= | |
255 Driver Joined Alias(u) | |
256 | |
26 -help | 257 -help |
27 Common | 258 Common Driver Var(help_flag) |
28 Display this information | 259 Display this information |
29 | 260 |
30 -help= | 261 -help= |
31 Common Report Joined | 262 Common Driver Report Joined |
32 --help=<class> Display descriptions of a specific class of options. <class> is one or more of optimizers, target, warnings, undocumented, params | 263 --help=<class> Display descriptions of a specific class of options. <class> is one or more of optimizers, target, warnings, undocumented, params |
33 | 264 |
265 -language | |
266 Driver Separate Alias(x) | |
267 | |
268 -language= | |
269 Driver Joined Alias(x) | |
270 | |
271 -library-directory | |
272 Driver Separate Alias(L) | |
273 | |
274 -library-directory= | |
275 Driver Joined Alias(L) | |
276 | |
277 -no-canonical-prefixes | |
278 Driver Alias(no-canonical-prefixes) | |
279 | |
280 -no-standard-libraries | |
281 Driver Alias(nostdlib) | |
282 | |
283 -no-warnings | |
284 Common Alias(w) | |
285 | |
286 -optimize | |
287 Common Alias(O) | |
288 | |
289 -output | |
290 Common Driver Separate Alias(o) MissingArgError(missing filename after %qs) | |
291 | |
292 -output= | |
293 Common Driver Joined Alias(o) MissingArgError(missing filename after %qs) | |
294 | |
295 -pass-exit-codes | |
296 Driver Alias(pass-exit-codes) | |
297 | |
298 -pedantic | |
299 Common Alias(pedantic) | |
300 | |
301 -pedantic-errors | |
302 Common Alias(pedantic-errors) | |
303 | |
304 -pie | |
305 Common Alias(pie) | |
306 | |
307 -pipe | |
308 Driver Alias(pipe) | |
309 | |
310 -prefix | |
311 Driver Separate Alias(B) | |
312 | |
313 -prefix= | |
314 Driver JoinedOrMissing Alias(B) | |
315 | |
316 -preprocess | |
317 Driver Alias(E) | |
318 | |
319 -print-file-name | |
320 Driver Separate Alias(print-file-name=) | |
321 | |
322 -print-file-name= | |
323 Driver JoinedOrMissing Alias(print-file-name=) | |
324 | |
325 -print-libgcc-file-name | |
326 Driver Alias(print-libgcc-file-name) | |
327 | |
328 -print-multi-directory | |
329 Driver Alias(print-multi-directory) | |
330 | |
331 -print-multi-lib | |
332 Driver Alias(print-multi-lib) | |
333 | |
334 -print-multi-os-directory | |
335 Driver Alias(print-multi-os-directory) | |
336 | |
337 -print-prog-name | |
338 Driver Separate Alias(print-prog-name=) | |
339 | |
340 -print-prog-name= | |
341 Driver JoinedOrMissing Alias(print-prog-name=) | |
342 | |
343 -print-search-dirs | |
344 Driver Alias(print-search-dirs) | |
345 | |
346 -print-sysroot | |
347 Driver Alias(print-sysroot) | |
348 | |
349 -print-sysroot-headers-suffix | |
350 Driver Alias(print-sysroot-headers-suffix) | |
351 | |
352 -profile | |
353 Common Alias(p) | |
354 | |
355 -save-temps | |
356 Driver Alias(save-temps) | |
357 | |
358 -shared | |
359 Common Alias(shared) | |
360 | |
361 -specs | |
362 Driver Separate Alias(specs=) | |
363 | |
364 -specs= | |
365 Driver Joined Alias(specs=) | |
366 | |
367 -static | |
368 Driver Alias(static) | |
369 | |
370 -symbolic | |
371 Driver Alias(symbolic) | |
372 | |
34 -target-help | 373 -target-help |
35 Common | 374 Common Driver |
36 Alias for --help=target | 375 Alias for --help=target |
37 | 376 |
38 ;; The following four entries are to work around the gcc driver | 377 -time |
39 ;; program's insatiable desire to turn options starting with a | 378 Driver Alias(time) |
40 ;; double dash (--) into options starting with a dash f (-f). | 379 |
380 -verbose | |
381 Driver Alias(v) | |
382 | |
383 ;; The driver used to convert options such as --help into forms such | |
384 ;; as -fhelp; the following four entries are for compatibility with | |
385 ;; any direct uses of those (undocumented) -f forms | |
41 fhelp | 386 fhelp |
42 Common Var(help_flag) | 387 Common Driver Alias(-help) |
43 | 388 |
44 fhelp= | 389 fhelp= |
45 Common Joined | 390 Common Driver Joined Alias(-help=) |
46 | 391 |
47 ftarget-help | 392 ftarget-help |
48 Common | 393 Common Driver Alias(-target-help) |
49 | 394 |
50 fversion | 395 fversion |
51 Common | 396 Common Driver Alias(-version) |
52 | 397 |
53 -param | 398 -param |
54 Common Separate | 399 Common Separate |
55 --param <param>=<value> Set parameter <param> to value. See below for a complete list of parameters | 400 --param <param>=<value> Set parameter <param> to value. See below for a complete list of parameters |
56 | 401 |
402 -param= | |
403 Common Joined Alias(-param) | |
404 | |
405 -sysroot | |
406 Driver Separate Alias(-sysroot=) | |
407 | |
408 -sysroot= | |
409 Driver JoinedOrMissing | |
410 | |
57 -version | 411 -version |
58 Common | 412 Common Driver |
59 | 413 |
60 G | 414 B |
61 Common Joined Separate UInteger | 415 Driver Joined Separate |
62 -G<number> Put global and static data smaller than <number> bytes into a special section (on some targets) | 416 |
417 E | |
418 Driver | |
419 | |
420 L | |
421 Driver Joined Separate | |
422 | |
423 N | |
424 Driver | |
63 | 425 |
64 O | 426 O |
65 Common JoinedOrMissing Optimization | 427 Common JoinedOrMissing Optimization |
66 -O<number> Set optimization level to <number> | 428 -O<number> Set optimization level to <number> |
67 | 429 |
68 Os | 430 Os |
69 Common Optimization | 431 Common Optimization |
70 Optimize for space rather than speed | 432 Optimize for space rather than speed |
71 | 433 |
434 Ofast | |
435 Common Optimization | |
436 Optimize for speed disregarding exact standards compliance | |
437 | |
438 Q | |
439 Driver | |
440 | |
441 Qn | |
442 Driver Negative(Qy) | |
443 | |
444 Qy | |
445 Driver Negative(Qn) | |
446 | |
447 R | |
448 Driver Joined Separate | |
449 | |
450 S | |
451 Driver | |
452 | |
453 T | |
454 Driver Joined Separate | |
455 | |
456 Tbss | |
457 Driver Separate | |
458 | |
459 Tdata | |
460 Driver Separate | |
461 | |
462 Ttext | |
463 Driver Separate | |
464 | |
72 W | 465 W |
73 Common RejectNegative Var(extra_warnings) Warning | 466 Common RejectNegative Warning Alias(Wextra) |
74 This switch is deprecated; use -Wextra instead | 467 This switch is deprecated; use -Wextra instead |
468 | |
469 Wa, | |
470 Driver JoinedOrMissing | |
471 | |
472 Wl, | |
473 Driver JoinedOrMissing | |
474 | |
475 Wp, | |
476 Driver JoinedOrMissing | |
75 | 477 |
76 Waggregate-return | 478 Waggregate-return |
77 Common Var(warn_aggregate_return) Warning | 479 Common Var(warn_aggregate_return) Warning |
78 Warn about returning structures, unions or arrays | 480 Warn about returning structures, unions or arrays |
79 | 481 |
124 Winline | 526 Winline |
125 Common Var(warn_inline) Warning | 527 Common Var(warn_inline) Warning |
126 Warn when an inlined function cannot be inlined | 528 Warn when an inlined function cannot be inlined |
127 | 529 |
128 Wlarger-than- | 530 Wlarger-than- |
129 Common RejectNegative Joined UInteger Warning Undocumented | 531 Common RejectNegative Joined Warning Undocumented Alias(Wlarger-than=) |
130 | 532 |
131 Wlarger-than= | 533 Wlarger-than= |
132 Common RejectNegative Joined UInteger Warning | 534 Common RejectNegative Joined UInteger Warning |
133 -Wlarger-than=<number> Warn if an object is larger than <number> bytes | 535 -Wlarger-than=<number> Warn if an object is larger than <number> bytes |
134 | 536 |
167 Wstrict-aliasing | 569 Wstrict-aliasing |
168 Common Warning | 570 Common Warning |
169 Warn about code which might break strict aliasing rules | 571 Warn about code which might break strict aliasing rules |
170 | 572 |
171 Wstrict-aliasing= | 573 Wstrict-aliasing= |
172 Common Joined UInteger Var(warn_strict_aliasing) Init(-1) Warning | 574 Common Joined RejectNegative UInteger Var(warn_strict_aliasing) Init(-1) Warning |
173 Warn about code which might break strict aliasing rules | 575 Warn about code which might break strict aliasing rules |
174 | 576 |
175 Wstrict-overflow | 577 Wstrict-overflow |
176 Common Warning | 578 Common Warning |
177 Warn about optimizations that assume that signed overflow is undefined | 579 Warn about optimizations that assume that signed overflow is undefined |
178 | 580 |
179 Wstrict-overflow= | 581 Wstrict-overflow= |
180 Common Joined UInteger Var(warn_strict_overflow) Init(-1) Warning | 582 Common Joined RejectNegative UInteger Var(warn_strict_overflow) Init(-1) Warning |
181 Warn about optimizations that assume that signed overflow is undefined | 583 Warn about optimizations that assume that signed overflow is undefined |
182 | 584 |
183 Wsuggest-attribute=const | 585 Wsuggest-attribute=const |
184 Common Var(warn_suggest_attribute_const) Warning | 586 Common Var(warn_suggest_attribute_const) Warning |
185 Warn about functions which might be candidates for __attribute__((const)) | 587 Warn about functions which might be candidates for __attribute__((const)) |
186 | 588 |
187 Wsuggest-attribute=pure | 589 Wsuggest-attribute=pure |
188 Common Var(warn_suggest_attribute_pure) Warning | 590 Common Var(warn_suggest_attribute_pure) Warning |
189 Warn about functions which might be candidates for __attribute__((pure)) | 591 Warn about functions which might be candidates for __attribute__((pure)) |
190 | 592 |
593 Wsuggest-attribute=noreturn | |
594 Common Var(warn_suggest_attribute_noreturn) Warning | |
595 Warn about functions which might be candidates for __attribute__((noreturn)) | |
596 | |
191 Wswitch | 597 Wswitch |
192 Common Var(warn_switch) Warning | 598 Common Var(warn_switch) Warning |
193 Warn about enumerated switches, with no default, missing a case | 599 Warn about enumerated switches, with no default, missing a case |
194 | 600 |
195 Wswitch-default | 601 Wswitch-default |
202 | 608 |
203 Wsystem-headers | 609 Wsystem-headers |
204 Common Var(warn_system_headers) Warning | 610 Common Var(warn_system_headers) Warning |
205 Do not suppress warnings from system headers | 611 Do not suppress warnings from system headers |
206 | 612 |
613 Wtrampolines | |
614 Common Var(warn_trampolines) Warning | |
615 Warn whenever a trampoline is generated | |
616 | |
207 Wtype-limits | 617 Wtype-limits |
208 Common Var(warn_type_limits) Init(-1) Warning | 618 Common Var(warn_type_limits) Init(-1) Warning |
209 Warn if a comparison is always true or always false due to the limited range of the data type | 619 Warn if a comparison is always true or always false due to the limited range of the data type |
210 | 620 |
211 Wuninitialized | 621 Wuninitialized |
212 Common Var(warn_uninitialized) Init(-1) Warning | 622 Common Var(warn_uninitialized) Init(-1) Warning |
213 Warn about uninitialized automatic variables | 623 Warn about uninitialized automatic variables |
214 | 624 |
215 Wunreachable-code | 625 Wunreachable-code |
216 Common | 626 Common Ignore |
217 Does nothing. Preserved for backward compatibility. | 627 Does nothing. Preserved for backward compatibility. |
218 | 628 |
219 Wunused | 629 Wunused |
220 Common Var(warn_unused) Init(0) Warning | 630 Common Var(warn_unused) Init(0) Warning |
221 Enable all -Wunused- warnings | 631 Enable all -Wunused- warnings |
250 | 660 |
251 Wcoverage-mismatch | 661 Wcoverage-mismatch |
252 Common Var(warn_coverage_mismatch) Init(1) Warning | 662 Common Var(warn_coverage_mismatch) Init(1) Warning |
253 Warn in case profiles in -fprofile-use do not match | 663 Warn in case profiles in -fprofile-use do not match |
254 | 664 |
665 Xassembler | |
666 Driver Separate | |
667 | |
668 Xlinker | |
669 Driver Separate | |
670 | |
671 Xpreprocessor | |
672 Driver Separate | |
673 | |
674 Z | |
675 Driver | |
676 | |
255 aux-info | 677 aux-info |
256 Common Separate | 678 Common Separate Var(aux_info_file_name) |
257 -aux-info <file> Emit declaration information into <file> | 679 -aux-info <file> Emit declaration information into <file> |
258 | 680 |
259 aux-info= | 681 aux-info= |
260 Common Joined | 682 Common Joined Alias(aux-info) |
261 | 683 |
262 auxbase | 684 auxbase |
263 Common Separate | 685 Common Separate RejectDriver Var(aux_base_name) |
264 | 686 |
265 auxbase-strip | 687 auxbase-strip |
266 Common Separate | 688 Common Separate RejectDriver |
689 | |
690 coverage | |
691 Driver | |
692 | |
693 c | |
694 Driver | |
267 | 695 |
268 d | 696 d |
269 Common Joined | 697 Common Joined |
270 -d<letters> Enable dumps from specific passes of the compiler | 698 -d<letters> Enable dumps from specific passes of the compiler |
271 | 699 |
272 dumpbase | 700 dumpbase |
273 Common Separate | 701 Common Separate Var(dump_base_name) |
274 -dumpbase <file> Set the file basename to be used for dumps | 702 -dumpbase <file> Set the file basename to be used for dumps |
275 | 703 |
276 dumpdir | 704 dumpdir |
277 Common Separate | 705 Common Separate Var(dump_dir_name) |
278 -dumpdir <dir> Set the directory name to be used for dumps | 706 -dumpdir <dir> Set the directory name to be used for dumps |
707 | |
708 dumpmachine | |
709 Driver | |
710 | |
711 dumpspecs | |
712 Driver | |
713 | |
714 dumpversion | |
715 Driver | |
716 | |
717 e | |
718 Driver Joined Separate | |
719 | |
720 ; This option has historically been passed down to the linker by an | |
721 ; accident of a %{e*} spec, so ensure it continues to be passed down | |
722 ; as a single option. The supported option for this purpose is | |
723 ; -rdynamic. See PR 47390. | |
724 export-dynamic | |
725 Driver Undocumented | |
279 | 726 |
280 ; The version of the C++ ABI in use. The following values are allowed: | 727 ; The version of the C++ ABI in use. The following values are allowed: |
281 ; | 728 ; |
282 ; 0: The version of the ABI believed most conformant with the C++ ABI | 729 ; 0: The version of the ABI believed most conformant with the C++ ABI |
283 ; specification. This ABI may change as bugs are discovered and fixed. | 730 ; specification. This ABI may change as bugs are discovered and fixed. |
290 ; | 737 ; |
291 ; 3: The version of the ABI that fixes the missing underscore | 738 ; 3: The version of the ABI that fixes the missing underscore |
292 ; in template non-type arguments of pointer type. | 739 ; in template non-type arguments of pointer type. |
293 ; | 740 ; |
294 ; 4: The version of the ABI that introduces unambiguous mangling of | 741 ; 4: The version of the ABI that introduces unambiguous mangling of |
295 ; vector types. | 742 ; vector types. First selectable in G++ 4.5. |
743 ; | |
744 ; 5: The version of the ABI that ignores attribute const/noreturn | |
745 ; in function pointer mangling, and corrects mangling of decltype and | |
746 ; function parameters used in other parameters and the return type. | |
747 ; First selectable in G++ 4.6. | |
296 ; | 748 ; |
297 ; Additional positive integers will be assigned as new versions of | 749 ; Additional positive integers will be assigned as new versions of |
298 ; the ABI become the default version of the ABI. | 750 ; the ABI become the default version of the ABI. |
299 fabi-version= | 751 fabi-version= |
300 Common Joined UInteger Var(flag_abi_version) Init(2) | 752 Common Joined RejectNegative UInteger Var(flag_abi_version) Init(2) |
301 | 753 |
302 falign-functions | 754 falign-functions |
303 Common Report Var(align_functions,0) Optimization UInteger | 755 Common Report Var(align_functions,0) Optimization UInteger |
304 Align the start of functions | 756 Align the start of functions |
305 | 757 |
306 falign-functions= | 758 falign-functions= |
307 Common RejectNegative Joined UInteger | 759 Common RejectNegative Joined UInteger Var(align_functions) |
308 | 760 |
309 falign-jumps | 761 falign-jumps |
310 Common Report Var(align_jumps,0) Optimization UInteger | 762 Common Report Var(align_jumps,0) Optimization UInteger |
311 Align labels which are only reached by jumping | 763 Align labels which are only reached by jumping |
312 | 764 |
313 falign-jumps= | 765 falign-jumps= |
314 Common RejectNegative Joined UInteger | 766 Common RejectNegative Joined UInteger Var(align_jumps) |
315 | 767 |
316 falign-labels | 768 falign-labels |
317 Common Report Var(align_labels,0) Optimization UInteger | 769 Common Report Var(align_labels,0) Optimization UInteger |
318 Align all labels | 770 Align all labels |
319 | 771 |
320 falign-labels= | 772 falign-labels= |
321 Common RejectNegative Joined UInteger | 773 Common RejectNegative Joined UInteger Var(align_labels) |
322 | 774 |
323 falign-loops | 775 falign-loops |
324 Common Report Var(align_loops) Optimization UInteger | 776 Common Report Var(align_loops,0) Optimization UInteger |
325 Align the start of loops | 777 Align the start of loops |
326 | 778 |
327 falign-loops= | 779 falign-loops= |
328 Common RejectNegative Joined UInteger | 780 Common RejectNegative Joined UInteger Var(align_loops) |
329 | 781 |
330 fargument-alias | 782 fargument-alias |
331 Common | 783 Common Ignore |
332 Does nothing. Preserved for backward compatibility. | 784 Does nothing. Preserved for backward compatibility. |
333 | 785 |
334 fargument-noalias | 786 fargument-noalias |
335 Common | 787 Common Ignore |
336 Does nothing. Preserved for backward compatibility. | 788 Does nothing. Preserved for backward compatibility. |
337 | 789 |
338 fargument-noalias-global | 790 fargument-noalias-global |
339 Common | 791 Common Ignore |
340 Does nothing. Preserved for backward compatibility. | 792 Does nothing. Preserved for backward compatibility. |
341 | 793 |
342 fargument-noalias-anything | 794 fargument-noalias-anything |
343 Common | 795 Common Ignore |
344 Does nothing. Preserved for backward compatibility. | 796 Does nothing. Preserved for backward compatibility. |
345 | 797 |
346 fasynchronous-unwind-tables | 798 fasynchronous-unwind-tables |
347 Common Report Var(flag_asynchronous_unwind_tables) Optimization | 799 Common Report Var(flag_asynchronous_unwind_tables) Optimization |
348 Generate unwind tables that are exact at each instruction boundary | 800 Generate unwind tables that are exact at each instruction boundary |
378 fbtr-bb-exclusive | 830 fbtr-bb-exclusive |
379 Common Report Var(flag_btr_bb_exclusive) Optimization | 831 Common Report Var(flag_btr_bb_exclusive) Optimization |
380 Restrict target load migration not to re-use registers in any basic block | 832 Restrict target load migration not to re-use registers in any basic block |
381 | 833 |
382 fcall-saved- | 834 fcall-saved- |
383 Common Joined RejectNegative | 835 Common Joined RejectNegative Var(common_deferred_options) Defer |
384 -fcall-saved-<register> Mark <register> as being preserved across functions | 836 -fcall-saved-<register> Mark <register> as being preserved across functions |
385 | 837 |
386 fcall-used- | 838 fcall-used- |
387 Common Joined RejectNegative | 839 Common Joined RejectNegative Var(common_deferred_options) Defer |
388 -fcall-used-<register> Mark <register> as being corrupted by function calls | 840 -fcall-used-<register> Mark <register> as being corrupted by function calls |
389 | 841 |
390 ; Nonzero for -fcaller-saves: allocate values in regs that need to | 842 ; Nonzero for -fcaller-saves: allocate values in regs that need to |
391 ; be saved across function calls, if that produces overall better code. | 843 ; be saved across function calls, if that produces overall better code. |
392 ; Optional now, so people can test it. | 844 ; Optional now, so people can test it. |
396 | 848 |
397 fcheck-data-deps | 849 fcheck-data-deps |
398 Common Report Var(flag_check_data_deps) | 850 Common Report Var(flag_check_data_deps) |
399 Compare the results of several data dependence analyzers. | 851 Compare the results of several data dependence analyzers. |
400 | 852 |
853 fcombine-stack-adjustments | |
854 Common Report Var(flag_combine_stack_adjustments) Optimization | |
855 Looks for opportunities to reduce stack adjustments and stack references. | |
856 | |
401 fcommon | 857 fcommon |
402 Common Report Var(flag_no_common,0) Optimization | 858 Common Report Var(flag_no_common,0) Optimization |
403 Do not put uninitialized globals in the common section | 859 Do not put uninitialized globals in the common section |
404 | 860 |
861 fcompare-debug | |
862 Driver | |
863 ; Converted by the driver to -fcompare-debug= options. | |
864 | |
405 fcompare-debug= | 865 fcompare-debug= |
406 Common JoinedOrMissing RejectNegative Var(flag_compare_debug_opt) | 866 Common Driver JoinedOrMissing RejectNegative Var(flag_compare_debug_opt) |
407 -fcompare-debug[=<opts>] Compile with and without e.g. -gtoggle, and compare the final-insns dump | 867 -fcompare-debug[=<opts>] Compile with and without e.g. -gtoggle, and compare the final-insns dump |
408 | 868 |
409 fcompare-debug-second | 869 fcompare-debug-second |
410 Common RejectNegative Var(flag_compare_debug) | 870 Common Driver RejectNegative Var(flag_compare_debug) |
411 Run only the second compilation of -fcompare-debug | 871 Run only the second compilation of -fcompare-debug |
872 | |
873 fcompare-elim | |
874 Common Report Var(flag_compare_elim_after_reload) Optimization | |
875 Perform comparison elimination after register allocation has finished | |
412 | 876 |
413 fconserve-stack | 877 fconserve-stack |
414 Common Var(flag_conserve_stack) Optimization | 878 Common Var(flag_conserve_stack) Optimization |
415 Do not perform optimizations increasing noticeably stack usage | 879 Do not perform optimizations increasing noticeably stack usage |
416 | 880 |
425 fcse-follow-jumps | 889 fcse-follow-jumps |
426 Common Report Var(flag_cse_follow_jumps) Optimization | 890 Common Report Var(flag_cse_follow_jumps) Optimization |
427 When running CSE, follow jumps to their targets | 891 When running CSE, follow jumps to their targets |
428 | 892 |
429 fcse-skip-blocks | 893 fcse-skip-blocks |
430 Common | 894 Common Ignore |
431 Does nothing. Preserved for backward compatibility. | 895 Does nothing. Preserved for backward compatibility. |
432 | 896 |
433 fcx-limited-range | 897 fcx-limited-range |
434 Common Report Var(flag_cx_limited_range) Optimization | 898 Common Report Var(flag_cx_limited_range) Optimization SetByCombined |
435 Omit range reduction step when performing complex division | 899 Omit range reduction step when performing complex division |
436 | 900 |
437 fcx-fortran-rules | 901 fcx-fortran-rules |
438 Common Report Var(flag_cx_fortran_rules) Optimization | 902 Common Report Var(flag_cx_fortran_rules) Optimization |
439 Complex multiplication and division follow Fortran rules | 903 Complex multiplication and division follow Fortran rules |
441 fdata-sections | 905 fdata-sections |
442 Common Report Var(flag_data_sections) Optimization | 906 Common Report Var(flag_data_sections) Optimization |
443 Place data items into their own section | 907 Place data items into their own section |
444 | 908 |
445 fdbg-cnt-list | 909 fdbg-cnt-list |
446 Common Report | 910 Common Report Var(common_deferred_options) Defer |
447 List all available debugging counters with their limits and counts. | 911 List all available debugging counters with their limits and counts. |
448 | 912 |
449 fdbg-cnt= | 913 fdbg-cnt= |
450 Common RejectNegative Joined | 914 Common RejectNegative Joined Var(common_deferred_options) Defer |
451 -fdbg-cnt=<counter>:<limit>[,<counter>:<limit>,...] Set the debug counter limit. | 915 -fdbg-cnt=<counter>:<limit>[,<counter>:<limit>,...] Set the debug counter limit. |
452 | 916 |
453 fdebug-prefix-map= | 917 fdebug-prefix-map= |
454 Common Joined RejectNegative | 918 Common Joined RejectNegative Var(common_deferred_options) Defer |
455 Map one directory name to another in debug information | 919 Map one directory name to another in debug information |
456 | 920 |
457 ; Nonzero for -fdefer-pop: don't pop args after each function call | 921 ; Nonzero for -fdefer-pop: don't pop args after each function call |
458 ; instead save them up to pop many calls' args with one insns. | 922 ; instead save them up to pop many calls' args with one insns. |
459 fdefer-pop | 923 fdefer-pop |
466 | 930 |
467 fdelete-null-pointer-checks | 931 fdelete-null-pointer-checks |
468 Common Report Var(flag_delete_null_pointer_checks) Init(1) Optimization | 932 Common Report Var(flag_delete_null_pointer_checks) Init(1) Optimization |
469 Delete useless null pointer checks | 933 Delete useless null pointer checks |
470 | 934 |
935 fdevirtualize | |
936 Common Report Var(flag_devirtualize) Optimization | |
937 Try to convert virtual calls to direct ones. | |
938 | |
471 fdiagnostics-show-location= | 939 fdiagnostics-show-location= |
472 Common Joined RejectNegative | 940 Common Joined RejectNegative Enum(diagnostic_prefixing_rule) |
473 -fdiagnostics-show-location=[once|every-line] How often to emit source location at the beginning of line-wrapped diagnostics | 941 -fdiagnostics-show-location=[once|every-line] How often to emit source location at the beginning of line-wrapped diagnostics |
942 | |
943 ; Required for these enum values. | |
944 SourceInclude | |
945 pretty-print.h | |
946 | |
947 Enum | |
948 Name(diagnostic_prefixing_rule) Type(int) | |
949 | |
950 EnumValue | |
951 Enum(diagnostic_prefixing_rule) String(once) Value(DIAGNOSTICS_SHOW_PREFIX_ONCE) | |
952 | |
953 EnumValue | |
954 Enum(diagnostic_prefixing_rule) String(every-line) Value(DIAGNOSTICS_SHOW_PREFIX_EVERY_LINE) | |
474 | 955 |
475 fdiagnostics-show-option | 956 fdiagnostics-show-option |
476 Common Var(flag_diagnostics_show_option) Init(1) | 957 Common Var(flag_diagnostics_show_option) Init(1) |
477 Amend appropriate diagnostic messages with the command line option that controls them | 958 Amend appropriate diagnostic messages with the command line option that controls them |
478 | 959 |
479 fdump- | 960 fdump- |
480 Common Joined RejectNegative | 961 Common Joined RejectNegative Var(common_deferred_options) Defer |
481 -fdump-<type> Dump various compiler internals to a file | 962 -fdump-<type> Dump various compiler internals to a file |
963 | |
964 fdump-final-insns | |
965 Driver RejectNegative | |
482 | 966 |
483 fdump-final-insns= | 967 fdump-final-insns= |
484 Common RejectNegative Joined Var(flag_dump_final_insns) | 968 Common RejectNegative Joined Var(flag_dump_final_insns) |
485 -fdump-final-insns=filename Dump to filename the insns at the end of translation | 969 -fdump-final-insns=filename Dump to filename the insns at the end of translation |
486 | 970 |
971 fdump-go-spec= | |
972 Common RejectNegative Joined Var(flag_dump_go_spec) | |
973 -fdump-go-spec=filename Write all declarations to file as Go code | |
974 | |
487 fdump-noaddr | 975 fdump-noaddr |
488 Common Report Var(flag_dump_noaddr) | 976 Common Report Var(flag_dump_noaddr) |
489 Suppress output of addresses in debugging dumps | 977 Suppress output of addresses in debugging dumps |
490 | 978 |
491 fdump-unnumbered | 979 fdump-unnumbered |
492 Common Report Var(flag_dump_unnumbered) VarExists | 980 Common Report Var(flag_dump_unnumbered) |
493 Suppress output of instruction numbers, line number notes and addresses in debugging dumps | 981 Suppress output of instruction numbers, line number notes and addresses in debugging dumps |
494 | 982 |
495 fdump-unnumbered-links | 983 fdump-unnumbered-links |
496 Common Report Var(flag_dump_unnumbered_links) VarExists | 984 Common Report Var(flag_dump_unnumbered_links) |
497 Suppress output of previous and next insn numbers in debugging dumps | 985 Suppress output of previous and next insn numbers in debugging dumps |
498 | 986 |
499 fdwarf2-cfi-asm | 987 fdwarf2-cfi-asm |
500 Common Report Var(flag_dwarf2_cfi_asm) Init(HAVE_GAS_CFI_DIRECTIVE) | 988 Common Report Var(flag_dwarf2_cfi_asm) Init(HAVE_GAS_CFI_DIRECTIVE) |
501 Enable CFI tables via GAS assembler directives. | 989 Enable CFI tables via GAS assembler directives. |
535 fexpensive-optimizations | 1023 fexpensive-optimizations |
536 Common Report Var(flag_expensive_optimizations) Optimization | 1024 Common Report Var(flag_expensive_optimizations) Optimization |
537 Perform a number of minor, expensive optimizations | 1025 Perform a number of minor, expensive optimizations |
538 | 1026 |
539 fexcess-precision= | 1027 fexcess-precision= |
540 Common Joined RejectNegative | 1028 Common Joined RejectNegative Enum(excess_precision) Var(flag_excess_precision_cmdline) Init(EXCESS_PRECISION_DEFAULT) |
541 -fexcess-precision=[fast|standard] Specify handling of excess floating-point precision | 1029 -fexcess-precision=[fast|standard] Specify handling of excess floating-point precision |
1030 | |
1031 Enum | |
1032 Name(excess_precision) Type(enum excess_precision) UnknownError(unknown excess precision style %qs) | |
1033 | |
1034 EnumValue | |
1035 Enum(excess_precision) String(fast) Value(EXCESS_PRECISION_FAST) | |
1036 | |
1037 EnumValue | |
1038 Enum(excess_precision) String(standard) Value(EXCESS_PRECISION_STANDARD) | |
542 | 1039 |
543 ffast-math | 1040 ffast-math |
544 Common | 1041 Common |
545 | 1042 |
546 ffinite-math-only | 1043 ffinite-math-only |
547 Common Report Var(flag_finite_math_only) Optimization | 1044 Common Report Var(flag_finite_math_only) Optimization SetByCombined |
548 Assume no NaNs or infinities are generated | 1045 Assume no NaNs or infinities are generated |
549 | 1046 |
550 ffixed- | 1047 ffixed- |
551 Common Joined RejectNegative | 1048 Common Joined RejectNegative Var(common_deferred_options) Defer |
552 -ffixed-<register> Mark <register> as being unavailable to the compiler | 1049 -ffixed-<register> Mark <register> as being unavailable to the compiler |
553 | 1050 |
554 ffloat-store | 1051 ffloat-store |
555 Common Report Var(flag_float_store) Optimization | 1052 Common Report Var(flag_float_store) Optimization |
556 Don't allocate floats and doubles in extended-precision registers | 1053 Don't allocate floats and doubles in extended-precision registers |
557 | 1054 |
558 fforce-addr | 1055 fforce-addr |
559 Common | 1056 Common Ignore |
560 Does nothing. Preserved for backward compatibility. | 1057 Does nothing. Preserved for backward compatibility. |
561 | 1058 |
562 fforward-propagate | 1059 fforward-propagate |
563 Common Report Var(flag_forward_propagate) Optimization | 1060 Common Report Var(flag_forward_propagate) Optimization |
564 Perform a forward propagation pass on RTL | 1061 Perform a forward propagation pass on RTL |
1062 | |
1063 ffp-contract= | |
1064 Common Joined RejectNegative Enum(fp_contract_mode) Var(flag_fp_contract_mode) Init(FP_CONTRACT_FAST) | |
1065 -ffp-contract=[off|on|fast] Perform floating-point expression contraction. | |
1066 | |
1067 Enum | |
1068 Name(fp_contract_mode) Type(enum fp_contract_mode) UnknownError(unknown floating point contraction style %qs) | |
1069 | |
1070 EnumValue | |
1071 Enum(fp_contract_mode) String(off) Value(FP_CONTRACT_OFF) | |
1072 | |
1073 ; Not implemented, fall back to conservative FP_CONTRACT_OFF. | |
1074 EnumValue | |
1075 Enum(fp_contract_mode) String(on) Value(FP_CONTRACT_OFF) | |
1076 | |
1077 EnumValue | |
1078 Enum(fp_contract_mode) String(fast) Value(FP_CONTRACT_FAST) | |
565 | 1079 |
566 ; Nonzero means don't put addresses of constant functions in registers. | 1080 ; Nonzero means don't put addresses of constant functions in registers. |
567 ; Used for compiling the Unix kernel, where strange substitutions are | 1081 ; Used for compiling the Unix kernel, where strange substitutions are |
568 ; done on the assembly output. | 1082 ; done on the assembly output. |
569 ffunction-cse | 1083 ffunction-cse |
618 Enable Loop Interchange transformation | 1132 Enable Loop Interchange transformation |
619 | 1133 |
620 floop-block | 1134 floop-block |
621 Common Report Var(flag_loop_block) Optimization | 1135 Common Report Var(flag_loop_block) Optimization |
622 Enable Loop Blocking transformation | 1136 Enable Loop Blocking transformation |
1137 | |
1138 floop-flatten | |
1139 Common Report Var(flag_loop_flatten) Optimization | |
1140 Enable Loop Flattening transformation | |
1141 | |
1142 fstrict-volatile-bitfields | |
1143 Common Report Var(flag_strict_volatile_bitfields) Init(-1) | |
1144 Force bitfield accesses to match their type width | |
623 | 1145 |
624 fguess-branch-probability | 1146 fguess-branch-probability |
625 Common Report Var(flag_guess_branch_prob) Optimization | 1147 Common Report Var(flag_guess_branch_prob) Optimization |
626 Enable guessing of branch probabilities | 1148 Enable guessing of branch probabilities |
627 | 1149 |
638 Perform conversion of conditional jumps to branchless equivalents | 1160 Perform conversion of conditional jumps to branchless equivalents |
639 | 1161 |
640 fif-conversion2 | 1162 fif-conversion2 |
641 Common Report Var(flag_if_conversion2) Optimization | 1163 Common Report Var(flag_if_conversion2) Optimization |
642 Perform conversion of conditional jumps to conditional execution | 1164 Perform conversion of conditional jumps to conditional execution |
1165 | |
1166 ftree-loop-if-convert | |
1167 Common Report Var(flag_tree_loop_if_convert) Init(-1) Optimization | |
1168 Convert conditional jumps in innermost loops to branchless equivalents | |
1169 | |
1170 ftree-loop-if-convert-stores | |
1171 Common Report Var(flag_tree_loop_if_convert_stores) Optimization | |
1172 Also if-convert conditional jumps containing memory writes | |
643 | 1173 |
644 ; -finhibit-size-directive inhibits output of .size for ELF. | 1174 ; -finhibit-size-directive inhibits output of .size for ELF. |
645 ; This is used only for compiling crtstuff.c, | 1175 ; This is used only for compiling crtstuff.c, |
646 ; and it may be extended to other effects | 1176 ; and it may be extended to other effects |
647 ; needed for crtstuff.c on other systems. | 1177 ; needed for crtstuff.c on other systems. |
673 finline-functions-called-once | 1203 finline-functions-called-once |
674 Common Report Var(flag_inline_functions_called_once) Init(1) Optimization | 1204 Common Report Var(flag_inline_functions_called_once) Init(1) Optimization |
675 Integrate functions called once into their callers | 1205 Integrate functions called once into their callers |
676 | 1206 |
677 finline-limit- | 1207 finline-limit- |
678 Common RejectNegative Joined UInteger | 1208 Common RejectNegative Joined Alias(finline-limit=) |
679 | 1209 |
680 finline-limit= | 1210 finline-limit= |
681 Common RejectNegative Joined UInteger | 1211 Common RejectNegative Joined UInteger |
682 -finline-limit=<number> Limit the size of inlined functions to <number> | 1212 -finline-limit=<number> Limit the size of inlined functions to <number> |
683 | 1213 |
726 Common Report Var(flag_ipa_struct_reorg) | 1256 Common Report Var(flag_ipa_struct_reorg) |
727 Perform structure layout optimizations based | 1257 Perform structure layout optimizations based |
728 on profiling information. | 1258 on profiling information. |
729 | 1259 |
730 fira-algorithm= | 1260 fira-algorithm= |
731 Common Joined RejectNegative | 1261 Common Joined RejectNegative Enum(ira_algorithm) Var(flag_ira_algorithm) Init(IRA_ALGORITHM_CB) |
732 -fira-algorithm=[CB|priority] Set the used IRA algorithm | 1262 -fira-algorithm=[CB|priority] Set the used IRA algorithm |
733 | 1263 |
1264 Enum | |
1265 Name(ira_algorithm) Type(enum ira_algorithm) UnknownError(unknown IRA algorithm %qs) | |
1266 | |
1267 EnumValue | |
1268 Enum(ira_algorithm) String(CB) Value(IRA_ALGORITHM_CB) | |
1269 | |
1270 EnumValue | |
1271 Enum(ira_algorithm) String(priority) Value(IRA_ALGORITHM_PRIORITY) | |
1272 | |
734 fira-region= | 1273 fira-region= |
735 Common Joined RejectNegative | 1274 Common Joined RejectNegative Enum(ira_region) Var(flag_ira_region) Init(IRA_REGION_MIXED) |
736 -fira-region=[one|all|mixed] Set regions for IRA | 1275 -fira-region=[one|all|mixed] Set regions for IRA |
737 | 1276 |
738 fira-coalesce | 1277 Enum |
739 Common Report Var(flag_ira_coalesce) Init(0) | 1278 Name(ira_region) Type(enum ira_region) UnknownError(unknown IRA region %qs) |
740 Do optimistic coalescing. | 1279 |
1280 EnumValue | |
1281 Enum(ira_region) String(one) Value(IRA_REGION_ONE) | |
1282 | |
1283 EnumValue | |
1284 Enum(ira_region) String(all) Value(IRA_REGION_ALL) | |
1285 | |
1286 EnumValue | |
1287 Enum(ira_region) String(mixed) Value(IRA_REGION_MIXED) | |
741 | 1288 |
742 fira-loop-pressure | 1289 fira-loop-pressure |
743 Common Report Var(flag_ira_loop_pressure) | 1290 Common Report Var(flag_ira_loop_pressure) |
744 Use IRA based register pressure calculation | 1291 Use IRA based register pressure calculation |
745 in RTL loop optimizations. | 1292 in RTL loop optimizations. |
751 fira-share-spill-slots | 1298 fira-share-spill-slots |
752 Common Report Var(flag_ira_share_spill_slots) Init(1) | 1299 Common Report Var(flag_ira_share_spill_slots) Init(1) |
753 Share stack slots for spilled pseudo-registers. | 1300 Share stack slots for spilled pseudo-registers. |
754 | 1301 |
755 fira-verbose= | 1302 fira-verbose= |
756 Common RejectNegative Joined UInteger | 1303 Common RejectNegative Joined UInteger Var(flag_ira_verbose) Init(5) |
757 -fira-verbose=<number> Control IRA's level of diagnostic messages. | 1304 -fira-verbose=<number> Control IRA's level of diagnostic messages. |
758 | 1305 |
759 fivopts | 1306 fivopts |
760 Common Report Var(flag_ivopts) Init(1) Optimization | 1307 Common Report Var(flag_ivopts) Init(1) Optimization |
761 Optimize induction variables on trees | 1308 Optimize induction variables on trees |
775 fleading-underscore | 1322 fleading-underscore |
776 Common Report Var(flag_leading_underscore) Init(-1) | 1323 Common Report Var(flag_leading_underscore) Init(-1) |
777 Give external symbols a leading underscore | 1324 Give external symbols a leading underscore |
778 | 1325 |
779 floop-optimize | 1326 floop-optimize |
1327 Common Ignore | |
1328 Does nothing. Preserved for backward compatibility. | |
1329 | |
1330 flto | |
780 Common | 1331 Common |
781 Does nothing. Preserved for backward compatibility. | |
782 | |
783 flto | |
784 Common Var(flag_lto) | |
785 Enable link-time optimization. | 1332 Enable link-time optimization. |
1333 | |
1334 flto= | |
1335 Common RejectNegative Joined Var(flag_lto) | |
1336 Link-time optimization with number of parallel jobs or jobserver. | |
1337 | |
1338 flto-partition=1to1 | |
1339 Common Var(flag_lto_partition_1to1) | |
1340 Partition functions and vars at linktime based on object files they originate from | |
1341 | |
1342 flto-partition=balanced | |
1343 Common Var(flag_lto_partition_balanced) | |
1344 Partition functions and vars at linktime into approximately same sized buckets | |
1345 | |
1346 flto-partition=none | |
1347 Common Var(flag_lto_partition_none) | |
1348 Disable partioning and streaming | |
786 | 1349 |
787 ; The initial value of -1 comes from Z_DEFAULT_COMPRESSION in zlib.h. | 1350 ; The initial value of -1 comes from Z_DEFAULT_COMPRESSION in zlib.h. |
788 flto-compression-level= | 1351 flto-compression-level= |
789 Common Joined UInteger Var(flag_lto_compression_level) Init(-1) | 1352 Common Joined RejectNegative UInteger Var(flag_lto_compression_level) Init(-1) |
790 -flto-compression-level=<number> Use zlib compression level <number> for IL | 1353 -flto-compression-level=<number> Use zlib compression level <number> for IL |
791 | 1354 |
792 flto-report | 1355 flto-report |
793 Common Report Var(flag_lto_report) Init(0) Optimization | 1356 Common Report Var(flag_lto_report) Init(0) Optimization |
794 Report various link-time optimization statistics | 1357 Report various link-time optimization statistics |
795 | 1358 |
796 fmath-errno | 1359 fmath-errno |
797 Common Report Var(flag_errno_math) Init(1) Optimization | 1360 Common Report Var(flag_errno_math) Init(1) Optimization SetByCombined |
798 Set errno after built-in math functions | 1361 Set errno after built-in math functions |
1362 | |
1363 fmax-errors= | |
1364 Common Joined RejectNegative UInteger Var(flag_max_errors) | |
1365 -fmax-errors=<number> Maximum number of errors to report | |
799 | 1366 |
800 fmem-report | 1367 fmem-report |
801 Common Report Var(mem_report) | 1368 Common Report Var(mem_report) |
802 Report on permanent memory allocation | 1369 Report on permanent memory allocation |
803 | 1370 |
807 fmerge-all-constants | 1374 fmerge-all-constants |
808 Common Report Var(flag_merge_constants,2) Init(1) Optimization | 1375 Common Report Var(flag_merge_constants,2) Init(1) Optimization |
809 Attempt to merge identical constants and constant variables | 1376 Attempt to merge identical constants and constant variables |
810 | 1377 |
811 fmerge-constants | 1378 fmerge-constants |
812 Common Report Var(flag_merge_constants,1) VarExists Optimization | 1379 Common Report Var(flag_merge_constants,1) Optimization |
813 Attempt to merge identical constants across compilation units | 1380 Attempt to merge identical constants across compilation units |
814 | 1381 |
815 fmerge-debug-strings | 1382 fmerge-debug-strings |
816 Common Report Var(flag_merge_debug_strings) Init(1) | 1383 Common Report Var(flag_merge_debug_strings) Init(1) |
817 Attempt to merge identical debug strings across compilation units | 1384 Attempt to merge identical debug strings across compilation units |
835 fmudflap | 1402 fmudflap |
836 Common RejectNegative Report Var(flag_mudflap) | 1403 Common RejectNegative Report Var(flag_mudflap) |
837 Add mudflap bounds-checking instrumentation for single-threaded program | 1404 Add mudflap bounds-checking instrumentation for single-threaded program |
838 | 1405 |
839 fmudflapth | 1406 fmudflapth |
840 Common RejectNegative Report VarExists Var(flag_mudflap,2) | 1407 Common RejectNegative Report Var(flag_mudflap,2) |
841 Add mudflap bounds-checking instrumentation for multi-threaded program | 1408 Add mudflap bounds-checking instrumentation for multi-threaded program |
842 | 1409 |
843 fmudflapir | 1410 fmudflapir |
844 Common RejectNegative Report Var(flag_mudflap_ignore_reads) | 1411 Common RejectNegative Report Var(flag_mudflap_ignore_reads) |
845 Ignore read operations when inserting mudflap instrumentation | 1412 Ignore read operations when inserting mudflap instrumentation |
870 | 1437 |
871 foptimize-sibling-calls | 1438 foptimize-sibling-calls |
872 Common Report Var(flag_optimize_sibling_calls) Optimization | 1439 Common Report Var(flag_optimize_sibling_calls) Optimization |
873 Optimize sibling and tail recursive calls | 1440 Optimize sibling and tail recursive calls |
874 | 1441 |
1442 fpartial-inlining | |
1443 Common Report Var(flag_partial_inlining) | |
1444 Perform partial inlining | |
1445 | |
875 fpre-ipa-mem-report | 1446 fpre-ipa-mem-report |
876 Common Report Var(pre_ipa_mem_report) | 1447 Common Report Var(pre_ipa_mem_report) |
877 Report on memory allocation before interprocedural optimization | 1448 Report on memory allocation before interprocedural optimization |
878 | 1449 |
879 fpost-ipa-mem-report | 1450 fpost-ipa-mem-report |
887 fpack-struct= | 1458 fpack-struct= |
888 Common RejectNegative Joined UInteger Optimization | 1459 Common RejectNegative Joined UInteger Optimization |
889 -fpack-struct=<number> Set initial maximum structure member alignment | 1460 -fpack-struct=<number> Set initial maximum structure member alignment |
890 | 1461 |
891 fpcc-struct-return | 1462 fpcc-struct-return |
892 Common Report Var(flag_pcc_struct_return,1) VarExists | 1463 Common Report Var(flag_pcc_struct_return,1) Init(DEFAULT_PCC_STRUCT_RETURN) |
893 Return small aggregates in memory, not registers | 1464 Return small aggregates in memory, not registers |
894 | 1465 |
895 fpeel-loops | 1466 fpeel-loops |
896 Common Report Var(flag_peel_loops) Optimization | 1467 Common Report Var(flag_peel_loops) Optimization |
897 Perform loop peeling | 1468 Perform loop peeling |
911 fPIE | 1482 fPIE |
912 Common Report Var(flag_pie,2) | 1483 Common Report Var(flag_pie,2) |
913 Generate position-independent code for executables if possible (large mode) | 1484 Generate position-independent code for executables if possible (large mode) |
914 | 1485 |
915 fpic | 1486 fpic |
916 Common Report Var(flag_pic,1) VarExists | 1487 Common Report Var(flag_pic,1) |
917 Generate position-independent code if possible (small mode) | 1488 Generate position-independent code if possible (small mode) |
918 | 1489 |
919 fpie | 1490 fpie |
920 Common Report Var(flag_pie,1) VarExists | 1491 Common Report Var(flag_pie,1) |
921 Generate position-independent code for executables if possible (small mode) | 1492 Generate position-independent code for executables if possible (small mode) |
922 | 1493 |
923 fplugin= | 1494 fplugin= |
924 Common Joined RejectNegative | 1495 Common Joined RejectNegative Var(common_deferred_options) Defer |
925 Specify a plugin to load | 1496 Specify a plugin to load |
926 | 1497 |
927 fplugin-arg- | 1498 fplugin-arg- |
928 Common Joined RejectNegative | 1499 Common Joined RejectNegative Var(common_deferred_options) Defer |
929 -fplugin-arg-<name>-<key>[=<value>] Specify argument <key>=<value> for plugin <name> | 1500 -fplugin-arg-<name>-<key>[=<value>] Specify argument <key>=<value> for plugin <name> |
930 | 1501 |
931 fpredictive-commoning | 1502 fpredictive-commoning |
932 Common Report Var(flag_predictive_commoning) Optimization | 1503 Common Report Var(flag_predictive_commoning) Optimization |
933 Run predictive commoning optimization. | 1504 Run predictive commoning optimization. |
934 | 1505 |
935 fprefetch-loop-arrays | 1506 fprefetch-loop-arrays |
936 Common Report Var(flag_prefetch_loop_arrays) Optimization | 1507 Common Report Var(flag_prefetch_loop_arrays) Init(-1) Optimization |
937 Generate prefetch instructions, if available, for arrays in loops | 1508 Generate prefetch instructions, if available, for arrays in loops |
938 | 1509 |
939 fprofile | 1510 fprofile |
940 Common Report Var(profile_flag) | 1511 Common Report Var(profile_flag) |
941 Enable basic program profiling code | 1512 Enable basic program profiling code |
943 fprofile-arcs | 1514 fprofile-arcs |
944 Common Report Var(profile_arc_flag) | 1515 Common Report Var(profile_arc_flag) |
945 Insert arc-based program profiling code | 1516 Insert arc-based program profiling code |
946 | 1517 |
947 fprofile-dir= | 1518 fprofile-dir= |
948 Common Joined RejectNegative | 1519 Common Joined RejectNegative Var(profile_data_prefix) |
949 Set the top-level directory for storing the profile data. | 1520 Set the top-level directory for storing the profile data. |
950 The default is 'pwd'. | 1521 The default is 'pwd'. |
951 | 1522 |
952 fprofile-correction | 1523 fprofile-correction |
953 Common Report Var(flag_profile_correction) | 1524 Common Report Var(flag_profile_correction) |
972 fprofile-values | 1543 fprofile-values |
973 Common Report Var(flag_profile_values) | 1544 Common Report Var(flag_profile_values) |
974 Insert code to profile values of expressions | 1545 Insert code to profile values of expressions |
975 | 1546 |
976 frandom-seed | 1547 frandom-seed |
977 Common | 1548 Common Var(common_deferred_options) Defer |
978 | 1549 |
979 frandom-seed= | 1550 frandom-seed= |
980 Common Joined RejectNegative | 1551 Common Joined RejectNegative Var(common_deferred_options) Defer |
981 -frandom-seed=<string> Make compile reproducible using <string> | 1552 -frandom-seed=<string> Make compile reproducible using <string> |
982 | 1553 |
983 ; This switch causes the command line that was used to create an | 1554 ; This switch causes the command line that was used to create an |
984 ; object file to be recorded into the object file. The exact format | 1555 ; object file to be recorded into the object file. The exact format |
985 ; of this recording is target and binary file format dependent. | 1556 ; of this recording is target and binary file format dependent. |
989 frecord-gcc-switches | 1560 frecord-gcc-switches |
990 Common Report Var(flag_record_gcc_switches) | 1561 Common Report Var(flag_record_gcc_switches) |
991 Record gcc command line switches in the object file. | 1562 Record gcc command line switches in the object file. |
992 | 1563 |
993 freg-struct-return | 1564 freg-struct-return |
994 Common Report Var(flag_pcc_struct_return,0) VarExists Optimization | 1565 Common Report Var(flag_pcc_struct_return,0) Optimization |
995 Return small aggregates in registers | 1566 Return small aggregates in registers |
996 | 1567 |
997 fregmove | 1568 fregmove |
998 Common Report Var(flag_regmove) Optimization | 1569 Common Report Var(flag_regmove) Optimization |
999 Enables a register move optimization | 1570 Enables a register move optimization |
1013 freorder-functions | 1584 freorder-functions |
1014 Common Report Var(flag_reorder_functions) Optimization | 1585 Common Report Var(flag_reorder_functions) Optimization |
1015 Reorder functions to improve code placement | 1586 Reorder functions to improve code placement |
1016 | 1587 |
1017 frerun-cse-after-loop | 1588 frerun-cse-after-loop |
1018 Common Report Var(flag_rerun_cse_after_loop) Init(2) Optimization | 1589 Common Report Var(flag_rerun_cse_after_loop) Optimization |
1019 Add a common subexpression elimination pass after loop optimizations | 1590 Add a common subexpression elimination pass after loop optimizations |
1020 | 1591 |
1021 frerun-loop-opt | 1592 frerun-loop-opt |
1022 Common | 1593 Common Ignore |
1023 Does nothing. Preserved for backward compatibility. | 1594 Does nothing. Preserved for backward compatibility. |
1024 | 1595 |
1025 frounding-math | 1596 frounding-math |
1026 Common Report Var(flag_rounding_math) Optimization | 1597 Common Report Var(flag_rounding_math) Optimization SetByCombined |
1027 Disable optimizations that assume default FP rounding behavior | 1598 Disable optimizations that assume default FP rounding behavior |
1028 | 1599 |
1029 fsched-interblock | 1600 fsched-interblock |
1030 Common Report Var(flag_schedule_interblock) Init(1) Optimization | 1601 Common Report Var(flag_schedule_interblock) Init(1) Optimization |
1031 Enable scheduling across basic blocks | 1602 Enable scheduling across basic blocks |
1045 fsched-spec-load-dangerous | 1616 fsched-spec-load-dangerous |
1046 Common Report Var(flag_schedule_speculative_load_dangerous) Optimization | 1617 Common Report Var(flag_schedule_speculative_load_dangerous) Optimization |
1047 Allow speculative motion of more loads | 1618 Allow speculative motion of more loads |
1048 | 1619 |
1049 fsched-verbose= | 1620 fsched-verbose= |
1050 Common RejectNegative Joined | 1621 Common RejectNegative Joined UInteger Var(sched_verbose_param) |
1051 -fsched-verbose=<number> Set the verbosity level of the scheduler | 1622 -fsched-verbose=<number> Set the verbosity level of the scheduler |
1052 | 1623 |
1053 fsched2-use-superblocks | 1624 fsched2-use-superblocks |
1054 Common Report Var(flag_sched2_use_superblocks) Optimization | 1625 Common Report Var(flag_sched2_use_superblocks) Optimization |
1055 If scheduling post reload, do superblock scheduling | 1626 If scheduling post reload, do superblock scheduling |
1056 | 1627 |
1057 fsched2-use-traces | 1628 fsched2-use-traces |
1058 Common | 1629 Common Ignore |
1059 Does nothing. Preserved for backward compatibility. | 1630 Does nothing. Preserved for backward compatibility. |
1060 | 1631 |
1061 fschedule-insns | 1632 fschedule-insns |
1062 Common Report Var(flag_schedule_insns) Optimization | 1633 Common Report Var(flag_schedule_insns) Optimization |
1063 Reschedule instructions before register allocation | 1634 Reschedule instructions before register allocation |
1138 fsection-anchors | 1709 fsection-anchors |
1139 Common Report Var(flag_section_anchors) Optimization | 1710 Common Report Var(flag_section_anchors) Optimization |
1140 Access data in the same section from shared anchor points | 1711 Access data in the same section from shared anchor points |
1141 | 1712 |
1142 fsee | 1713 fsee |
1143 Common | 1714 Common Ignore |
1144 Does nothing. Preserved for backward compatibility. | 1715 Does nothing. Preserved for backward compatibility. |
1145 | 1716 |
1146 fzee | 1717 fzee |
1147 Common Report Var(flag_zee) Init(0) | 1718 Common Report Var(flag_zee) Init(0) |
1148 Eliminate redundant zero extensions on targets that support implicit extensions. | 1719 Eliminate redundant zero extensions on targets that support implicit extensions. |
1149 | 1720 |
1150 fshow-column | 1721 fshow-column |
1151 Common C ObjC C++ ObjC++ Report Var(flag_show_column) Init(1) | 1722 Common Report Var(flag_show_column) Init(1) |
1152 Show column numbers in diagnostics, when available. Default on | 1723 Show column numbers in diagnostics, when available. Default on |
1153 | 1724 |
1154 fsignaling-nans | 1725 fsignaling-nans |
1155 Common Report Var(flag_signaling_nans) Optimization | 1726 Common Report Var(flag_signaling_nans) Optimization SetByCombined |
1156 Disable optimizations observable by IEEE signaling NaNs | 1727 Disable optimizations observable by IEEE signaling NaNs |
1157 | 1728 |
1158 fsigned-zeros | 1729 fsigned-zeros |
1159 Common Report Var(flag_signed_zeros) Init(1) Optimization | 1730 Common Report Var(flag_signed_zeros) Init(1) Optimization SetByCombined |
1160 Disable floating point optimizations that ignore the IEEE signedness of zero | 1731 Disable floating point optimizations that ignore the IEEE signedness of zero |
1161 | 1732 |
1162 fsingle-precision-constant | 1733 fsingle-precision-constant |
1163 Common Report Var(flag_single_precision_constant) Optimization | 1734 Common Report Var(flag_single_precision_constant) Optimization |
1164 Convert floating point constants to single precision constants | 1735 Convert floating point constants to single precision constants |
1165 | 1736 |
1166 fsplit-ivs-in-unroller | 1737 fsplit-ivs-in-unroller |
1167 Common Report Var(flag_split_ivs_in_unroller) Init(1) Optimization | 1738 Common Report Var(flag_split_ivs_in_unroller) Init(1) Optimization |
1168 Split lifetimes of induction variables when loops are unrolled | 1739 Split lifetimes of induction variables when loops are unrolled |
1169 | 1740 |
1741 fsplit-stack | |
1742 Common Report Var(flag_split_stack) Init(-1) | |
1743 Generate discontiguous stack frames | |
1744 | |
1170 fsplit-wide-types | 1745 fsplit-wide-types |
1171 Common Report Var(flag_split_wide_types) Optimization | 1746 Common Report Var(flag_split_wide_types) Optimization |
1172 Split wide types into independent registers | 1747 Split wide types into independent registers |
1173 | 1748 |
1174 fvariable-expansion-in-unroller | 1749 fvariable-expansion-in-unroller |
1178 fstack-check= | 1753 fstack-check= |
1179 Common Report RejectNegative Joined | 1754 Common Report RejectNegative Joined |
1180 -fstack-check=[no|generic|specific] Insert stack checking code into the program | 1755 -fstack-check=[no|generic|specific] Insert stack checking code into the program |
1181 | 1756 |
1182 fstack-check | 1757 fstack-check |
1183 Common Report | 1758 Common Alias(fstack-check=, specific, no) |
1184 Insert stack checking code into the program. Same as -fstack-check=specific | 1759 Insert stack checking code into the program. Same as -fstack-check=specific |
1185 | 1760 |
1186 fstack-limit | 1761 fstack-limit |
1187 Common | 1762 Common Var(common_deferred_options) Defer |
1188 | 1763 |
1189 fstack-limit-register= | 1764 fstack-limit-register= |
1190 Common RejectNegative Joined | 1765 Common RejectNegative Joined Var(common_deferred_options) Defer |
1191 -fstack-limit-register=<register> Trap if the stack goes past <register> | 1766 -fstack-limit-register=<register> Trap if the stack goes past <register> |
1192 | 1767 |
1193 fstack-limit-symbol= | 1768 fstack-limit-symbol= |
1194 Common RejectNegative Joined | 1769 Common RejectNegative Joined Var(common_deferred_options) Defer |
1195 -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name> | 1770 -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name> |
1196 | 1771 |
1197 fstack-protector | 1772 fstack-protector |
1198 Common Report Var(flag_stack_protect, 1) | 1773 Common Report Var(flag_stack_protect, 1) |
1199 Use propolice as a stack protection method | 1774 Use propolice as a stack protection method |
1200 | 1775 |
1201 fstack-protector-all | 1776 fstack-protector-all |
1202 Common Report RejectNegative Var(flag_stack_protect, 2) VarExists | 1777 Common Report RejectNegative Var(flag_stack_protect, 2) |
1203 Use a stack protection method for every function | 1778 Use a stack protection method for every function |
1204 | 1779 |
1780 fstack-usage | |
1781 Common RejectNegative Var(flag_stack_usage) | |
1782 Output stack usage information on a per-function basis | |
1783 | |
1205 fstrength-reduce | 1784 fstrength-reduce |
1206 Common | 1785 Common Ignore |
1207 Does nothing. Preserved for backward compatibility. | 1786 Does nothing. Preserved for backward compatibility. |
1208 | 1787 |
1209 ; Nonzero if we should do (language-dependent) alias analysis. | 1788 ; Nonzero if we should do (language-dependent) alias analysis. |
1210 ; Typically, this analysis will assume that expressions of certain | 1789 ; Typically, this analysis will assume that expressions of certain |
1211 ; types do not alias expressions of certain other types. Only used | 1790 ; types do not alias expressions of certain other types. Only used |
1233 ftime-report | 1812 ftime-report |
1234 Common Report Var(time_report) | 1813 Common Report Var(time_report) |
1235 Report the time taken by each compiler pass | 1814 Report the time taken by each compiler pass |
1236 | 1815 |
1237 ftls-model= | 1816 ftls-model= |
1238 Common Joined RejectNegative | 1817 Common Joined RejectNegative Enum(tls_model) Var(flag_tls_default) Init(TLS_MODEL_GLOBAL_DYNAMIC) |
1239 -ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec] Set the default thread-local storage code generation model | 1818 -ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec] Set the default thread-local storage code generation model |
1819 | |
1820 Enum | |
1821 Name(tls_model) Type(enum tls_model) UnknownError(unknown TLS model %qs) | |
1822 | |
1823 EnumValue | |
1824 Enum(tls_model) String(global-dynamic) Value(TLS_MODEL_GLOBAL_DYNAMIC) | |
1825 | |
1826 EnumValue | |
1827 Enum(tls_model) String(local-dynamic) Value(TLS_MODEL_LOCAL_DYNAMIC) | |
1828 | |
1829 EnumValue | |
1830 Enum(tls_model) String(initial-exec) Value(TLS_MODEL_INITIAL_EXEC) | |
1831 | |
1832 EnumValue | |
1833 Enum(tls_model) String(local-exec) Value(TLS_MODEL_LOCAL_EXEC) | |
1240 | 1834 |
1241 ftoplevel-reorder | 1835 ftoplevel-reorder |
1242 Common Report Var(flag_toplevel_reorder) Init(2) Optimization | 1836 Common Report Var(flag_toplevel_reorder) Init(2) Optimization |
1243 Reorder top level functions, variables, and asms | 1837 Reorder top level functions, variables, and asms |
1244 | 1838 |
1248 | 1842 |
1249 ; Zero means that floating-point math operations cannot generate a | 1843 ; Zero means that floating-point math operations cannot generate a |
1250 ; (user-visible) trap. This is the case, for example, in nonstop | 1844 ; (user-visible) trap. This is the case, for example, in nonstop |
1251 ; IEEE 754 arithmetic. | 1845 ; IEEE 754 arithmetic. |
1252 ftrapping-math | 1846 ftrapping-math |
1253 Common Report Var(flag_trapping_math) Init(1) Optimization | 1847 Common Report Var(flag_trapping_math) Init(1) Optimization SetByCombined |
1254 Assume floating-point operations can trap | 1848 Assume floating-point operations can trap |
1255 | 1849 |
1256 ftrapv | 1850 ftrapv |
1257 Common Report Var(flag_trapv) Optimization | 1851 Common Report Var(flag_trapv) Optimization |
1258 Trap for signed overflow in addition, subtraction and multiplication | 1852 Trap for signed overflow in addition, subtraction and multiplication |
1259 | 1853 |
1260 ftree-ccp | 1854 ftree-ccp |
1261 Common Report Var(flag_tree_ccp) Optimization | 1855 Common Report Var(flag_tree_ccp) Optimization |
1262 Enable SSA-CCP optimization on trees | 1856 Enable SSA-CCP optimization on trees |
1263 | 1857 |
1858 ftree-bit-ccp | |
1859 Common Report Var(flag_tree_bit_ccp) Optimization | |
1860 Enable SSA-BIT-CCP optimization on trees | |
1861 | |
1264 ftree-store-ccp | 1862 ftree-store-ccp |
1265 Common | 1863 Common Ignore |
1266 Does nothing. Preserved for backward compatibility. | 1864 Does nothing. Preserved for backward compatibility. |
1267 | 1865 |
1268 ftree-ch | 1866 ftree-ch |
1269 Common Report Var(flag_tree_ch) Optimization | 1867 Common Report Var(flag_tree_ch) Optimization |
1270 Enable loop header copying on trees | 1868 Enable loop header copying on trees |
1276 ftree-copy-prop | 1874 ftree-copy-prop |
1277 Common Report Var(flag_tree_copy_prop) Optimization | 1875 Common Report Var(flag_tree_copy_prop) Optimization |
1278 Enable copy propagation on trees | 1876 Enable copy propagation on trees |
1279 | 1877 |
1280 ftree-store-copy-prop | 1878 ftree-store-copy-prop |
1281 Common | 1879 Common Ignore |
1282 Does nothing. Preserved for backward compatibility. | 1880 Does nothing. Preserved for backward compatibility. |
1283 | 1881 |
1284 ftree-cselim | 1882 ftree-cselim |
1285 Common Report Var(flag_tree_cselim) Init(2) Optimization | 1883 Common Report Var(flag_tree_cselim) Init(2) Optimization |
1286 Transform condition stores into unconditional ones | 1884 Transform condition stores into unconditional ones |
1311 | 1909 |
1312 ftree-loop-distribution | 1910 ftree-loop-distribution |
1313 Common Report Var(flag_tree_loop_distribution) Optimization | 1911 Common Report Var(flag_tree_loop_distribution) Optimization |
1314 Enable loop distribution on trees | 1912 Enable loop distribution on trees |
1315 | 1913 |
1914 ftree-loop-distribute-patterns | |
1915 Common Report Var(flag_tree_loop_distribute_patterns) Optimization | |
1916 Enable loop distribution for patterns transformed into a library call | |
1917 | |
1316 ftree-loop-im | 1918 ftree-loop-im |
1317 Common Report Var(flag_tree_loop_im) Init(1) Optimization | 1919 Common Report Var(flag_tree_loop_im) Init(1) Optimization |
1318 Enable loop invariant motion on trees | 1920 Enable loop invariant motion on trees |
1319 | 1921 |
1320 ftree-loop-linear | 1922 ftree-loop-linear |
1321 Common Report Var(flag_tree_loop_linear) Optimization | 1923 Common Alias(floop-interchange) |
1322 Enable linear loop transforms on trees | 1924 Enable loop interchange transforms. Same as -floop-interchange |
1323 | 1925 |
1324 ftree-loop-ivcanon | 1926 ftree-loop-ivcanon |
1325 Common Report Var(flag_tree_loop_ivcanon) Init(1) Optimization | 1927 Common Report Var(flag_tree_loop_ivcanon) Init(1) Optimization |
1326 Create canonical induction variables in loops | 1928 Create canonical induction variables in loops |
1327 | 1929 |
1328 ftree-loop-optimize | 1930 ftree-loop-optimize |
1329 Common Report Var(flag_tree_loop_optimize) Init(1) Optimization | 1931 Common Report Var(flag_tree_loop_optimize) Init(1) Optimization |
1330 Enable loop optimizations on tree level | 1932 Enable loop optimizations on tree level |
1331 | 1933 |
1332 ftree-parallelize-loops= | 1934 ftree-parallelize-loops= |
1333 Common Report Joined UInteger Var(flag_tree_parallelize_loops) Init(1) | 1935 Common Report Joined RejectNegative UInteger Var(flag_tree_parallelize_loops) Init(1) |
1334 Enable automatic parallelization of loops | 1936 Enable automatic parallelization of loops |
1335 | 1937 |
1336 ftree-phiprop | 1938 ftree-phiprop |
1337 Common Report Var(flag_tree_phiprop) Init(1) Optimization | 1939 Common Report Var(flag_tree_phiprop) Init(1) Optimization |
1338 Enable hoisting loads from conditional pointers. | 1940 Enable hoisting loads from conditional pointers. |
1348 ftree-reassoc | 1950 ftree-reassoc |
1349 Common Report Var(flag_tree_reassoc) Init(1) Optimization | 1951 Common Report Var(flag_tree_reassoc) Init(1) Optimization |
1350 Enable reassociation on tree level | 1952 Enable reassociation on tree level |
1351 | 1953 |
1352 ftree-salias | 1954 ftree-salias |
1353 Common | 1955 Common Ignore |
1354 Does nothing. Preserved for backward compatibility. | 1956 Does nothing. Preserved for backward compatibility. |
1355 | 1957 |
1356 ftree-sink | 1958 ftree-sink |
1357 Common Report Var(flag_tree_sink) Optimization | 1959 Common Report Var(flag_tree_sink) Optimization |
1358 Enable SSA code sinking on trees | 1960 Enable SSA code sinking on trees |
1360 ftree-sra | 1962 ftree-sra |
1361 Common Report Var(flag_tree_sra) Optimization | 1963 Common Report Var(flag_tree_sra) Optimization |
1362 Perform scalar replacement of aggregates | 1964 Perform scalar replacement of aggregates |
1363 | 1965 |
1364 ftree-ter | 1966 ftree-ter |
1365 Common Report Var(flag_tree_ter) Init(1) Optimization | 1967 Common Report Var(flag_tree_ter) Optimization |
1366 Replace temporary expressions in the SSA->normal pass | 1968 Replace temporary expressions in the SSA->normal pass |
1367 | 1969 |
1368 ftree-lrs | 1970 ftree-lrs |
1369 Common Report Var(flag_tree_live_range_split) Optimization | 1971 Common Report Var(flag_tree_live_range_split) Optimization |
1370 Perform live range splitting during the SSA->normal pass | 1972 Perform live range splitting during the SSA->normal pass |
1391 funsafe-loop-optimizations | 1993 funsafe-loop-optimizations |
1392 Common Report Var(flag_unsafe_loop_optimizations) Optimization | 1994 Common Report Var(flag_unsafe_loop_optimizations) Optimization |
1393 Allow loop optimizations to assume that the loops behave in normal way | 1995 Allow loop optimizations to assume that the loops behave in normal way |
1394 | 1996 |
1395 fassociative-math | 1997 fassociative-math |
1396 Common Report Var(flag_associative_math) | 1998 Common Report Var(flag_associative_math) SetByCombined |
1397 Allow optimization for floating-point arithmetic which may change the | 1999 Allow optimization for floating-point arithmetic which may change the |
1398 result of the operation due to rounding. | 2000 result of the operation due to rounding. |
1399 | 2001 |
1400 freciprocal-math | 2002 freciprocal-math |
1401 Common Report Var(flag_reciprocal_math) | 2003 Common Report Var(flag_reciprocal_math) SetByCombined |
1402 Same as -fassociative-math for expressions which include division. | 2004 Same as -fassociative-math for expressions which include division. |
1403 | 2005 |
1404 ; Nonzero means that unsafe floating-point math optimizations are allowed | 2006 ; Nonzero means that unsafe floating-point math optimizations are allowed |
1405 ; for the sake of speed. IEEE compliance is not guaranteed, and operations | 2007 ; for the sake of speed. IEEE compliance is not guaranteed, and operations |
1406 ; are allowed to assume that their arguments and results are "normal" | 2008 ; are allowed to assume that their arguments and results are "normal" |
1407 ; (e.g., nonnegative for SQRT). | 2009 ; (e.g., nonnegative for SQRT). |
1408 funsafe-math-optimizations | 2010 funsafe-math-optimizations |
1409 Common Report Var(flag_unsafe_math_optimizations) Optimization | 2011 Common Report Var(flag_unsafe_math_optimizations) Optimization SetByCombined |
1410 Allow math optimizations that may violate IEEE or ISO standards | 2012 Allow math optimizations that may violate IEEE or ISO standards |
1411 | 2013 |
1412 funswitch-loops | 2014 funswitch-loops |
1413 Common Report Var(flag_unswitch_loops) Optimization | 2015 Common Report Var(flag_unswitch_loops) Optimization |
1414 Perform loop unswitching | 2016 Perform loop unswitching |
1418 Just generate unwind tables for exception handling | 2020 Just generate unwind tables for exception handling |
1419 | 2021 |
1420 fuse-linker-plugin | 2022 fuse-linker-plugin |
1421 Common Undocumented | 2023 Common Undocumented |
1422 | 2024 |
2025 ; Positive if we should track variables, negative if we should run | |
2026 ; the var-tracking pass only to discard debug annotations, zero if | |
2027 ; we're not to run it. When flag_var_tracking == 2 (AUTODETECT_VALUE) it | |
2028 ; will be set according to optimize, debug_info_level and debug_hooks | |
2029 ; in process_options (). | |
1423 fvar-tracking | 2030 fvar-tracking |
1424 Common Report Var(flag_var_tracking) VarExists Optimization | 2031 Common Report Var(flag_var_tracking) Init(2) Optimization |
1425 Perform variable tracking | 2032 Perform variable tracking |
1426 | 2033 |
2034 ; Positive if we should track variables at assignments, negative if | |
2035 ; we should run the var-tracking pass only to discard debug | |
2036 ; annotations. When flag_var_tracking_assignments == | |
2037 ; AUTODETECT_VALUE it will be set according to flag_var_tracking. | |
1427 fvar-tracking-assignments | 2038 fvar-tracking-assignments |
1428 Common Report Var(flag_var_tracking_assignments) VarExists Optimization | 2039 Common Report Var(flag_var_tracking_assignments) Init(2) Optimization |
1429 Perform variable tracking by annotating assignments | 2040 Perform variable tracking by annotating assignments |
1430 | 2041 |
2042 ; Nonzero if we should toggle flag_var_tracking_assignments after | |
2043 ; processing options and computing its default. */ | |
1431 fvar-tracking-assignments-toggle | 2044 fvar-tracking-assignments-toggle |
1432 Common Report Var(flag_var_tracking_assignments_toggle) VarExists Optimization | 2045 Common Report Var(flag_var_tracking_assignments_toggle) Optimization |
1433 Toggle -fvar-tracking-assignments | 2046 Toggle -fvar-tracking-assignments |
1434 | 2047 |
1435 fvar-tracking-uninit | 2048 fvar-tracking-uninit |
1436 Common Report Var(flag_var_tracking_uninit) Optimization | 2049 Common Report Var(flag_var_tracking_uninit) Optimization |
1437 Perform variable tracking and also tag variables that are uninitialized | 2050 Perform variable tracking and also tag variables that are uninitialized |
1451 ftree-vect-loop-version | 2064 ftree-vect-loop-version |
1452 Common Report Var(flag_tree_vect_loop_version) Init(1) Optimization | 2065 Common Report Var(flag_tree_vect_loop_version) Init(1) Optimization |
1453 Enable loop versioning when doing loop vectorization on trees | 2066 Enable loop versioning when doing loop vectorization on trees |
1454 | 2067 |
1455 ftree-vectorizer-verbose= | 2068 ftree-vectorizer-verbose= |
1456 Common RejectNegative Joined | 2069 Common RejectNegative Joined UInteger |
1457 -ftree-vectorizer-verbose=<number> Set the verbosity level of the vectorizer | 2070 -ftree-vectorizer-verbose=<number> Set the verbosity level of the vectorizer |
1458 | 2071 |
1459 ftree-scev-cprop | 2072 ftree-scev-cprop |
1460 Common Report Var(flag_tree_scev_cprop) Init(1) Optimization | 2073 Common Report Var(flag_tree_scev_cprop) Init(1) Optimization |
1461 Enable copy propagation of scalar-evolution information. | 2074 Enable copy propagation of scalar-evolution information. |
1469 fverbose-asm | 2082 fverbose-asm |
1470 Common Report Var(flag_verbose_asm) | 2083 Common Report Var(flag_verbose_asm) |
1471 Add extra commentary to assembler output | 2084 Add extra commentary to assembler output |
1472 | 2085 |
1473 fvisibility= | 2086 fvisibility= |
1474 Common Joined RejectNegative | 2087 Common Joined RejectNegative Enum(symbol_visibility) Var(default_visibility) Init(VISIBILITY_DEFAULT) |
1475 -fvisibility=[default|internal|hidden|protected] Set the default symbol visibility | 2088 -fvisibility=[default|internal|hidden|protected] Set the default symbol visibility |
1476 | 2089 |
2090 Enum | |
2091 Name(symbol_visibility) Type(enum symbol_visibility) UnknownError(unrecognized visibility value %qs) | |
2092 | |
2093 EnumValue | |
2094 Enum(symbol_visibility) String(default) Value(VISIBILITY_DEFAULT) | |
2095 | |
2096 EnumValue | |
2097 Enum(symbol_visibility) String(internal) Value(VISIBILITY_INTERNAL) | |
2098 | |
2099 EnumValue | |
2100 Enum(symbol_visibility) String(hidden) Value(VISIBILITY_HIDDEN) | |
2101 | |
2102 EnumValue | |
2103 Enum(symbol_visibility) String(protected) Value(VISIBILITY_PROTECTED) | |
1477 | 2104 |
1478 fvpt | 2105 fvpt |
1479 Common Report Var(flag_value_profile_transformations) Optimization | 2106 Common Report Var(flag_value_profile_transformations) Optimization |
1480 Use expression value profiles in optimizations | 2107 Use expression value profiles in optimizations |
1481 | 2108 |
1482 fweb | 2109 fweb |
1483 Common Report Var(flag_web) Init(2) Optimization | 2110 Common Report Var(flag_web) Init(2) Optimization |
1484 Construct webs and split unrelated uses of single variable | 2111 Construct webs and split unrelated uses of single variable |
1485 | 2112 |
1486 fwhopr | |
1487 Common | |
1488 Enable partitioned link-time optimization | |
1489 | |
1490 fwhopr= | |
1491 Common RejectNegative UInteger Joined Var(flag_whopr) | |
1492 Enable partitioned link-time optimization with specified number of parallel jobs | |
1493 | |
1494 ftree-builtin-call-dce | 2113 ftree-builtin-call-dce |
1495 Common Report Var(flag_tree_builtin_call_dce) Init(0) Optimization | 2114 Common Report Var(flag_tree_builtin_call_dce) Init(0) Optimization |
1496 Enable conditional dead code elimination for builtin calls | 2115 Enable conditional dead code elimination for builtin calls |
1497 | 2116 |
1498 fwhole-program | 2117 fwhole-program |
1534 gno-strict-dwarf | 2153 gno-strict-dwarf |
1535 Common RejectNegative Var(dwarf_strict,0) Init(-1) | 2154 Common RejectNegative Var(dwarf_strict,0) Init(-1) |
1536 Emit DWARF additions beyond selected version | 2155 Emit DWARF additions beyond selected version |
1537 | 2156 |
1538 gstrict-dwarf | 2157 gstrict-dwarf |
1539 Common Report RejectNegative Var(dwarf_strict,1) VarExists | 2158 Common Report RejectNegative Var(dwarf_strict,1) |
1540 Don't emit DWARF additions beyond selected version | 2159 Don't emit DWARF additions beyond selected version |
1541 | 2160 |
1542 gtoggle | 2161 gtoggle |
1543 Common Report Var(flag_gtoggle) | 2162 Common Report Var(flag_gtoggle) |
1544 Toggle debug information generation | 2163 Toggle debug information generation |
1553 | 2172 |
1554 gxcoff+ | 2173 gxcoff+ |
1555 Common JoinedOrMissing Negative(gcoff) | 2174 Common JoinedOrMissing Negative(gcoff) |
1556 Generate debug information in extended XCOFF format | 2175 Generate debug information in extended XCOFF format |
1557 | 2176 |
2177 h | |
2178 Driver Joined Separate | |
2179 | |
1558 iplugindir= | 2180 iplugindir= |
1559 Common Joined Var(plugindir_string) Init(0) | 2181 Common Joined Var(plugindir_string) Init(0) |
1560 -iplugindir=<dir> Set <dir> to be the default plugin directory | 2182 -iplugindir=<dir> Set <dir> to be the default plugin directory |
1561 | 2183 |
2184 l | |
2185 Driver Joined Separate | |
2186 | |
2187 n | |
2188 Driver | |
2189 | |
2190 no-canonical-prefixes | |
2191 Driver | |
2192 | |
2193 nodefaultlibs | |
2194 Driver | |
2195 | |
2196 nostartfiles | |
2197 Driver | |
2198 | |
2199 nostdlib | |
2200 Driver | |
2201 | |
1562 o | 2202 o |
1563 Common Joined Separate | 2203 Common Driver Joined Separate Var(asm_file_name) MissingArgError(missing filename after %qs) |
1564 -o <file> Place output into <file> | 2204 -o <file> Place output into <file> |
1565 | 2205 |
1566 p | 2206 p |
1567 Common Var(profile_flag) | 2207 Common Var(profile_flag) |
1568 Enable function profiling | 2208 Enable function profiling |
1569 | 2209 |
2210 pass-exit-codes | |
2211 Driver Var(pass_exit_codes) | |
2212 | |
1570 pedantic | 2213 pedantic |
1571 Common Var(pedantic) | 2214 Common Var(pedantic) |
1572 Issue warnings needed for strict compliance to the standard | 2215 Issue warnings needed for strict compliance to the standard |
1573 | 2216 |
1574 pedantic-errors | 2217 pedantic-errors |
1575 Common | 2218 Common Var(flag_pedantic_errors) |
1576 Like -pedantic but issue them as errors | 2219 Like -pedantic but issue them as errors |
1577 | 2220 |
2221 pg | |
2222 Driver | |
2223 | |
2224 pipe | |
2225 Driver Var(use_pipes) | |
2226 | |
2227 print-file-name= | |
2228 Driver JoinedOrMissing Var(print_file_name) | |
2229 | |
2230 print-libgcc-file-name | |
2231 Driver | |
2232 | |
2233 print-multi-directory | |
2234 Driver Var(print_multi_directory) | |
2235 | |
2236 print-multi-lib | |
2237 Driver Var(print_multi_lib) | |
2238 | |
2239 print-multi-os-directory | |
2240 Driver Var(print_multi_os_directory) | |
2241 | |
2242 print-prog-name= | |
2243 Driver JoinedOrMissing Var(print_prog_name) | |
2244 | |
2245 print-search-dirs | |
2246 Driver Var(print_search_dirs) | |
2247 | |
2248 print-sysroot | |
2249 Driver Var(print_sysroot) | |
2250 | |
2251 print-sysroot-headers-suffix | |
2252 Driver Var(print_sysroot_headers_suffix) | |
2253 | |
1578 quiet | 2254 quiet |
1579 Common Var(quiet_flag) | 2255 Common Var(quiet_flag) RejectDriver |
1580 Do not display functions compiled or elapsed time | 2256 Do not display functions compiled or elapsed time |
1581 | 2257 |
2258 r | |
2259 Driver | |
2260 | |
2261 s | |
2262 Driver | |
2263 | |
2264 save-temps | |
2265 Driver | |
2266 | |
2267 save-temps= | |
2268 Driver Joined | |
2269 | |
2270 t | |
2271 Driver | |
2272 | |
2273 time | |
2274 Driver Var(report_times) | |
2275 | |
2276 time= | |
2277 Driver JoinedOrMissing | |
2278 | |
2279 u | |
2280 Driver Joined Separate | |
2281 | |
2282 undef | |
2283 Driver | |
2284 ; C option, but driver must not handle as "-u ndef". | |
2285 | |
2286 v | |
2287 Common Driver Var(verbose_flag) | |
2288 Enable verbose output | |
2289 | |
1582 version | 2290 version |
1583 Common Var(version_flag) | 2291 Common Var(version_flag) RejectDriver |
1584 Display the compiler's version | 2292 Display the compiler's version |
1585 | 2293 |
1586 w | 2294 w |
1587 Common Var(inhibit_warnings) | 2295 Common Var(inhibit_warnings) |
1588 Suppress warnings | 2296 Suppress warnings |
1589 | 2297 |
2298 wrapper | |
2299 Driver Separate Var(wrapper_string) | |
2300 | |
2301 x | |
2302 Driver Joined Separate | |
2303 | |
1590 shared | 2304 shared |
1591 Common RejectNegative Negative(pie) | 2305 Common RejectNegative Negative(pie) |
1592 Create a shared library | 2306 Create a shared library |
1593 | 2307 |
2308 shared-libgcc | |
2309 Driver | |
2310 | |
2311 specs | |
2312 Driver Separate Alias(specs=) | |
2313 | |
2314 specs= | |
2315 Driver Joined | |
2316 | |
2317 static | |
2318 Driver | |
2319 | |
2320 static-libgcc | |
2321 Driver | |
2322 | |
2323 static-libgfortran | |
2324 Driver | |
2325 ; Documented for Fortran, but always accepted by driver. | |
2326 | |
2327 static-libstdc++ | |
2328 Driver | |
2329 | |
2330 static-libgo | |
2331 Driver | |
2332 ; Documented for Go, but always accepted by driver. | |
2333 | |
2334 symbolic | |
2335 Driver | |
2336 | |
1594 pie | 2337 pie |
1595 Common RejectNegative Negative(shared) | 2338 Common RejectNegative Negative(shared) |
1596 Create a position independent executable | 2339 Create a position independent executable |
1597 | 2340 |
2341 z | |
2342 Driver Joined Separate | |
2343 | |
1598 ; This comment is to ensure we retain the blank line above. | 2344 ; This comment is to ensure we retain the blank line above. |