This array is initialized in options.c and the initializing value is displayed in following table. It is a long list. For more details, refers to [6], [8]. Note that the entities are ordered by their names.
Options
|
Description |
Flags |
--help |
Display this information |
CL_COMMON |
--output-pch= |
Refers to pch_file |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE |
--param <param>=<value> |
Set parameter <param> to value. (refer to target_switches for i386 system) |
CL_COMMON | CL_SEPARATE |
--target-help |
Display a list of the target-specific command-line options |
CL_COMMON |
--version |
Display the version information |
CL_COMMON |
-A<question>=<answer> |
Assert the <answer> to <question>. Putting '-' before <question> disables the <answer> to <question> |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE |
-C |
Do not discard comments |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-CC |
Do not discard comments in macro expansions |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-D<macro>[=<val>] |
Define a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1 |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE |
-E |
Preprocess only; do not compile, assemble or link |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_UNDOCUMENTED |
-G<number> |
Put global and static data smaller than <number> bytes into a special section (on some targets) |
CL_COMMON | CL_JOINED | CL_SEPARATE | CL_UINTEGER |
-H |
Print the name of header files as they are used |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-I <dir> |
Add <dir> to the end of the main include path. -I- Specifies to not look for other source files in the same directory as the source file named on the command line to be compiled. |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE |
-M |
Generate make dependencies |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-MD |
Generate make dependencies and compile |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_SEPARATE |
-MF <file> |
Write dependency output to the given file |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE |
-MG |
Treat missing header files as generated files |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-MM |
Like -M but ignore system header files |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-MMD |
Like -MD but ignore system header files |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_SEPARATE |
-MP |
Generate phony targets for all headers |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-MQ <target> |
Add a MAKE-quoted target |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE |
-MT <target> |
Add an unquoted target |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE |
-O<number> |
Set optimization level to <number> |
CL_COMMON | CL_JOINED | CL_MISSING_OK |
-Os |
Optimize for space rather than speed |
CL_COMMON |
-P |
Do not generate #line directives |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-U<macro> |
Undefine <macro> |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE |
-W |
This switch is deprecated; use -Wextra instead |
CL_COMMON | CL_REJECT_NEGATIVE |
-Wabi |
Refers to warn_abi |
CL_CXX | CL_ObjCXX |
-Waggregate-return |
Warn about returning structures, unions or arrays |
CL_COMMON |
-Wall |
Enable most warning messages |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wbad-function-cast |
Warn about casting functions to incompatible types |
CL_C | CL_ObjC |
-Wcast-align |
Warn about pointer casts which increase alignment |
CL_COMMON |
-Wcast-qual |
Warn about casts which discard qualifiers |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wchar-subscripts |
Warn about subscripts whose type is "char" |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wcomment |
Warn about possibly nested block comments, and C++ comments spanning more than one physical line |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wcomments |
Synonym for -Wcomment |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wconversion |
Warn about possibly confusing type conversions |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wctor-dtor-privacy |
Warn when all constructors and destructors are private |
CL_CXX | CL_ObjCXX |
-Wdeclaration-after-statement |
Warn when a declaration is found after a statement |
CL_C | CL_ObjC |
-Wdeprecated |
Warn about deprecated compiler features |
CL_CXX | CL_ObjCXX |
-Wdeprecated-declarations |
Warn about uses of __attribute__((deprecated)) declarations |
CL_COMMON |
-Wdisabled-optimization |
Warn when an optimization pass is disabled |
CL_COMMON |
-Wdiv-by-zero |
Warn about compile-time integer division by zero |
CL_C | CL_ObjC |
-Weffc++ |
Warn about violations of Effective C++ style rules |
CL_CXX | CL_ObjCXX |
-Wendif-labels |
Warn about stray tokens after #elif and #endif |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Werror |
Treat all warnings as errors |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_COMMON |
-Werror-implicit-function-declaration |
Make implicit function declarations an error |
CL_C | CL_ObjC | CL_REJECT_NEGATIVE |
-Wextra |
Print extra (possibly unwanted) warnings |
CL_COMMON |
-Wfloat-equal |
Warn if testing floating point numbers for equality |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wformat |
Warn about printf/scanf/strftime/ strfmon format string anomalies |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wformat-extra-args |
Warn if passing too many arguments to a function for its format string |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wformat-nonliteral |
Warn about format strings that are not literals |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wformat-security |
Warn about possible security problems with format functions |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wformat-y2k |
Warn about strftime formats yielding 2-digit years |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wformat-zero-length |
Refers to warn_format_zero_length |
CL_C | CL_ObjC |
-Wformat= |
Warn about printf/scanf/strftime/strfmon format string anomalies |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED |
-Wimplicit |
Refers to warn_implicit |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wimplicit-function-declaration |
Warn about implicit function declarations |
CL_C | CL_ObjC |
-Wimplicit-int |
Warn when a declaration does not specify a type |
CL_C | CL_ObjC |
-Wimport |
Deprecated. This switch has no effect. |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Winit-self |
Warn about variables which are initialized to themselves |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Winline |
Warn when an inlined function cannot be inlined |
CL_COMMON |
-Winvalid-offsetof |
Warn about invalid uses of the "offsetof" macro |
CL_CXX | CL_ObjCXX |
-Winvalid-pch |
Warn about PCH files that are found but not used |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wlarger-than-<number> |
Warn if an object is larger than <number> bytes |
CL_COMMON | CL_JOINED | CL_REJECT_NEGATIVE | CL_UINTEGER |
-Wlong-long |
Do not warn about using "long long" when –pedantic |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wmain |
Warn about suspicious declarations of "main" |
CL_C | CL_ObjC |
-Wmissing-braces |
Warn about possibly missing braces around initializers |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wmissing-declarations |
Warn about global functions without previous declarations |
CL_C | CL_ObjC |
-Wmissing-format-attribute |
Warn about functions which might be candidates for format attributes |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wmissing-noreturn |
Warn about functions which might be candidates for __attribute__((noreturn)) |
CL_COMMON |
-Wmissing-prototypes |
Warn about global functions without prototypes |
CL_C | CL_ObjC |
-Wmultichar |
Warn about use of multi-character character constants |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wnested-externs |
Warn about "extern" declarations not at file scope |
CL_C | CL_ObjC |
-Wnon-template-friend |
Warn when non-templatized friend functions are declared within a template |
CL_CXX | CL_ObjCXX |
-Wnon-virtual-dtor |
Warn about non-virtual destructors |
CL_CXX | CL_ObjCXX |
-Wnonnull |
Refers to warn_nonnull |
CL_C | CL_ObjC |
-Wold-style-cast |
Warn if a C-style cast is used in a program |
CL_CXX | CL_ObjCXX |
-Wold-style-definition |
Warn if an old-style parameter definition is used |
CL_C | CL_ObjC |
-Woverloaded-virtual |
Warn about overloaded virtual function names |
CL_CXX | CL_ObjCXX |
-Wpacked |
Warn when the packed attribute has no effect on struct layout |
CL_COMMON |
-Wpadded |
Warn when padding is required to align structure members |
CL_COMMON |
-Wparentheses |
Warn about possibly missing parentheses |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wpmf-conversions |
Warn when converting the type of pointers to member functions |
CL_CXX | CL_ObjCXX |
-Wpointer-arith |
Warn about function pointer arithmetic |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wprotocol |
Warn if inherited methods are unimplemented |
CL_ObjC | CL_ObjCXX |
-Wredundant-decls |
Warn about multiple declarations of the same object |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wreorder |
Warn when the compiler reorders code |
CL_CXX | CL_ObjCXX |
-Wreturn-type |
Warn whenever a function's return type defaults to "int" (C), or about inconsistent return types (C++) |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wsequence-point |
Warn about possible violations of sequence point rules |
CL_C | CL_ObjC |
-Wshadow |
Warn when one local variable shadows another |
CL_COMMON |
-Wsign-compare |
Warn about signed-unsigned comparisons |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wsign-promo |
Warn when overload promotes from unsigned to signed |
CL_CXX | CL_ObjCXX |
-Wstrict-aliasing |
Warn about code which might break strict aliasing rules |
CL_COMMON |
-Wstrict-prototypes |
Warn if a function is declared or defined without specifying the argument types. |
CL_C | CL_ObjC |
-Wswitch |
Warn about enumerated switches, with no default, missing a case |
CL_COMMON |
-Wswitch-default |
Warn about enumerated switches missing a "default:" statement |
CL_COMMON |
-Wswitch-enum |
Warn about all enumerated switches missing a specific case |
CL_COMMON |
-Wsynth |
Warn when synthesis behavior differs from Cfront |
CL_CXX | CL_ObjCXX |
-Wsystem-headers |
Do not suppress warnings from system headers |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_COMMON |
-Wtraditional |
Warn about features not present in traditional C |
CL_C | CL_ObjC |
-Wtrigraphs |
Warn if trigraphs are encountered that might affect the meaning of the program |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wundef |
Warn if an undefined macro is used in an #if directive |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wuninitialized |
Warn about uninitialized automatic variables |
CL_COMMON |
-Wunknown-pragmas |
Warn about unrecognized pragmas |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wunreachable-code |
Warn about code that will never be executed |
CL_COMMON |
-Wunused |
Enable all -Wunused- warnings |
CL_COMMON |
-Wunused-function |
Warn when a function is unused |
CL_COMMON |
-Wunused-label |
Warn when a label is unused |
CL_COMMON |
-Wunused-macros |
Warn about macros defined in the main file that are not used |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-Wunused-parameter |
Warn when a function parameter is unused |
CL_COMMON |
-Wunused-value |
Warn when an expression value is unused |
CL_COMMON |
-Wunused-variable |
Warn when a variable is unused |
CL_COMMON |
-Wwrite-strings |
Give strings the type "array of char" |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-ansi |
A synonym for -std=c89 (for C) or -std=c++98 (for C++) |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-aux-info |
-aux-info <file> Emit declaration information into <file> |
CL_COMMON | CL_SEPARATE |
-aux-info= |
Refers to aux_info_file_name |
CL_COMMON | CL_JOINED |
-auxbase |
Refers to aux_base_name |
CL_COMMON | CL_SEPARATE |
-auxbase-strip |
Refers to aux_base_name |
CL_COMMON | CL_SEPARATE |
-d<letters> |
Enable dumps from specific passes of the compiler |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_JOINED |
-dumpbase <file> |
Set the file basename to be used for dumps |
CL_COMMON | CL_SEPARATE |
-fPIC |
Refers to flag_pic |
CL_COMMON |
-fPIE |
Refers to flag_pie |
CL_COMMON |
-fabi-version= |
Refers to flag_abi_version |
CL_COMMON | CL_JOINED | CL_UINTEGER |
-faccess-control |
Enforce class member access control semantics |
CL_CXX | CL_ObjCXX |
-falign-functions |
Refers to align_functions |
CL_COMMON |
-falign-functions= |
Refers to align_functions |
CL_COMMON | CL_JOINED | CL_REJECT_NEGATIVE | CL_UINTEGER |
-falign-jumps |
Refers to align_jumps |
CL_COMMON |
-falign-jumps= |
Refers to align_jumps |
CL_COMMON | CL_JOINED | CL_REJECT_NEGATIVE | CL_UINTEGER |
-falign-labels |
Refers to align_labels |
CL_COMMON |
-falign-labels= |
Refers to align_labels |
CL_COMMON | CL_JOINED | CL_REJECT_NEGATIVE | CL_UINTEGER |
-falign-loops |
Refers to align_loops |
CL_COMMON |
-falign-loops= |
Refers to align_loops |
CL_COMMON | CL_JOINED | CL_REJECT_NEGATIVE | CL_UINTEGER |
-fall-virtual |
Depricated, not support |
CL_CXX | CL_ObjCXX |
-falt-external-templates |
Depricated, not support |
CL_CXX | CL_ObjCXX |
-fargument-alias |
Specify that arguments may alias each other and globals |
CL_COMMON |
-fargument-noalias |
Assume arguments may alias globals but not each other |
CL_COMMON |
-fargument-noalias-global |
Assume arguments alias neither each other nor globals |
CL_COMMON |
-fasm |
Recognize the "asm" keyword |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-fasynchronous-unwind-tables |
Refer to flag_unwind_tables |
CL_COMMON |
-fbounds-check |
Refer to flag_bounds_check |
CL_COMMON |
-fbranch-count-reg |
Refer to flag_branch_on_count_reg |
CL_COMMON |
-fbranch-probabilities |
Refer to flag_branch_probabilities |
CL_COMMON |
-fbranch-target-load-optimize |
Perform branch target load optimization before prologue / epilogue threading |
CL_COMMON |
-fbranch-target-load-optimize2 |
Perform branch target load optimization after prologue / epilogue threading |
CL_COMMON |
-fbuiltin |
Recognize built-in functions |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-fbuiltin-<function> |
Disable speicified built-in function |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED |
-fcall-saved-<register> |
Mark <register> as being preserved across functions |
CL_COMMON | CL_JOINED | CL_REJECT_NEGATIVE |
-fcall-used-<register> |
Mark <register> as being corrupted by function calls |
CL_COMMON | CL_JOINED | CL_REJECT_NEGATIVE |
-fcaller-saves |
Save/restore registers around function calls |
CL_COMMON |
-fcheck-new |
Check the return value of new |
CL_CXX | CL_ObjCXX |
-fcommon |
Do not put uninitialized globals in the common section |
CL_COMMON |
-fcond-mismatch |
Allow the arguments of the '?' operator to have different types |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-fconserve-space |
Reduce the size of object files |
CL_CXX | CL_ObjCXX |
-fconst-strings |
Make string literals "const char[]" not "char[]" |
CL_CXX | CL_ObjCXX |
-fcprop-registers |
Refer to flag_cprop_registers |
CL_COMMON |
-fcrossjumping |
Refer to flag_crossjumping |
CL_COMMON |
-fcse-follow-jumps |
Refer to flag_cse_follow_jumps |
CL_COMMON |
-fcse-skip-blocks |
Refer to flag_cse_skip_blocks |
CL_COMMON |
-fdata-sections |
Place data items into their own section |
CL_COMMON |
-fdefault-inline |
Inline member functions by default |
CL_CXX | CL_ObjCXX |
-fdefer-pop |
Refer to flag_defer_pop |
CL_COMMON |
-fdelayed-branch |
Refer to flag_delayed_branch |
CL_COMMON |
-fdelete-null-pointer-checks |
Refe to flag_delete_null_pointer_checks |
CL_COMMON |
-fdiagnostics-show-location=[once|every-line] |
How often to emit source location at the beginning of line-wrapped diagnostics |
CL_COMMON | CL_JOINED | CL_REJECT_NEGATIVE |
-fdollars-in-identifiers |
Permit '$' as an identifier character |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-fdump-<type> |
Dump various compiler internals to a file |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_REJECT_NEGATIVE |
-fdump-unnumbered |
Suppress output of instruction numbers and line number notes in debugging dumps |
CL_COMMON |
-felide-constructors |
Refer to flag_elide_constructors |
CL_CXX | CL_ObjCXX |
-feliminate-dwarf2-dups |
Perform DWARF2 duplicate elimination |
CL_COMMON |
-feliminate-unused-debug-symbols |
Emit debug info only for used symbol |
CL_COMMON |
-feliminate-unused-debug-types |
Perform unused type elimination in debug info |
CL_COMMON |
-fenforce-eh-specs |
Generate code to check exception specifications |
CL_CXX | CL_ObjCXX |
-fenum-int-equiv |
Depricated, not support |
CL_CXX | CL_ObjCXX |
-fexceptions |
Enable exception handling |
CL_COMMON |
-fexec-charset=<cset> |
Convert all strings and character constants to character set <cset> |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_REJECT_NEGATIVE |
-fexpensive-optimizations |
Perform a number of minor, expensive optimizations |
CL_COMMON |
-fexternal-templates |
Depricated, not support |
CL_CXX | CL_ObjCXX |
-ffast-math |
Refer to set_fast_math_flags |
CL_COMMON |
-ffinite-math-only |
Assume no NaNs or infinities are generated |
CL_COMMON |
-ffixed-<register> |
Mark <register> as being unavailable to the compiler |
CL_COMMON | CL_JOINED | CL_REJECT_NEGATIVE |
-ffloat-store |
Do not store floats in registers |
CL_COMMON |
-ffor-scope |
Refer to flag_new_for_scope |
CL_CXX | CL_ObjCXX |
-fforce-addr |
Copy memory address constants into registers before use |
CL_COMMON |
-fforce-mem |
Copy memory operands into registers before use |
CL_COMMON |
-ffreestanding |
Do not assume that standard C libraries and "main" exist |
CL_C | CL_ObjC |
-ffunction-cse |
Allow function addresses to be held in registers |
CL_COMMON |
-ffunction-sections |
Place each function into its own section |
CL_COMMON |
-fgcse |
Perform global common subexpression elimination |
CL_COMMON |
-fgcse-las |
The global common subexpression elimination pass eliminates redundant loads that come after stores to the same memory location (both partial and full redundancies). |
CL_COMMON |
-fgcse-lm |
Global common subexpression elimination will attempt to move loads which are only killed by stores into themselves. This allows a loop containing a load/store sequence to be changed to a load outside the loop, and a copy/store within the loop. |
CL_COMMON |
-fgcse-sm |
A store motion pass is run after global common subexpression elimination. This pass will attempt to move stores out of loops. When used in conjunction with ‘-fgcse-lm’, loops containing a load/store sequence can be changed to a load before the loop and a store after the loop. |
CL_COMMON |
-fgnu-keywords |
Recognize GNU-defined keywords |
CL_CXX | CL_ObjCXX |
-fguess-branch-probability |
Refer to flag_guess_branch_prob |
CL_COMMON |
-fguiding-decls |
Depricated, not support |
CL_CXX | CL_ObjCXX |
-fhandle-exceptions |
Rename to -fexceptions |
CL_CXX | CL_ObjCXX |
-fhonor-std |
Depricated, not support |
CL_CXX | CL_ObjCXX |
-fhosted |
Assume normal C execution environment |
CL_C | CL_ObjC |
-fhuge-objects |
Enable support for huge objects |
CL_CXX | CL_ObjCXX |
-fident |
Process #ident directives |
CL_COMMON |
-fif-conversion |
Perform conversion of conditional jumps to branchless equivalents. This include use of conditional moves, min, max, set flags and abs instructions, and some tricks doable by standard arithmetics. The use of conditional execution on chips where it is available is controlled by if-conversion2. |
CL_COMMON |
-fif-conversion2 |
Perform conversion of conditional jumps to conditional execution |
CL_COMMON |
-fimplement-inlines |
Refer to flag_implicit_inline_templates |
CL_CXX | CL_ObjCXX |
-fimplicit-inline-templates |
Refer to flag_implicit_templates |
CL_CXX | CL_ObjCXX |
-fimplicit-templates |
Emit implicit instantiations of templates |
CL_CXX | CL_ObjCXX |
-finhibit-size-directive |
Do not generate .size directives |
CL_COMMON |
-finline |
Refer to flag_no_inline |
CL_COMMON |
-finline-functions |
Refer to flag_inline_functions |
CL_COMMON |
-finline-limit-<number> |
Refer to table Optimization Options: max-inline-insns-single, max-inline-insns-auto, max-inline-insns-rtl |
CL_COMMON | CL_JOINED | CL_REJECT_NEGATIVE | CL_UINTEGER |
-finline-limit=<number> |
||
-finput-charset=<cset> |
Specify the default character set for source files |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_REJECT_NEGATIVE |
-finstrument-functions |
Refer to flag_instrument_function_entry_exit |
CL_COMMON |
-fkeep-inline-functions |
Refer to flag_keep_inline_functions |
CL_COMMON |
-fkeep-static-consts |
Refer to flag_keep_static_consts |
CL_COMMON |
-flabels-ok |
Depricated, not support |
CL_CXX | CL_ObjCXX |
-fleading-underscore |
Give external symbols a leading underscore |
CL_COMMON |
-floop-optimize |
Refer to flag_loop_optimize |
CL_COMMON |
-fmath-errno |
Set errno after built-in math functions |
CL_COMMON |
-fmem-report |
Report on permanent memory allocation |
CL_COMMON |
-fmerge-all-constants |
Attempt to merge identical constants and constant variables |
CL_COMMON |
-fmerge-constants |
Attempt to merge identical constants across compilation units |
CL_COMMON |
-fmessage-length=<number> |
Limit diagnostics to <number> characters per line. 0 suppresses line-wrapping |
CL_COMMON | CL_JOINED | CL_REJECT_NEGATIVE | CL_UINTEGER |
-fmove-all-movables |
Force all loop invariant computations out of loops |
CL_COMMON |
-fms-extensions |
Don't warn about uses of Microsoft extensions |
CL_C | CL_CXX | CL_ObjC | CL_ObjCXX |
-fname-mangling-version- |
Depricated |
CL_CXX | CL_ObjCXX | CL_JOINED |
-fnew-abi |
Depricated |
CL_CXX | CL_ObjCXX |
-fnew-ra |
Use graph-coloring register allocation |
CL_COMMON |
-fnon-call-exceptions |
Refer to flag_non_call_exceptions |
CL_COMMON |
-fnonansi-builtins |
Refer to flag_no_nonansi_builtin |
CL_CXX | CL_ObjCXX |
-fnonnull-objects |
Depricated |
CL_CXX | CL_ObjCXX |
-fold-unroll-all-loops |
Refer to flag_old_unroll_all_loops |
CL_COMMON |
-fold-unroll-loops |
Refer to flag_old_unroll_loops |
CL_COMMON |
-fomit-frame-pointer |
Refer to flag_omit_frame_pointer |
CL_COMMON |
-foperator-names |
Recognize C++ kewords like and, bitand, bitor, compl, not, or, and xor from being recognized by the compiler as alternate operators for &&, &, |, ~, !, ||, and ^ respectively. This will prevent breaking old code by making the names available to be used for other purposes. |
CL_CXX | CL_ObjCXX |
-foptimize-register-move |
Do the full register move optimization pass |
CL_COMMON |