OSDN Git Service

gcc/
[pf3gnuchains/gcc-fork.git] / gcc / common.opt
index f39cde1..4229f14 100644 (file)
@@ -1,6 +1,6 @@
 ; Options for the language- and target-independent parts of the compiler.
 
-; Copyright (C) 2003, 2004 Free Software Foundation, Inc.
+; Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
 ;
 ; This file is part of GCC.
 ;
 ; 
 ; You should have received a copy of the GNU General Public License
 ; along with GCC; see the file COPYING.  If not, write to the Free
-; Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-; 02111-1307, USA.
+; Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
+; 02110-1301, USA.
 
-; See c.opt for a description of this file's format.
+; See the GCC internals manual for a description of this file's format.
 
 ; Please try to keep this file in ASCII collating order.
 
@@ -29,7 +29,7 @@ Display this information
 
 -param
 Common Separate
---param <param>=<value>        Set paramter <param> to value.  See below for a complete list of parameters
+--param <param>=<value>        Set parameter <param> to value.  See below for a complete list of parameters
 
 -target-help
 Common
@@ -57,6 +57,14 @@ Waggregate-return
 Common Var(warn_aggregate_return)
 Warn about returning structures, unions or arrays
 
+Walways-true
+Common Var(warn_always_true)
+Warn about comparisons that always evaluate to true
+
+Wattributes
+Common Var(warn_attributes) Init(1)
+Warn about inappropriate attribute usage
+
 Wcast-align
 Common Var(warn_cast_align)
 Warn about pointer casts which increase alignment
@@ -73,6 +81,10 @@ Werror
 Common Var(warnings_are_errors)
 Treat all warnings as errors
 
+Werror=
+Common Joined
+Treat specified warning as error
+
 Wextra
 Common
 Print extra (possibly unwanted) warnings
@@ -89,6 +101,10 @@ Wlarger-than-
 Common RejectNegative Joined UInteger
 -Wlarger-than-<number> Warn if an object is larger than <number> bytes
 
+Wunsafe-loop-optimizations
+Common Var(warn_unsafe_loop_optimizations)
+Warn if the loop cannot be optimized due to nontrivial assumptions.
+
 Wmissing-noreturn
 Common Var(warn_missing_noreturn)
 Warn about functions which might be candidates for __attribute__((noreturn))
@@ -105,6 +121,10 @@ Wshadow
 Common Var(warn_shadow)
 Warn when one local variable shadows another
 
+Wstack-protector
+Common Var(warn_stack_protect)
+Warn when not issuing stack smashing protection for some reason
+
 Wstrict-aliasing
 Common
 Warn about code which might break strict aliasing rules
@@ -113,6 +133,10 @@ Wstrict-aliasing=
 Common Joined UInteger
 Warn about code which might break strict aliasing rules
 
+Wstring-literal-comparison
+Common Var(warn_string_literal_comparison)
+Warn about comparisons to constant string literals
+
 Wswitch
 Common Var(warn_switch)
 Warn about enumerated switches, with no default, missing a case
@@ -161,6 +185,10 @@ Wunused-variable
 Common Var(warn_unused_variable)
 Warn when a variable is unused
 
+Wvolatile-register-var
+Common Var(warn_register_var)
+Warn when a register variable is declared volatile
+
 aux-info
 Common Separate
 -aux-info <file>       Emit declaration information into <file>
@@ -230,7 +258,6 @@ Common RejectNegative Joined UInteger
 ;   global variables.
 ; 2 if pointer arguments may not alias each other and may not
 ;   alias global variables.  True in Fortran.
-;   The value is ignored if flag_alias_check is 0.
 fargument-alias
 Common Report Var(flag_argument_noalias,0)
 Specify that arguments may alias each other and globals
@@ -310,6 +337,10 @@ fcse-skip-blocks
 Common Report Var(flag_cse_skip_blocks)
 When running CSE, follow conditional jumps
 
+fcx-limited-range
+Common Report Var(flag_cx_limited_range)
+Omit range reduction step when performing complex division
+
 fdata-sections
 Common Report Var(flag_data_sections)
 Place data items into their own section
@@ -332,6 +363,10 @@ fdiagnostics-show-location=
 Common Joined RejectNegative
 -fdiagnostics-show-location=[once|every-line]  How often to emit source location at the beginning of line-wrapped diagnostics
 
+fdiagnostics-show-option
+Common
+Amend appropriate diagnostic messages with the command line option that controls them
+
 fdump-
 Common Joined RejectNegative
 -fdump-<type>  Dump various compiler internals to a file
@@ -340,6 +375,10 @@ fdump-unnumbered
 Common Report Var(flag_dump_unnumbered) VarExists
 Suppress output of instruction numbers and line number notes in debugging dumps
 
+fearly-inlining
+Common Report Var(flag_early_inlining) Init(1)
+Perform early inlining
+
 feliminate-dwarf2-dups
 Common Report Var(flag_eliminate_dwarf2_dups)
 Perform DWARF2 duplicate elimination
@@ -418,7 +457,7 @@ elimination
 fgcse-after-reload
 Common Report Var(flag_gcse_after_reload)
 Perform global common subexpression elimination after register allocation
-has finished.
+has finished
 
 fguess-branch-probability
 Common Report Var(flag_guess_branch_prob)
@@ -461,6 +500,10 @@ finline-functions
 Common Report Var(flag_inline_functions)
 Integrate simple functions into their callers
 
+finline-functions-called-once
+Common Report Var(flag_inline_functions_called_once) Init(1)
+Integrate functions called once into their callers
+
 finline-limit-
 Common RejectNegative Joined UInteger
 
@@ -472,10 +515,34 @@ finstrument-functions
 Common Report Var(flag_instrument_function_entry_exit)
 Instrument function entry and exit with profiling calls
 
+fipa-cp
+Common Report Var(flag_ipa_cp)
+Perform Interprocedural constant propagation
+
+fipa-pure-const
+Common Report Var(flag_ipa_pure_const) Init(0)
+Discover pure and const functions
+
+fipa-pta
+Common Report Var(flag_ipa_pta) Init(0)
+Perform interprocedural points-to analysis
+
+fipa-reference
+Common Report Var(flag_ipa_reference) Init(0)
+Discover readonly and non addressable static variables
+
+fipa-type-escape
+Common Report Var(flag_ipa_type_escape) Init(0)
+Type based escape and alias analysis
+
 fivopts
 Common Report Var(flag_ivopts) Init(1)
 Optimize induction variables on trees
 
+fjump-tables
+Common Var(flag_jump_tables) Init(1)
+Use jump tables for sufficiently large switch statements
+
 fkeep-inline-functions
 Common Report Var(flag_keep_inline_functions)
 Generate code for functions even if they are fully inlined
@@ -488,14 +555,6 @@ fleading-underscore
 Common Report Var(flag_leading_underscore) Init(-1)
 Give external symbols a leading underscore
 
-floop-optimize
-Common Report Var(flag_loop_optimize)
-Perform loop optimizations
-
-floop-optimize2
-Common Report Var(flag_loop_optimize2)
-Perform loop optimizations using the new loop optimizer
-
 fmath-errno
 Common Report Var(flag_errno_math) Init(1)
 Set errno after built-in math functions
@@ -524,24 +583,20 @@ Common Report Var(flag_modulo_sched)
 Perform SMS based modulo scheduling before the first scheduling pass
 
 fmove-loop-invariants
-Common Report Var(flag_move_loop_invariants)
+Common Report Var(flag_move_loop_invariants) Init(1)
 Move loop invariant computations out of loops
 
 fmudflap
 Common RejectNegative Report Var(flag_mudflap)
-Add mudflap bounds-checking instrumentation for single-threaded program.
+Add mudflap bounds-checking instrumentation for single-threaded program
 
 fmudflapth
 Common RejectNegative Report Var(flag_mudflap_threads)
-Add mudflap bounds-checking instrumentation for multi-threaded program.
+Add mudflap bounds-checking instrumentation for multi-threaded program
 
 fmudflapir
 Common RejectNegative Report Var(flag_mudflap_ignore_reads)
-Ignore read operations when inserting mudflap instrumentation.
-
-fnew-ra
-Common Report Var(flag_new_regalloc)
-Use graph-coloring register allocation
+Ignore read operations when inserting mudflap instrumentation
 
 freschedule-modulo-scheduled-loops
 Common Report Var(flag_resched_modulo_sched)
@@ -604,7 +659,11 @@ Common Report Var(flag_pie,1) VarExists
 Generate position-independent code for executables if possible (small mode)
 
 fprefetch-loop-arrays
-Common Report Var(flag_prefetch_loop_arrays)
+Common Report Var(flag_prefetch_loop_arrays,1)
+Generate prefetch instructions, if available, for arrays in loops
+
+fprefetch-loop-arrays-rtl
+Common Report Var(flag_prefetch_loop_arrays,2)
 Generate prefetch instructions, if available, for arrays in loops
 
 fprofile
@@ -643,7 +702,7 @@ Common Report Var(flag_regmove)
 Enables a register move optimization
 
 frename-registers
-Common Report Var(flag_rename_registers)
+Common Report Var(flag_rename_registers) Init(2)
 Perform a register renaming optimization pass
 
 freorder-blocks
@@ -659,13 +718,9 @@ Common Report Var(flag_reorder_functions)
 Reorder functions to improve code placement
 
 frerun-cse-after-loop
-Common Report Var(flag_rerun_cse_after_loop)
+Common Report Var(flag_rerun_cse_after_loop) Init(2)
 Add a common subexpression elimination pass after loop optimizations
 
-frerun-loop-opt
-Common Report Var(flag_rerun_loop_opt)
-Run the loop optimizer twice
-
 frounding-math
 Common Report Var(flag_rounding_math)
 Disable optimizations that assume default FP rounding behavior
@@ -714,7 +769,7 @@ Allow premature scheduling of queued insns
 
 fsched-stalled-insns=
 Common RejectNegative Joined UInteger 
--fsched-stalled-insns=<number>       Set number of queued insns that can be prematurely scheduled
+-fsched-stalled-insns=<number> Set number of queued insns that can be prematurely scheduled
 
 ; sched_stalled_insns_dep controls how many recently scheduled cycles will
 ; be examined for a dependency on a stalled insn that is candidate for
@@ -726,11 +781,19 @@ Set dependence distance checking in premature scheduling of queued insns
 
 fsched-stalled-insns-dep=
 Common RejectNegative Joined UInteger
--fsched-stalled-insns-dep=<number>   Set dependence distance checking in premature scheduling of queued insns
+-fsched-stalled-insns-dep=<number>     Set dependence distance checking in premature scheduling of queued insns
+
+fsection-anchors
+Common Report Var(flag_section_anchors)
+Access data in the same section from shared anchor points
 
-fshared-data
-Common Report Var(flag_shared_data)
-Mark data as shared rather than private
+frtl-abstract-sequences
+Common Report Var(flag_rtl_seqabstr)
+Perform sequence abstraction optimization on RTL
+
+fshow-column
+Common C ObjC C++ ObjC++ Report Var(flag_show_column) Init(1)
+Show column numbers in diagnostics, when available.  Default on
 
 fsignaling-nans
 Common Report Var(flag_signaling_nans)
@@ -740,13 +803,13 @@ fsingle-precision-constant
 Common Report Var(flag_single_precision_constant)
 Convert floating point constants to single precision constants
 
-fspeculative-prefetching
-Common Report Var(flag_speculative_prefetching)
-Use value profiling for speculative prefetching
-
 fsplit-ivs-in-unroller
 Common Report Var(flag_split_ivs_in_unroller) Init(1)
-Split lifetimes of induction variables when loops are unrolled.
+Split lifetimes of induction variables when loops are unrolled
+
+fvariable-expansion-in-unroller
+Common Report Var(flag_variable_expansion_in_unroller) 
+Apply variable expansion when loops are unrolled
 
 ; Emit code to probe the stack, to help detect stack overflow; also
 ; may cause large objects to be allocated dynamically.
@@ -765,6 +828,14 @@ fstack-limit-symbol=
 Common RejectNegative Joined
 -fstack-limit-symbol=<name>    Trap if the stack goes past symbol <name>
 
+fstack-protector
+Common Report Var(flag_stack_protect, 1)
+Use propolice as a stack protection method
+
+fstack-protector-all
+Common Report RejectNegative Var(flag_stack_protect, 2) VarExists
+Use a stack protection method for every function
+
 fstrength-reduce
 Common Report Var(flag_strength_reduce)
 Perform strength reduction optimizations
@@ -797,6 +868,10 @@ ftls-model=
 Common Joined RejectNegative
 -ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]     Set the default thread-local storage code generation model
 
+ftoplevel-reorder
+Common Report Var(flag_toplevel_reorder) Init(1)
+Reorder top level functions, variables, and asms
+
 ftracer
 Common Report Var(flag_tracer)
 Perform superblock formation via tail duplication
@@ -812,14 +887,14 @@ ftrapv
 Common Report Var(flag_trapv)
 Trap for signed overflow in addition, subtraction and multiplication
 
-ftree-based-profiling
-Common Report Var(flag_tree_based_profiling)
-Use tree-ssa based implementation of profiling
-
 ftree-ccp
 Common Report Var(flag_tree_ccp)
 Enable SSA-CCP optimization on trees
 
+ftree-store-ccp
+Common Report Var(flag_tree_store_ccp)
+Enable SSA-CCP optimization for stores and loads
+
 ftree-ch
 Common Report Var(flag_tree_ch)
 Enable loop header copying on trees
@@ -830,7 +905,15 @@ Coalesce memory temporaries in the SSA->normal pass
 
 ftree-copyrename
 Common Report Var(flag_tree_copyrename)
-Replace SSA temporaries with better names in copies.
+Replace SSA temporaries with better names in copies
+
+ftree-copy-prop
+Common Report Var(flag_tree_copy_prop)
+Enable copy propagation on trees
+
+ftree-store-copy-prop
+Common Report Var(flag_tree_store_copy_prop)
+Enable copy propagation for stores and loads
 
 ftree-dce
 Common Report Var(flag_tree_dce)
@@ -857,7 +940,7 @@ Common Report Var(flag_tree_loop_linear)
 Enable linear loop transforms on trees
 
 ftree-loop-ivcanon
-Common Report Var(flag_tree_loop_ivcanon)
+Common Report Var(flag_tree_loop_ivcanon) Init(1)
 Create canonical induction variables in loops
 
 ftree-loop-optimize
@@ -868,6 +951,14 @@ ftree-pre
 Common Report Var(flag_tree_pre)
 Enable SSA-PRE optimization on trees
 
+ftree-salias
+Common Report Var(flag_tree_salias)
+Perform structural alias analysis
+
+ftree-sink
+Common Report Var(flag_tree_sink)
+Enable SSA code sinking on trees
+
 ftree-sra
 Common Report Var(flag_tree_sra)
 Perform scalar replacement of aggregates
@@ -878,7 +969,11 @@ Replace temporary expressions in the SSA->normal pass
 
 ftree-lrs
 Common Report Var(flag_tree_live_range_split)
-Perform live range splitting during the SSA->normal pass.
+Perform live range splitting during the SSA->normal pass
+
+ftree-vrp
+Common Report Var(flag_tree_vrp) Init(0)
+Perform Value Range Propagation on trees
 
 funit-at-a-time
 Common Report Var(flag_unit_at_a_time)
@@ -892,6 +987,13 @@ funroll-all-loops
 Common Report Var(flag_unroll_all_loops)
 Perform loop unrolling for all loops
 
+; Nonzero means that loop optimizer may assume that the induction variables
+; that control loops do not overflow and that the loops with nontrivial
+; exit condition are not infinite
+funsafe-loop-optimizations
+Common Report Var(flag_unsafe_loop_optimizations)
+Allow loop optimizations to assume that the loops behave in normal way
+
 ; Nonzero means that unsafe floating-point math optimizations are allowed
 ; for the sake of speed.  IEEE compliance is not guaranteed, and operations
 ; are allowed to assume that their arguments and results are "normal"
@@ -916,6 +1018,14 @@ ftree-vectorize
 Common Report Var(flag_tree_vectorize)
 Enable loop vectorization on trees
 
+ftree-vect-loop-version
+Common Report Var(flag_tree_vect_loop_version) Init(1)
+Enable loop versioning when doing loop vectorization on trees
+
+ftree-vectorizer-verbose=
+Common RejectNegative Joined
+-ftree-vectorizer-verbose=<number>     Set the verbosity level of the vectorizer
+
 ; -fverbose-asm causes extra commentary information to be produced in
 ; the generated assembly code (to make it more readable).  This option
 ; is generally only of use to those who actually need to read the
@@ -936,9 +1046,13 @@ Common Report Var(flag_value_profile_transformations)
 Use expression value profiles in optimizations
 
 fweb
-Common Report Var(flag_web) Init(0)
+Common Report Var(flag_web) Init(2)
 Construct webs and split unrelated uses of single variable
 
+fwhole-program
+Common Report Var(flag_whole_program) Init(0)
+Perform whole program optimizations
+
 fwrapv
 Common Report Var(flag_wrapv)
 Assume signed arithmetic overflow wraps around
@@ -983,9 +1097,6 @@ gxcoff+
 Common JoinedOrMissing
 Generate debug information in extended XCOFF format
 
-m
-Common Joined
-
 o
 Common Joined Separate
 -o <file>      Place output into <file>