URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Subversion Repositories openrisc_me
[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [common.opt] - Rev 288
Go to most recent revision | Compare with Previous | Blame | View Log
; Options for the language- and target-independent parts of the compiler.; Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010; Free Software Foundation, Inc.;; This file is part of GCC.;; 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 3, or (at your option) any later; version.;; GCC is distributed in the hope that it will be useful, but WITHOUT ANY; WARRANTY; without even the implied warranty of MERCHANTABILITY or; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License; for more details.;; You should have received a copy of the GNU General Public License; along with GCC; see the file COPYING3. If not see; <http://www.gnu.org/licenses/>.; 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.-helpCommonDisplay this information-help=Common Report Joined--help=<class> Display descriptions of a specific class of options. <class> is one or more of optimizers, target, warnings, undocumented, params-target-helpCommonAlias for --help=target;; The following four entries are to work around the gcc driver;; program's insatiable desire to turn options starting with a;; double dash (--) into options starting with a dash f (-f).fhelpCommon Var(help_flag)fhelp=Common Joinedftarget-helpCommonfversionCommon-paramCommon Separate--param <param>=<value> Set parameter <param> to value. See below for a complete list of parameters-versionCommonGCommon Joined Separate UInteger-G<number> Put global and static data smaller than <number> bytes into a special section (on some targets)OCommon JoinedOrMissing Optimization-O<number> Set optimization level to <number>OsCommon OptimizationOptimize for space rather than speedWCommon RejectNegative Var(extra_warnings) WarningThis switch is deprecated; use -Wextra insteadWaggregate-returnCommon Var(warn_aggregate_return) WarningWarn about returning structures, unions or arraysWarray-boundsCommon Var(warn_array_bounds) WarningWarn if an array is accessed out of boundsWattributesCommon Var(warn_attributes) Init(1) WarningWarn about inappropriate attribute usageWcast-alignCommon Var(warn_cast_align) WarningWarn about pointer casts which increase alignmentWdeprecated-declarationsCommon Var(warn_deprecated_decl) Init(1) WarningWarn about uses of __attribute__((deprecated)) declarationsWdisabled-optimizationCommon Var(warn_disabled_optimization) WarningWarn when an optimization pass is disabledWerrorCommon Var(warnings_are_errors)Treat all warnings as errorsWerror=Common JoinedTreat specified warning as errorWextraCommon Var(extra_warnings) WarningPrint extra (possibly unwanted) warningsWfatal-errorsCommon Var(flag_fatal_errors)Exit on the first error occurredWframe-larger-than=Common RejectNegative Joined UInteger-Wframe-larger-than=<number> Warn if a function's stack frame requires more than <number> bytesWinlineCommon Var(warn_inline) WarningWarn when an inlined function cannot be inlinedWlarger-than-Common RejectNegative Joined UInteger Warning UndocumentedWlarger-than=Common RejectNegative Joined UInteger Warning-Wlarger-than=<number> Warn if an object is larger than <number> bytesWunsafe-loop-optimizationsCommon Var(warn_unsafe_loop_optimizations) WarningWarn if the loop cannot be optimized due to nontrivial assumptions.Wmissing-noreturnCommon Var(warn_missing_noreturn) WarningWarn about functions which might be candidates for __attribute__((noreturn))WmudflapCommon Var(warn_mudflap) Init(1) WarningWarn about constructs not instrumented by -fmudflapWoverflowCommon Var(warn_overflow) Init(1) WarningWarn about overflow in arithmetic expressionsWpackedCommon Var(warn_packed) WarningWarn when the packed attribute has no effect on struct layoutWpaddedCommon Var(warn_padded) WarningWarn when padding is required to align structure membersWshadowCommon Var(warn_shadow) WarningWarn when one local variable shadows anotherWstack-protectorCommon Var(warn_stack_protect) WarningWarn when not issuing stack smashing protection for some reasonWstrict-aliasingCommon WarningWarn about code which might break strict aliasing rulesWstrict-aliasing=Common Joined UInteger Var(warn_strict_aliasing) Init(-1) WarningWarn about code which might break strict aliasing rulesWstrict-overflowCommon WarningWarn about optimizations that assume that signed overflow is undefinedWstrict-overflow=Common Joined UInteger Var(warn_strict_overflow) Init(-1) WarningWarn about optimizations that assume that signed overflow is undefinedWswitchCommon Var(warn_switch) WarningWarn about enumerated switches, with no default, missing a caseWswitch-defaultCommon Var(warn_switch_default) WarningWarn about enumerated switches missing a \"default:\" statementWswitch-enumCommon Var(warn_switch_enum) WarningWarn about all enumerated switches missing a specific caseWsystem-headersCommon Var(warn_system_headers) WarningDo not suppress warnings from system headersWtype-limitsCommon Var(warn_type_limits) Init(-1) WarningWarn if a comparison is always true or always false due to the limited range of the data typeWuninitializedCommon Var(warn_uninitialized) Init(-1) WarningWarn about uninitialized automatic variablesWunreachable-codeCommonDoes nothing. Preserved for backward compatibility.WunusedCommon Var(warn_unused) Init(0) WarningEnable all -Wunused- warningsWunused-functionCommon Var(warn_unused_function) Init(-1) WarningWarn when a function is unusedWunused-labelCommon Var(warn_unused_label) Init(-1) WarningWarn when a label is unusedWunused-parameterCommon Var(warn_unused_parameter) Init(-1) WarningWarn when a function parameter is unusedWunused-valueCommon Var(warn_unused_value) Init(-1) WarningWarn when an expression value is unusedWunused-variableCommon Var(warn_unused_variable) Init(-1) WarningWarn when a variable is unusedWcoverage-mismatchCommon RejectNegative Var(warn_coverage_mismatch) WarningWarn instead of error in case profiles in -fprofile-use do not matchaux-infoCommon Separate-aux-info <file> Emit declaration information into <file>aux-info=Common JoinedauxbaseCommon Separateauxbase-stripCommon SeparatedCommon Joined-d<letters> Enable dumps from specific passes of the compilerdumpbaseCommon Separate-dumpbase <file> Set the file basename to be used for dumpsdumpdirCommon Separate-dumpdir <dir> Set the directory name to be used for dumps; The version of the C++ ABI in use. The following values are allowed:;; 0: The version of the ABI believed most conformant with the C++ ABI; specification. This ABI may change as bugs are discovered and fixed.; Therefore, 0 will not necessarily indicate the same ABI in different; versions of G++.;; 1: The version of the ABI first used in G++ 3.2.;; 2: The version of the ABI first used in G++ 3.4 (and current default).;; 3: The version of the ABI that fixes the missing underscore; in template non-type arguments of pointer type.;; 4: The version of the ABI that introduces unambiguous mangling of; vector types.;; Additional positive integers will be assigned as new versions of; the ABI become the default version of the ABI.fabi-version=Common Joined UInteger Var(flag_abi_version) Init(2)falign-functionsCommon Report Var(align_functions,0) Optimization UIntegerAlign the start of functionsfalign-functions=Common RejectNegative Joined UIntegerfalign-jumpsCommon Report Var(align_jumps,0) Optimization UIntegerAlign labels which are only reached by jumpingfalign-jumps=Common RejectNegative Joined UIntegerfalign-labelsCommon Report Var(align_labels,0) Optimization UIntegerAlign all labelsfalign-labels=Common RejectNegative Joined UIntegerfalign-loopsCommon Report Var(align_loops) Optimization UIntegerAlign the start of loopsfalign-loops=Common RejectNegative Joined UInteger; This flag is only tested if alias checking is enabled.; 0 if pointer arguments may alias each other. True in C.; 1 if pointer arguments may not alias each other but may alias; global variables.; 2 if pointer arguments may not alias each other and may not; alias global variables.; 3 if pointer arguments may not alias anything. True in Fortran.; Set by the front end.fargument-aliasCommon Report Var(flag_argument_noalias,0) OptimizationSpecify that arguments may alias each other and globalsfargument-noaliasCommon Report Var(flag_argument_noalias,1) VarExists OptimizationAssume arguments may alias globals but not each otherfargument-noalias-globalCommon Report Var(flag_argument_noalias,2) VarExists OptimizationAssume arguments alias neither each other nor globalsfargument-noalias-anythingCommon Report Var(flag_argument_noalias,3) VarExists OptimizationAssume arguments alias no other storagefasynchronous-unwind-tablesCommon Report Var(flag_asynchronous_unwind_tables) OptimizationGenerate unwind tables that are exact at each instruction boundaryfauto-inc-decCommon Report Var(flag_auto_inc_dec) Init(1)Generate auto-inc/dec instructions; -fcheck-bounds causes gcc to generate array bounds checks.; For C, C++ and ObjC: defaults off.; For Java: defaults to on.; For Fortran: defaults to off.fbounds-checkCommon Report Var(flag_bounds_check)Generate code to check bounds before indexing arraysfbranch-count-regCommon Report Var(flag_branch_on_count_reg) Init(1) OptimizationReplace add, compare, branch with branch on count registerfbranch-probabilitiesCommon Report Var(flag_branch_probabilities) OptimizationUse profiling information for branch probabilitiesfbranch-target-load-optimizeCommon Report Var(flag_branch_target_load_optimize) OptimizationPerform branch target load optimization before prologue / epilogue threadingfbranch-target-load-optimize2Common Report Var(flag_branch_target_load_optimize2) OptimizationPerform branch target load optimization after prologue / epilogue threadingfbtr-bb-exclusiveCommon Report Var(flag_btr_bb_exclusive) OptimizationRestrict target load migration not to re-use registers in any basic blockfcall-saved-Common Joined RejectNegative-fcall-saved-<register> Mark <register> as being preserved across functionsfcall-used-Common Joined RejectNegative-fcall-used-<register> Mark <register> as being corrupted by function calls; Nonzero for -fcaller-saves: allocate values in regs that need to; be saved across function calls, if that produces overall better code.; Optional now, so people can test it.fcaller-savesCommon Report Var(flag_caller_saves) OptimizationSave registers around function callsfcheck-data-depsCommon Report Var(flag_check_data_deps)Compare the results of several data dependence analyzers.fcommonCommon Report Var(flag_no_common,0) OptimizationDo not put uninitialized globals in the common sectionfcompare-debug=Common JoinedOrMissing RejectNegative Var(flag_compare_debug_opt)-fcompare-debug[=<opts>] Compile with and without e.g. -gtoggle, and compare the final-insns dumpfcompare-debug-secondCommon RejectNegative Var(flag_compare_debug)Run only the second compilation of -fcompare-debugfconserve-stackCommon Var(flag_conserve_stack) OptimizationDo not perform optimizations increasing noticeably stack usagefcprop-registersCommon Report Var(flag_cprop_registers) OptimizationPerform a register copy-propagation optimization passfcrossjumpingCommon Report Var(flag_crossjumping) OptimizationPerform cross-jumping optimizationfcse-follow-jumpsCommon Report Var(flag_cse_follow_jumps) OptimizationWhen running CSE, follow jumps to their targetsfcse-skip-blocksCommonDoes nothing. Preserved for backward compatibility.fcx-limited-rangeCommon Report Var(flag_cx_limited_range) OptimizationOmit range reduction step when performing complex divisionfcx-fortran-rulesCommon Report Var(flag_cx_fortran_rules) OptimizationComplex multiplication and division follow Fortran rulesfdata-sectionsCommon Report Var(flag_data_sections) OptimizationPlace data items into their own sectionfdbg-cnt-listCommon ReportList all available debugging counters with their limits and counts.fdbg-cnt=Common RejectNegative Joined-fdbg-cnt=<counter>:<limit>[,<counter>:<limit>,...] Set the debug counter limit.fdebug-prefix-map=Common Joined RejectNegativeMap 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-popCommon Report Var(flag_defer_pop) OptimizationDefer popping functions args from stack until laterfdelayed-branchCommon Report Var(flag_delayed_branch) OptimizationAttempt to fill delay slots of branch instructionsfdelete-null-pointer-checksCommon Report Var(flag_delete_null_pointer_checks) Init(1) OptimizationDelete useless null pointer checksfdiagnostics-show-location=Common Joined RejectNegative-fdiagnostics-show-location=[once|every-line] How often to emit source location at the beginning of line-wrapped diagnosticsfdiagnostics-show-optionCommonAmend appropriate diagnostic messages with the command line option that controls themfdump-Common Joined RejectNegative-fdump-<type> Dump various compiler internals to a filefdump-final-insns=Common RejectNegative Joined Var(flag_dump_final_insns)-fdump-final-insns=filename Dump to filename the insns at the end of translationfdump-noaddrCommon Report Var(flag_dump_noaddr)Suppress output of addresses in debugging dumpsfdump-unnumberedCommon Report Var(flag_dump_unnumbered) VarExistsSuppress output of instruction numbers, line number notes and addresses in debugging dumpsfdump-unnumbered-linksCommon Report Var(flag_dump_unnumbered_links) VarExistsSuppress output of previous and next insn numbers in debugging dumpsfdwarf2-cfi-asmCommon Report Var(flag_dwarf2_cfi_asm) Init(HAVE_GAS_CFI_DIRECTIVE)Enable CFI tables via GAS assembler directives.fearly-inliningCommon Report Var(flag_early_inlining) Init(1) OptimizationPerform early inliningfeliminate-dwarf2-dupsCommon Report Var(flag_eliminate_dwarf2_dups)Perform DWARF2 duplicate eliminationfipa-sraCommon Report Var(flag_ipa_sra) Init(0) OptimizationPerform interprocedural reduction of aggregatesfeliminate-unused-debug-symbolsCommon Report Var(flag_debug_only_used_symbols)Perform unused type elimination in debug infofeliminate-unused-debug-typesCommon Report Var(flag_eliminate_unused_debug_types) Init(1)Perform unused type elimination in debug infofemit-class-debug-alwaysCommon Report Var(flag_emit_class_debug_always) Init(0)Do not suppress C++ class debug information.fenable-icf-debugCommon Report Var(flag_enable_icf_debug)Generate debug information to support Identical Code Folding (ICF)fexceptionsCommon Report Var(flag_exceptions) OptimizationEnable exception handlingfexpensive-optimizationsCommon Report Var(flag_expensive_optimizations) OptimizationPerform a number of minor, expensive optimizationsfexcess-precision=Common Joined RejectNegative-fexcess-precision=[fast|standard] Specify handling of excess floating-point precisionffast-mathCommonffinite-math-onlyCommon Report Var(flag_finite_math_only) OptimizationAssume no NaNs or infinities are generatedffixed-Common Joined RejectNegative-ffixed-<register> Mark <register> as being unavailable to the compilerffloat-storeCommon Report Var(flag_float_store) OptimizationDon't allocate floats and doubles in extended-precision registersfforce-addrCommonDoes nothing. Preserved for backward compatibility.fforward-propagateCommon Report Var(flag_forward_propagate) OptimizationPerform a forward propagation pass on RTL; Nonzero means don't put addresses of constant functions in registers.; Used for compiling the Unix kernel, where strange substitutions are; done on the assembly output.ffunction-cseCommon Report Var(flag_no_function_cse,0)Allow function addresses to be held in registersffunction-sectionsCommon Report Var(flag_function_sections)Place each function into its own sectionfgcseCommon Report Var(flag_gcse) OptimizationPerform global common subexpression eliminationfgcse-lmCommon Report Var(flag_gcse_lm) Init(1) OptimizationPerform enhanced load motion during global common subexpression eliminationfgcse-smCommon Report Var(flag_gcse_sm) Init(0) OptimizationPerform store motion after global common subexpression eliminationfgcse-lasCommon Report Var(flag_gcse_las) Init(0) OptimizationPerform redundant load after store elimination in global common subexpressioneliminationfgcse-after-reloadCommon Report Var(flag_gcse_after_reload) OptimizationPerform global common subexpression elimination after register allocationhas finished; This option is not documented yet as its semantics will change.fgraphiteCommon Report Var(flag_graphite)Enable in and out of Graphite representationfgraphite-identityCommon Report Var(flag_graphite_identity) OptimizationEnable Graphite Identity transformationfloop-parallelize-allCommon Report Var(flag_loop_parallelize_all) OptimizationMark all loops as parallelfloop-strip-mineCommon Report Var(flag_loop_strip_mine) OptimizationEnable Loop Strip Mining transformationfloop-interchangeCommon Report Var(flag_loop_interchange) OptimizationEnable Loop Interchange transformationfloop-blockCommon Report Var(flag_loop_block) OptimizationEnable Loop Blocking transformationfguess-branch-probabilityCommon Report Var(flag_guess_branch_prob) OptimizationEnable guessing of branch probabilities; Nonzero means ignore `#ident' directives. 0 means handle them.; Generate position-independent code for executables if possible; On SVR4 targets, it also controls whether or not to emit a; string identifying the compiler.fidentCommon Report Var(flag_no_ident,0)Process #ident directivesfif-conversionCommon Report Var(flag_if_conversion) OptimizationPerform conversion of conditional jumps to branchless equivalentsfif-conversion2Common Report Var(flag_if_conversion2) OptimizationPerform conversion of conditional jumps to conditional execution; -finhibit-size-directive inhibits output of .size for ELF.; This is used only for compiling crtstuff.c,; and it may be extended to other effects; needed for crtstuff.c on other systems.finhibit-size-directiveCommon Report Var(flag_inhibit_size_directive)Do not generate .size directivesfindirect-inliningCommon 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.finlineCommon Report Var(flag_no_inline,0) Init(0)Pay attention to the \"inline\" keywordfinline-small-functionsCommon Report Var(flag_inline_small_functions) OptimizationIntegrate simple functions into their callers when code size is known to not growthfinline-functionsCommon Report Var(flag_inline_functions) OptimizationIntegrate simple functions into their callersfinline-functions-called-onceCommon Report Var(flag_inline_functions_called_once) Init(1) OptimizationIntegrate functions called once into their callersfinline-limit-Common RejectNegative Joined UIntegerfinline-limit=Common RejectNegative Joined UInteger-finline-limit=<number> Limit the size of inlined functions to <number>finstrument-functionsCommon Report Var(flag_instrument_function_entry_exit)Instrument function entry and exit with profiling callsfinstrument-functions-exclude-function-list=Common RejectNegative Joined-finstrument-functions-exclude-function-list=name,... Do not instrument listed functionsfinstrument-functions-exclude-file-list=Common RejectNegative Joined-finstrument-functions-exclude-file-list=filename,... Do not instrument functions listed in filesfipa-cpCommon Report Var(flag_ipa_cp) OptimizationPerform Interprocedural constant propagationfipa-cp-cloneCommon Report Var(flag_ipa_cp_clone) OptimizationPerform cloning to make Interprocedural constant propagation strongerfipa-pure-constCommon Report Var(flag_ipa_pure_const) Init(0) OptimizationDiscover pure and const functionsfipa-ptaCommon Report Var(flag_ipa_pta) Init(0) OptimizationPerform interprocedural points-to analysisfipa-referenceCommon Report Var(flag_ipa_reference) Init(0) OptimizationDiscover readonly and non addressable static variablesfipa-type-escapeCommon Report Var(flag_ipa_type_escape) Init(0) OptimizationType based escape and alias analysisfipa-matrix-reorgCommon Report Var(flag_ipa_matrix_reorg) OptimizationPerform matrix layout flattening and transposing basedon profiling information.fipa-struct-reorgCommon Report Var(flag_ipa_struct_reorg)Perform structure layout optimizations basedon profiling information.fira-algorithm=Common Joined RejectNegative-fira-algorithm=[CB|priority] Set the used IRA algorithmfira-region=Common Joined RejectNegative-fira-region=[one|all|mixed] Set regions for IRAfira-coalesceCommon Report Var(flag_ira_coalesce) Init(0)Do optimistic coalescing.fira-loop-pressureCommon Report Var(flag_ira_loop_pressure)Use IRA based register pressure calculationin RTL loop optimizations.fira-share-save-slotsCommon Report Var(flag_ira_share_save_slots) Init(1)Share slots for saving different hard registers.fira-share-spill-slotsCommon Report Var(flag_ira_share_spill_slots) Init(1)Share stack slots for spilled pseudo-registers.fira-verbose=Common RejectNegative Joined UInteger-fira-verbose=<number> Control IRA's level of diagnostic messages.fivoptsCommon Report Var(flag_ivopts) Init(1) OptimizationOptimize induction variables on treesfjump-tablesCommon Var(flag_jump_tables) Init(1) OptimizationUse jump tables for sufficiently large switch statementsfkeep-inline-functionsCommon Report Var(flag_keep_inline_functions)Generate code for functions even if they are fully inlinedfkeep-static-constsCommon Report Var(flag_keep_static_consts) Init(1)Emit static const variables even if they are not usedfleading-underscoreCommon Report Var(flag_leading_underscore) Init(-1)Give external symbols a leading underscorefloop-optimizeCommonDoes nothing. Preserved for backward compatibility.fltoCommon Var(flag_lto)Enable link-time optimization.; The initial value of -1 comes from Z_DEFAULT_COMPRESSION in zlib.h.flto-compression-level=Common Joined UInteger Var(flag_lto_compression_level) Init(-1)-flto-compression-level=<number> Use zlib compression level <number> for ILflto-reportCommon Report Var(flag_lto_report) Init(0) OptimizationReport various link-time optimization statisticsfmath-errnoCommon Report Var(flag_errno_math) Init(1) OptimizationSet errno after built-in math functionsfmem-reportCommon Report Var(mem_report)Report on permanent memory allocation; This will attempt to merge constant section constants, if 1 only; string constants and constants from constant pool, if 2 also constant; variables.fmerge-all-constantsCommon Report Var(flag_merge_constants,2) Init(1) OptimizationAttempt to merge identical constants and constant variablesfmerge-constantsCommon Report Var(flag_merge_constants,1) VarExists OptimizationAttempt to merge identical constants across compilation unitsfmerge-debug-stringsCommon Report Var(flag_merge_debug_strings) Init(1)Attempt to merge identical debug strings across compilation unitsfmessage-length=Common RejectNegative Joined UInteger-fmessage-length=<number> Limit diagnostics to <number> characters per line. 0 suppresses line-wrappingfmodulo-schedCommon Report Var(flag_modulo_sched) OptimizationPerform SMS based modulo scheduling before the first scheduling passfmodulo-sched-allow-regmovesCommon Report Var(flag_modulo_sched_allow_regmoves)Perform SMS based modulo scheduling with register moves allowedfmove-loop-invariantsCommon Report Var(flag_move_loop_invariants) Init(1) OptimizationMove loop invariant computations out of loopsfmudflapCommon RejectNegative Report Var(flag_mudflap)Add mudflap bounds-checking instrumentation for single-threaded programfmudflapthCommon RejectNegative Report VarExists Var(flag_mudflap,2)Add mudflap bounds-checking instrumentation for multi-threaded programfmudflapirCommon RejectNegative Report Var(flag_mudflap_ignore_reads)Ignore read operations when inserting mudflap instrumentationfdceCommon Var(flag_dce) Init(1) OptimizationUse the RTL dead code elimination passfdseCommon Var(flag_dse) Init(1) OptimizationUse the RTL dead store elimination passfreschedule-modulo-scheduled-loopsCommon Report Var(flag_resched_modulo_sched) OptimizationEnable/Disable the traditional scheduling in loops that already passed modulo schedulingfnon-call-exceptionsCommon Report Var(flag_non_call_exceptions) OptimizationSupport synchronous non-call exceptionsfomit-frame-pointerCommon Report Var(flag_omit_frame_pointer) OptimizationWhen possible do not generate stack framesfoptimize-register-moveCommon Report Var(flag_regmove) OptimizationDo the full register move optimization passfoptimize-sibling-callsCommon Report Var(flag_optimize_sibling_calls) OptimizationOptimize sibling and tail recursive callsfpre-ipa-mem-reportCommon Report Var(pre_ipa_mem_report)Report on memory allocation before interprocedural optimizationfpost-ipa-mem-reportCommon Report Var(post_ipa_mem_report)Report on memory allocation before interprocedural optimizationfpack-structCommon Report Var(flag_pack_struct) OptimizationPack structure members together without holesfpack-struct=Common RejectNegative Joined UInteger Optimization-fpack-struct=<number> Set initial maximum structure member alignmentfpcc-struct-returnCommon Report Var(flag_pcc_struct_return,1) VarExistsReturn small aggregates in memory, not registersfpeel-loopsCommon Report Var(flag_peel_loops) OptimizationPerform loop peelingfpeepholeCommon Report Var(flag_no_peephole,0) OptimizationEnable machine specific peephole optimizationsfpeephole2Common Report Var(flag_peephole2) OptimizationEnable an RTL peephole pass before sched2fPICCommon Report Var(flag_pic,2)Generate position-independent code if possible (large mode)fPIECommon Report Var(flag_pie,2)Generate position-independent code for executables if possible (large mode)fpicCommon Report Var(flag_pic,1) VarExistsGenerate position-independent code if possible (small mode)fpieCommon Report Var(flag_pie,1) VarExistsGenerate position-independent code for executables if possible (small mode)fplugin=Common Joined RejectNegativeSpecify a plugin to loadfplugin-arg-Common Joined RejectNegative-fplugin-arg-<name>-<key>[=<value>] Specify argument <key>=<value> for plugin <name>fpredictive-commoningCommon Report Var(flag_predictive_commoning) OptimizationRun predictive commoning optimization.fprefetch-loop-arraysCommon Report Var(flag_prefetch_loop_arrays) OptimizationGenerate prefetch instructions, if available, for arrays in loopsfprofileCommon Report Var(profile_flag)Enable basic program profiling codefprofile-arcsCommon Report Var(profile_arc_flag)Insert arc-based program profiling codefprofile-dir=Common Joined RejectNegativeSet the top-level directory for storing the profile data.The default is 'pwd'.fprofile-correctionCommon Report Var(flag_profile_correction)Enable correction of flow inconsistent profile data inputfprofile-generateCommonEnable common options for generating profile info for profile feedback directed optimizationsfprofile-generate=Common Joined RejectNegativeEnable common options for generating profile info for profile feedback directed optimizations, and set -fprofile-dir=fprofile-useCommon Var(flag_profile_use)Enable common options for performing profile feedback directed optimizationsfprofile-use=Common Joined RejectNegativeEnable common options for performing profile feedback directed optimizations, and set -fprofile-dir=fprofile-valuesCommon Report Var(flag_profile_values)Insert code to profile values of expressionsfrandom-seedCommonfrandom-seed=Common Joined RejectNegative-frandom-seed=<string> Make compile reproducible using <string>; This switch causes the command line that was used to create an; object file to be recorded into the object file. The exact format; of this recording is target and binary file format dependent.; It is related to the -fverbose-asm switch, but that switch only; records information in the assembler output file as comments, so; they never reach the object file.frecord-gcc-switchesCommon Report Var(flag_record_gcc_switches)Record gcc command line switches in the object file.freg-struct-returnCommon Report Var(flag_pcc_struct_return,0) VarExists OptimizationReturn small aggregates in registersfregmoveCommon Report Var(flag_regmove) OptimizationEnables a register move optimizationfrename-registersCommon Report Var(flag_rename_registers) Init(2) OptimizationPerform a register renaming optimization passfreorder-blocksCommon Report Var(flag_reorder_blocks) OptimizationReorder basic blocks to improve code placementfreorder-blocks-and-partitionCommon Report Var(flag_reorder_blocks_and_partition) OptimizationReorder basic blocks and partition into hot and cold sectionsfreorder-functionsCommon Report Var(flag_reorder_functions) OptimizationReorder functions to improve code placementfrerun-cse-after-loopCommon Report Var(flag_rerun_cse_after_loop) Init(2) OptimizationAdd a common subexpression elimination pass after loop optimizationsfrerun-loop-optCommonDoes nothing. Preserved for backward compatibility.frounding-mathCommon Report Var(flag_rounding_math) OptimizationDisable optimizations that assume default FP rounding behaviorfsched-interblockCommon Report Var(flag_schedule_interblock) Init(1) OptimizationEnable scheduling across basic blocksfsched-pressureCommon Report Var(flag_sched_pressure) Init(0) OptimizationEnable register pressure sensitive insn schedulingfsched-specCommon Report Var(flag_schedule_speculative) Init(1) OptimizationAllow speculative motion of non-loadsfsched-spec-loadCommon Report Var(flag_schedule_speculative_load) OptimizationAllow speculative motion of some loadsfsched-spec-load-dangerousCommon Report Var(flag_schedule_speculative_load_dangerous) OptimizationAllow speculative motion of more loadsfsched-verbose=Common RejectNegative Joined-fsched-verbose=<number> Set the verbosity level of the schedulerfsched2-use-superblocksCommon Report Var(flag_sched2_use_superblocks) OptimizationIf scheduling post reload, do superblock schedulingfsched2-use-tracesCommonDoes nothing. Preserved for backward compatibility.fschedule-insnsCommon Report Var(flag_schedule_insns) OptimizationReschedule instructions before register allocationfschedule-insns2Common Report Var(flag_schedule_insns_after_reload) OptimizationReschedule instructions after register allocation; This flag should be on when a target implements non-trivial; scheduling hooks, maybe saving some information for its own sake.; On IA64, for example, this is used for correct bundling.fselective-schedulingCommon Report Var(flag_selective_scheduling) OptimizationSchedule instructions using selective scheduling algorithmfselective-scheduling2Common Report Var(flag_selective_scheduling2) OptimizationRun selective scheduling after reloadfsel-sched-pipeliningCommon Report Var(flag_sel_sched_pipelining) Init(0) OptimizationPerform software pipelining of inner loops during selective schedulingfsel-sched-pipelining-outer-loopsCommon Report Var(flag_sel_sched_pipelining_outer_loops) Init(0) OptimizationPerform software pipelining of outer loops during selective schedulingfsel-sched-reschedule-pipelinedCommon Report Var(flag_sel_sched_reschedule_pipelined) Init(0) OptimizationReschedule pipelined regions without pipelining; sched_stalled_insns means that insns can be moved prematurely from the queue; of stalled insns into the ready list.fsched-stalled-insnsCommon Report Var(flag_sched_stalled_insns) Optimization UIntegerAllow premature scheduling of queued insnsfsched-stalled-insns=Common RejectNegative Joined UInteger-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; premature removal from the queue of stalled insns into the ready list (has; an effect only if the flag 'sched_stalled_insns' is set).fsched-stalled-insns-depCommon Report Var(flag_sched_stalled_insns_dep,1) Init(1) Optimization UIntegerSet dependence distance checking in premature scheduling of queued insnsfsched-stalled-insns-dep=Common RejectNegative Joined UInteger-fsched-stalled-insns-dep=<number> Set dependence distance checking in premature scheduling of queued insnsfsched-group-heuristicCommon Report Var(flag_sched_group_heuristic) Init(1) OptimizationEnable the group heuristic in the schedulerfsched-critical-path-heuristicCommon Report Var(flag_sched_critical_path_heuristic) Init(1) OptimizationEnable the critical path heuristic in the schedulerfsched-spec-insn-heuristicCommon Report Var(flag_sched_spec_insn_heuristic) Init(1) OptimizationEnable the speculative instruction heuristic in the schedulerfsched-rank-heuristicCommon Report Var(flag_sched_rank_heuristic) Init(1) OptimizationEnable the rank heuristic in the schedulerfsched-last-insn-heuristicCommon Report Var(flag_sched_last_insn_heuristic) Init(1) OptimizationEnable the last instruction heuristic in the schedulerfsched-dep-count-heuristicCommon Report Var(flag_sched_dep_count_heuristic) Init(1) OptimizationEnable the dependent count heuristic in the schedulerfsection-anchorsCommon Report Var(flag_section_anchors) OptimizationAccess data in the same section from shared anchor pointsfseeCommonDoes nothing. Preserved for backward compatibility.fshow-columnCommon C ObjC C++ ObjC++ Report Var(flag_show_column) Init(1)Show column numbers in diagnostics, when available. Default onfsignaling-nansCommon Report Var(flag_signaling_nans) OptimizationDisable optimizations observable by IEEE signaling NaNsfsigned-zerosCommon Report Var(flag_signed_zeros) Init(1) OptimizationDisable floating point optimizations that ignore the IEEE signedness of zerofsingle-precision-constantCommon Report Var(flag_single_precision_constant) OptimizationConvert floating point constants to single precision constantsfsplit-ivs-in-unrollerCommon Report Var(flag_split_ivs_in_unroller) Init(1) OptimizationSplit lifetimes of induction variables when loops are unrolledfsplit-wide-typesCommon Report Var(flag_split_wide_types) OptimizationSplit wide types into independent registersfvariable-expansion-in-unrollerCommon Report Var(flag_variable_expansion_in_unroller) OptimizationApply variable expansion when loops are unrolledfstack-check=Common Report RejectNegative Joined-fstack-check=[no|generic|specific] Insert stack checking code into the programfstack-checkCommon ReportInsert stack checking code into the program. Same as -fstack-check=specificfstack-limitCommonfstack-limit-register=Common RejectNegative Joined-fstack-limit-register=<register> Trap if the stack goes past <register>fstack-limit-symbol=Common RejectNegative Joined-fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>fstack-protectorCommon Report Var(flag_stack_protect, 1)Use propolice as a stack protection methodfstack-protector-allCommon Report RejectNegative Var(flag_stack_protect, 2) VarExistsUse a stack protection method for every functionfstrength-reduceCommonDoes nothing. Preserved for backward compatibility.; Nonzero if we should do (language-dependent) alias analysis.; Typically, this analysis will assume that expressions of certain; types do not alias expressions of certain other types. Only used; if alias analysis (in general) is enabled.fstrict-aliasingCommon Report Var(flag_strict_aliasing) OptimizationAssume strict aliasing rules applyfstrict-overflowCommon Report Var(flag_strict_overflow)Treat signed overflow as undefinedfsyntax-onlyCommon Report Var(flag_syntax_only)Check for syntax errors, then stopftest-coverageCommon Report Var(flag_test_coverage)Create data files needed by \"gcov\"fthread-jumpsCommon Report Var(flag_thread_jumps) OptimizationPerform jump threading optimizationsftime-reportCommon Report Var(time_report)Report the time taken by each compiler passftls-model=Common Joined RejectNegative-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec] Set the default thread-local storage code generation modelftoplevel-reorderCommon Report Var(flag_toplevel_reorder) Init(2) OptimizationReorder top level functions, variables, and asmsftracerCommon Report Var(flag_tracer)Perform superblock formation via tail duplication; Zero means that floating-point math operations cannot generate a; (user-visible) trap. This is the case, for example, in nonstop; IEEE 754 arithmetic.ftrapping-mathCommon Report Var(flag_trapping_math) Init(1) OptimizationAssume floating-point operations can trapftrapvCommon Report Var(flag_trapv) OptimizationTrap for signed overflow in addition, subtraction and multiplicationftree-ccpCommon Report Var(flag_tree_ccp) OptimizationEnable SSA-CCP optimization on treesftree-store-ccpCommonDoes nothing. Preserved for backward compatibility.ftree-chCommon Report Var(flag_tree_ch) OptimizationEnable loop header copying on treesftree-copyrenameCommon Report Var(flag_tree_copyrename) OptimizationReplace SSA temporaries with better names in copiesftree-copy-propCommon Report Var(flag_tree_copy_prop) OptimizationEnable copy propagation on treesftree-store-copy-propCommonDoes nothing. Preserved for backward compatibility.ftree-cselimCommon Report Var(flag_tree_cselim) Init(2) OptimizationTransform condition stores into unconditional onesftree-switch-conversionCommon Report Var(flag_tree_switch_conversion) OptimizationPerform conversions of switch initializations.ftree-dceCommon Report Var(flag_tree_dce) OptimizationEnable SSA dead code elimination optimization on treesftree-dominator-optsCommon Report Var(flag_tree_dom) OptimizationEnable dominator optimizationsftree-dseCommon Report Var(flag_tree_dse) OptimizationEnable dead store eliminationftree-forwpropCommon Report Var(flag_tree_forwprop) Init(1) OptimizationEnable forward propagation on treesftree-freCommon Report Var(flag_tree_fre) OptimizationEnable Full Redundancy Elimination (FRE) on treesftree-loop-distributionCommon Report Var(flag_tree_loop_distribution) OptimizationEnable loop distribution on treesftree-loop-imCommon Report Var(flag_tree_loop_im) Init(1) OptimizationEnable loop invariant motion on treesftree-loop-linearCommon Report Var(flag_tree_loop_linear) OptimizationEnable linear loop transforms on treesftree-loop-ivcanonCommon Report Var(flag_tree_loop_ivcanon) Init(1) OptimizationCreate canonical induction variables in loopsftree-loop-optimizeCommon Report Var(flag_tree_loop_optimize) Init(1) OptimizationEnable loop optimizations on tree levelftree-parallelize-loops=Common Report Joined UInteger Var(flag_tree_parallelize_loops) Init(1)Enable automatic parallelization of loopsftree-phipropCommon Report Var(flag_tree_phiprop) Init(1) OptimizationEnable hoisting loads from conditional pointers.ftree-preCommon Report Var(flag_tree_pre) OptimizationEnable SSA-PRE optimization on treesftree-ptaCommon Report Var(flag_tree_pta) Init(1) OptimizationPerform function-local points-to analysis on trees.ftree-reassocCommon Report Var(flag_tree_reassoc) Init(1) OptimizationEnable reassociation on tree levelftree-saliasCommonDoes nothing. Preserved for backward compatibility.ftree-sinkCommon Report Var(flag_tree_sink) OptimizationEnable SSA code sinking on treesftree-sraCommon Report Var(flag_tree_sra) OptimizationPerform scalar replacement of aggregatesftree-terCommon Report Var(flag_tree_ter) Init(1) OptimizationReplace temporary expressions in the SSA->normal passftree-lrsCommon Report Var(flag_tree_live_range_split) OptimizationPerform live range splitting during the SSA->normal passftree-vrpCommon Report Var(flag_tree_vrp) Init(0) OptimizationPerform Value Range Propagation on treesfunit-at-a-timeCommon Report Var(flag_unit_at_a_time) Init(1) OptimizationCompile whole compilation unit at a timefunroll-loopsCommon Report Var(flag_unroll_loops) OptimizationPerform loop unrolling when iteration count is knownfunroll-all-loopsCommon Report Var(flag_unroll_all_loops) OptimizationPerform 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 infinitefunsafe-loop-optimizationsCommon Report Var(flag_unsafe_loop_optimizations) OptimizationAllow loop optimizations to assume that the loops behave in normal wayfassociative-mathCommon Report Var(flag_associative_math)Allow optimization for floating-point arithmetic which may change theresult of the operation due to rounding.freciprocal-mathCommon 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"; (e.g., nonnegative for SQRT).funsafe-math-optimizationsCommon Report Var(flag_unsafe_math_optimizations) OptimizationAllow math optimizations that may violate IEEE or ISO standardsfunswitch-loopsCommon Report Var(flag_unswitch_loops) OptimizationPerform loop unswitchingfunwind-tablesCommon Report Var(flag_unwind_tables) OptimizationJust generate unwind tables for exception handlingfuse-linker-pluginCommon Undocumentedfvar-trackingCommon Report Var(flag_var_tracking) VarExists OptimizationPerform variable trackingfvar-tracking-assignmentsCommon Report Var(flag_var_tracking_assignments) VarExists OptimizationPerform variable tracking by annotating assignmentsfvar-tracking-assignments-toggleCommon Report Var(flag_var_tracking_assignments_toggle) VarExists OptimizationToggle -fvar-tracking-assignmentsfvar-tracking-uninitCommon Report Var(flag_var_tracking_uninit) OptimizationPerform variable tracking and also tag variables that are uninitializedftree-vectorizeCommon Report Var(flag_tree_vectorize) OptimizationEnable loop vectorization on treesftree-slp-vectorizeCommon Report Var(flag_tree_slp_vectorize) Init(2) OptimizationEnable basic block vectorization (SLP) on treesfvect-cost-modelCommon Report Var(flag_vect_cost_model) OptimizationEnable use of cost model in vectorizationftree-vect-loop-versionCommon Report Var(flag_tree_vect_loop_version) Init(1) OptimizationEnable loop versioning when doing loop vectorization on treesftree-vectorizer-verbose=Common RejectNegative Joined-ftree-vectorizer-verbose=<number> Set the verbosity level of the vectorizerftree-scev-cpropCommon Report Var(flag_tree_scev_cprop) Init(1) OptimizationEnable copy propagation of scalar-evolution information.; -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; generated assembly code (perhaps while debugging the compiler itself).; -fno-verbose-asm, the default, causes the extra information; to not be added and is useful when comparing two assembler files.fverbose-asmCommon Report Var(flag_verbose_asm)Add extra commentary to assembler outputfvisibility=Common Joined RejectNegative-fvisibility=[default|internal|hidden|protected] Set the default symbol visibilityfvptCommon Report Var(flag_value_profile_transformations) OptimizationUse expression value profiles in optimizationsfwebCommon Report Var(flag_web) Init(2) OptimizationConstruct webs and split unrelated uses of single variablefwhoprCommon Var(flag_whopr)Enable partitioned link-time optimization.ftree-builtin-call-dceCommon Report Var(flag_tree_builtin_call_dce) Init(0) OptimizationEnable conditional dead code elimination for builtin callsfwhole-programCommon Report Var(flag_whole_program) Init(0) OptimizationPerform whole program optimizationsfwrapvCommon Report Var(flag_wrapv) OptimizationAssume signed arithmetic overflow wraps aroundfzero-initialized-in-bssCommon Report Var(flag_zero_initialized_in_bss) Init(1)Put zero initialized data in the bss sectiongCommon JoinedOrMissingGenerate debug information in default formatgcoffCommon JoinedOrMissing Negative(gdwarf-)Generate debug information in COFF formatgdwarf-Common Joined UInteger Var(dwarf_version) Init(2) Negative(gstabs)Generate debug information in DWARF v2 (or later) formatggdbCommon JoinedOrMissingGenerate debug information in default extended formatgstabsCommon JoinedOrMissing Negative(gstabs+)Generate debug information in STABS formatgstabs+Common JoinedOrMissing Negative(gvms)Generate debug information in extended STABS formatgno-strict-dwarfCommon RejectNegative Var(dwarf_strict,0) Init(-1)Emit DWARF additions beyond selected versiongstrict-dwarfCommon Report RejectNegative Var(dwarf_strict,1) VarExistsDon't emit DWARF additions beyond selected versiongtoggleCommon Report Var(flag_gtoggle)Toggle debug information generationgvmsCommon JoinedOrMissing Negative(gxcoff)Generate debug information in VMS formatgxcoffCommon JoinedOrMissing Negative(gxcoff+)Generate debug information in XCOFF formatgxcoff+Common JoinedOrMissing Negative(gcoff)Generate debug information in extended XCOFF formatoCommon Joined Separate-o <file> Place output into <file>pCommon Var(profile_flag)Enable function profilingpedanticCommon Var(pedantic)Issue warnings needed for strict compliance to the standardpedantic-errorsCommonLike -pedantic but issue them as errorsquietCommon Var(quiet_flag)Do not display functions compiled or elapsed timeversionCommon Var(version_flag)Display the compiler's versionwCommon Var(inhibit_warnings)Suppress warningssharedCommon RejectNegative Negative(pie)Create a shared librarypieCommon RejectNegative Negative(shared)Create a position independent executable; This comment is to ensure we retain the blank line above.
Go to most recent revision | Compare with Previous | Blame | View Log
