; Options for the language- and target-independent parts of the compiler.
-; Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
+; Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
; Free Software Foundation, Inc.
;
; This file is part of GCC.
Driver Alias(pass-exit-codes)
-pedantic
-Common Alias(pedantic)
+Common Alias(Wpedantic)
-pedantic-errors
Common Alias(pedantic-errors)
-pie
-Common Alias(pie)
+Driver Alias(pie)
-pipe
Driver Alias(pipe)
Driver Alias(save-temps)
-shared
-Common Alias(shared)
+Driver Alias(shared)
-specs
Driver Separate Alias(specs=)
Common Var(warn_inline) Warning
Warn when an inlined function cannot be inlined
+Winvalid-memory-model
+Common Var(warn_invalid_memory_model) Init(1) Warning
+Warn when an atomic memory model parameter is known to be outside the valid range.
+
Wlarger-than-
Common RejectNegative Joined Warning Undocumented Alias(Wlarger-than=)
Warn if the loop cannot be optimized due to nontrivial assumptions.
Wmissing-noreturn
-Common Var(warn_missing_noreturn) Warning
-Warn about functions which might be candidates for __attribute__((noreturn))
-
-Wmudflap
-Common Var(warn_mudflap) Init(1) Warning
-Warn about constructs not instrumented by -fmudflap
+Common Alias(Wsuggest-attribute=noreturn)
Woverflow
Common Var(warn_overflow) Init(1) Warning
Common Var(warn_padded) Warning
Warn when padding is required to align structure members
+Wpedantic
+Common Var(pedantic) Warning
+Issue warnings needed for strict compliance to the standard
+
Wshadow
Common Var(warn_shadow) Warning
Warn when one local variable shadows another
Warn whenever a trampoline is generated
Wtype-limits
-Common Var(warn_type_limits) Init(-1) Warning
+Common Var(warn_type_limits) Warning EnabledBy(Wextra)
Warn if a comparison is always true or always false due to the limited range of the data type
Wuninitialized
-Common Var(warn_uninitialized) Init(-1) Warning
+Common Var(warn_uninitialized) Warning EnabledBy(Wextra)
Warn about uninitialized automatic variables
Wmaybe-uninitialized
-Common Var(warn_maybe_uninitialized) Warning
+Common Var(warn_maybe_uninitialized) Warning EnabledBy(Wuninitialized)
Warn about maybe uninitialized automatic variables
Wunreachable-code
Warn when a function parameter is only set, otherwise unused
Wunused-but-set-variable
-Common Var(warn_unused_but_set_variable) Init(-1) Warning
+Common Var(warn_unused_but_set_variable) Warning EnabledBy(Wunused)
Warn when a variable is only set, otherwise unused
Wunused-function
-Common Var(warn_unused_function) Init(-1) Warning
+Common Var(warn_unused_function) Warning EnabledBy(Wunused)
Warn when a function is unused
Wunused-label
-Common Var(warn_unused_label) Init(-1) Warning
+Common Var(warn_unused_label) Warning EnabledBy(Wunused)
Warn when a label is unused
Wunused-parameter
Warn when a function parameter is unused
Wunused-value
-Common Var(warn_unused_value) Init(-1) Warning
+Common Var(warn_unused_value) Warning EnabledBy(Wunused)
Warn when an expression value is unused
Wunused-variable
-Common Var(warn_unused_variable) Init(-1) Warning
+Common Var(warn_unused_variable) Warning EnabledBy(Wunused)
Warn when a variable is unused
Wcoverage-mismatch
Common Var(warn_coverage_mismatch) Init(1) Warning
Warn in case profiles in -fprofile-use do not match
+Wvector-operation-performance
+Common Var(warn_vector_operation_performance) Warning
+Warn when a vector operation is compiled outside the SIMD
+
Xassembler
Driver Separate
; function parameters used in other parameters and the return type.
; First selectable in G++ 4.6.
;
-; 6: The version of the ABI that doesn't promote scoped enums to int.
+; 6: The version of the ABI that doesn't promote scoped enums to int and
+; changes the mangling of template argument packs, const/static_cast,
+; prefix ++ and --, and a class scope function used as a template
+; argument.
; First selectable in G++ 4.7.
;
+; 7: The version of the ABI that treats nullptr_t as a builtin type.
+; First selectable in G++ 4.8.
; Additional positive integers will be assigned as new versions of
; the ABI become the default version of the ABI.
fabi-version=
Map one directory name to another in debug information
fdebug-types-section
-Common Report Var(flag_debug_types_section) Init(1)
+Common Report Var(flag_debug_types_section) Init(0)
Output .debug_types section when using DWARF v4 debuginfo.
; Nonzero for -fdefer-pop: don't pop args after each function call
Common Report Var(flag_delayed_branch) Optimization
Attempt to fill delay slots of branch instructions
+fdelete-dead-exceptions
+Common Report Var(flag_delete_dead_exceptions) Init(0)
+Delete dead instructions that may throw exceptions
+
fdelete-null-pointer-checks
Common Report Var(flag_delete_null_pointer_checks) Init(1) Optimization
Delete useless null pointer checks
EnumValue
Enum(diagnostic_prefixing_rule) String(every-line) Value(DIAGNOSTICS_SHOW_PREFIX_EVERY_LINE)
+fdiagnostics-show-caret
+Common Var(flag_diagnostics_show_caret) Init(1)
+Show the source line with a caret indicating the column
+
fdiagnostics-show-option
Common Var(flag_diagnostics_show_option) Init(1)
Amend appropriate diagnostic messages with the command line option that controls them
ffast-math
Common
+ffat-lto-objects
+Common Var(flag_fat_lto_objects) Init(1)
+Output lto objects containing both the intermediate language and binary output.
+
ffinite-math-only
Common Report Var(flag_finite_math_only) Optimization SetByCombined
Assume no NaNs or infinities are generated
Common Report Var(flag_graphite_identity) Optimization
Enable Graphite Identity transformation
+fhoist-adjacent-loads
+Common Report Var(flag_hoist_adjacent_loads) Optimization
+Enable hoisting adjacent loads to encourage generating conditional move
+instructions
+
floop-parallelize-all
Common Report Var(flag_loop_parallelize_all) Optimization
Mark all loops as parallel
Common Report Var(flag_loop_block) Optimization
Enable Loop Blocking transformation
+fgnu-tm
+Common Report Var(flag_tm)
+Enable support for GNU transactional memory
+
floop-flatten
-Common Report Var(flag_loop_flatten) Optimization
-Enable Loop Flattening transformation
+Common Ignore
+Does nothing. Preserved for backward compatibility.
fstrict-volatile-bitfields
Common Report Var(flag_strict_volatile_bitfields) Init(-1)
Common Report Var(flag_indirect_inlining)
Perform indirect inlining
-; Nonzero means that functions declared `inline' will be treated
-; as `static'. Prevents generation of zillions of copies of unused
-; static inline functions; instead, `inlines' are written out
-; only when actually used. Used in conjunction with -g. Also
-; does the right thing with #pragma interface.
+; General flag to enable inlining. Specifying -fno-inline will disable
+; all inlining apart from always-inline functions.
finline
Common Report Var(flag_no_inline,0) Init(0)
-Pay attention to the \"inline\" keyword
+Enable inlining of function declared \"inline\", disabling disables all inlining
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
+Integrate functions into their callers when code size is known not to grow
finline-functions
Common Report Var(flag_inline_functions) Optimization
-Integrate simple functions into their callers
+Integrate functions not declared \"inline\" into their callers when profitable
finline-functions-called-once
Common Report Var(flag_inline_functions_called_once) Optimization
-Integrate functions called once into their callers
+Integrate functions only required by their single caller
finline-limit-
Common RejectNegative Joined Alias(finline-limit=)
Common RejectNegative Joined UInteger
-finline-limit=<number> Limit the size of inlined functions to <number>
+finline-atomics
+Common Report Var(flag_inline_atomics) Init(1) Optimization
+Inline __atomic operations when a lock free instruction sequence is available.
+
finstrument-functions
Common Report Var(flag_instrument_function_entry_exit)
Instrument function entry and exit with profiling calls
Enum(ira_algorithm) String(priority) Value(IRA_ALGORITHM_PRIORITY)
fira-region=
-Common Joined RejectNegative Enum(ira_region) Var(flag_ira_region) Init(IRA_REGION_MIXED)
+Common Joined RejectNegative Enum(ira_region) Var(flag_ira_region) Init(IRA_REGION_AUTODETECT)
-fira-region=[one|all|mixed] Set regions for IRA
Enum
-flto-compression-level=<number> Use zlib compression level <number> for IL
flto-report
-Common Report Var(flag_lto_report) Init(0) Optimization
+Common Report Var(flag_lto_report) Init(0)
Report various link-time optimization statistics
fmath-errno
Common Report Var(flag_move_loop_invariants) Init(1) Optimization
Move loop invariant computations out of loops
-fmudflap
-Common RejectNegative Report Var(flag_mudflap)
-Add mudflap bounds-checking instrumentation for single-threaded program
-
-fmudflapth
-Common RejectNegative Report Var(flag_mudflap,2)
-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
-
fdce
Common Var(flag_dce) Init(1) Optimization
Use the RTL dead code elimination pass
Does nothing. Preserved for backward compatibility.
fzee
-Common Report Var(flag_zee) Init(0)
-Eliminate redundant zero extensions on targets that support implicit extensions.
+Common Ignore
+Does nothing. Preserved for backward compatibility.
+
+free
+Common Report Var(flag_ree) Init(0)
+Turn on Redundant Extensions Elimination pass.
fshow-column
Common Report Var(flag_show_column) Init(1)
Show column numbers in diagnostics, when available. Default on
+fshrink-wrap
+Common Report Var(flag_shrink_wrap) Optimization
+Emit function prologues only before parts of the function that need it,
+rather than at the top of the function.
+
fsignaling-nans
Common Report Var(flag_signaling_nans) Optimization SetByCombined
Disable optimizations observable by IEEE signaling NaNs
Common Report Var(flag_strict_overflow)
Treat signed overflow as undefined
+fsync-libcalls
+Common Report Var(flag_sync_libcalls) Init(1)
+Implement __atomic operations via libcalls to legacy __sync functions
+
fsyntax-only
Common Report Var(flag_syntax_only)
Check for syntax errors, then stop
Common Report Var(flag_tree_ch) Optimization
Enable loop header copying on trees
+ftree-coalesce-inlined-vars
+Common Report Var(flag_ssa_coalesce_vars,1) Init(2) RejectNegative Optimization
+Enable coalescing of copy-related user variables that are inlined
+
+ftree-coalesce-vars
+Common Report Var(flag_ssa_coalesce_vars,2) Optimization
+Enable coalescing of all copy-related user variables
+
ftree-copyrename
Common Report Var(flag_tree_copyrename) Optimization
Replace SSA temporaries with better names in copies
Common Report Var(flag_tree_dom) Optimization
Enable dominator optimizations
+ftree-tail-merge
+Common Report Var(flag_tree_tail_merge) Optimization
+Enable tail merging on trees
+
ftree-dse
Common Report Var(flag_tree_dse) Optimization
Enable dead store elimination
Common Report Var(flag_tree_fre) Optimization
Enable Full Redundancy Elimination (FRE) on trees
+foptimize-strlen
+Common Report Var(flag_optimize_strlen) Optimization
+Enable string length optimizations on trees
+
ftree-loop-distribution
Common Report Var(flag_tree_loop_distribution) Optimization
Enable loop distribution on trees
Common Report Var(flag_tree_pre) Optimization
Enable SSA-PRE optimization on trees
+ftree-partial-pre
+Common Report Var(flag_tree_partial_pre) Optimization
+In SSA-PRE optimization on trees, enable partial-partial redundancy elimination
+
ftree-pta
Common Report Var(flag_tree_pta) Init(1) Optimization
Perform function-local points-to analysis on trees.
Generate debug information in COFF format
gdwarf-
-Common Joined UInteger Var(dwarf_version) Init(2) Negative(gstabs)
+Common Joined UInteger Var(dwarf_version) Init(4) Negative(gstabs)
Generate debug information in DWARF v2 (or later) format
ggdb
Generate debug information in default extended format
gno-record-gcc-switches
-Common RejectNegative Var(dwarf_record_gcc_switches,0) Init(0)
+Common RejectNegative Var(dwarf_record_gcc_switches,0) Init(1)
Don't record gcc command line switches in DWARF DW_AT_producer.
grecord-gcc-switches
Generate debug information in extended STABS format
gno-strict-dwarf
-Common RejectNegative Var(dwarf_strict,0) Init(-1)
+Common RejectNegative Var(dwarf_strict,0) Init(0)
Emit DWARF additions beyond selected version
gstrict-dwarf
Driver Var(pass_exit_codes)
pedantic
-Common Var(pedantic)
-Issue warnings needed for strict compliance to the standard
+Common Alias(Wpedantic)
pedantic-errors
Common Var(flag_pedantic_errors)
Driver Joined Separate
shared
-Common RejectNegative Negative(pie)
+Driver RejectNegative Negative(pie)
Create a shared library
shared-libgcc
Driver
pie
-Common RejectNegative Negative(shared)
+Driver RejectNegative Negative(shared)
Create a position independent executable
z