;
; GCC is free software; you can redistribute it and/or modify it under
; the terms of the GNU General Public License as published by the Free
-; Software Foundation; either version 2, or (at your option) any later
+; Software Foundation; either version 3, or (at your option) any later
; version.
;
; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
; for more details.
;
; 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, 51 Franklin Street, Fifth Floor, Boston, MA
-; 02110-1301, USA.
+; along with GCC; see the file COPYING3. If not see
+; <http://www.gnu.org/licenses/>.
-; See the GCC internals manual for a description of this file's format.
+; See the GCC internals manual (options.texi) for a description of this file's format.
; Please try to keep this file in ASCII collating order.
;
; 1: The version of the ABI first used in G++ 3.2.
;
+; 2: The version of the ABI first used in G++ 3.4.
+;
; Additional positive integers will be assigned as new versions of
; the ABI become the default version of the ABI.
fabi-version=
Common RejectNegative Joined
-fdbg-cnt=<counter>:<limit>[,<counter>:<limit>,...] Set the debug counter limit.
+fdebug-prefix-map=
+Common Joined RejectNegative
+Map one directory name to another in debug information
+
; Nonzero for -fdefer-pop: don't pop args after each function call
; instead save them up to pop many calls' args with one insns.
fdefer-pop
Perform unused type elimination in debug info
femit-class-debug-always
-Common Report Var(flag_emit_class_debug_always) Init(1)
+Common Report Var(flag_emit_class_debug_always) Init(0)
Do not suppress C++ class debug information.
fexceptions
Common Report Var(flag_float_store) Optimization
Don't allocate floats and doubles in extended-precision registers
-; Nonzero for -fforce-addr: load memory address into a register before
-; reference to memory. This makes better cse but slower compilation.
fforce-addr
-Common Report Var(flag_force_addr) Optimization
-Copy memory address constants into registers before use
+Common
+Does nothing. Preserved for backward compatibility.
fforward-propagate
Common Report Var(flag_forward_propagate) Optimization
Common Report Var(flag_no_inline,0) Init(2)
Pay attention to the \"inline\" keyword
+finline-small-functions
+Common Report Var(flag_inline_small_functions) Optimization
+Integrate simple functions into their callers when code size is known to not growth
+
finline-functions
Common Report Var(flag_inline_functions) Optimization
Integrate simple functions into their callers
Common Report Var(flag_instrument_function_entry_exit)
Instrument function entry and exit with profiling calls
+finstrument-functions-exclude-function-list=
+Common RejectNegative Joined
+-finstrument-functions-exclude-function-list=name,... Do not instrument listed functions
+
+finstrument-functions-exclude-file-list=
+Common RejectNegative Joined
+-finstrument-functions-exclude-file-list=filename,... Do not instrument functions listed in files
+
fipa-cp
Common Report Var(flag_ipa_cp) Optimization
Perform Interprocedural constant propagation
Perform matrix layout flattening and transposing based
on profiling information.
+fipa-struct-reorg
+Common Report Var(flag_ipa_struct_reorg)
+Perform structure layout optimizations based
+on profiling information.
+
fivopts
Common Report Var(flag_ivopts) Init(1) Optimization
Optimize induction variables on trees
Common Report Var(flag_modulo_sched) Optimization
Perform SMS based modulo scheduling before the first scheduling pass
+fmodulo-sched-allow-regmoves
+Common Report Var(flag_modulo_sched_allow_regmoves)
+Perform SMS based modulo scheduling with register moves allowed
+
fmove-loop-invariants
Common Report Var(flag_move_loop_invariants) Init(1) Optimization
Move loop invariant computations out of loops
Common Report Var(flag_omit_frame_pointer) Optimization
When possible do not generate stack frames
+fopenmp-ssa
+Common Report Var(flag_openmp_ssa)
+Expand OpenMP operations on SSA form
+
foptimize-register-move
Common Report Var(flag_regmove) Optimization
Do the full register move optimization pass
Eliminate redundant sign extensions using LCM.
fshow-column
-Common C ObjC C++ ObjC++ Report Var(flag_show_column) Init(1)
-Show column numbers in diagnostics, when available. Default on
+Common C ObjC C++ ObjC++ Report Var(flag_show_column) Init(0)
+Show column numbers in diagnostics, when available. Default off
fsignaling-nans
Common Report Var(flag_signaling_nans) Optimization
Enable copy propagation on trees
ftree-store-copy-prop
-Common Report Var(flag_tree_store_copy_prop) Optimization
-Enable copy propagation for stores and loads
+Common
+Does nothing. Preserved for backward compatibility.
+
+ftree-cselim
+Common Report Var(flag_tree_cselim) Init(2) Optimization
+Transform condition stores into unconditional ones
ftree-dce
Common Report Var(flag_tree_dce) Optimization
Common Report Var(flag_tree_loop_optimize) Init(1) Optimization
Enable loop optimizations on tree level
+ftree-parallelize-loops=
+Common Report Joined UInteger Var(flag_tree_parallelize_loops) Init(1)
+Enable automatic parallelization of loops
+
ftree-pre
Common Report Var(flag_tree_pre) Optimization
Enable SSA-PRE optimization on trees
Common Report Var(flag_unsafe_loop_optimizations) Optimization
Allow loop optimizations to assume that the loops behave in normal way
+fassociative-math
+Common Report Var(flag_associative_math)
+Allow optimization for floating-point arithmetic which may change the
+result of the operation due to rounding.
+
+freciprocal-math
+Common Report Var(flag_reciprocal_math)
+Same as -fassociative-math for expressions which include division.
+
; 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"
Common Var(inhibit_warnings)
Suppress warnings
+shared
+Common RejectNegative Negative(pie)
+Create a shared library
+
+pie
+Common RejectNegative Negative(shared)
+Create a position independent executable
+
; This comment is to ensure we retain the blank line above.