]> gcc.gnu.org Git - gcc.git/blob - gcc/common.opt
common.opt: Add description of the new -fgcse-after-reload flag.
[gcc.git] / gcc / common.opt
1 ; Options for the language- and target-independent parts of the compiler.
2 ; Copyright (C) 2003, 2004 Free Software Foundation, Inc.
3 ;
4 ; This file is part of GCC.
5 ;
6 ; GCC is free software; you can redistribute it and/or modify it under
7 ; the terms of the GNU General Public License as published by the Free
8 ; Software Foundation; either version 2, or (at your option) any later
9 ; version.
10 ;
11 ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
12 ; WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 ; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 ; for more details.
15 ;
16 ; You should have received a copy of the GNU General Public License
17 ; along with GCC; see the file COPYING. If not, write to the Free
18 ; Software Foundation, 59 Temple Place - Suite 330, Boston, MA
19 ; 02111-1307, USA.
20
21 ; See c.opt for a description of this file's format.
22
23 ; Please try to keep this file in ASCII collating order.
24
25 -help
26 Common
27 Display this information
28
29 -param
30 Common Separate
31 --param <param>=<value> Set paramter <param> to value. See below for a complete list of parameters
32
33 -target-help
34 Common
35
36 -version
37 Common
38
39 G
40 Common Joined Separate UInteger
41 -G<number> Put global and static data smaller than <number> bytes into a special section (on some targets)
42
43 O
44 Common JoinedOrMissing
45 -O<number> Set optimization level to <number>
46
47 Os
48 Common
49 Optimize for space rather than speed
50
51 W
52 Common RejectNegative
53 This switch is deprecated; use -Wextra instead
54
55 Waggregate-return
56 Common
57 Warn about returning structures, unions or arrays
58
59 Wcast-align
60 Common
61 Warn about pointer casts which increase alignment
62
63 Wdeprecated-declarations
64 Common
65 Warn about uses of __attribute__((deprecated)) declarations
66
67 Wdisabled-optimization
68 Common
69 Warn when an optimization pass is disabled
70
71 Werror
72 Common
73 Treat all warnings as errors
74
75 Wextra
76 Common
77 Print extra (possibly unwanted) warnings
78
79 Winline
80 Common
81 Warn when an inlined function cannot be inlined
82
83 Wlarger-than-
84 Common RejectNegative Joined UInteger
85 -Wlarger-than-<number> Warn if an object is larger than <number> bytes
86
87 Wmissing-noreturn
88 Common
89 Warn about functions which might be candidates for __attribute__((noreturn))
90
91 Wpacked
92 Common
93 Warn when the packed attribute has no effect on struct layout
94
95 Wpadded
96 Common
97 Warn when padding is required to align structure members
98
99 Wshadow
100 Common
101 Warn when one local variable shadows another
102
103 Wstrict-aliasing
104 Common
105 Warn about code which might break strict aliasing rules
106
107 Wswitch
108 Common
109 Warn about enumerated switches, with no default, missing a case
110
111 Wswitch-default
112 Common
113 Warn about enumerated switches missing a \"default:\" statement
114
115 Wswitch-enum
116 Common
117 Warn about all enumerated switches missing a specific case
118
119 Wsystem-headers
120 Common
121 Do not suppress warnings from system headers
122
123 Wuninitialized
124 Common
125 Warn about uninitialized automatic variables
126
127 Wunreachable-code
128 Common
129 Warn about code that will never be executed
130
131 Wunused
132 Common
133 Enable all -Wunused- warnings
134
135 Wunused-function
136 Common
137 Warn when a function is unused
138
139 Wunused-label
140 Common
141 Warn when a label is unused
142
143 Wunused-parameter
144 Common
145 Warn when a function parameter is unused
146
147 Wunused-value
148 Common
149 Warn when an expression value is unused
150
151 Wunused-variable
152 Common
153 Warn when a variable is unused
154
155 aux-info
156 Common Separate
157 -aux-info <file> Emit declaration information into <file>
158
159 aux-info=
160 Common Joined
161
162 auxbase
163 Common Separate
164
165 auxbase-strip
166 Common Separate
167
168 d
169 Common Joined
170 -d<letters> Enable dumps from specific passes of the compiler
171
172 dumpbase
173 Common Separate
174 -dumpbase <file> Set the file basename to be used for dumps
175
176 fPIC
177 Common
178
179 fPIE
180 Common
181
182 fabi-version=
183 Common Joined UInteger
184
185 falign-functions
186 Common
187 Align the start of functions
188
189 falign-functions=
190 Common RejectNegative Joined UInteger
191
192 falign-jumps
193 Common
194 Align labels which are only reached by jumping
195
196 falign-jumps=
197 Common RejectNegative Joined UInteger
198
199 falign-labels
200 Common
201 Align all labels
202
203 falign-labels=
204 Common RejectNegative Joined UInteger
205
206 falign-loops
207 Common
208 Align the start of loops
209
210 falign-loops=
211 Common RejectNegative Joined UInteger
212
213 fargument-alias
214 Common
215 Specify that arguments may alias each other and globals
216
217 fargument-noalias
218 Common
219 Assume arguments may alias globals but not each other
220
221 fargument-noalias-global
222 Common
223 Assume arguments alias neither each other nor globals
224
225 fasynchronous-unwind-tables
226 Common
227 Generate unwind tables that are exact at each instruction boundary
228
229 fbounds-check
230 Common
231 Generate code to check bounds before indexing arrays
232
233 fbranch-count-reg
234 Common
235 Replace add, compare, branch with branch on count register
236
237 fbranch-probabilities
238 Common
239 Use profiling information for branch probabilities
240
241 fbranch-target-load-optimize
242 Common
243 Perform branch target load optimization before prologue / epilogue threading
244
245 fbranch-target-load-optimize2
246 Common
247 Perform branch target load optimization after prologue / epilogue threading
248
249 fbtr-bb-exclusive
250 Common
251 Restrict target load migration not to re-use registers in any basic block
252
253 fcall-saved-
254 Common Joined RejectNegative
255 -fcall-saved-<register> Mark <register> as being preserved across functions
256
257 fcall-used-
258 Common Joined RejectNegative
259 -fcall-used-<register> Mark <register> as being corrupted by function calls
260
261 fcaller-saves
262 Common
263 Save registers around function calls
264
265 fcommon
266 Common
267 Do not put uninitialized globals in the common section
268
269 fcprop-registers
270 Common
271 Perform a register copy-propagation optimization pass
272
273 fcrossjumping
274 Common
275 Perform cross-jumping optimization
276
277 fcse-follow-jumps
278 Common
279 When running CSE, follow jumps to their targets
280
281 fcse-skip-blocks
282 Common
283 When running CSE, follow conditional jumps
284
285 fdata-sections
286 Common
287 Place data items into their own section
288
289 fdefer-pop
290 Common
291 Defer popping functions args from stack until later
292
293 fdelayed-branch
294 Common
295 Attempt to fill delay slots of branch instructions
296
297 fdelete-null-pointer-checks
298 Common
299 Delete useless null pointer checks
300
301 fdiagnostics-show-location=
302 Common Joined RejectNegative
303 -fdiagnostics-show-location=[once|every-line] How often to emit source location at the beginning of line-wrapped diagnostics
304
305 fdump-unnumbered
306 Common
307 Suppress output of instruction numbers and line number notes in debugging dumps
308
309 feliminate-dwarf2-dups
310 Common
311 Perform DWARF2 duplicate elimination
312
313 feliminate-unused-debug-symbols
314 Common
315 Perform unused type elimination in debug info
316
317 feliminate-unused-debug-types
318 Common
319 Perform unused type elimination in debug info
320
321 fexceptions
322 Common
323 Enable exception handling
324
325 fexpensive-optimizations
326 Common
327 Perform a number of minor, expensive optimizations
328
329 ffast-math
330 Common
331
332 ffinite-math-only
333 Common
334 Assume no NaNs or infinities are generated
335
336 ffixed-
337 Common Joined RejectNegative
338 -ffixed-<register> Mark <register> as being unavailable to the compiler
339
340 ffloat-store
341 Common
342 Do not store floats in registers
343
344 fforce-addr
345 Common
346 Copy memory address constants into registers before use
347
348 fforce-mem
349 Common
350 Copy memory operands into registers before use
351
352 ffunction-cse
353 Common
354 Allow function addresses to be held in registers
355
356 ffunction-sections
357 Common
358 Place each function into its own section
359
360 fgcse
361 Common
362 Perform global common subexpression elimination
363
364 fgcse-lm
365 Common
366 Perform enhanced load motion during global common subexpression elimination
367
368 fgcse-sm
369 Common
370 Perform store motion after global common subexpression elimination
371
372 fgcse-las
373 Common
374 Perform redundant load after store elimination in global common subexpression
375 elimination
376
377 fgcse-after-reload
378 Common
379 Perform global common subexpression elimination after register allocation
380 has finished.
381
382 fguess-branch-probability
383 Common
384 Enable guessing of branch probabilities
385
386 fident
387 Common
388 Process #ident directives
389
390 fif-conversion
391 Common
392 Perform conversion of conditional jumps to branchless equivalents
393
394 fif-conversion2
395 Common
396 Perform conversion of conditional jumps to conditional execution
397
398 finhibit-size-directive
399 Common
400 Do not generate .size directives
401
402 finline
403 Common
404 Pay attention to the \"inline\" keyword
405
406 finline-functions
407 Common
408 Integrate simple functions into their callers
409
410 finline-limit-
411 Common RejectNegative Joined UInteger
412
413 finline-limit=
414 Common RejectNegative Joined UInteger
415 -finline-limit=<number> Limit the size of inlined functions to <number>
416
417 finstrument-functions
418 Common
419 Instrument function entry and exit with profiling calls
420
421 fkeep-inline-functions
422 Common
423 Generate code for functions even if they are fully inlined
424
425 fkeep-static-consts
426 Common
427 Emit static const variables even if they are not used
428
429 fleading-underscore
430 Common
431 Give external symbols a leading underscore
432
433 floop-optimize
434 Common
435 Perform loop optimizations
436
437 fmath-errno
438 Common
439 Set errno after built-in math functions
440
441 fmem-report
442 Common
443 Report on permanent memory allocation
444
445 fmerge-all-constants
446 Common
447 Attempt to merge identical constants and constant variables
448
449 fmerge-constants
450 Common
451 Attempt to merge identical constants across compilation units
452
453 fmessage-length=
454 Common RejectNegative Joined UInteger
455 -fmessage-length=<number> Limit diagnostics to <number> characters per line. 0 suppresses line-wrapping
456
457 fmove-all-movables
458 Common
459 Force all loop invariant computations out of loops
460
461 fnew-ra
462 Common
463 Use graph-coloring register allocation
464
465 fnon-call-exceptions
466 Common
467 Support synchronous non-call exceptions
468
469 fold-unroll-loops
470 Common
471 Perform loop unrolling when iteration count is known
472
473 fold-unroll-all-loops
474 Common
475 Perform loop unrolling for all loops
476
477 fomit-frame-pointer
478 Common
479 When possible do not generate stack frames
480
481 foptimize-register-move
482 Common
483 Do the full register move optimization pass
484
485 foptimize-sibling-calls
486 Common
487 Optimize sibling and tail recursive calls
488
489 fpack-struct
490 Common
491 Pack structure members together without holes
492
493 fpcc-struct-return
494 Common
495 Return small aggregates in memory, not registers
496
497 fpeel-loops
498 Common
499 Perform loop peeling
500
501 fpeephole
502 Common
503 Enable machine specific peephole optimizations
504
505 fpeephole2
506 Common
507 Enable an RTL peephole pass before sched2
508
509 fpic
510 Common
511 Generate position-independent code if possible
512
513 fpie
514 Common
515 Generate position-independent code for executables if possible
516
517 fprefetch-loop-arrays
518 Common
519 Generate prefetch instructions, if available, for arrays in loops
520
521 fprofile
522 Common
523 Enable basic program profiling code
524
525 fprofile-arcs
526 Common
527 Insert arc-based program profiling code
528
529 fprofile-generate
530 Common
531 Enable common options for generating profile info for profile feedback directed optimizations
532
533 fprofile-use
534 Common
535 Enable common options for performing profile feedback directed optimizations
536
537 fprofile-values
538 Common
539 Insert code to profile values of expressions
540
541 frandom-seed
542 Common
543
544 frandom-seed=
545 Common Joined RejectNegative
546 -frandom-seed=<string> Make compile reproducible using <string>
547
548 freduce-all-givs
549 Common
550 Strength reduce all loop general induction variables
551
552 freg-struct-return
553 Common
554 Return small aggregates in registers
555
556 fregmove
557 Common
558 Enables a register move optimization
559
560 frename-registers
561 Common
562 Perform a register renaming optimization pass
563
564 freorder-blocks
565 Common
566 Reorder basic blocks to improve code placement
567
568 freorder-functions
569 Common
570 Reorder functions to improve code placement
571
572 frerun-cse-after-loop
573 Common
574 Add a common subexpression elimination pass after loop optimizations
575
576 frerun-loop-opt
577 Common
578 Run the loop optimizer twice
579
580 frounding-math
581 Common
582 Disable optimizations that assume default FP rounding behavior
583
584 fsched-interblock
585 Common
586 Enable scheduling across basic blocks
587
588 fsched-spec
589 Common
590 Allow speculative motion of non-loads
591
592 fsched-spec-load
593 Common
594 Allow speculative motion of some loads
595
596 fsched-spec-load-dangerous
597 Common
598 Allow speculative motion of more loads
599
600 fsched-verbose=
601 Common RejectNegative Joined
602 -fsched-verbose=<number> Set the verbosity level of the scheduler
603
604 fsched2-use-superblocks
605 Common
606 If scheduling post reload, do superblock scheduling
607
608 fsched2-use-traces
609 Common
610 If scheduling post reload, do trace scheduling
611
612 fschedule-insns
613 Common
614 Reschedule instructions before register allocation
615
616 fschedule-insns2
617 Common
618 Reschedule instructions after register allocation
619
620 fsched-stalled-insns
621 Common
622 Allow premature scheduling of queued insns
623
624 fsched-stalled-insns=
625 Common RejectNegative Joined UInteger
626 -fsched-stalled-insns=<number> Set number of queued insns that can be prematurely scheduled
627
628 fsched-stalled-insns-dep
629 Common
630 Set dependence distance checking in premature scheduling of queued insns
631
632 fsched-stalled-insns-dep=
633 Common RejectNegative Joined UInteger
634 -fsched-stalled-insns-dep=<number> Set dependence distance checking in premature scheduling of queued insns
635
636 fshared-data
637 Common
638 Mark data as shared rather than private
639
640 fsignaling-nans
641 Common
642 Disable optimizations observable by IEEE signaling NaNs
643
644 fsingle-precision-constant
645 Common
646 Convert floating point constants to single precision constants
647
648 fstack-check
649 Common
650 Insert stack checking code into the program
651
652 fstack-limit
653 Common
654
655 fstack-limit-register=
656 Common RejectNegative Joined
657 -fstack-limit-register=<register> Trap if the stack goes past <register>
658
659 fstack-limit-symbol=
660 Common RejectNegative Joined
661 -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>
662
663 fstrength-reduce
664 Common
665 Perform strength reduction optimizations
666
667 fstrict-aliasing
668 Common
669 Assume strict aliasing rules apply
670
671 fsyntax-only
672 Common
673 Check for syntax errors, then stop
674
675 ftest-coverage
676 Common
677 Create data files needed by \"gcov\"
678
679 fthread-jumps
680 Common
681 Perform jump threading optimizations
682
683 ftime-report
684 Common
685 Report the time taken by each compiler pass
686
687 ftls-model=
688 Common Joined RejectNegative
689 -ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec] Set the default thread-local storage code generation model
690
691 ftracer
692 Common
693 Perform superblock formation via tail duplication
694
695 ftrapping-math
696 Common
697 Assume floating-point operations can trap
698
699 ftrapv
700 Common
701 Trap for signed overflow in addition, subtraction and multiplication
702
703 funit-at-a-time
704 Common
705 Compile whole compilation unit at a time
706
707 funroll-loops
708 Common
709 Perform loop unrolling when iteration count is known
710
711 funroll-all-loops
712 Common
713 Perform loop unrolling for all loops
714
715 funsafe-math-optimizations
716 Common
717 Allow math optimizations that may violate IEEE or ISO standards
718
719 funswitch-loops
720 Common
721 Perform loop unswitching
722
723 funwind-tables
724 Common
725 Just generate unwind tables for exception handling
726
727 fvar-tracking
728 Common
729 Perform variable tracking
730
731 fverbose-asm
732 Common
733 Add extra commentary to assembler output
734
735 fvpt
736 Common
737 Use expression value profiles in optimizations
738
739 fweb
740 Common
741 Construct webs and split unrelated uses of single variable
742
743 fwrapv
744 Common
745 Assume signed arithmetic overflow wraps around
746
747 fzero-initialized-in-bss
748 Common
749 Put zero initialized data in the bss section
750
751 g
752 Common JoinedOrMissing
753 Generate debug information in default format
754
755 gcoff
756 Common JoinedOrMissing
757 Generate debug information in COFF format
758
759 gdwarf-2
760 Common JoinedOrMissing
761 Generate debug information in DWARF v2 format
762
763 ggdb
764 Common JoinedOrMissing
765 Generate debug information in default extended format
766
767 gstabs
768 Common JoinedOrMissing
769 Generate debug information in STABS format
770
771 gstabs+
772 Common JoinedOrMissing
773 Generate debug information in extended STABS format
774
775 gvms
776 Common JoinedOrMissing
777 Generate debug information in VMS format
778
779 gxcoff
780 Common JoinedOrMissing
781 Generate debug information in XCOFF format
782
783 gxcoff+
784 Common JoinedOrMissing
785 Generate debug information in extended XCOFF format
786
787 m
788 Common Joined
789
790 o
791 Common Joined Separate
792 -o <file> Place output into <file>
793
794 p
795 Common
796 Enable function profiling
797
798 pedantic
799 Common
800 Issue warnings needed for strict compliance to the standard
801
802 pedantic-errors
803 Common
804 Like -pedantic but issue them as errors
805
806 quiet
807 Common
808 Do not display functions compiled or elapsed time
809
810 version
811 Common
812 Display the compiler's version
813
814 w
815 Common
816 Suppress warnings
817
818 ; This comment is to ensure we retain the blank line above.
This page took 0.082428 seconds and 6 git commands to generate.