###Driver -CLASSPATHJava Separate Alias(fclasspath=) -all-warningsAda AdaWhy AdaSCIL Alias(Wall) -all-warningsC ObjC C++ ObjC++ Warning Alias(Wall) -all-warningsFortran Alias(Wall) -all-warningsJava Alias(Wall) -ansiC ObjC C++ ObjC++ Alias(ansi) -assembleDriver Alias(S) -assertC ObjC C++ ObjC++ Separate Alias(A) MissingArgError(assertion missing after %qs) -assertFortran Separate Alias(A) -assert=C ObjC C++ ObjC++ Joined Alias(A) MissingArgError(assertion missing after %qs) -assert=Fortran Joined Alias(A) -bootclasspathJava Separate Alias(fbootclasspath=) -classpathJava Separate Alias(fclasspath=) -commentsC ObjC C++ ObjC++ Alias(C) -commentsFortran Alias(C) -comments-in-macrosC ObjC C++ ObjC++ Alias(CC) -comments-in-macrosFortran Alias(CC) -compileDriver Alias(c) -coverageDriver Alias(coverage) -debugCommon Alias(g) -define-macroC ObjC C++ ObjC++ Separate Alias(D) MissingArgError(macro name missing after %qs) -define-macroFortran Separate Alias(D) -define-macro=C ObjC C++ ObjC++ Joined Alias(D) MissingArgError(macro name missing after %qs) -define-macro=Fortran Joined Alias(D) -dependenciesC ObjC C++ ObjC++ Alias(M) -dependenciesFortran Alias(M) -dependenciesJava Alias(M) -dumpC ObjC C++ ObjC++ Separate Alias(d) -dumpCommon Separate Alias(d) -dumpFortran Separate Alias(d) -dump=C ObjC C++ ObjC++ Joined Alias(d) -dump=Common Joined Alias(d) -dump=Fortran Joined Alias(d) -dumpbaseCommon Separate Alias(dumpbase) -dumpdirCommon Separate Alias(dumpdir) -encodingJava Separate Alias(fencoding=) -entryDriver Separate Alias(e) -entry=Driver Joined Alias(e) -extdirsJava Separate Alias(fextdirs=) -extra-warningsCommon Warning Alias(Wextra) -for-assemblerDriver Separate Alias(Xassembler) -for-assembler=Driver JoinedOrMissing Alias(Xassembler) -for-linkerDriver Separate Alias(Xlinker) -for-linker=Driver JoinedOrMissing Alias(Xlinker) -force-linkDriver Separate Alias(u) -force-link=Driver Joined Alias(u) -helpCommon Driver Var(help_flag)Display this information -help=Common Driver Report Joined--help= Display descriptions of a specific class of options. is one or more of optimizers, target, warnings, undocumented, params -imacrosC ObjC C++ ObjC++ Separate Alias(imacros) MissingArgError(missing filename after %qs) -imacros=C ObjC C++ ObjC++ Joined Alias(imacros) MissingArgError(missing filename after %qs) -includeC ObjC C++ ObjC++ Separate Alias(include) MissingArgError(missing filename after %qs) -include-barrierAda AdaWhy AdaSCIL Alias(I, -) -include-barrierC ObjC C++ ObjC++ Alias(I, -) -include-barrierFortran Alias(I, -) -include-directoryAda AdaWhy AdaSCIL Separate Alias(I) -include-directoryC ObjC C++ ObjC++ Separate Alias(I) MissingArgError(missing path after %qs) -include-directoryFortran Separate Alias(I) -include-directoryJava Separate Alias(I) -include-directory-afterC ObjC C++ ObjC++ Separate Alias(idirafter) MissingArgError(missing path after %qs) -include-directory-afterFortran Separate Alias(idirafter) -include-directory-after=C ObjC C++ ObjC++ Joined Alias(idirafter) MissingArgError(missing path after %qs) -include-directory-after=Fortran Joined Alias(idirafter) -include-directory=Ada AdaWhy AdaSCIL Joined Alias(I) -include-directory=C ObjC C++ ObjC++ Joined Alias(I) MissingArgError(missing path after %qs) -include-directory=Fortran Joined Alias(I) -include-directory=Java Joined Alias(I) -include-prefixC ObjC C++ ObjC++ Separate Alias(iprefix) -include-prefixFortran Separate Alias(iprefix) -include-prefix=C ObjC C++ ObjC++ JoinedOrMissing Alias(iprefix) -include-prefix=Fortran JoinedOrMissing Alias(iprefix) -include-with-prefixC ObjC C++ ObjC++ Separate Alias(iwithprefix) -include-with-prefix-afterC ObjC C++ ObjC++ Separate Alias(iwithprefix) -include-with-prefix-after=C ObjC C++ ObjC++ JoinedOrMissing Alias(iwithprefix) -include-with-prefix-beforeC ObjC C++ ObjC++ Separate Alias(iwithprefixbefore) -include-with-prefix-before=C ObjC C++ ObjC++ JoinedOrMissing Alias(iwithprefixbefore) -include-with-prefix=C ObjC C++ ObjC++ JoinedOrMissing Alias(iwithprefix) -include=C ObjC C++ ObjC++ Joined Alias(include) MissingArgError(missing filename after %qs) -languageDriver Separate Alias(x) -language=Driver Joined Alias(x) -library-directoryDriver Separate Alias(L) -library-directory=Driver Joined Alias(L) -no-canonical-prefixesDriver Alias(no-canonical-prefixes) -no-integrated-cppDriver Alias(no-integrated-cpp) -no-line-commandsC ObjC C++ ObjC++ Alias(P) -no-line-commandsFortran Alias(P) -no-standard-includesAda AdaWhy AdaSCIL Alias(nostdinc) -no-standard-includesC ObjC C++ ObjC++ Alias(nostdinc) -no-standard-includesFortran Alias(nostdinc) -no-standard-librariesAda AdaWhy AdaSCIL Alias(nostdlib) -no-standard-librariesDriver Alias(nostdlib) -no-sysroot-suffixDriver Var(no_sysroot_suffix) -no-warningsC ObjC C++ ObjC++ Alias(w) -no-warningsCommon Alias(w) -optimizeCommon Alias(O) -outputC ObjC C++ ObjC++ Separate Alias(o) -outputCommon Driver Separate Alias(o) MissingArgError(missing filename after %qs) -outputFortran Separate Alias(o) -output-class-directoryJava Separate Alias(foutput-class-dir=) -output-class-directory=Java Joined Alias(foutput-class-dir=) -output-pch=C ObjC C++ ObjC++ Joined Separate -output=C ObjC C++ ObjC++ Joined Alias(o) -output=Common Driver Joined Alias(o) MissingArgError(missing filename after %qs) -output=Fortran Joined Alias(o) -paramCommon Separate--param = Set parameter to value. See below for a complete list of parameters -param=Common Joined Alias(-param) -pass-exit-codesDriver Alias(pass-exit-codes) -pedanticC ObjC C++ ObjC++ Alias(pedantic) -pedanticCommon Alias(Wpedantic) -pedantic-errorsCommon Alias(pedantic-errors) -pieDriver Alias(pie) -pipeDriver Alias(pipe) -prefixDriver Separate Alias(B) -prefix=Driver JoinedOrMissing Alias(B) -preprocessC ObjC C++ ObjC++ Undocumented Alias(E) -preprocessDriver Alias(E) -preprocessFortran Undocumented Alias(E) -print-file-nameDriver Separate Alias(print-file-name=) -print-file-name=Driver JoinedOrMissing Alias(print-file-name=) -print-libgcc-file-nameDriver Alias(print-libgcc-file-name) -print-missing-file-dependenciesC ObjC C++ ObjC++ Alias(MG) -print-missing-file-dependenciesFortran Alias(MG) -print-multi-directoryDriver Alias(print-multi-directory) -print-multi-libDriver Alias(print-multi-lib) -print-multi-os-directoryDriver Alias(print-multi-os-directory) -print-multiarchDriver Alias(print-multiarch) -print-prog-nameDriver Separate Alias(print-prog-name=) -print-prog-name=Driver JoinedOrMissing Alias(print-prog-name=) -print-search-dirsDriver Alias(print-search-dirs) -print-sysrootDriver Alias(print-sysroot) -print-sysroot-headers-suffixDriver Alias(print-sysroot-headers-suffix) -profileCommon Alias(p) -resourceJava Separate Alias(fcompile-resource=) -resource=Java Joined Alias(fcompile-resource=) -save-tempsDriver Alias(save-temps) -sharedDriver Alias(shared) -specsDriver Separate Alias(specs=) -specs=Driver Joined Alias(specs=) -staticDriver Alias(static) -symbolicDriver Alias(symbolic) -sysrootDriver Separate Alias(-sysroot=) -sysroot=Driver JoinedOrMissing -target-helpCommon DriverAlias for --help=target -timeDriver Alias(time) -trace-includesC ObjC C++ ObjC++ Alias(H) -trace-includesFortran Alias(H) -traditionalDriver Alias(traditional) -traditional-cppC ObjC C++ ObjC++ Alias(traditional-cpp) -trigraphsC ObjC C++ ObjC++ Alias(trigraphs) -undefine-macroC ObjC C++ ObjC++ Separate Alias(U) MissingArgError(macro name missing after %qs) -undefine-macroFortran Separate Alias(U) -undefine-macro=C ObjC C++ ObjC++ Joined Alias(U) MissingArgError(macro name missing after %qs) -undefine-macro=Fortran Joined Alias(U) -user-dependenciesC ObjC C++ ObjC++ Alias(MM) -user-dependenciesFortran Alias(MM) -user-dependenciesJava Alias(MM) -verboseCommon C ObjC C++ ObjC++ Alias(v) -verboseDriver Alias(v) -verboseFortran Alias(v) -versionCommon Driver -write-dependenciesC ObjC C++ ObjC++ NoDriverArg Separate Alias(MD) MissingArgError(missing filename after %qs) -write-dependenciesFortran NoDriverArg Separate Alias(MD) -write-user-dependenciesC ObjC C++ ObjC++ NoDriverArg Separate Alias(MMD) MissingArgError(missing filename after %qs) -write-user-dependenciesFortran NoDriverArg Separate Alias(MMD) AC ObjC C++ ObjC++ Joined Separate MissingArgError(assertion missing after %qs)-A= Assert the to . Putting '-' before disables the to AFortran Joined Separate BDriver Joined Separate CC ObjC C++ ObjC++Do not discard comments CDriver CFortran CCC ObjC C++ ObjC++Do not discard comments in macro expansions CCFortran CLASSPATHJava Separate Alias(fclasspath=) DC ObjC C++ ObjC++ Joined Separate MissingArgError(macro name missing after %qs)-D[=] Define a with as its value. If just is given, is taken to be 1 DDriver Joined Separate DFortran Joined Separate EC ObjC C++ ObjC++ Undocumented Var(flag_preprocess_only) EDriver EFortran Undocumented EBDriver ELDriver EnumName(diagnostic_prefixing_rule) Type(int) EnumName(excess_precision) Type(enum excess_precision) UnknownError(unknown excess precision style %qs) EnumName(fp_contract_mode) Type(enum fp_contract_mode) UnknownError(unknown floating point contraction style %qs) EnumName(ira_algorithm) Type(enum ira_algorithm) UnknownError(unknown IRA algorithm %qs) EnumName(ira_region) Type(enum ira_region) UnknownError(unknown IRA region %qs) EnumName(mips_abi) Type(int)Known MIPS ABIs (for use with the -mabi= option): EnumName(mips_arch_opt_value) Type(int)Known MIPS CPUs (for use with the -march= and -mtune= options): EnumName(mips_code_readable_setting) Type(enum mips_code_readable_setting)Valid arguments to -mcode-readable=: EnumName(mips_mips_opt_value) Type(int)Known MIPS ISA levels (for use with the -mips option): EnumName(mips_r10k_cache_barrier_setting) Type(enum mips_r10k_cache_barrier_setting)Valid arguments to -mr10k-cache-barrier=: EnumName(stack_reuse_level) Type(enum stack_reuse_level) UnknownError(unknown Stack Reuse Level %qs) EnumName(symbol_visibility) Type(enum symbol_visibility) UnknownError(unrecognized visibility value %qs) EnumName(tls_model) Type(enum tls_model) UnknownError(unknown TLS model %qs) EnumValueEnum(diagnostic_prefixing_rule) String(every-line) Value(DIAGNOSTICS_SHOW_PREFIX_EVERY_LINE) EnumValueEnum(diagnostic_prefixing_rule) String(once) Value(DIAGNOSTICS_SHOW_PREFIX_ONCE) EnumValueEnum(excess_precision) String(fast) Value(EXCESS_PRECISION_FAST) EnumValueEnum(excess_precision) String(standard) Value(EXCESS_PRECISION_STANDARD) EnumValueEnum(fp_contract_mode) String(fast) Value(FP_CONTRACT_FAST) EnumValueEnum(fp_contract_mode) String(off) Value(FP_CONTRACT_OFF) EnumValueEnum(fp_contract_mode) String(on) Value(FP_CONTRACT_OFF) EnumValueEnum(ira_algorithm) String(CB) Value(IRA_ALGORITHM_CB) EnumValueEnum(ira_algorithm) String(priority) Value(IRA_ALGORITHM_PRIORITY) EnumValueEnum(ira_region) String(all) Value(IRA_REGION_ALL) EnumValueEnum(ira_region) String(mixed) Value(IRA_REGION_MIXED) EnumValueEnum(ira_region) String(one) Value(IRA_REGION_ONE) EnumValueEnum(mips_abi) String(32) Value(ABI_32) EnumValueEnum(mips_abi) String(64) Value(ABI_64) EnumValueEnum(mips_abi) String(eabi) Value(ABI_EABI) EnumValueEnum(mips_abi) String(n32) Value(ABI_N32) EnumValueEnum(mips_abi) String(o64) Value(ABI_O64) EnumValueEnum(mips_arch_opt_value) String(10000) Value(26) EnumValueEnum(mips_arch_opt_value) String(1004kc) Value(70) Canonical EnumValueEnum(mips_arch_opt_value) String(1004kf) Value(72) Canonical EnumValueEnum(mips_arch_opt_value) String(1004kf1_1) Value(73) Canonical EnumValueEnum(mips_arch_opt_value) String(1004kf2_1) Value(71) Canonical EnumValueEnum(mips_arch_opt_value) String(10k) Value(26) EnumValueEnum(mips_arch_opt_value) String(12000) Value(27) EnumValueEnum(mips_arch_opt_value) String(12k) Value(27) EnumValueEnum(mips_arch_opt_value) String(14000) Value(28) EnumValueEnum(mips_arch_opt_value) String(14k) Value(28) EnumValueEnum(mips_arch_opt_value) String(16000) Value(29) EnumValueEnum(mips_arch_opt_value) String(16k) Value(29) EnumValueEnum(mips_arch_opt_value) String(2000) Value(9) EnumValueEnum(mips_arch_opt_value) String(20kc) Value(76) Canonical EnumValueEnum(mips_arch_opt_value) String(24kc) Value(44) Canonical EnumValueEnum(mips_arch_opt_value) String(24kec) Value(50) Canonical EnumValueEnum(mips_arch_opt_value) String(24kef) Value(52) Canonical EnumValueEnum(mips_arch_opt_value) String(24kef1_1) Value(53) Canonical EnumValueEnum(mips_arch_opt_value) String(24kef2_1) Value(51) Canonical EnumValueEnum(mips_arch_opt_value) String(24kefx) Value(54) Canonical EnumValueEnum(mips_arch_opt_value) String(24kex) Value(55) Canonical EnumValueEnum(mips_arch_opt_value) String(24kf) Value(46) Canonical EnumValueEnum(mips_arch_opt_value) String(24kf1_1) Value(47) Canonical EnumValueEnum(mips_arch_opt_value) String(24kf2_1) Value(45) Canonical EnumValueEnum(mips_arch_opt_value) String(24kfx) Value(48) Canonical EnumValueEnum(mips_arch_opt_value) String(24kx) Value(49) Canonical EnumValueEnum(mips_arch_opt_value) String(2k) Value(9) EnumValueEnum(mips_arch_opt_value) String(3000) Value(8) EnumValueEnum(mips_arch_opt_value) String(34kc) Value(56) Canonical EnumValueEnum(mips_arch_opt_value) String(34kf) Value(58) Canonical EnumValueEnum(mips_arch_opt_value) String(34kf1_1) Value(59) Canonical EnumValueEnum(mips_arch_opt_value) String(34kf2_1) Value(57) Canonical EnumValueEnum(mips_arch_opt_value) String(34kfx) Value(60) Canonical EnumValueEnum(mips_arch_opt_value) String(34kn) Value(62) Canonical EnumValueEnum(mips_arch_opt_value) String(34kx) Value(61) Canonical EnumValueEnum(mips_arch_opt_value) String(3900) Value(10) EnumValueEnum(mips_arch_opt_value) String(3k) Value(8) EnumValueEnum(mips_arch_opt_value) String(4000) Value(12) EnumValueEnum(mips_arch_opt_value) String(4100) Value(13) EnumValueEnum(mips_arch_opt_value) String(4111) Value(14) EnumValueEnum(mips_arch_opt_value) String(4120) Value(15) EnumValueEnum(mips_arch_opt_value) String(4130) Value(16) EnumValueEnum(mips_arch_opt_value) String(4300) Value(17) EnumValueEnum(mips_arch_opt_value) String(4400) Value(18) EnumValueEnum(mips_arch_opt_value) String(4600) Value(19) EnumValueEnum(mips_arch_opt_value) String(4650) Value(21) EnumValueEnum(mips_arch_opt_value) String(4700) Value(22) EnumValueEnum(mips_arch_opt_value) String(4k) Value(12) EnumValueEnum(mips_arch_opt_value) String(4kc) Value(35) Canonical EnumValueEnum(mips_arch_opt_value) String(4kec) Value(40) Canonical EnumValueEnum(mips_arch_opt_value) String(4kem) Value(41) Canonical EnumValueEnum(mips_arch_opt_value) String(4kep) Value(42) Canonical EnumValueEnum(mips_arch_opt_value) String(4km) Value(36) Canonical EnumValueEnum(mips_arch_opt_value) String(4kp) Value(37) Canonical EnumValueEnum(mips_arch_opt_value) String(4ksc) Value(38) Canonical EnumValueEnum(mips_arch_opt_value) String(4ksd) Value(43) Canonical EnumValueEnum(mips_arch_opt_value) String(5000) Value(30) EnumValueEnum(mips_arch_opt_value) String(5400) Value(31) EnumValueEnum(mips_arch_opt_value) String(5500) Value(32) EnumValueEnum(mips_arch_opt_value) String(5k) Value(30) EnumValueEnum(mips_arch_opt_value) String(5kc) Value(74) Canonical EnumValueEnum(mips_arch_opt_value) String(5kf) Value(75) Canonical EnumValueEnum(mips_arch_opt_value) String(6000) Value(11) EnumValueEnum(mips_arch_opt_value) String(6k) Value(11) EnumValueEnum(mips_arch_opt_value) String(7000) Value(33) EnumValueEnum(mips_arch_opt_value) String(74kc) Value(63) Canonical EnumValueEnum(mips_arch_opt_value) String(74kf) Value(65) Canonical EnumValueEnum(mips_arch_opt_value) String(74kf1_1) Value(66) Canonical EnumValueEnum(mips_arch_opt_value) String(74kf2_1) Value(64) Canonical EnumValueEnum(mips_arch_opt_value) String(74kf3_2) Value(69) Canonical EnumValueEnum(mips_arch_opt_value) String(74kfx) Value(67) Canonical EnumValueEnum(mips_arch_opt_value) String(74kx) Value(68) Canonical EnumValueEnum(mips_arch_opt_value) String(7k) Value(33) EnumValueEnum(mips_arch_opt_value) String(8000) Value(25) EnumValueEnum(mips_arch_opt_value) String(8k) Value(25) EnumValueEnum(mips_arch_opt_value) String(9000) Value(34) EnumValueEnum(mips_arch_opt_value) String(9k) Value(34) EnumValueEnum(mips_arch_opt_value) String(from-abi) Value(MIPS_ARCH_OPTION_FROM_ABI) EnumValueEnum(mips_arch_opt_value) String(loongson2e) Value(23) Canonical EnumValueEnum(mips_arch_opt_value) String(loongson2f) Value(24) Canonical EnumValueEnum(mips_arch_opt_value) String(loongson3a) Value(81) Canonical EnumValueEnum(mips_arch_opt_value) String(m4k) Value(39) Canonical EnumValueEnum(mips_arch_opt_value) String(mips1) Value(0) Canonical EnumValueEnum(mips_arch_opt_value) String(mips2) Value(1) Canonical EnumValueEnum(mips_arch_opt_value) String(mips3) Value(2) Canonical EnumValueEnum(mips_arch_opt_value) String(mips32) Value(4) Canonical EnumValueEnum(mips_arch_opt_value) String(mips32r2) Value(5) Canonical EnumValueEnum(mips_arch_opt_value) String(mips4) Value(3) Canonical EnumValueEnum(mips_arch_opt_value) String(mips64) Value(6) Canonical EnumValueEnum(mips_arch_opt_value) String(mips64r2) Value(7) Canonical EnumValueEnum(mips_arch_opt_value) String(native) Value(MIPS_ARCH_OPTION_NATIVE) DriverOnly EnumValueEnum(mips_arch_opt_value) String(octeon) Value(82) Canonical EnumValueEnum(mips_arch_opt_value) String(octeon+) Value(83) Canonical EnumValueEnum(mips_arch_opt_value) String(octeon2) Value(84) Canonical EnumValueEnum(mips_arch_opt_value) String(orion) Value(20) Canonical EnumValueEnum(mips_arch_opt_value) String(r10000) Value(26) Canonical EnumValueEnum(mips_arch_opt_value) String(r1004kc) Value(70) EnumValueEnum(mips_arch_opt_value) String(r1004kf) Value(72) EnumValueEnum(mips_arch_opt_value) String(r1004kf1_1) Value(73) EnumValueEnum(mips_arch_opt_value) String(r1004kf2_1) Value(71) EnumValueEnum(mips_arch_opt_value) String(r10k) Value(26) EnumValueEnum(mips_arch_opt_value) String(r12000) Value(27) Canonical EnumValueEnum(mips_arch_opt_value) String(r12k) Value(27) EnumValueEnum(mips_arch_opt_value) String(r14000) Value(28) Canonical EnumValueEnum(mips_arch_opt_value) String(r14k) Value(28) EnumValueEnum(mips_arch_opt_value) String(r16000) Value(29) Canonical EnumValueEnum(mips_arch_opt_value) String(r16k) Value(29) EnumValueEnum(mips_arch_opt_value) String(r2000) Value(9) Canonical EnumValueEnum(mips_arch_opt_value) String(r20kc) Value(76) EnumValueEnum(mips_arch_opt_value) String(r24kc) Value(44) EnumValueEnum(mips_arch_opt_value) String(r24kec) Value(50) EnumValueEnum(mips_arch_opt_value) String(r24kef) Value(52) EnumValueEnum(mips_arch_opt_value) String(r24kef1_1) Value(53) EnumValueEnum(mips_arch_opt_value) String(r24kef2_1) Value(51) EnumValueEnum(mips_arch_opt_value) String(r24kefx) Value(54) EnumValueEnum(mips_arch_opt_value) String(r24kex) Value(55) EnumValueEnum(mips_arch_opt_value) String(r24kf) Value(46) EnumValueEnum(mips_arch_opt_value) String(r24kf1_1) Value(47) EnumValueEnum(mips_arch_opt_value) String(r24kf2_1) Value(45) EnumValueEnum(mips_arch_opt_value) String(r24kfx) Value(48) EnumValueEnum(mips_arch_opt_value) String(r24kx) Value(49) EnumValueEnum(mips_arch_opt_value) String(r2k) Value(9) EnumValueEnum(mips_arch_opt_value) String(r3000) Value(8) Canonical EnumValueEnum(mips_arch_opt_value) String(r34kc) Value(56) EnumValueEnum(mips_arch_opt_value) String(r34kf) Value(58) EnumValueEnum(mips_arch_opt_value) String(r34kf1_1) Value(59) EnumValueEnum(mips_arch_opt_value) String(r34kf2_1) Value(57) EnumValueEnum(mips_arch_opt_value) String(r34kfx) Value(60) EnumValueEnum(mips_arch_opt_value) String(r34kn) Value(62) EnumValueEnum(mips_arch_opt_value) String(r34kx) Value(61) EnumValueEnum(mips_arch_opt_value) String(r3900) Value(10) Canonical EnumValueEnum(mips_arch_opt_value) String(r3k) Value(8) EnumValueEnum(mips_arch_opt_value) String(r4000) Value(12) Canonical EnumValueEnum(mips_arch_opt_value) String(r4100) Value(13) EnumValueEnum(mips_arch_opt_value) String(r4111) Value(14) EnumValueEnum(mips_arch_opt_value) String(r4120) Value(15) EnumValueEnum(mips_arch_opt_value) String(r4130) Value(16) EnumValueEnum(mips_arch_opt_value) String(r4300) Value(17) EnumValueEnum(mips_arch_opt_value) String(r4400) Value(18) Canonical EnumValueEnum(mips_arch_opt_value) String(r4600) Value(19) Canonical EnumValueEnum(mips_arch_opt_value) String(r4650) Value(21) Canonical EnumValueEnum(mips_arch_opt_value) String(r4700) Value(22) Canonical EnumValueEnum(mips_arch_opt_value) String(r4k) Value(12) EnumValueEnum(mips_arch_opt_value) String(r4kc) Value(35) EnumValueEnum(mips_arch_opt_value) String(r4kec) Value(40) EnumValueEnum(mips_arch_opt_value) String(r4kem) Value(41) EnumValueEnum(mips_arch_opt_value) String(r4kep) Value(42) EnumValueEnum(mips_arch_opt_value) String(r4km) Value(36) EnumValueEnum(mips_arch_opt_value) String(r4kp) Value(37) EnumValueEnum(mips_arch_opt_value) String(r4ksc) Value(38) EnumValueEnum(mips_arch_opt_value) String(r4ksd) Value(43) EnumValueEnum(mips_arch_opt_value) String(r5000) Value(30) EnumValueEnum(mips_arch_opt_value) String(r5400) Value(31) EnumValueEnum(mips_arch_opt_value) String(r5500) Value(32) EnumValueEnum(mips_arch_opt_value) String(r5k) Value(30) EnumValueEnum(mips_arch_opt_value) String(r5kc) Value(74) EnumValueEnum(mips_arch_opt_value) String(r5kf) Value(75) EnumValueEnum(mips_arch_opt_value) String(r6000) Value(11) Canonical EnumValueEnum(mips_arch_opt_value) String(r6k) Value(11) EnumValueEnum(mips_arch_opt_value) String(r7000) Value(33) EnumValueEnum(mips_arch_opt_value) String(r74kc) Value(63) EnumValueEnum(mips_arch_opt_value) String(r74kf) Value(65) EnumValueEnum(mips_arch_opt_value) String(r74kf1_1) Value(66) EnumValueEnum(mips_arch_opt_value) String(r74kf2_1) Value(64) EnumValueEnum(mips_arch_opt_value) String(r74kf3_2) Value(69) EnumValueEnum(mips_arch_opt_value) String(r74kfx) Value(67) EnumValueEnum(mips_arch_opt_value) String(r74kx) Value(68) EnumValueEnum(mips_arch_opt_value) String(r7k) Value(33) EnumValueEnum(mips_arch_opt_value) String(r8000) Value(25) Canonical EnumValueEnum(mips_arch_opt_value) String(r8k) Value(25) EnumValueEnum(mips_arch_opt_value) String(r9000) Value(34) EnumValueEnum(mips_arch_opt_value) String(r9k) Value(34) EnumValueEnum(mips_arch_opt_value) String(rm7000) Value(33) Canonical EnumValueEnum(mips_arch_opt_value) String(rm7k) Value(33) EnumValueEnum(mips_arch_opt_value) String(rm9000) Value(34) Canonical EnumValueEnum(mips_arch_opt_value) String(rm9k) Value(34) EnumValueEnum(mips_arch_opt_value) String(sb1) Value(77) Canonical EnumValueEnum(mips_arch_opt_value) String(sb1a) Value(78) Canonical EnumValueEnum(mips_arch_opt_value) String(sr71000) Value(79) Canonical EnumValueEnum(mips_arch_opt_value) String(sr71k) Value(79) EnumValueEnum(mips_arch_opt_value) String(vr4100) Value(13) Canonical EnumValueEnum(mips_arch_opt_value) String(vr4111) Value(14) Canonical EnumValueEnum(mips_arch_opt_value) String(vr4120) Value(15) Canonical EnumValueEnum(mips_arch_opt_value) String(vr4130) Value(16) Canonical EnumValueEnum(mips_arch_opt_value) String(vr4300) Value(17) Canonical EnumValueEnum(mips_arch_opt_value) String(vr5000) Value(30) Canonical EnumValueEnum(mips_arch_opt_value) String(vr5400) Value(31) Canonical EnumValueEnum(mips_arch_opt_value) String(vr5500) Value(32) Canonical EnumValueEnum(mips_arch_opt_value) String(vr5k) Value(30) EnumValueEnum(mips_arch_opt_value) String(xlp) Value(85) Canonical EnumValueEnum(mips_arch_opt_value) String(xlr) Value(80) Canonical EnumValueEnum(mips_code_readable_setting) String(no) Value(CODE_READABLE_NO) EnumValueEnum(mips_code_readable_setting) String(pcrel) Value(CODE_READABLE_PCREL) EnumValueEnum(mips_code_readable_setting) String(yes) Value(CODE_READABLE_YES) EnumValueEnum(mips_mips_opt_value) String(1) Value(0) EnumValueEnum(mips_mips_opt_value) String(2) Value(1) EnumValueEnum(mips_mips_opt_value) String(3) Value(2) EnumValueEnum(mips_mips_opt_value) String(32) Value(4) EnumValueEnum(mips_mips_opt_value) String(32r2) Value(5) EnumValueEnum(mips_mips_opt_value) String(4) Value(3) EnumValueEnum(mips_mips_opt_value) String(64) Value(6) EnumValueEnum(mips_mips_opt_value) String(64r2) Value(7) EnumValueEnum(mips_r10k_cache_barrier_setting) String(load-store) Value(R10K_CACHE_BARRIER_LOAD_STORE) EnumValueEnum(mips_r10k_cache_barrier_setting) String(none) Value(R10K_CACHE_BARRIER_NONE) EnumValueEnum(mips_r10k_cache_barrier_setting) String(store) Value(R10K_CACHE_BARRIER_STORE) EnumValueEnum(stack_reuse_level) String(all) Value(SR_ALL) EnumValueEnum(stack_reuse_level) String(named_vars) Value(SR_NAMED_VARS) EnumValueEnum(stack_reuse_level) String(none) Value(SR_NONE) EnumValueEnum(symbol_visibility) String(default) Value(VISIBILITY_DEFAULT) EnumValueEnum(symbol_visibility) String(hidden) Value(VISIBILITY_HIDDEN) EnumValueEnum(symbol_visibility) String(internal) Value(VISIBILITY_INTERNAL) EnumValueEnum(symbol_visibility) String(protected) Value(VISIBILITY_PROTECTED) EnumValueEnum(tls_model) String(global-dynamic) Value(TLS_MODEL_GLOBAL_DYNAMIC) EnumValueEnum(tls_model) String(initial-exec) Value(TLS_MODEL_INITIAL_EXEC) EnumValueEnum(tls_model) String(local-dynamic) Value(TLS_MODEL_LOCAL_DYNAMIC) EnumValueEnum(tls_model) String(local-exec) Value(TLS_MODEL_LOCAL_EXEC) FDriver C ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)-F Add to the end of the main framework include path GTarget Joined Separate UInteger Var(g_switch_value)-G Put global and static data smaller than bytes into a special section (on some targets) HC ObjC C++ ObjC++Print the name of header files as they are used HFortran HeaderIncludeconfig/mips/mips-opts.h IAda AdaWhy AdaSCIL Joined Separate IC ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)-I Add to the end of the main include path IFortran Joined Separate IGo Joined Separate IJava Joined Separate JFortran Joined Separate-J Put MODULE files in 'directory' LDriver Joined Separate LGo Joined Separate LanguageAda LanguageAdaSCIL LanguageAdaWhy LanguageC LanguageC++ LanguageFortran LanguageGo LanguageJava LanguageLTO LanguageObjC LanguageObjC++ MC ObjC C++ ObjC++Generate make dependencies MFortran MJava MDC ObjC C++ ObjC++ NoDriverArg Separate MissingArgError(missing filename after %qs)Generate make dependencies and compile MDFortran Separate NoDriverArg MD_Java Undocumented RejectDriver MFC ObjC C++ ObjC++ Joined Separate MissingArgError(missing filename after %qs)-MF Write dependency output to the given file MFFortran Joined Separate MFJava Separate MGC ObjC C++ ObjC++Treat missing header files as generated files MGFortran MMC ObjC C++ ObjC++Like -M but ignore system header files MMFortran MMJava MMDC ObjC C++ ObjC++ NoDriverArg Separate MissingArgError(missing filename after %qs)Like -MD but ignore system header files MMDFortran Separate NoDriverArg MMD_Java Undocumented RejectDriver MPC ObjC C++ ObjC++Generate phony targets for all headers MPFortran MPJava MQC ObjC C++ ObjC++ Joined Separate MissingArgError(missing makefile target after %qs)-MQ Add a MAKE-quoted target MQFortran Joined Separate MTC ObjC C++ ObjC++ Joined Separate MissingArgError(missing makefile target after %qs)-MT Add an unquoted target MTFortran Joined Separate MTJava Separate NDriver OCommon JoinedOrMissing Optimization-O Set optimization level to OfastCommon OptimizationOptimize for speed disregarding exact standards compliance OgCommon OptimizationOptimize for debugging experience rather than speed or size OsCommon OptimizationOptimize for space rather than speed PC ObjC C++ ObjC++Do not generate #line directives PFortran QDriver QnDriver Negative(Qy) QyDriver Negative(Qn) RDriver Joined Separate SDriver SourceIncludepretty-print.h TDriver Joined Separate TbssDriver Separate Tbss=Driver Joined TdataDriver Separate Tdata=Driver Joined TtextDriver Separate Ttext=Driver Joined UC ObjC C++ ObjC++ Joined Separate MissingArgError(macro name missing after %qs)-U Undefine UFortran Joined Separate VariableHOST_WIDE_INT frame_larger_than_size VariableHOST_WIDE_INT larger_than_size Variablebool exit_after_options Variablebool flag_dump_all_passed Variablebool flag_opts_finished Variablebool flag_stack_usage_info = false Variablebool flag_warn_unused_result = false Variablebool in_lto_p = false Variablebool use_gnu_debug_info_extensions Variablebool warn_frame_larger_than Variablebool warn_larger_than Variablechar *help_enum_printed Variablechar *help_printed Variableconst char *main_input_basename Variableconst char *main_input_filename Variableenum debug_info_levels debug_info_level = DINFO_LEVEL_NONE Variableenum debug_info_type write_symbols = NO_DEBUG Variableenum debug_struct_file debug_struct_generic[DINFO_USAGE_NUM_ENUMS] = { DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY } Variableenum debug_struct_file debug_struct_ordinary[DINFO_USAGE_NUM_ENUMS] = { DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY } Variableenum stack_check_type flag_stack_check = NO_STACK_CHECK Variableint *param_values Variableint flag_complex_method = 1 Variableint flag_debug_asm Variableint flag_dump_rtl_in_asm Variableint flag_evaluation_order = 0 Variableint flag_gen_aux_info = 0 Variableint flag_generate_lto Variableint flag_print_asm_name Variableint flag_shlib Variableint main_input_baselength Variableint optimize Variableint optimize_debug Variableint optimize_fast Variableint optimize_size Variableint rtl_dump_and_exit Variableint target_flags Variableunsigned int help_columns Variableunsigned int initial_max_fld_align = TARGET_DEFAULT_PACK_STRUCT Variablevoid *flag_instrument_functions_exclude_files Variablevoid *flag_instrument_functions_exclude_functions WCommon RejectNegative Warning Alias(Wextra)This switch is deprecated; use -Wextra instead Wa,Driver JoinedOrMissing WabiC ObjC C++ ObjC++ LTO Var(warn_abi) WarningWarn about things that will change when compiling with an ABI-compliant compiler Wabi-tagC++ ObjC++ Var(warn_abi_tag) WarningWarn if a subobject has an abi_tag attribute that the complete object type does not have WaddressC ObjC C++ ObjC++ Var(warn_address) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about suspicious uses of memory addresses Waggregate-returnCommon Var(warn_aggregate_return) WarningWarn about returning structures, unions or arrays Waggressive-loop-optimizationsCommon Var(warn_aggressive_loop_optimizations) Init(1) WarningWarn if a loop with constant number of iterations triggers undefined behavior WaliasingFortran WarningWarn about possible aliasing of dummy arguments Walign-commonsFortran WarningWarn about alignment of COMMON blocks WallAda AdaWhy AdaSCILEnable most warning messages WallC ObjC C++ ObjC++ WarningEnable most warning messages WallFortran WallGo WallJava Wall-deprecationJava Wall-javadocJava WampersandFortran WarningWarn about missing ampersand in continued character constants Warray-boundsCommon Var(warn_array_bounds) WarningWarn if an array is accessed out of bounds Warray-boundsLangEnabledBy(C ObjC C++ ObjC++,Wall) Warray-temporariesFortran WarningWarn about creation of array temporaries Wassert-identifierJava Wassign-interceptObjC ObjC++ Var(warn_assign_intercept) WarningWarn whenever an Objective-C assignment is being intercepted by the garbage collector WattributesCommon Var(warn_attributes) Init(1) WarningWarn about inappropriate attribute usage Wbad-function-castC ObjC Var(warn_bad_function_cast) WarningWarn about casting functions to incompatible types WboxingJava Wbuiltin-macro-redefinedC ObjC C++ ObjC++ WarningWarn when a built-in preprocessor macro is undefined or redefined Wc++-compatC ObjC Var(warn_cxx_compat) WarningWarn about C constructs that are not in the common subset of C and C++ Wc++0x-compatC++ ObjC++ Var(warn_cxx0x_compat) Warning LangEnabledBy(C++ ObjC++,Wall)Deprecated in favor of -Wc++11-compat Wc++11-compatC++ ObjC++ Warning Alias(Wc++0x-compat)Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO C++ 2011 Wc-binding-typeFortran WarningWarn if the type of a variable might be not interoperable with C Wcast-alignCommon Var(warn_cast_align) WarningWarn about pointer casts which increase alignment Wcast-qualC ObjC C++ ObjC++ Var(warn_cast_qual) WarningWarn about casts which discard qualifiers Wchar-concatJava Wchar-subscriptsC ObjC C++ ObjC++ Var(warn_char_subscripts) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about subscripts whose type is \"char\" Wcharacter-truncationFortran WarningWarn about truncated character expressions WclobberedC ObjC C++ ObjC++ Var(warn_clobbered) Warning EnabledBy(Wextra)Warn about variables that might be changed by \"longjmp\" or \"vfork\" WcommentC ObjC C++ ObjC++ WarningWarn about possibly nested block comments, and C++ comments spanning more than one physical line WcommentsC ObjC C++ ObjC++ Warning Alias(Wcomment)Synonym for -Wcomment Wcompare-realsFortran WarningWarn about equality comparisons involving REAL or COMPLEX expressions Wcondition-assignJava Wconstructor-nameJava WconversionC ObjC C++ ObjC++ Var(warn_conversion) WarningWarn for implicit type conversions that may change a value WconversionFortran Warning Wconversion-extraFortran WarningWarn about most implicit conversions Wconversion-nullC++ ObjC++ Var(warn_conversion_null) Init(1) WarningWarn for converting NULL from/to a non-pointer type Wcoverage-mismatchCommon Var(warn_coverage_mismatch) Init(1) WarningWarn in case profiles in -fprofile-use do not match WcppCommon Var(warn_cpp) Init(1) WarningWarn when a #warning directive is encountered Wctor-dtor-privacyC++ ObjC++ Var(warn_ctor_dtor_privacy) WarningWarn when all constructors and destructors are private Wdeclaration-after-statementC ObjC Var(warn_declaration_after_statement) WarningWarn when a declaration is found after a statement Wdelete-non-virtual-dtorC++ ObjC++ Var(warn_delnonvdtor) Warning LangEnabledBy(C++ ObjC++,Wall)Warn about deleting polymorphic objects with non-virtual destructors Wdelete-non-virtual-dtorLangEnabledBy(C++ ObjC++,Weffc++) Wdep-annJava WdeprecatedC C++ ObjC ObjC++ Var(warn_deprecated) Init(1) WarningWarn if a deprecated compiler feature, class, method, or field is used WdeprecatedJava Var(warn_deprecated) Wdeprecated-declarationsCommon Var(warn_deprecated_decl) Init(1) WarningWarn about uses of __attribute__((deprecated)) declarations Wdisabled-optimizationCommon Var(warn_disabled_optimization) WarningWarn when an optimization pass is disabled WdiscouragedJava Wdiv-by-zeroC ObjC C++ ObjC++ Var(warn_div_by_zero) Init(1) WarningWarn about compile-time integer division by zero Wdouble-promotionC ObjC C++ ObjC++ Var(warn_double_promotion) WarningWarn about implicit conversions from \"float\" to \"double\" Weffc++C++ ObjC++ Var(warn_ecpp) WarningWarn about violations of Effective C++ style rules Wempty-blockJava Wempty-bodyC ObjC C++ ObjC++ Var(warn_empty_body) Warning EnabledBy(Wextra)Warn about an empty body in an if or else statement Wendif-labelsC ObjC C++ ObjC++ WarningWarn about stray tokens after #elif and #endif Wenum-compareC ObjC C++ ObjC++ Var(warn_enum_compare) Init(-1) Warning LangEnabledBy(C ObjC,Wall)Warn about comparison of different enum types Wenum-compareLangEnabledBy(C ObjC,Wc++-compat) Wenum-identifierJava Wenum-switchJava WerrorC ObjC C++ ObjC++ WerrorCommon Var(warnings_are_errors)Treat all warnings as errors Werror-implicit-function-declarationC ObjC RejectNegative Warning Alias(Werror=, implicit-function-declaration)This switch is deprecated; use -Werror=implicit-function-declaration instead Werror=Common JoinedTreat specified warning as error WextraCommon Var(extra_warnings) WarningPrint extra (possibly unwanted) warnings WextraFortran WarningPrint extra (possibly unwanted) warnings Wextraneous-semicolonJava Var(flag_extraneous_semicolon)Warn if deprecated empty statements are found WfallthroughJava Wfatal-errorsCommon Var(flag_fatal_errors)Exit on the first error occurred Wfield-hidingJava Wfinal-boundJava WfinallyJava Wfloat-equalC ObjC C++ ObjC++ Var(warn_float_equal) WarningWarn if testing floating point numbers for equality WforbiddenJava WformatC ObjC C++ ObjC++ Warning Alias(Wformat=, 1, 0)Warn about printf/scanf/strftime/strfmon format string anomalies Wformat-contains-nulC ObjC C++ ObjC++ Var(warn_format_contains_nul) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 1, 0)Warn about format strings that contain NUL bytes Wformat-extra-argsC ObjC C++ ObjC++ Var(warn_format_extra_args) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 1, 0)Warn if passing too many arguments to a function for its format string Wformat-nonliteralC ObjC C++ ObjC++ Var(warn_format_nonliteral) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0)Warn about format strings that are not literals Wformat-securityC ObjC C++ ObjC++ Var(warn_format_security) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0)Warn about possible security problems with format functions Wformat-y2kC ObjC C++ ObjC++ Var(warn_format_y2k) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=,warn_format >= 2, 0)Warn about strftime formats yielding 2-digit years Wformat-zero-lengthC ObjC C++ ObjC++ Var(warn_format_zero_length) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=,warn_format >= 1, 0)Warn about zero-length formats Wformat=C ObjC C++ ObjC++ Joined RejectNegative UInteger Var(warn_format) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0)Warn about printf/scanf/strftime/strfmon format string anomalies Wframe-larger-than=Common RejectNegative Joined UInteger-Wframe-larger-than= Warn if a function's stack frame requires more than bytes Wfree-nonheap-objectCommon Var(warn_free_nonheap_object) Init(1) WarningWarn when attempting to free a non-heap object Wfunction-eliminationFortran WarningWarn about function call elimination WhidingJava Wignored-qualifiersC C++ Var(warn_ignored_qualifiers) Warning EnabledBy(Wextra)Warn whenever type qualifiers are ignored. WimplicitC ObjC Var(warn_implicit) Warning LangEnabledBy(C ObjC,Wall)Warn about implicit declarations Wimplicit-function-declarationC ObjC Var(warn_implicit_function_declaration) Init(-1) Warning LangEnabledBy(C ObjC,Wimplicit)Warn about implicit function declarations Wimplicit-intC ObjC Var(warn_implicit_int) Warning LangEnabledBy(C ObjC,Wimplicit)Warn when a declaration does not specify a type Wimplicit-interfaceFortran WarningWarn about calls with implicit interface Wimplicit-procedureFortran WarningWarn about called procedures not explicitly declared WimportC ObjC C++ ObjC++ Undocumented Ignore Windirect-staticJava Winherited-variadic-ctorC++ ObjC++ Var(warn_inh_var_ctor) Init(1) WarningWarn about C++11 inheriting constructors when the base has a variadic constructor Winit-selfC ObjC C++ ObjC++ Var(warn_init_self) Warning LangEnabledBy(C++ ObjC++,Wall)Warn about variables which are initialized to themselves WinlineCommon Var(warn_inline) WarningWarn when an inlined function cannot be inlined Wint-to-pointer-castC ObjC C++ ObjC++ Var(warn_int_to_pointer_cast) Init(1) WarningWarn when there is a cast to a pointer from an integer of a different size Wintf-annotationJava Wintf-non-inheritedJava Wintrinsic-shadowFortran WarningWarn if a user-procedure has the same name as an intrinsic Wintrinsics-stdFortran WarningWarn on intrinsics not part of the selected standard Winvalid-memory-modelCommon Var(warn_invalid_memory_model) Init(1) WarningWarn when an atomic memory model parameter is known to be outside the valid range. Winvalid-offsetofC++ ObjC++ Var(warn_invalid_offsetof) Init(1) WarningWarn about invalid uses of the \"offsetof\" macro Winvalid-pchC ObjC C++ ObjC++ WarningWarn about PCH files that are found but not used WjavadocJava Wjump-misses-initC ObjC Var(warn_jump_misses_init) Warning LangEnabledby(C ObjC,Wc++-compat)Warn when a jump misses a variable initialization Wl,Driver JoinedOrMissing Wlarger-than-Common RejectNegative Joined Warning Undocumented Alias(Wlarger-than=) Wlarger-than=Common RejectNegative Joined UInteger Warning-Wlarger-than= Warn if an object is larger than bytes Wline-truncationFortran WarningWarn about truncated source lines Wliteral-suffixC++ ObjC++ WarningWarn when a string or character literal is followed by a ud-suffix which does not begin with an underscore. Wlocal-hidingJava Wlogical-opC ObjC C++ ObjC++ Var(warn_logical_op) Init(0) Warning Warn when a logical operator is suspiciously always evaluating to true or false Wlong-longC ObjC C++ ObjC++ Var(warn_long_long) Init(-1) WarningDo not warn about using \"long long\" when -pedantic WmainC ObjC C++ ObjC++ Var(warn_main) Init(-1) Warning LangEnabledBy(C ObjC,Wall, 2, 0)Warn about suspicious declarations of \"main\" WmainLangEnabledBy(C ObjC C++ ObjC++,Wpedantic, 2, 0) Wmasked-catch-blockJava Wmaybe-uninitializedC ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall) Wmaybe-uninitializedCommon Var(warn_maybe_uninitialized) Warning EnabledBy(Wuninitialized)Warn about maybe uninitialized automatic variables Wmissing-bracesC ObjC C++ ObjC++ Var(warn_missing_braces) Warning LangEnabledBy(C ObjC,Wall)Warn about possibly missing braces around initializers Wmissing-declarationsC ObjC C++ ObjC++ Var(warn_missing_declarations) WarningWarn about global functions without previous declarations Wmissing-field-initializersC ObjC C++ ObjC++ Var(warn_missing_field_initializers) Warning EnabledBy(Wextra)Warn about missing fields in struct initializers Wmissing-format-attributeC ObjC C++ ObjC++ Alias(Wsuggest-attribute=format) Wmissing-include-dirsC ObjC C++ ObjC++ WarningWarn about user-specified include directories that do not exist Wmissing-noreturnCommon Alias(Wsuggest-attribute=noreturn) Wmissing-parameter-typeC ObjC Var(warn_missing_parameter_type) Warning EnabledBy(Wextra)Warn about function parameters declared without a type specifier in K&R-style functions Wmissing-prototypesC ObjC Var(warn_missing_prototypes) WarningWarn about global functions without prototypes WmudflapC ObjC C++ ObjC++ Var(warn_mudflap) Init(1) WarningWarn about constructs not instrumented by -fmudflap WmulticharC ObjC C++ ObjC++ WarningWarn about use of multi-character character constants WnarrowingC ObjC C++ ObjC++ LangEnabledBy(C++ ObjC++,Wc++0x-compat) WnarrowingC ObjC C++ ObjC++ Warning Var(warn_narrowing) Init(-1) LangEnabledBy(C++ ObjC++,Wall)Warn about narrowing conversions within { } that are ill-formed in C++11 Wnested-externsC ObjC Var(warn_nested_externs) WarningWarn about \"extern\" declarations not at file scope WnlsJava Wno-effect-assignJava WnoexceptC++ ObjC++ Var(warn_noexcept) WarningWarn when a noexcept expression evaluates to false even though the expression can't actually throw Wnon-template-friendC++ ObjC++ Var(warn_nontemplate_friend) Init(1) WarningWarn when non-templatized friend functions are declared within a template Wnon-virtual-dtorC++ ObjC++ Var(warn_nonvdtor) WarningWarn about non-virtual destructors WnonnullC ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall) WnonnullC ObjC C++ ObjC++ Var(warn_nonnull) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=,warn_format >= 1,0)Warn about NULL being passed to argument slots marked as requiring non-NULL Wnormalized=C ObjC C++ ObjC++ Joined Warning-Wnormalized= Warn about non-normalised Unicode strings WnullJava Wold-style-castC++ ObjC++ Var(warn_old_style_cast) WarningWarn if a C-style cast is used in a program Wold-style-declarationC ObjC Var(warn_old_style_declaration) Warning EnabledBy(Wextra)Warn for obsolescent usage in a declaration Wold-style-definitionC ObjC Var(warn_old_style_definition) WarningWarn if an old-style parameter definition is used Wout-of-dateJava Var(flag_newer) Init(1)Warn if .class files are out of date Wover-annJava WoverflowCommon Var(warn_overflow) Init(1) WarningWarn about overflow in arithmetic expressions Woverlength-stringsC ObjC C++ ObjC++ Var(warn_overlength_strings) Warning LangEnabledBy(C ObjC C++ ObjC++,Wpedantic)Warn if a string is longer than the maximum portable length specified by the standard Woverloaded-virtualC++ ObjC++ Var(warn_overloaded_virtual) WarningWarn about overloaded virtual function names Woverride-initC ObjC Var(warn_override_init) Warning EnabledBy(Wextra)Warn about overriding initializers without side effects Wp,Driver JoinedOrMissing WpackedCommon Var(warn_packed) WarningWarn when the packed attribute has no effect on struct layout Wpacked-bitfield-compatC ObjC C++ ObjC++ Var(warn_packed_bitfield_compat) Init(-1) WarningWarn about packed bit-fields whose offset changed in GCC 4.4 WpaddedCommon Var(warn_padded) WarningWarn when padding is required to align structure members Wparam-assignJava WparenthesesC ObjC C++ ObjC++ Var(warn_parentheses) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about possibly missing parentheses WpedanticC ObjC C++ ObjC++ Warning WpedanticCommon Var(pedantic) WarningIssue warnings needed for strict compliance to the standard Wpkg-default-methodJava Wpmf-conversionsC++ ObjC++ Var(warn_pmf2ptr) Init(1) WarningWarn when converting the type of pointers to member functions Wpointer-arithC ObjC C++ ObjC++ Var(warn_pointer_arith) WarningWarn about function pointer arithmetic Wpointer-signC ObjC LangEnabledBy(C ObjC,Wpedantic) Wpointer-signC ObjC Var(warn_pointer_sign) Warning LangEnabledBy(C ObjC,Wall)Warn when a pointer differs in signedness in an assignment Wpointer-to-int-castC ObjC Var(warn_pointer_to_int_cast) Init(1) WarningWarn when a pointer is cast to an integer of a different size WpragmasC ObjC C++ ObjC++ Var(warn_pragmas) Init(1) WarningWarn about misuses of pragmas Wproperty-assign-defaultObjC ObjC++ Var(warn_property_assign_default) Init(1) WarningWarn if a property for an Objective-C object has no assign semantics specified WprotocolObjC ObjC++ Var(warn_protocol) Init(1) WarningWarn if inherited methods are unimplemented WpsabiC ObjC C++ ObjC++ LTO Var(warn_psabi) Init(1) Undocumented WrawJava Wreal-q-constantFortran WarningWarn about real-literal-constants with 'q' exponent-letter Wrealloc-lhsFortran WarningWarn when a left-hand-side array variable is reallocated Wrealloc-lhs-allFortran WarningWarn when a left-hand-side variable is reallocated Wredundant-declsC ObjC C++ ObjC++ Var(warn_redundant_decls) WarningWarn about multiple declarations of the same object Wredundant-modifiersJava Var(flag_redundant)Warn if modifiers are specified when not necessary WreorderC++ ObjC++ Var(warn_reorder) Warning LangEnabledBy(C++ ObjC++,Wall)Warn when the compiler reorders code Wreturn-local-addrC ObjC C++ ObjC++ Var(warn_return_local_addr) Init(1) WarningWarn about returning a pointer/reference to a local or temporary variable. Wreturn-typeC ObjC C++ ObjC++ Var(warn_return_type) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++) Wreturn-typeFortran Warning WselectorObjC ObjC++ Var(warn_selector) WarningWarn if a selector has multiple methods Wsequence-pointC ObjC C++ ObjC++ Var(warn_sequence_point) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about possible violations of sequence point rules WserialJava WshadowCommon Var(warn_shadow) WarningWarn when one local variable shadows another Wsign-compareC ObjC C++ ObjC++ EnabledBy(Wextra) Wsign-compareC ObjC C++ ObjC++ Var(warn_sign_compare) Warning LangEnabledBy(C++ ObjC++,Wall)Warn about signed-unsigned comparisons Wsign-conversionC ObjC C++ ObjC++ Var(warn_sign_conversion) LangEnabledBy(C ObjC,Wconversion)Warn for implicit type conversions between signed and unsigned integers Wsign-promoC++ ObjC++ Var(warn_sign_promo) WarningWarn when overload promotes from unsigned to signed Wsizeof-pointer-memaccessC ObjC C++ ObjC++ Var(warn_sizeof_pointer_memaccess) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall) Wspecial-param-hidingJava Wstack-protectorCommon Var(warn_stack_protect) WarningWarn when not issuing stack smashing protection for some reason Wstack-usage=Common Joined RejectNegative UInteger Var(warn_stack_usage) Init(-1) WarningWarn if stack usage might be larger than specified amount Wstatic-accessJava Wstatic-receiverJava Wstrict-aliasingCommon WarningWarn about code which might break strict aliasing rules Wstrict-aliasing=C ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall, 3, 0) Wstrict-aliasing=Common Joined RejectNegative UInteger Var(warn_strict_aliasing) WarningWarn about code which might break strict aliasing rules Wstrict-null-sentinelC++ ObjC++ Warning Var(warn_strict_null_sentinel)Warn about uncasted NULL used as sentinel Wstrict-overflowCommon WarningWarn about optimizations that assume that signed overflow is undefined Wstrict-overflow=C ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0) Wstrict-overflow=Common Joined RejectNegative UInteger Var(warn_strict_overflow) WarningWarn about optimizations that assume that signed overflow is undefined Wstrict-prototypesC ObjC Var(warn_strict_prototypes) WarningWarn about unprototyped function declarations Wstrict-selector-matchObjC ObjC++ Var(warn_strict_selector_match) WarningWarn if type signatures of candidate methods do not match exactly Wsuggest-attribute=constCommon Var(warn_suggest_attribute_const) WarningWarn about functions which might be candidates for __attribute__((const)) Wsuggest-attribute=formatC ObjC C++ ObjC++ Var(warn_suggest_attribute_format) WarningWarn about functions which might be candidates for format attributes Wsuggest-attribute=noreturnCommon Var(warn_suggest_attribute_noreturn) WarningWarn about functions which might be candidates for __attribute__((noreturn)) Wsuggest-attribute=pureCommon Var(warn_suggest_attribute_pure) WarningWarn about functions which might be candidates for __attribute__((pure)) WsuppressJava WsurprisingFortran WarningWarn about \"suspicious\" constructs WswitchC ObjC C++ ObjC++ Var(warn_switch) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about enumerated switches, with no default, missing a case Wswitch-defaultC ObjC C++ ObjC++ Var(warn_switch_default) WarningWarn about enumerated switches missing a \"default:\" statement Wswitch-enumC ObjC C++ ObjC++ Var(warn_switch_enum) WarningWarn about all enumerated switches missing a specific case Wsync-nandC C++ Var(warn_sync_nand) Init(1) WarningWarn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions are used WsynthC++ ObjC++ Var(warn_synth) WarningDeprecated. This switch has no effect Wsynthetic-accessJava Wsystem-headersC ObjC C++ ObjC++ Warning Wsystem-headersCommon Var(warn_system_headers) WarningDo not suppress warnings from system headers WtabsFortran WarningPermit nonconforming uses of the tab character Wtarget-lifetimeFortran WarningWarn if the pointer in a pointer assignment might outlive its target WtasksJava WtraditionalC ObjC Var(warn_traditional) WarningWarn about features not present in traditional C Wtraditional-conversionC ObjC Var(warn_traditional_conversion) WarningWarn of prototypes causing type conversions different from what would happen in the absence of prototype WtrampolinesCommon Var(warn_trampolines) WarningWarn whenever a trampoline is generated WtrigraphsC ObjC C++ ObjC++ WarningWarn if trigraphs are encountered that might affect the meaning of the program Wtype-hidingJava Wtype-limitsCommon 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 WuncheckJava Wundeclared-selectorObjC ObjC++ Var(warn_undeclared_selector) WarningWarn about @selector()s without previously declared methods WundefC ObjC C++ ObjC++ WarningWarn if an undefined macro is used in an #if directive WunderflowFortran WarningWarn about underflow of numerical constant expressions WuninitializedC ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall) WuninitializedCommon Var(warn_uninitialized) Warning EnabledBy(Wextra)Warn about uninitialized automatic variables Wunknown-pragmasC ObjC C++ ObjC++ Warning Var(warn_unknown_pragmas) LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0)Warn about unrecognized pragmas Wunnecessary-elseJava Wunqualified-fieldJava Wunreachable-codeCommon IgnoreDoes nothing. Preserved for backward compatibility. Wunsafe-loop-optimizationsCommon Var(warn_unsafe_loop_optimizations) WarningWarn if the loop cannot be optimized due to nontrivial assumptions. Wunsuffixed-float-constantsC ObjC Var(warn_unsuffixed_float_constants) WarningWarn about unsuffixed float constants WunusedC ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall) WunusedCommon Var(warn_unused) Init(0) WarningEnable all -Wunused- warnings WunusedJava Wunused-argumentJava Wunused-but-set-parameterCommon Var(warn_unused_but_set_parameter) Warning EnabledBy(Wunused && Wextra)Warn when a function parameter is only set, otherwise unused Wunused-but-set-variableCommon Var(warn_unused_but_set_variable) Warning EnabledBy(Wunused)Warn when a variable is only set, otherwise unused Wunused-dummy-argumentFortran WarningWarn about unused dummy arguments. Wunused-functionCommon Var(warn_unused_function) Warning EnabledBy(Wunused)Warn when a function is unused Wunused-importJava Wunused-labelCommon Var(warn_unused_label) Warning EnabledBy(Wunused)Warn when a label is unused Wunused-labelJava Wunused-localJava Wunused-local-typedefsC ObjC C++ ObjC++ Var(warn_unused_local_typedefs) Warning EnabledBy(Wunused)Warn when typedefs locally defined in a function are not used Wunused-macrosC ObjC C++ ObjC++ Var(cpp_warn_unused_macros) WarningWarn about macros defined in the main file that are not used Wunused-parameterCommon Var(warn_unused_parameter) Warning EnabledBy(Wunused && Wextra)Warn when a function parameter is unused Wunused-privateJava Wunused-resultC ObjC C++ ObjC++ Var(warn_unused_result) Init(1) WarningWarn if a caller of a function, marked with attribute warn_unused_result, does not use its return value Wunused-thrownJava Wunused-valueCommon Var(warn_unused_value) Warning EnabledBy(Wunused)Warn when an expression value is unused Wunused-variableCommon Var(warn_unused_variable) Warning EnabledBy(Wunused)Warn when a variable is unused Wuseless-castC++ ObjC++ Var(warn_useless_cast) WarningWarn about useless casts Wuseless-type-checkJava WvarargsC ObjC C++ ObjC++ Warning Var(warn_varargs) Init(1)Warn about questionable usage of the macros used to retrieve variable arguments Wvarargs-castJava Wvariadic-macrosC ObjC C++ ObjC++ Var(cpp_warn_variadic_macros) Init(1) WarningWarn about using variadic macros Wvector-operation-performanceCommon Var(warn_vector_operation_performance) WarningWarn when a vector operation is compiled outside the SIMD Wvirtual-move-assignC++ ObjC++ Var(warn_virtual_move_assign) Warning Init(1)Warn if a virtual base has a non-trivial move assignment operator WvlaC ObjC C++ ObjC++ Var(warn_vla) Init(-1) WarningWarn if a variable length array is used Wvolatile-register-varC ObjC C++ ObjC++ Var(warn_volatile_register_var) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn when a register variable is declared volatile Wwarning-tokenJava Wwrite-stringsC ObjC C++ ObjC++ Var(warn_write_strings) WarningIn C++, nonzero means warn about deprecated conversion from string literals to 'char *'. In C, similar warning, except that the conversion is of course not deprecated by the ISO C standard. Wzero-as-null-pointer-constantC++ ObjC++ Var(warn_zero_as_null_pointer_constant) WarningWarn when a literal '0' is used as null pointer XassemblerDriver Separate XlinkerDriver Separate XpreprocessorDriver Separate ZDriver ansiC ObjC C++ ObjC++A synonym for -std=c89 (for C) or -std=c++98 (for C++) aux-infoCommon Separate Var(aux_info_file_name)-aux-info Emit declaration information into aux-info=Common Joined Alias(aux-info) auxbaseCommon Separate RejectDriver Var(aux_base_name) auxbase-stripCommon Separate RejectDriver bootclasspathJava Separate Alias(fbootclasspath=) cDriver classpathJava Separate Alias(fclasspath=) coverageDriver cppFortran Negative(nocpp)Enable preprocessing cpp=Fortran Joined Negative(nocpp) Undocumented NoDWARFRecord dC ObjC C++ ObjC++ Joined dCommon Joined-d Enable dumps from specific passes of the compiler dFortran Joined dJava Separate SeparateAlias Alias(foutput-class-dir=) dumpbaseCommon Separate Var(dump_base_name)-dumpbase Set the file basename to be used for dumps dumpdirCommon Separate Var(dump_dir_name)-dumpdir Set the directory name to be used for dumps dumpmachineDriver dumpspecsDriver dumpversionDriver eDriver Joined Separate encodingJava Separate Alias(fencoding=) export-dynamicDriver Undocumented extdirsDriver Separate fCLASSPATH=Java JoinedOrMissing RejectNegative Alias(fclasspath=)--CLASSPATH Deprecated; use --classpath instead fPICCommon Report Var(flag_pic,2) Negative(fPIE)Generate position-independent code if possible (large mode) fPIECommon Report Var(flag_pie,2) Negative(fpic)Generate position-independent code for executables if possible (large mode) fRTS=Ada AdaWhy AdaSCIL Joined RejectNegativeSelect the runtime fabi-version=Common Joined RejectNegative UInteger Var(flag_abi_version) Init(2) faccess-controlC++ ObjC++ Var(flag_access_control) Init(1)Enforce class member access control semantics fada-spec-parent=C ObjC C++ ObjC++ RejectNegative Joined Var(ada_specs_parent)-fada-spec-parent=unit Dump Ada specs as child units of given parent faggressive-function-eliminationFortranEliminate multiple function invokations also for impure functions faggressive-loop-optimizationsCommon Report Var(flag_aggressive_loop_optimizations) Optimization Init(1) Aggressively optimize loops using language constraints falign-commonsFortranEnable alignment of COMMON blocks falign-functionsCommon Report Var(align_functions,0) Optimization UIntegerAlign the start of functions falign-functions=Common RejectNegative Joined UInteger Var(align_functions) falign-jumpsCommon Report Var(align_jumps,0) Optimization UIntegerAlign labels which are only reached by jumping falign-jumps=Common RejectNegative Joined UInteger Var(align_jumps) falign-labelsCommon Report Var(align_labels,0) Optimization UIntegerAlign all labels falign-labels=Common RejectNegative Joined UInteger Var(align_labels) falign-loopsCommon Report Var(align_loops,0) Optimization UIntegerAlign the start of loops falign-loops=Common RejectNegative Joined UInteger Var(align_loops) fall-intrinsicsFortran RejectNegativeAll intrinsics procedures are available regardless of selected standard fall-virtualC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fallow-leading-underscoreFortran Undocumented fallow-parameterless-variadic-functionsC ObjC Var(flag_allow_parameterless_variadic_functions)Allow variadic functions without named parameter falt-external-templatesC++ ObjC++ Ignore Warn(switch %qs is no longer supported)No longer supported fargument-aliasCommon IgnoreDoes nothing. Preserved for backward compatibility. fargument-noaliasCommon IgnoreDoes nothing. Preserved for backward compatibility. fargument-noalias-anythingCommon IgnoreDoes nothing. Preserved for backward compatibility. fargument-noalias-globalCommon IgnoreDoes nothing. Preserved for backward compatibility. fasmC ObjC C++ ObjC++ Var(flag_no_asm, 0)Recognize the \"asm\" keyword fassertJava Var(flag_assert) Init(1)Permit the use of the assert keyword fassociative-mathCommon Report Var(flag_associative_math) SetByCombinedAllow optimization for floating-point arithmetic which may change theresult of the operation due to rounding. fassume-compiledJava fassume-compiled=Java JoinedOrMissing fasynchronous-unwind-tablesCommon Report Var(flag_asynchronous_unwind_tables) OptimizationGenerate unwind tables that are exact at each instruction boundary fauto-inc-decCommon Report Var(flag_auto_inc_dec) Init(1)Generate auto-inc/dec instructions fautomaticFortranDo not treat local variables and COMMON blocks as if they were named in SAVE statements faux-classpathJava Separate RejectNegative Undocumented fbackslashFortranSpecify that backslash in string introduces an escape character fbacktraceFortranProduce a backtrace when a runtime error is encountered fblas-matmul-limit=Fortran RejectNegative Joined UInteger-fblas-matmul-limit= Size of the smallest matrix for which matmul will use BLAS fbootclasspath=Java JoinedOrMissing RejectNegative--bootclasspath= Replace system path fbootstrap-classesJava Var(flag_bootstrap_classes)Generated should be loaded by bootstrap loader fbounds-checkCommon Report Var(flag_bounds_check)Generate code to check bounds before indexing arrays fbranch-count-regCommon Report Var(flag_branch_on_count_reg) Init(1) OptimizationReplace add, compare, branch with branch on count register fbranch-probabilitiesCommon Report Var(flag_branch_probabilities) OptimizationUse profiling information for branch probabilities fbranch-target-load-optimizeCommon Report Var(flag_branch_target_load_optimize) OptimizationPerform branch target load optimization before prologue / epilogue threading fbranch-target-load-optimize2Common Report Var(flag_branch_target_load_optimize2) OptimizationPerform branch target load optimization after prologue / epilogue threading fbtr-bb-exclusiveCommon Report Var(flag_btr_bb_exclusive) OptimizationRestrict target load migration not to re-use registers in any basic block fbuilding-libgccC ObjC C++ ObjC++ Undocumented Var(flag_building_libgcc) fbuiltinC ObjC C++ ObjC++ Var(flag_no_builtin, 0)Recognize built-in functions fbuiltin-C ObjC C++ ObjC++ Joined fcall-saved-Common Joined RejectNegative Var(common_deferred_options) Defer-fcall-saved- Mark as being preserved across functions fcall-used-Common Joined RejectNegative Var(common_deferred_options) Defer-fcall-used- Mark as being corrupted by function calls fcaller-savesCommon Report Var(flag_caller_saves) OptimizationSave registers around function calls fcanonical-system-headersC ObjC C++ ObjC++Where shorter, use canonicalized paths to systems headers. fcheck-array-temporariesFortranProduce a warning at runtime if a array temporary has been created for a procedure argument fcheck-data-depsCommon Report Var(flag_check_data_deps)Compare the results of several data dependence analyzers. fcheck-newC++ ObjC++ Var(flag_check_new)Check the return value of new fcheck-referencesJava Var(flag_check_references)Generate checks for references to NULL fcheck=Fortran RejectNegative JoinedOrMissing-fcheck=[...] Specify which runtime checks are to be performed fclasspath=Java JoinedOrMissing RejectNegative--classpath= Set class path fcoarray=Fortran RejectNegative JoinedOrMissing-fcoarray=[...] Specify which coarray parallelization should be used fcombine-stack-adjustmentsCommon Report Var(flag_combine_stack_adjustments) OptimizationLooks for opportunities to reduce stack adjustments and stack references. fcommonCommon Report Var(flag_no_common,0) OptimizationDo not put uninitialized globals in the common section fcompare-debugDriver fcompare-debug-secondCommon Driver RejectNegative Var(flag_compare_debug)Run only the second compilation of -fcompare-debug fcompare-debug=Common Driver JoinedOrMissing RejectNegative Var(flag_compare_debug_opt)-fcompare-debug[=] Compile with and without e.g. -gtoggle, and compare the final-insns dump fcompare-elimCommon Report Var(flag_compare_elim_after_reload) OptimizationPerform comparison elimination after register allocation has finished fcompile-resource=Java Joined RejectNegative fcond-mismatchC ObjC C++ ObjC++Allow the arguments of the '?' operator to have different types fconserve-spaceC++ ObjC++ Var(flag_conserve_space)Does nothing. Preserved for backward compatibility. fconserve-stackCommon Var(flag_conserve_stack) OptimizationDo not perform optimizations increasing noticeably stack usage fconstant-string-class=ObjC ObjC++ Joined MissingArgError(no class name specified with %qs)-fconst-string-class= Use class for constant strings fconstexpr-depth=C++ ObjC++ Joined RejectNegative UInteger Var(max_constexpr_depth) Init(512)-fconstexpr-depth= Specify maximum constexpr recursion depth fconvert=big-endianFortran RejectNegativeUse big-endian format for unformatted files fconvert=little-endianFortran RejectNegativeUse little-endian format for unformatted files fconvert=nativeFortran RejectNegativeUse native format for unformatted files fconvert=swapFortran RejectNegativeSwap endianness for unformatted files fcprop-registersCommon Report Var(flag_cprop_registers) OptimizationPerform a register copy-propagation optimization pass fcray-pointerFortranUse the Cray Pointer extension fcrossjumpingCommon Report Var(flag_crossjumping) OptimizationPerform cross-jumping optimization fcse-follow-jumpsCommon Report Var(flag_cse_follow_jumps) OptimizationWhen running CSE, follow jumps to their targets fcse-skip-blocksCommon IgnoreDoes nothing. Preserved for backward compatibility. fcx-fortran-rulesCommon Report Var(flag_cx_fortran_rules) OptimizationComplex multiplication and division follow Fortran rules fcx-limited-rangeCommon Report Var(flag_cx_limited_range) Optimization SetByCombinedOmit range reduction step when performing complex division fd-lines-as-codeFortran RejectNegativeIgnore 'D' in column one in fixed form fd-lines-as-commentsFortran RejectNegativeTreat lines with 'D' in column one as comments fdata-sectionsCommon Report Var(flag_data_sections) OptimizationPlace data items into their own section fdbg-cnt-listCommon Report Var(common_deferred_options) DeferList all available debugging counters with their limits and counts. fdbg-cnt=Common RejectNegative Joined Var(common_deferred_options) Defer-fdbg-cnt=:[,:,...] Set the debug counter limit. fdceCommon Var(flag_dce) Init(1) OptimizationUse the RTL dead code elimination pass fdebug-cppC ObjC C++ ObjC++Emit debug annotations during preprocessing fdebug-prefix-map=Common Joined RejectNegative Var(common_deferred_options) DeferMap one directory name to another in debug information fdebug-types-sectionCommon Report Var(flag_debug_types_section) Init(0)Output .debug_types section when using DWARF v4 debuginfo. fdeduce-init-listC++ ObjC++ Var(flag_deduce_init_list) Init(0)-fdeduce-init-list enable deduction of std::initializer_list for a template type parameter from a brace-enclosed initializer-list fdefault-double-8FortranSet the default double precision kind to an 8 byte wide type fdefault-inlineC++ ObjC++ IgnoreDoes nothing. Preserved for backward compatibility. fdefault-integer-8FortranSet the default integer kind to an 8 byte wide type fdefault-real-8FortranSet the default real kind to an 8 byte wide type fdefer-popCommon Report Var(flag_defer_pop) OptimizationDefer popping functions args from stack until later fdelayed-branchCommon Report Var(flag_delayed_branch) OptimizationAttempt to fill delay slots of branch instructions fdelete-dead-exceptionsCommon Report Var(flag_delete_dead_exceptions) Init(0)Delete dead instructions that may throw exceptions fdelete-null-pointer-checksCommon Report Var(flag_delete_null_pointer_checks) Init(1) OptimizationDelete useless null pointer checks fdevirtualizeCommon Report Var(flag_devirtualize) OptimizationTry to convert virtual calls to direct ones. fdiagnostics-show-caretCommon Var(flag_diagnostics_show_caret) Init(1)Show the source line with a caret indicating the column fdiagnostics-show-location=Common Joined RejectNegative Enum(diagnostic_prefixing_rule)-fdiagnostics-show-location=[once|every-line] How often to emit source location at the beginning of line-wrapped diagnostics fdiagnostics-show-optionCommon Var(flag_diagnostics_show_option) Init(1)Amend appropriate diagnostic messages with the command line option that controls them fdirectives-onlyC ObjC C++ ObjC++Preprocess directives only. fdisable-Common Joined RejectNegative Var(common_deferred_options) Defer-fdisable-[tree|rtl|ipa]-=range1+range2 disables an optimization pass fdisable-assertionsJava fdisable-assertions=Java JoinedOrMissing fdollar-okFortranAllow dollar signs in entity names fdollars-in-identifiersC ObjC C++ ObjC++Permit '$' as an identifier character fdseCommon Var(flag_dse) Init(1) OptimizationUse the RTL dead store elimination pass fdump-Common Joined RejectNegative Var(common_deferred_options) Defer-fdump- Dump various compiler internals to a file fdump-ada-specC ObjC C++ ObjC++ RejectNegative Var(flag_dump_ada_spec)Write all declarations as Ada code transitively fdump-ada-spec-slimC ObjC C++ ObjC++ RejectNegative Var(flag_dump_ada_spec_slim)Write all declarations as Ada code for the given file only fdump-coreFortran IgnoreDoes nothing. Preserved for backward compatibility. fdump-final-insnsDriver RejectNegative fdump-final-insns=Common RejectNegative Joined Var(flag_dump_final_insns)-fdump-final-insns=filename Dump to filename the insns at the end of translation fdump-fortran-optimizedFortranDisplay the code tree after front end optimization fdump-fortran-originalFortranDisplay the code tree after parsing fdump-go-spec=Common RejectNegative Joined Var(flag_dump_go_spec)-fdump-go-spec=filename Write all declarations to file as Go code fdump-noaddrCommon Report Var(flag_dump_noaddr)Suppress output of addresses in debugging dumps fdump-parse-treeFortranDisplay the code tree after parsing; deprecated option fdump-passesCommon Var(flag_dump_passes) Init(0)Dump optimization passes fdump-unnumberedCommon Report Var(flag_dump_unnumbered)Suppress output of instruction numbers, line number notes and addresses in debugging dumps fdump-unnumbered-linksCommon Report Var(flag_dump_unnumbered_links)Suppress output of previous and next insn numbers in debugging dumps fdwarf2-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 inlining felide-constructorsC++ ObjC++ Var(flag_elide_constructors) Init(1) feliminate-dwarf2-dupsCommon Report Var(flag_eliminate_dwarf2_dups)Perform DWARF2 duplicate elimination feliminate-unused-debug-symbolsCommon Report Var(flag_debug_only_used_symbols)Perform unused type elimination in debug info feliminate-unused-debug-typesCommon Report Var(flag_eliminate_unused_debug_types) Init(1)Perform unused type elimination in debug info femit-class-debug-alwaysCommon Report Var(flag_emit_class_debug_always) Init(0)Do not suppress C++ class debug information. femit-class-fileJava Var(flag_emit_class_files)Output a class file femit-class-filesJava Var(flag_emit_class_files)Alias for -femit-class-file femit-struct-debug-baseonlyC ObjC C++ ObjC++-femit-struct-debug-baseonly Aggressive reduced debug info for structs femit-struct-debug-detailed=C ObjC C++ ObjC++ Joined-femit-struct-debug-detailed= Detailed reduced debug info for structs femit-struct-debug-reducedC ObjC C++ ObjC++-femit-struct-debug-reduced Conservative reduced debug info for structs fenable-Common Joined RejectNegative Var(common_deferred_options) Defer-fenable-[tree|rtl|ipa]-=range1+range2 enables an optimization pass fenable-assertionsJava fenable-assertions=Java JoinedOrMissing fencoding=Java Joined RejectNegative--encoding= Choose input encoding (defaults from your locale) fenforce-eh-specsC++ ObjC++ Var(flag_enforce_eh_specs) Init(1)Generate code to check exception specifications fenum-int-equivC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fexceptionsCommon Report Var(flag_exceptions) OptimizationEnable exception handling fexcess-precision=Common Joined RejectNegative Enum(excess_precision) Var(flag_excess_precision_cmdline) Init(EXCESS_PRECISION_DEFAULT)-fexcess-precision=[fast|standard] Specify handling of excess floating-point precision fexec-charset=C ObjC C++ ObjC++ Joined RejectNegative-fexec-charset= Convert all strings and character constants to character set fexpensive-optimizationsCommon Report Var(flag_expensive_optimizations) OptimizationPerform a number of minor, expensive optimizations fext-numeric-literalsC++ ObjC++ Interpret imaginary, fixed-point, or other gnu number suffix as the correspondingnumber literal rather than a user-defined number literal. fextdirs=Java Joined RejectNegative--extdirs= Set the extension directory path fextended-identifiersC ObjC C++ ObjC++Permit universal character names (\\u and \\U) in identifiers fextern-tls-initC++ ObjC++ Var(flag_extern_tls_init) Init(-1)Support dynamic initialization of thread-local variables in a different translation unit fexternal-blasFortranSpecify that an external BLAS library should be used for matmul calls on large-size arrays fexternal-templatesC++ ObjC++ Ignore Warn(switch %qs is no longer supported) ff2cFortranUse f2c calling convention ffast-mathCommon ffat-lto-objectsCommon Var(flag_fat_lto_objects) Init(1)Output lto objects containing both the intermediate language and binary output. ffilelist-fileJava Var(flag_filelist_file)Input file is a file with a list of filenames to compile ffinite-math-onlyCommon Report Var(flag_finite_math_only) Optimization SetByCombinedAssume no NaNs or infinities are generated ffixed-Common Joined RejectNegative Var(common_deferred_options) Defer-ffixed- Mark as being unavailable to the compiler ffixed-formFortran RejectNegativeAssume that the source file is fixed form ffixed-line-length-Fortran RejectNegative Joined UInteger-ffixed-line-length- Use n as character line width in fixed mode ffixed-line-length-noneFortran RejectNegativeAllow arbitrary character line width in fixed mode ffloat-storeCommon Report Var(flag_float_store) OptimizationDon't allocate floats and doubles in extended-precision registers ffor-scopeC++ ObjC++ Var(flag_new_for_scope) Init(1)Scope of for-init-statement variables is local to the loop fforce-addrCommon IgnoreDoes nothing. Preserved for backward compatibility. fforce-classes-archive-checkJava Var(flag_force_classes_archive_check)Always check for non gcj generated classes archives fforward-propagateCommon Report Var(flag_forward_propagate) OptimizationPerform a forward propagation pass on RTL ffp-contract=Common Joined RejectNegative Enum(fp_contract_mode) Var(flag_fp_contract_mode) Init(FP_CONTRACT_FAST)-ffp-contract=[off|on|fast] Perform floating-point expression contraction. ffpe-trap=Fortran RejectNegative JoinedOrMissing-ffpe-trap=[...] Stop on following floating point exceptions ffree-formFortran RejectNegativeAssume that the source file is free form ffree-line-length-Fortran RejectNegative Joined UInteger-ffree-line-length- Use n as character line width in free mode ffree-line-length-noneFortran RejectNegativeAllow arbitrary character line width in free mode ffreestandingC ObjC C++ ObjC++Do not assume that standard C libraries and \"main\" exist ffriend-injectionC++ ObjC++ Var(flag_friend_injection)Inject friend functions into enclosing namespace ffrontend-optimizeFortranEnable front end optimization ffunction-cseCommon Report Var(flag_no_function_cse,0)Allow function addresses to be held in registers ffunction-sectionsCommon Report Var(flag_function_sections)Place each function into its own section fgcseCommon Report Var(flag_gcse) OptimizationPerform global common subexpression elimination fgcse-after-reloadCommon Report Var(flag_gcse_after_reload) OptimizationPerform global common subexpression elimination after register allocationhas finished fgcse-lasCommon Report Var(flag_gcse_las) Init(0) OptimizationPerform redundant load after store elimination in global common subexpressionelimination fgcse-lmCommon Report Var(flag_gcse_lm) Init(1) OptimizationPerform enhanced load motion during global common subexpression elimination fgcse-smCommon Report Var(flag_gcse_sm) Init(0) OptimizationPerform store motion after global common subexpression elimination fgnu-keywordsC++ ObjC++ Var(flag_no_gnu_keywords, 0)Recognize GNU-defined keywords fgnu-runtimeObjC ObjC++ LTO Report RejectNegative Var(flag_next_runtime,0) Init(NEXT_OBJC_RUNTIME)Generate code for GNU runtime environment fgnu-tmCommon Report Var(flag_tm)Enable support for GNU transactional memory fgnu89-inlineC ObjC Var(flag_gnu89_inline) Init(-1)Use traditional GNU semantics for inline functions fgo-check-divide-overflowGo Var(go_check_divide_overflow) Init(1)Add explicit checks for division overflow in INT_MIN / -1 fgo-check-divide-zeroGo Var(go_check_divide_zero) Init(1)Add explicit checks for division by zero fgo-dump-Go Joined RejectNegative-fgo-dump- Dump Go frontend internal information fgo-optimize-Go Joined RejectNegative-fgo-optimize- Turn on optimization passes in the frontend fgo-pkgpath=Go Joined RejectNegative-fgo-pkgpath= Set Go package path fgo-prefix=Go Joined RejectNegative-fgo-prefix= Set package-specific prefix for exported Go names fgo-relative-import-path=Go Joined RejectNegative-fgo-relative-import-path= Treat a relative import as relative to path fgraphiteCommon Report Var(flag_graphite)Enable in and out of Graphite representation fgraphite-identityCommon Report Var(flag_graphite_identity) OptimizationEnable Graphite Identity transformation fguess-branch-probabilityCommon Report Var(flag_guess_branch_prob) OptimizationEnable guessing of branch probabilities fguiding-declsC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fhandle-exceptionsC++ ObjC++ Optimization Alias(fexceptions) Warn({-fhandle-exceptions has been renamed -fexceptions (and is now on by default)}) fhash-synchronizationJava Var(flag_hash_synchronization)Assume the runtime uses a hash table to map an object to its synchronization structure fhelpCommon Driver Alias(-help) fhelp=Common Driver Joined Alias(-help=) fhoist-adjacent-loadsCommon Report Var(flag_hoist_adjacent_loads) OptimizationEnable hoisting adjacent loads to encourage generating conditional moveinstructions fhonor-stdC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fhostedC ObjCAssume normal C execution environment fhuge-objectsC++ ObjC++ Ignore Warn(switch %qs is no longer supported)No longer supported fidentCommon Report Var(flag_no_ident,0)Process #ident directives fif-conversionCommon Report Var(flag_if_conversion) OptimizationPerform conversion of conditional jumps to branchless equivalents fif-conversion2Common Report Var(flag_if_conversion2) OptimizationPerform conversion of conditional jumps to conditional execution fimplement-inlinesC++ ObjC++ Var(flag_implement_inlines) Init(1)Export functions even if they can be inlined fimplicit-inline-templatesC++ ObjC++ Var(flag_implicit_inline_templates) Init(1)Emit implicit instantiations of inline templates fimplicit-noneFortranSpecify that no implicit typing is allowed, unless overridden by explicit IMPLICIT statements fimplicit-templatesC++ ObjC++ Var(flag_implicit_templates) Init(1)Emit implicit instantiations of templates findirect-classesJava Var(flag_indirect_classes) Init(1)Generate instances of Class at runtime findirect-dispatchJava Var(flag_indirect_dispatch)Use offset tables for virtual method calls findirect-inliningCommon Report Var(flag_indirect_inlining)Perform indirect inlining finhibit-size-directiveCommon Report Var(flag_inhibit_size_directive)Do not generate .size directives finit-character=Fortran RejectNegative Joined UInteger-finit-character= Initialize local character variables to ASCII value n finit-integer=Fortran RejectNegative Joined-finit-integer= Initialize local integer variables to n finit-local-zeroFortranInitialize local variables to zero (from g77) finit-logical=Fortran RejectNegative Joined-finit-logical= Initialize local logical variables finit-real=Fortran RejectNegative Joined-finit-real= Initialize local real variables finlineCommon Report Var(flag_no_inline,0) Init(0) OptimizationEnable inlining of function declared \"inline\", disabling disables all inlining finline-atomicsCommon Report Var(flag_inline_atomics) Init(1) OptimizationInline __atomic operations when a lock free instruction sequence is available. finline-functionsCommon Report Var(flag_inline_functions) OptimizationIntegrate functions not declared \"inline\" into their callers when profitable finline-functionsJava finline-functions-called-onceCommon Report Var(flag_inline_functions_called_once) OptimizationIntegrate functions only required by their single caller finline-limit-Common RejectNegative Joined Alias(finline-limit=) finline-limit=Common RejectNegative Joined UInteger-finline-limit= Limit the size of inlined functions to finline-small-functionsCommon Report Var(flag_inline_small_functions) OptimizationIntegrate functions into their callers when code size is known not to grow finput-charset=C ObjC C++ ObjC++ Joined RejectNegative-finput-charset= Specify the default character set for source files finstrument-functionsCommon Report Var(flag_instrument_function_entry_exit)Instrument function entry and exit with profiling calls finstrument-functions-exclude-file-list=Common RejectNegative Joined-finstrument-functions-exclude-file-list=filename,... Do not instrument functions listed in files finstrument-functions-exclude-function-list=Common RejectNegative Joined-finstrument-functions-exclude-function-list=name,... Do not instrument listed functions finteger-4-integer-8Fortran RejectNegativeInterpret any INTEGER(4) as an INTEGER(8) fintrinsic-modules-pathFortran RejectNegative SeparateSpecify where to find the compiled intrinsic modules fintrinsic-modules-path=Fortran RejectNegative JoinedSpecify where to find the compiled intrinsic modules fipa-cpCommon Report Var(flag_ipa_cp) OptimizationPerform Interprocedural constant propagation fipa-cp-cloneCommon Report Var(flag_ipa_cp_clone) OptimizationPerform cloning to make Interprocedural constant propagation stronger fipa-matrix-reorgCommon IgnoreDoes nothing. Preserved for backward compatibility. fipa-profileCommon Report Var(flag_ipa_profile) Init(0) OptimizationPerform interprocedural profile propagation fipa-ptaCommon Report Var(flag_ipa_pta) Init(0) OptimizationPerform interprocedural points-to analysis fipa-pure-constCommon Report Var(flag_ipa_pure_const) Init(0) OptimizationDiscover pure and const functions fipa-referenceCommon Report Var(flag_ipa_reference) Init(0) OptimizationDiscover readonly and non addressable static variables fipa-sraCommon Report Var(flag_ipa_sra) Init(0) OptimizationPerform interprocedural reduction of aggregates fipa-struct-reorgCommon IgnoreDoes nothing. Preserved for backward compatibility. fira-algorithm=Common Joined RejectNegative Enum(ira_algorithm) Var(flag_ira_algorithm) Init(IRA_ALGORITHM_CB)-fira-algorithm=[CB|priority] Set the used IRA algorithm fira-hoist-pressureCommon Report Var(flag_ira_hoist_pressure) Init(1) OptimizationUse IRA based register pressure calculationin RTL hoist optimizations. fira-loop-pressureCommon Report Var(flag_ira_loop_pressure)Use IRA based register pressure calculationin RTL loop optimizations. fira-region=Common Joined RejectNegative Enum(ira_region) Var(flag_ira_region) Init(IRA_REGION_AUTODETECT)-fira-region=[one|all|mixed] Set regions for IRA 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 Var(flag_ira_verbose) Init(5)-fira-verbose= Control IRA's level of diagnostic messages. fivoptsCommon Report Var(flag_ivopts) Init(1) OptimizationOptimize induction variables on trees fjniJava Var(flag_jni)Assume native functions are implemented using JNI fjump-tablesCommon Var(flag_jump_tables) Init(1) OptimizationUse jump tables for sufficiently large switch statements fkeep-inline-dllexportC C++ ObjC ObjC++ Var(flag_keep_inline_dllexport) Init(1) Report Condition(TARGET_DLLIMPORT_DECL_ATTRIBUTES)Don't emit dllexported inline functions unless needed fkeep-inline-functionsCommon Report Var(flag_keep_inline_functions)Generate code for functions even if they are fully inlined fkeep-static-constsCommon Report Var(flag_keep_static_consts) Init(1)Emit static const variables even if they are not used flabels-okC++ ObjC++ Ignore Warn(switch %qs is no longer supported) flax-vector-conversionsC ObjC C++ ObjC++ Var(flag_lax_vector_conversions)Allow implicit conversions between vectors with differing numbers of subparts and/or differing element types. fleading-underscoreCommon Report Var(flag_leading_underscore) Init(-1)Give external symbols a leading underscore floop-blockCommon Report Var(flag_loop_block) OptimizationEnable Loop Blocking transformation floop-flattenCommon IgnoreDoes nothing. Preserved for backward compatibility. floop-interchangeCommon Report Var(flag_loop_interchange) OptimizationEnable Loop Interchange transformation floop-nest-optimizeCommon Report Var(flag_loop_optimize_isl) OptimizationEnable the ISL based loop nest optimizer floop-optimizeCommon IgnoreDoes nothing. Preserved for backward compatibility. floop-parallelize-allCommon Report Var(flag_loop_parallelize_all) OptimizationMark all loops as parallel floop-strip-mineCommon Report Var(flag_loop_strip_mine) OptimizationEnable Loop Strip Mining transformation fltoCommonEnable link-time optimization. flto-compression-level=Common Joined RejectNegative UInteger Var(flag_lto_compression_level) Init(-1)-flto-compression-level= Use zlib compression level for IL flto-partition=1to1Common Var(flag_lto_partition_1to1)Partition symbols and vars at linktime based on object files they originate from flto-partition=balancedCommon Var(flag_lto_partition_balanced)Partition functions and vars at linktime into approximately same sized buckets flto-partition=maxCommon Var(flag_lto_partition_max)Put every symbol into separate partition flto-partition=noneCommon Var(flag_lto_partition_none)Disable partioning and streaming flto-reportCommon Report Var(flag_lto_report) Init(0)Report various link-time optimization statistics flto=Common RejectNegative Joined Var(flag_lto)Link-time optimization with number of parallel jobs or jobserver. fltransLTO Report Var(flag_ltrans)Run the link-time optimizer in local transformation (LTRANS) mode. fltrans-output-list=LTO Joined Var(ltrans_output_list)Specify a file to which a list of files output by LTRANS is written. fmain=Driver JoinedOrMissing RejectNegative fmath-errnoCommon Report Var(flag_errno_math) Init(1) Optimization SetByCombinedSet errno after built-in math functions fmax-array-constructor=Fortran RejectNegative Joined UInteger-fmax-array-constructor= Maximum number of objects in an array constructor fmax-errors=Common Joined RejectNegative UInteger Var(flag_max_errors)-fmax-errors= Maximum number of errors to report fmax-identifier-length=Fortran RejectNegative Joined UInteger-fmax-identifier-length= Maximum identifier length fmax-stack-var-size=Fortran RejectNegative Joined UInteger-fmax-stack-var-size= Size in bytes of the largest array that will be put on the stack fmax-subrecord-length=Fortran RejectNegative Joined UInteger-fmax-subrecord-length= Maximum length for subrecords fmem-reportCommon Report Var(mem_report)Report on permanent memory allocation fmem-report-wpaCommon Report Var(mem_report_wpa)Report on permanent memory allocation in WPA only fmerge-all-constantsCommon Report Var(flag_merge_constants,2) Init(1) OptimizationAttempt to merge identical constants and constant variables fmerge-constantsCommon Report Var(flag_merge_constants,1) OptimizationAttempt to merge identical constants across compilation units fmerge-debug-stringsCommon Report Var(flag_merge_debug_strings) Init(1)Attempt to merge identical debug strings across compilation units fmessage-length=Common RejectNegative Joined UInteger-fmessage-length= Limit diagnostics to characters per line. 0 suppresses line-wrapping fmodule-privateFortranSet default accessibility of module entities to PRIVATE. fmodulo-schedCommon Report Var(flag_modulo_sched) OptimizationPerform SMS based modulo scheduling before the first scheduling pass fmodulo-sched-allow-regmovesCommon Report Var(flag_modulo_sched_allow_regmoves)Perform SMS based modulo scheduling with register moves allowed fmove-loop-invariantsCommon Report Var(flag_move_loop_invariants) Init(1) OptimizationMove loop invariant computations out of loops fms-extensionsC ObjC C++ ObjC++ Var(flag_ms_extensions)Don't warn about uses of Microsoft extensions fmudflapC ObjC C++ ObjC++ RejectNegative Report Var(flag_mudflap)Add mudflap bounds-checking instrumentation for single-threaded program fmudflapirC ObjC C++ ObjC++ RejectNegative Report Var(flag_mudflap_ignore_reads)Ignore read operations when inserting mudflap instrumentation fmudflapthC ObjC C++ ObjC++ RejectNegative Report Var(flag_mudflap,2)Add mudflap bounds-checking instrumentation for multi-threaded program fname-mangling-version-C++ ObjC++ Joined Ignore Warn(switch %qs is no longer supported) fnew-abiC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fnext-runtimeObjC ObjC++ LTO Report RejectNegative Var(flag_next_runtime)Generate code for NeXT (Apple Mac OS X) runtime environment fnil-receiversObjC ObjC++ Var(flag_nil_receivers) Init(1)Assume that receivers of Objective-C messages may be nil fnon-call-exceptionsCommon Report Var(flag_non_call_exceptions) OptimizationSupport synchronous non-call exceptions fnonansi-builtinsC++ ObjC++ Var(flag_no_nonansi_builtin, 0) fnonnull-objectsC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fnothrow-optC++ ObjC++ Optimization Var(flag_nothrow_opt)Treat a throw() exception specification as noexcept to improve code size fobjc-abi-version=ObjC ObjC++ LTO Joined Report RejectNegative UInteger Var(flag_objc_abi)Specify which ABI to use for Objective-C family code and meta-data generation. fobjc-call-cxx-cdtorsObjC++ Var(flag_objc_call_cxx_cdtors)Generate special Objective-C methods to initialize/destroy non-POD C++ ivars, if needed fobjc-direct-dispatchObjC ObjC++ Var(flag_objc_direct_dispatch)Allow fast jumps to the message dispatcher fobjc-exceptionsObjC ObjC++ Var(flag_objc_exceptions)Enable Objective-C exception and synchronization syntax fobjc-gcObjC ObjC++ LTO Var(flag_objc_gc)Enable garbage collection (GC) in Objective-C/Objective-C++ programs fobjc-nilcheckObjC ObjC++ Var(flag_objc_nilcheck,1)Enable inline checks for nil receivers with the NeXT runtime and ABI version 2. fobjc-sjlj-exceptionsObjC ObjC++ Var(flag_objc_sjlj_exceptions) Init(-1)Enable Objective-C setjmp exception handling runtime fobjc-std=objc1ObjC ObjC++ Var(flag_objc1_only)Conform to the Objective-C 1.0 language as implemented in GCC 4.0 fomit-frame-pointerCommon Report Var(flag_omit_frame_pointer) OptimizationWhen possible do not generate stack frames fopenmpC ObjC C++ ObjC++ Var(flag_openmp)Enable OpenMP (implies -frecursive in Fortran) fopenmpFortran foperator-namesC++ ObjC++Recognize C++ keywords like \"compl\" and \"xor\" fopt-infoCommon Report Var(flag_opt_info) OptimizationEnable all optimization info dumps on stderr fopt-info-Common Joined RejectNegative Var(common_deferred_options) Defer-fopt-info[-=filename] Dump compiler optimization details foptimize-register-moveCommon Report Var(flag_regmove) OptimizationDo the full register move optimization pass foptimize-sibling-callsCommon Report Var(flag_optimize_sibling_calls) OptimizationOptimize sibling and tail recursive calls foptimize-static-class-initializationJava Var(flag_optimize_sci)Enable optimization of static class initialization code foptimize-strlenCommon Report Var(flag_optimize_strlen) OptimizationEnable string length optimizations on trees foptional-diagsC++ ObjC++ IgnoreDoes nothing. Preserved for backward compatibility. foutput-class-dir=Java Joined RejectNegative fpack-derivedFortranTry to lay out derived types as compactly as possible fpack-structCommon Report Var(flag_pack_struct) OptimizationPack structure members together without holes fpack-struct=Common RejectNegative Joined UInteger Optimization-fpack-struct= Set initial maximum structure member alignment fpartial-inliningCommon Report Var(flag_partial_inlining)Perform partial inlining fpcc-struct-returnCommon Report Var(flag_pcc_struct_return,1) Init(DEFAULT_PCC_STRUCT_RETURN)Return small aggregates in memory, not registers fpch-depsC ObjC C++ ObjC++ fpch-preprocessC ObjC C++ ObjC++Look for and use PCH files even when preprocessing fpeel-loopsCommon Report Var(flag_peel_loops) OptimizationPerform loop peeling fpeepholeCommon Report Var(flag_no_peephole,0) OptimizationEnable machine specific peephole optimizations fpeephole2Common Report Var(flag_peephole2) OptimizationEnable an RTL peephole pass before sched2 fpermissiveC++ ObjC++ Var(flag_permissive)Downgrade conformance errors to warnings fpicCommon Report Var(flag_pic,1) Negative(fpie)Generate position-independent code if possible (small mode) fpieCommon Report Var(flag_pie,1) Negative(fPIC)Generate position-independent code for executables if possible (small mode) fplan9-extensionsC ObjC Var(flag_plan9_extensions)Enable Plan 9 language extensions fplugin-arg-Common Joined RejectNegative Var(common_deferred_options) Defer-fplugin-arg--[=] Specify argument = for plugin fplugin=Common Joined RejectNegative Var(common_deferred_options) DeferSpecify a plugin to load fpost-ipa-mem-reportCommon Report Var(post_ipa_mem_report)Report on memory allocation before interprocedural optimization fpre-ipa-mem-reportCommon Report Var(pre_ipa_mem_report)Report on memory allocation before interprocedural optimization fpredictive-commoningCommon Report Var(flag_predictive_commoning) OptimizationRun predictive commoning optimization. fprefetch-loop-arraysCommon Report Var(flag_prefetch_loop_arrays) Init(-1) OptimizationGenerate prefetch instructions, if available, for arrays in loops fpreprocessedC ObjC C++ ObjC++Treat the input file as already preprocessed fpreprocessedFortran fpretty-templatesC++ ObjC++ Var(flag_pretty_templates) Init(1)-fno-pretty-templates Do not pretty-print template specializations as the template signature followed by the arguments fprofileCommon Report Var(profile_flag)Enable basic program profiling code fprofile-arcsCommon Report Var(profile_arc_flag)Insert arc-based program profiling code fprofile-correctionCommon Report Var(flag_profile_correction)Enable correction of flow inconsistent profile data input fprofile-dir=Common Joined RejectNegative Var(profile_data_prefix)Set the top-level directory for storing the profile data.The default is 'pwd'. fprofile-generateCommonEnable common options for generating profile info for profile feedback directed optimizations fprofile-generate=Common Joined RejectNegativeEnable common options for generating profile info for profile feedback directed optimizations, and set -fprofile-dir= fprofile-reportCommon Report Var(profile_report)Report on consistency of profile fprofile-useCommon Var(flag_profile_use)Enable common options for performing profile feedback directed optimizations fprofile-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 expressions fprotect-parensFortranProtect parentheses in expressions frandom-seedCommon Var(common_deferred_options) Defer frandom-seed=Common Joined RejectNegative Var(common_deferred_options) Defer-frandom-seed= Make compile reproducible using frange-checkFortranEnable range checking during compilation freal-4-real-10Fortran RejectNegativeInterpret any REAL(4) as a REAL(10) freal-4-real-16Fortran RejectNegativeInterpret any REAL(4) as a REAL(16) freal-4-real-8Fortran RejectNegativeInterpret any REAL(4) as a REAL(8) freal-8-real-10Fortran RejectNegativeInterpret any REAL(8) as a REAL(10) freal-8-real-16Fortran RejectNegativeInterpret any REAL(8) as a REAL(16) freal-8-real-4Fortran RejectNegativeInterpret any REAL(8) as a REAL(4) frealloc-lhsFortranReallocate the LHS in assignments freciprocal-mathCommon Report Var(flag_reciprocal_math) SetByCombinedSame as -fassociative-math for expressions which include division. frecord-gcc-switchesCommon Report Var(flag_record_gcc_switches)Record gcc command line switches in the object file. frecord-marker=4Fortran RejectNegativeUse a 4-byte record marker for unformatted files frecord-marker=8Fortran RejectNegativeUse an 8-byte record marker for unformatted files frecursiveFortranAllocate local variables on the stack to allow indirect recursion freduced-reflectionJava Var(flag_reduced_reflection)Reduce the amount of reflection meta-data generated freeCommon Report Var(flag_ree) Init(0)Turn on Redundant Extensions Elimination pass. freg-struct-returnCommon Report Var(flag_pcc_struct_return,0) OptimizationReturn small aggregates in registers fregmoveCommon Report Var(flag_regmove) OptimizationEnables a register move optimization frename-registersCommon Report Var(flag_rename_registers) Init(2) OptimizationPerform a register renaming optimization pass freorder-blocksCommon Report Var(flag_reorder_blocks) OptimizationReorder basic blocks to improve code placement freorder-blocks-and-partitionCommon Report Var(flag_reorder_blocks_and_partition) OptimizationReorder basic blocks and partition into hot and cold sections freorder-functionsCommon Report Var(flag_reorder_functions) OptimizationReorder functions to improve code placement frepack-arraysFortranCopy array sections into a contiguous block on procedure entry freplace-objc-classesObjC ObjC++ LTO Var(flag_replace_objc_classes)Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime frepoC++ ObjC++Enable automatic template instantiation frequire-return-statementGo Var(go_require_return_statement) Init(1) WarningFunctions which return values must end with return statements frerun-cse-after-loopCommon Report Var(flag_rerun_cse_after_loop) OptimizationAdd a common subexpression elimination pass after loop optimizations frerun-loop-optCommon IgnoreDoes nothing. Preserved for backward compatibility. freschedule-modulo-scheduled-loopsCommon Report Var(flag_resched_modulo_sched) OptimizationEnable/Disable the traditional scheduling in loops that already passed modulo scheduling fresolution=LTO JoinedThe resolution file frounding-mathCommon Report Var(flag_rounding_math) Optimization SetByCombinedDisable optimizations that assume default FP rounding behavior frttiC++ ObjC++ Optimization Var(flag_rtti) Init(1)Generate run time type descriptor information fsanitize=addressCommon Report Var(flag_asan)Enable AddressSanitizer, a memory error detector fsanitize=threadCommon Report Var(flag_tsan)Enable ThreadSanitizer, a data race detector fsaw-java-fileJava Undocumented RejectNegative fsched-critical-path-heuristicCommon Report Var(flag_sched_critical_path_heuristic) Init(1) OptimizationEnable the critical path heuristic in the scheduler fsched-dep-count-heuristicCommon Report Var(flag_sched_dep_count_heuristic) Init(1) OptimizationEnable the dependent count heuristic in the scheduler fsched-group-heuristicCommon Report Var(flag_sched_group_heuristic) Init(1) OptimizationEnable the group heuristic in the scheduler fsched-interblockCommon Report Var(flag_schedule_interblock) Init(1) OptimizationEnable scheduling across basic blocks fsched-last-insn-heuristicCommon Report Var(flag_sched_last_insn_heuristic) Init(1) OptimizationEnable the last instruction heuristic in the scheduler fsched-pressureCommon Report Var(flag_sched_pressure) Init(0) OptimizationEnable register pressure sensitive insn scheduling fsched-rank-heuristicCommon Report Var(flag_sched_rank_heuristic) Init(1) OptimizationEnable the rank heuristic in the scheduler fsched-specCommon Report Var(flag_schedule_speculative) Init(1) OptimizationAllow speculative motion of non-loads fsched-spec-insn-heuristicCommon Report Var(flag_sched_spec_insn_heuristic) Init(1) OptimizationEnable the speculative instruction heuristic in the scheduler fsched-spec-loadCommon Report Var(flag_schedule_speculative_load) OptimizationAllow speculative motion of some loads fsched-spec-load-dangerousCommon Report Var(flag_schedule_speculative_load_dangerous) OptimizationAllow speculative motion of more loads fsched-stalled-insnsCommon Report Var(flag_sched_stalled_insns) Optimization UIntegerAllow premature scheduling of queued insns fsched-stalled-insns-depCommon Report Var(flag_sched_stalled_insns_dep,1) Init(1) Optimization UIntegerSet dependence distance checking in premature scheduling of queued insns fsched-stalled-insns-dep=Common RejectNegative Joined UInteger-fsched-stalled-insns-dep= Set dependence distance checking in premature scheduling of queued insns fsched-stalled-insns=Common RejectNegative Joined UInteger-fsched-stalled-insns= Set number of queued insns that can be prematurely scheduled fsched-verbose=Common RejectNegative Joined UInteger Var(sched_verbose_param)-fsched-verbose= Set the verbosity level of the scheduler fsched2-use-superblocksCommon Report Var(flag_sched2_use_superblocks) OptimizationIf scheduling post reload, do superblock scheduling fsched2-use-tracesCommon IgnoreDoes nothing. Preserved for backward compatibility. fschedule-insnsCommon Report Var(flag_schedule_insns) OptimizationReschedule instructions before register allocation fschedule-insns2Common Report Var(flag_schedule_insns_after_reload) OptimizationReschedule instructions after register allocation fsecond-underscoreFortranAppend a second underscore if the name already contains an underscore fsection-anchorsCommon Report Var(flag_section_anchors) OptimizationAccess data in the same section from shared anchor points fseeCommon IgnoreDoes nothing. Preserved for backward compatibility. fsel-sched-pipeliningCommon Report Var(flag_sel_sched_pipelining) Init(0) OptimizationPerform software pipelining of inner loops during selective scheduling fsel-sched-pipelining-outer-loopsCommon Report Var(flag_sel_sched_pipelining_outer_loops) Init(0) OptimizationPerform software pipelining of outer loops during selective scheduling fsel-sched-reschedule-pipelinedCommon Report Var(flag_sel_sched_reschedule_pipelined) Init(0) OptimizationReschedule pipelined regions without pipelining fselective-schedulingCommon Report Var(flag_selective_scheduling) OptimizationSchedule instructions using selective scheduling algorithm fselective-scheduling2Common Report Var(flag_selective_scheduling2) Optimization Run selective scheduling after reload fshort-doubleC ObjC C++ ObjC++ Optimization Var(flag_short_double)Use the same size for double as for float fshort-enumsC ObjC C++ ObjC++ Optimization Var(flag_short_enums)Use the narrowest integer type possible for enumeration types fshort-enumsFortran Var(flag_short_enums) fshort-wcharC ObjC C++ ObjC++ Optimization Var(flag_short_wchar)Force the underlying type for \"wchar_t\" to be \"unsigned short\" fshow-columnCommon Report Var(flag_show_column) Init(1)Show column numbers in diagnostics, when available. Default on fshrink-wrapCommon Report Var(flag_shrink_wrap) OptimizationEmit function prologues only before parts of the function that need it,rather than at the top of the function. fsign-zeroFortranApply negative sign to zero values fsignaling-nansCommon Report Var(flag_signaling_nans) Optimization SetByCombinedDisable optimizations observable by IEEE signaling NaNs fsigned-bitfieldsC ObjC C++ ObjC++ Var(flag_signed_bitfields) Init(1)When \"signed\" or \"unsigned\" is not given make the bitfield signed fsigned-charC ObjC C++ ObjC++ LTO Var(flag_signed_char)Make \"char\" signed by default fsigned-zerosCommon Report Var(flag_signed_zeros) Init(1) Optimization SetByCombinedDisable floating point optimizations that ignore the IEEE signedness of zero fsingle-precision-constantCommon Report Var(flag_single_precision_constant) OptimizationConvert floating point constants to single precision constants fsource-filename=Java Joined Undocumented fsource=Java JoinedSet the source language version fsplit-ivs-in-unrollerCommon Report Var(flag_split_ivs_in_unroller) Init(1) OptimizationSplit lifetimes of induction variables when loops are unrolled fsplit-stackCommon Report Var(flag_split_stack) Init(-1)Generate discontiguous stack frames fsplit-wide-typesCommon Report Var(flag_split_wide_types) OptimizationSplit wide types into independent registers fsquangleC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fstack-arraysFortranPut all local arrays on stack. fstack-checkCommon Alias(fstack-check=, specific, no)Insert stack checking code into the program. Same as -fstack-check=specific fstack-check=Common Report RejectNegative Joined-fstack-check=[no|generic|specific] Insert stack checking code into the program fstack-limitCommon Var(common_deferred_options) Defer fstack-limit-register=Common RejectNegative Joined Var(common_deferred_options) Defer-fstack-limit-register= Trap if the stack goes past fstack-limit-symbol=Common RejectNegative Joined Var(common_deferred_options) Defer-fstack-limit-symbol= Trap if the stack goes past symbol fstack-protectorCommon Report Var(flag_stack_protect, 1)Use propolice as a stack protection method fstack-protector-allCommon Report RejectNegative Var(flag_stack_protect, 2)Use a stack protection method for every function fstack-reuse=Common Joined RejectNegative Enum(stack_reuse_level) Var(flag_stack_reuse) Init(SR_ALL)-fstack-reuse=[all|named_vars|none] Set stack reuse level for local variables. fstack-usageCommon RejectNegative Var(flag_stack_usage)Output stack usage information on a per-function basis fstatsC++ ObjC++ Var(flag_detailed_statistics)Display statistics accumulated during compilation fstore-checkJava Var(flag_store_check) Init(1)Enable assignability checks for stores into object arrays fstrength-reduceCommon IgnoreDoes nothing. Preserved for backward compatibility. fstrict-aliasingCommon Report Var(flag_strict_aliasing) OptimizationAssume strict aliasing rules apply fstrict-enumsC++ ObjC++ Optimization Var(flag_strict_enums)Assume that values of enumeration type are always within the minimum range of that type fstrict-overflowCommon Report Var(flag_strict_overflow)Treat signed overflow as undefined fstrict-prototypeC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fstrict-volatile-bitfieldsCommon Report Var(flag_strict_volatile_bitfields) Init(-1)Force bitfield accesses to match their type width fsync-libcallsCommon Report Var(flag_sync_libcalls) Init(1)Implement __atomic operations via libcalls to legacy __sync functions fsyntax-onlyCommon Report Var(flag_syntax_only)Check for syntax errors, then stop ftabstop=C ObjC C++ ObjC++ Joined RejectNegative UInteger-ftabstop= Distance between tab stops for column reporting ftarget-helpCommon Driver Alias(-target-help) ftarget=Java JoinedSet the target VM version ftemplate-backtrace-limit=C++ ObjC++ Joined RejectNegative UInteger Var(template_backtrace_limit) Init(10)Set the maximum number of template instantiation notes for a single warning or error ftemplate-depth-C++ ObjC++ Joined RejectNegative Undocumented Alias(ftemplate-depth=) ftemplate-depth=C++ ObjC++ Joined RejectNegative UInteger-ftemplate-depth= Specify maximum template instantiation depth ftest-coverageCommon Report Var(flag_test_coverage)Create data files needed by \"gcov\" fthis-is-variableC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fthread-jumpsCommon Report Var(flag_thread_jumps) OptimizationPerform jump threading optimizations fthreadsafe-staticsC++ ObjC++ Optimization Var(flag_threadsafe_statics) Init(1)-fno-threadsafe-statics Do not generate thread-safe code for initializing local statics ftime-reportCommon Report Var(time_report)Report the time taken by each compiler pass ftls-model=Common Joined RejectNegative Enum(tls_model) Var(flag_tls_default) Init(TLS_MODEL_GLOBAL_DYNAMIC)-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec] Set the default thread-local storage code generation model ftoplevel-reorderCommon Report Var(flag_toplevel_reorder) Init(2) OptimizationReorder top level functions, variables, and asms ftracerCommon Report Var(flag_tracer)Perform superblock formation via tail duplication ftrack-macro-expansionC ObjC C++ ObjC++ JoinedOrMissing RejectNegative UInteger ftrack-macro-expansion=C ObjC C++ ObjC++ JoinedOrMissing RejectNegative UInteger-ftrack-macro-expansion=<0|1|2> Track locations of tokens coming from macro expansion and display them in error messages ftrapping-mathCommon Report Var(flag_trapping_math) Init(1) Optimization SetByCombinedAssume floating-point operations can trap ftrapvCommon Report Var(flag_trapv) OptimizationTrap for signed overflow in addition, subtraction and multiplication ftree-bit-ccpCommon Report Var(flag_tree_bit_ccp) OptimizationEnable SSA-BIT-CCP optimization on trees ftree-builtin-call-dceCommon Report Var(flag_tree_builtin_call_dce) Init(0) OptimizationEnable conditional dead code elimination for builtin calls ftree-ccpCommon Report Var(flag_tree_ccp) OptimizationEnable SSA-CCP optimization on trees ftree-chCommon Report Var(flag_tree_ch) OptimizationEnable loop header copying on trees ftree-coalesce-inlined-varsCommon Report Var(flag_ssa_coalesce_vars,1) Init(2) RejectNegative OptimizationEnable coalescing of copy-related user variables that are inlined ftree-coalesce-varsCommon Report Var(flag_ssa_coalesce_vars,2) OptimizationEnable coalescing of all copy-related user variables ftree-copy-propCommon Report Var(flag_tree_copy_prop) OptimizationEnable copy propagation on trees ftree-copyrenameCommon Report Var(flag_tree_copyrename) OptimizationReplace SSA temporaries with better names in copies ftree-cselimCommon Report Var(flag_tree_cselim) Init(2) OptimizationTransform condition stores into unconditional ones ftree-dceCommon Report Var(flag_tree_dce) OptimizationEnable SSA dead code elimination optimization on trees ftree-dominator-optsCommon Report Var(flag_tree_dom) OptimizationEnable dominator optimizations ftree-dseCommon Report Var(flag_tree_dse) OptimizationEnable dead store elimination ftree-forwpropCommon Report Var(flag_tree_forwprop) Init(1) OptimizationEnable forward propagation on trees ftree-freCommon Report Var(flag_tree_fre) OptimizationEnable Full Redundancy Elimination (FRE) on trees ftree-loop-distribute-patternsCommon Report Var(flag_tree_loop_distribute_patterns) OptimizationEnable loop distribution for patterns transformed into a library call ftree-loop-distributionCommon Report Var(flag_tree_loop_distribution) OptimizationEnable loop distribution on trees ftree-loop-if-convertCommon Report Var(flag_tree_loop_if_convert) Init(-1) OptimizationConvert conditional jumps in innermost loops to branchless equivalents ftree-loop-if-convert-storesCommon Report Var(flag_tree_loop_if_convert_stores) OptimizationAlso if-convert conditional jumps containing memory writes ftree-loop-imCommon Report Var(flag_tree_loop_im) Init(1) OptimizationEnable loop invariant motion on trees ftree-loop-ivcanonCommon Report Var(flag_tree_loop_ivcanon) Init(1) OptimizationCreate canonical induction variables in loops ftree-loop-linearCommon Alias(floop-interchange)Enable loop interchange transforms. Same as -floop-interchange ftree-loop-optimizeCommon Report Var(flag_tree_loop_optimize) Init(1) OptimizationEnable loop optimizations on tree level ftree-lrsCommon Report Var(flag_tree_live_range_split) OptimizationPerform live range splitting during the SSA->normal pass ftree-parallelize-loops=Common Report Joined RejectNegative UInteger Var(flag_tree_parallelize_loops) Init(1)Enable automatic parallelization of loops ftree-partial-preCommon Report Var(flag_tree_partial_pre) OptimizationIn SSA-PRE optimization on trees, enable partial-partial redundancy elimination ftree-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 trees ftree-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 level ftree-saliasCommon IgnoreDoes nothing. Preserved for backward compatibility. ftree-scev-cpropCommon Report Var(flag_tree_scev_cprop) Init(1) OptimizationEnable copy propagation of scalar-evolution information. ftree-sinkCommon Report Var(flag_tree_sink) OptimizationEnable SSA code sinking on trees ftree-slp-vectorizeCommon Report Var(flag_tree_slp_vectorize) Init(2) OptimizationEnable basic block vectorization (SLP) on trees ftree-slsrCommon Report Var(flag_tree_slsr) OptimizationPerform straight-line strength reduction ftree-sraCommon Report Var(flag_tree_sra) OptimizationPerform scalar replacement of aggregates ftree-store-ccpCommon IgnoreDoes nothing. Preserved for backward compatibility. ftree-store-copy-propCommon IgnoreDoes nothing. Preserved for backward compatibility. ftree-switch-conversionCommon Report Var(flag_tree_switch_conversion) OptimizationPerform conversions of switch initializations. ftree-tail-mergeCommon Report Var(flag_tree_tail_merge) OptimizationEnable tail merging on trees ftree-terCommon Report Var(flag_tree_ter) OptimizationReplace temporary expressions in the SSA->normal pass ftree-vect-loop-versionCommon Report Var(flag_tree_vect_loop_version) Init(1) OptimizationEnable loop versioning when doing loop vectorization on trees ftree-vectorizeCommon Report Var(flag_tree_vectorize) OptimizationEnable loop vectorization on trees ftree-vectorizer-verbose=Common RejectNegative Joined UInteger Var(common_deferred_options) Defer-ftree-vectorizer-verbose= This switch is deprecated. Use -fopt-info instead. ftree-vrpCommon Report Var(flag_tree_vrp) Init(0) OptimizationPerform Value Range Propagation on trees funderscoringFortranAppend underscores to externally visible names funit-at-a-timeCommon Report Var(flag_unit_at_a_time) Init(1) OptimizationCompile whole compilation unit at a time funroll-all-loopsCommon Report Var(flag_unroll_all_loops) OptimizationPerform loop unrolling for all loops funroll-loopsCommon Report Var(flag_unroll_loops) OptimizationPerform loop unrolling when iteration count is known funsafe-loop-optimizationsCommon Report Var(flag_unsafe_loop_optimizations) OptimizationAllow loop optimizations to assume that the loops behave in normal way funsafe-math-optimizationsCommon Report Var(flag_unsafe_math_optimizations) Optimization SetByCombinedAllow math optimizations that may violate IEEE or ISO standards funsigned-bitfieldsC ObjC C++ ObjC++ Var(flag_signed_bitfields, 0)When \"signed\" or \"unsigned\" is not given make the bitfield unsigned funsigned-charC ObjC C++ ObjC++ LTO Var(flag_signed_char, 0)Make \"char\" unsigned by default funswitch-loopsCommon Report Var(flag_unswitch_loops) OptimizationPerform loop unswitching funwind-tablesCommon Report Var(flag_unwind_tables) OptimizationJust generate unwind tables for exception handling fuse-atomic-builtinsJava Var(flag_use_atomic_builtins) Init(0)Generate code for built-in atomic operations fuse-boehm-gcJava Var(flag_use_boehm_gc)Generate code for the Boehm GC fuse-cxa-atexitC++ ObjC++ Var(flag_use_cxa_atexit) Init(DEFAULT_USE_CXA_ATEXIT)Use __cxa_atexit to register destructors fuse-cxa-get-exception-ptrC++ ObjC++ Var(flag_use_cxa_get_exception_ptr) Init(2)Use __cxa_get_exception_ptr in exception handling fuse-divide-subroutineJava Var(flag_use_divide_subroutine) Init(1)Call a library routine to do integer divisions fuse-ld=bfdCommon Negative(fuse-ld=gold)Use the bfd linker instead of the default linker fuse-ld=goldCommon Negative(fuse-ld=bfd)Use the gold linker instead of the default linker fuse-linker-pluginCommon Undocumented fvar-trackingCommon Report Var(flag_var_tracking) Init(2) OptimizationPerform variable tracking fvar-tracking-assignmentsCommon Report Var(flag_var_tracking_assignments) Init(2) OptimizationPerform variable tracking by annotating assignments fvar-tracking-assignments-toggleCommon Report Var(flag_var_tracking_assignments_toggle) OptimizationToggle -fvar-tracking-assignments fvar-tracking-uninitCommon Report Var(flag_var_tracking_uninit) OptimizationPerform variable tracking and also tag variables that are uninitialized fvariable-expansion-in-unrollerCommon Report Var(flag_variable_expansion_in_unroller) OptimizationApply variable expansion when loops are unrolled fvect-cost-modelCommon Report Var(flag_vect_cost_model) OptimizationEnable use of cost model in vectorization fverbose-asmCommon Report Var(flag_verbose_asm)Add extra commentary to assembler output fversionCommon Driver Alias(-version) fvisibility-inlines-hiddenC++ ObjC++Marks all inlined functions and methods as having hidden visibility fvisibility-ms-compatC++ ObjC++ Var(flag_visibility_ms_compat)Changes visibility to match Microsoft Visual Studio by default fvisibility=Common Joined RejectNegative Enum(symbol_visibility) Var(default_visibility) Init(VISIBILITY_DEFAULT)-fvisibility=[default|internal|hidden|protected] Set the default symbol visibility fvptCommon Report Var(flag_value_profile_transformations) OptimizationUse expression value profiles in optimizations fvtable-gcC++ ObjC++ Ignore Warn(switch %qs is no longer supported)No longer supported fvtable-thunksC++ ObjC++ Ignore Warn(switch %qs is no longer supported)No longer supported fweakC++ ObjC++ Var(flag_weak) Init(1)Emit common-like symbols as weak symbols fwebCommon Report Var(flag_web) Init(2) OptimizationConstruct webs and split unrelated uses of single variable fwhole-fileFortranCompile all program units at once and check all interfaces fwhole-programCommon Report Var(flag_whole_program) Init(0) OptimizationPerform whole program optimizations fwide-exec-charset=C ObjC C++ ObjC++ Joined RejectNegative-fwide-exec-charset= Convert all wide strings and character constants to character set fworking-directoryC ObjC C++ ObjC++ Var(flag_working_directory) Init(-1)Generate a #line directive pointing at the current working directory fworking-directoryFortran fwpaLTO Driver Report Var(flag_wpa)Run the link-time optimizer in whole program analysis (WPA) mode. fwrapvCommon Report Var(flag_wrapv) OptimizationAssume signed arithmetic overflow wraps around fxrefC++ ObjC++ Ignore Warn(switch %qs is no longer supported)No longer supported fzeeCommon IgnoreDoes nothing. Preserved for backward compatibility. fzero-initialized-in-bssCommon Report Var(flag_zero_initialized_in_bss) Init(1)Put zero initialized data in the bss section fzero-linkObjC ObjC++ Var(flag_zero_link)Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode gCommon JoinedOrMissingGenerate debug information in default format gantAda AdaWhy AdaSCIL Joined UndocumentedCatch typos gcoffCommon JoinedOrMissing Negative(gdwarf-)Generate debug information in COFF format gdwarf-Common Joined UInteger Var(dwarf_version) Init(4) Negative(gstabs)Generate debug information in DWARF v2 (or later) format gen-declsObjC ObjC++ Var(flag_gen_declaration)Dump declarations to a .decl file ggdbCommon JoinedOrMissingGenerate debug information in default extended format gnatAda AdaWhy AdaSCIL Joined-gnat Specify options to GNAT gnatOAda AdaWhy AdaSCIL SeparateSet name of output ALI file (internal switch) gno-pubnamesCommon RejectNegative Var(debug_generate_pub_sections, 0) Init(-1)Don't generate DWARF pubnames and pubtypes sections. gno-record-gcc-switchesCommon RejectNegative Var(dwarf_record_gcc_switches,0) Init(1)Don't record gcc command line switches in DWARF DW_AT_producer. gno-split-dwarfCommon Driver RejectNegative Var(dwarf_split_debug_info,0) Init(0)Don't generate debug information in separate .dwo files gno-strict-dwarfCommon RejectNegative Var(dwarf_strict,0) Init(0)Emit DWARF additions beyond selected version gpubnamesCommon RejectNegative Var(debug_generate_pub_sections, 1)Generate DWARF pubnames and pubtypes sections. grecord-gcc-switchesCommon RejectNegative Var(dwarf_record_gcc_switches,1)Record gcc command line switches in DWARF DW_AT_producer. gsplit-dwarfCommon Driver RejectNegative Var(dwarf_split_debug_info,1)Generate debug information in separate .dwo files gstabsCommon JoinedOrMissing Negative(gstabs+)Generate debug information in STABS format gstabs+Common JoinedOrMissing Negative(gvms)Generate debug information in extended STABS format gstrict-dwarfCommon Report RejectNegative Var(dwarf_strict,1)Don't emit DWARF additions beyond selected version gtoggleCommon Report Var(flag_gtoggle)Toggle debug information generation gvmsCommon JoinedOrMissing Negative(gxcoff)Generate debug information in VMS format gxcoffCommon JoinedOrMissing Negative(gxcoff+)Generate debug information in XCOFF format gxcoff+Common JoinedOrMissing Negative(gcoff)Generate debug information in extended XCOFF format hDriver Joined Separate idirafterC ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)-idirafter Add to the end of the system include path idirafterFortran Joined Separate imacrosC ObjC C++ ObjC++ Joined Separate MissingArgError(missing filename after %qs)-imacros Accept definition of macros in imultiarchCommon Joined Separate RejectDriver Var(imultiarch) Init(0)-imultiarch Set to be the multiarch include subdirectory imultilibC ObjC C++ ObjC++ Joined Separate-imultilib Set to be the multilib include subdirectory imultilibFortran Joined Separate includeC ObjC C++ ObjC++ Joined Separate MissingArgError(missing filename after %qs)-include Include the contents of before other files iplugindir=Common Joined Var(plugindir_string) Init(0)-iplugindir= Set to be the default plugin directory iprefixC ObjC C++ ObjC++ Joined Separate-iprefix Specify as a prefix for next two options iprefixFortran Joined Separate iquoteC ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)-iquote Add to the end of the quote include path iquoteFortran Joined Separate isysrootC ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)-isysroot Set to be the system root directory isysrootFortran Joined Separate isystemC ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)-isystem Add to the start of the system include path isystemFortran Joined Separate iwithprefixC ObjC C++ ObjC++ Joined Separate-iwithprefix Add to the end of the system include path iwithprefixbeforeC ObjC C++ ObjC++ Joined Separate-iwithprefixbefore Add to the end of the main include path k8DriverSynonym of -gnatk8 lDriver Joined Separate lang-asmC Undocumented RejectDriver mabi=Target RejectNegative Joined Enum(mips_abi) Var(mips_abi) Init(MIPS_ABI_DEFAULT)-mabi=ABI Generate code that conforms to the given ABI mabicallsTarget Report Mask(ABICALLS)Generate code that can be used in SVR4-style dynamic objects march=Target RejectNegative Joined Var(mips_arch_option) ToLower Enum(mips_arch_opt_value)-march=ISA Generate code for the given ISA mbranch-cost=Target RejectNegative Joined UInteger Var(mips_branch_cost)-mbranch-cost=COST Set the cost of branches to roughly COST instructions mbranch-likelyTarget Report Mask(BRANCHLIKELY)Use Branch Likely instructions, overriding the architecture default mcheck-zero-divisionTarget Report Mask(CHECK_ZERO_DIV)Trap on integer divide by zero mcode-readable=Target RejectNegative Joined Enum(mips_code_readable_setting) Var(mips_code_readable) Init(CODE_READABLE_YES)-mcode-readable=SETTING Specify when instructions are allowed to access code mdebugTarget Var(TARGET_DEBUG_MODE) Undocumented mdebugdTarget Var(TARGET_DEBUG_D_MODE) Undocumented mdivide-breaksTarget Report RejectNegative Mask(DIVIDE_BREAKS)Use branch-and-break sequences to check for integer divide by zero mdivide-trapsTarget Report RejectNegative InverseMask(DIVIDE_BREAKS, DIVIDE_TRAPS)Use trap instructions to check for integer divide by zero mdmxTarget Report RejectNegative Var(TARGET_MDMX)Allow the use of MDMX instructions mdouble-floatTarget Report RejectNegative InverseMask(SINGLE_FLOAT, DOUBLE_FLOAT)Allow hardware floating-point instructions to cover both 32-bit and 64-bit operations mdspTarget Report Mask(DSP)Use MIPS-DSP instructions mdspr2Target Report Mask(DSPR2)Use MIPS-DSP REV 2 instructions mebTarget Report RejectNegative Mask(BIG_ENDIAN)Use big-endian byte order melTarget Report RejectNegative InverseMask(BIG_ENDIAN, LITTLE_ENDIAN)Use little-endian byte order membedded-dataTarget Report Var(TARGET_EMBEDDED_DATA)Use ROM instead of RAM mexplicit-relocsTarget Report Mask(EXPLICIT_RELOCS)Use NewABI-style %reloc() assembly operators mextern-sdataTarget Report Var(TARGET_EXTERN_SDATA) Init(1)Use -G for data that is not defined by the current object mfix-24kTarget Report Var(TARGET_FIX_24K)Work around certain 24K errata mfix-r10000Target Report Mask(FIX_R10000)Work around certain R10000 errata mfix-r4000Target Report Mask(FIX_R4000)Work around certain R4000 errata mfix-r4400Target Report Mask(FIX_R4400)Work around certain R4400 errata mfix-sb1Target Report Var(TARGET_FIX_SB1)Work around errata for early SB-1 revision 2 cores mfix-vr4120Target Report Var(TARGET_FIX_VR4120)Work around certain VR4120 errata mfix-vr4130Target Report Var(TARGET_FIX_VR4130)Work around VR4130 mflo/mfhi errata mfix4300Target Report Var(TARGET_4300_MUL_FIX)Work around an early 4300 hardware bug mflip-mips16Target Report Var(TARGET_FLIP_MIPS16)Switch on/off MIPS16 ASE on alternating functions for compiler testing mflush-func=Target RejectNegative Joined Var(mips_cache_flush_func) Init(CACHE_FLUSH_FUNC)-mflush-func=FUNC Use FUNC to flush the cache before calling stack trampolines mfp-exceptionsTarget Report Mask(FP_EXCEPTIONS)FP exceptions are enabled mfp32Target Report RejectNegative InverseMask(FLOAT64)Use 32-bit floating-point registers mfp64Target Report RejectNegative Mask(FLOAT64)Use 64-bit floating-point registers mfused-maddTarget Report Mask(FUSED_MADD)Generate floating-point multiply-add instructions mgp32Target Report RejectNegative InverseMask(64BIT)Use 32-bit general registers mgp64Target Report RejectNegative Mask(64BIT)Use 64-bit general registers mgpoptTarget Report Var(TARGET_GPOPT) Init(1)Use GP-relative addressing to access small data mhard-floatTarget Report RejectNegative InverseMask(SOFT_FLOAT_ABI, HARD_FLOAT_ABI)Allow the use of hardware floating-point ABI and instructions minterlink-mips16Target Report Var(TARGET_INTERLINK_MIPS16) Init(0)Generate code that can be safely linked with MIPS16 code. mipsTarget RejectNegative Joined ToLower Enum(mips_mips_opt_value) Var(mips_isa_option)-mipsN Generate code for ISA level N mips16Target Report RejectNegative Mask(MIPS16)Generate MIPS16 code mips3dTarget Report RejectNegative Mask(MIPS3D)Use MIPS-3D instructions mllscTarget Report Mask(LLSC)Use ll, sc and sync instructions mlocal-sdataTarget Report Var(TARGET_LOCAL_SDATA) Init(1)Use -G for object-local data mlong-callsTarget Report Var(TARGET_LONG_CALLS)Use indirect calls mlong32Target Report RejectNegative InverseMask(LONG64, LONG32)Use a 32-bit long type mlong64Target Report RejectNegative Mask(LONG64)Use a 64-bit long type mmadTarget Report Var(TARGET_MAD)Use PMC-style 'mad' instructions mmcount-ra-addressTarget Report Var(TARGET_MCOUNT_RA_ADDRESS)Pass the address of the ra save location to _mcount in $12 mmcuTarget Report Var(TARGET_MCU)Use MCU instructions mmemcpyTarget Report Mask(MEMCPY)Don't optimize block moves mmtTarget Report Var(TARGET_MT)Allow the use of MT instructions mno-floatTarget Report RejectNegative Var(TARGET_NO_FLOAT) Condition(TARGET_SUPPORTS_NO_FLOAT)Prevent the use of all floating-point operations mno-flush-funcTarget RejectNegativeDo not use a cache-flushing function before calling stack trampolines mno-mdmxTarget Report RejectNegative Var(TARGET_MDMX, 0)Do not use MDMX instructions mno-mips16Target Report RejectNegative InverseMask(MIPS16)Generate normal-mode code mno-mips3dTarget Report RejectNegative InverseMask(MIPS3D)Do not use MIPS-3D instructions mpaired-singleTarget Report Mask(PAIRED_SINGLE_FLOAT)Use paired-single floating-point instructions mpltTarget Report Var(TARGET_PLT)When generating -mabicalls code, allow executables to use PLTs and copy relocations mr10k-cache-barrier=Target Joined RejectNegative Enum(mips_r10k_cache_barrier_setting) Var(mips_r10k_cache_barrier) Init(R10K_CACHE_BARRIER_NONE)-mr10k-cache-barrier=SETTING Specify when r10k cache barriers should be inserted mrelax-pic-callsTarget Report Mask(RELAX_PIC_CALLS)Try to allow the linker to turn PIC calls into direct calls msharedTarget Report Var(TARGET_SHARED) Init(1)When generating -mabicalls code, make the code suitable for use in shared libraries msingle-floatTarget Report RejectNegative Mask(SINGLE_FLOAT)Restrict the use of hardware floating-point instructions to 32-bit operations msmartmipsTarget Report Mask(SMARTMIPS)Use SmartMIPS instructions msoft-floatTarget Report RejectNegative Mask(SOFT_FLOAT_ABI)Prevent the use of all hardware floating-point instructions msplit-addressesTarget Report Mask(SPLIT_ADDRESSES)Optimize lui/addiu address loads msym32Target Report Var(TARGET_SYM32)Assume all symbols have 32-bit values msynciTarget Report Mask(SYNCI)Use synci instruction to invalidate i-cache mtune=Target RejectNegative Joined Var(mips_tune_option) ToLower Enum(mips_arch_opt_value)-mtune=PROCESSOR Optimize the output for PROCESSOR muninit-const-in-rodataTarget Report Var(TARGET_UNINIT_CONST_IN_RODATA)Put uninitialized constants in ROM (needs -membedded-data) mvr4130-alignTarget Report Mask(VR4130_ALIGN)Perform VR4130-specific alignment optimizations mxgotTarget Report Var(TARGET_XGOT)Lift restrictions on GOT size nDriver no-canonical-prefixesDriver no-integrated-cppDriver noasmoptDriver nocppFortran Negative(cpp)Disable preprocessing nodefaultlibsDriver nostartfilesDriver nostdincAda AdaWhy AdaSCIL RejectNegative nostdincC ObjC C++ ObjC++Do not search standard system include directories (those specified with -isystem will still be used) nostdincFortran nostdinc++C++ ObjC++Do not search standard system include directories for C++ nostdlibAda AdaWhy AdaSCILDo not look for object files in standard path nostdlibDriver oC ObjC C++ ObjC++ Joined Separate oCommon Driver Joined Separate Var(asm_file_name) MissingArgError(missing filename after %qs)-o Place output into oFortran Joined Separate oGo Joined Separate pCommon Var(profile_flag)Enable function profiling pass-exit-codesDriver Var(pass_exit_codes) pedanticC ObjC C++ ObjC++ Alias(Wpedantic) pedanticCommon Alias(Wpedantic) pedantic-errorsCommon Var(flag_pedantic_errors)Like -pedantic but issue them as errors pgDriver pieDriver RejectNegative Negative(shared)Create a position independent executable pipeDriver Var(use_pipes) print-file-name=Driver JoinedOrMissing Var(print_file_name) print-libgcc-file-nameDriver print-multi-directoryDriver Var(print_multi_directory) print-multi-libDriver Var(print_multi_lib) print-multi-os-directoryDriver Var(print_multi_os_directory) print-multiarchDriver Var(print_multiarch) print-objc-runtime-infoObjC ObjC++Generate C header of platform-specific features print-prog-name=Driver JoinedOrMissing Var(print_prog_name) print-search-dirsDriver Var(print_search_dirs) print-sysrootDriver Var(print_sysroot) print-sysroot-headers-suffixDriver Var(print_sysroot_headers_suffix) quietCommon Var(quiet_flag) RejectDriverDo not display functions compiled or elapsed time rDriver remapC ObjC C++ ObjC++Remap file names when including files sDriver s-bc-abiDriver save-tempsDriver save-temps=Driver Joined sharedDriver RejectNegative Negative(pie)Create a shared library shared-libgccDriver specsDriver Separate Alias(specs=) specs=Driver Joined staticDriver static-libasanDriver static-libgccDriver static-libgcjDriver static-libgfortranDriver static-libgfortranFortranStatically link the GNU Fortran helper library (libgfortran) static-libgoDriver static-libstdc++Driver static-libtsanDriver std=c++03C++ ObjC++ Alias(std=c++98)Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum std=c++0xC++ ObjC++ Alias(std=c++11)Deprecated in favor of -std=c++11 std=c++11C++ ObjC++Conform to the ISO 2011 C++ standard (experimental and incomplete support) std=c++1yC++ ObjC++Conform to the ISO 201y(7?) C++ draft standard (experimental and incomplete support) std=c++98C++ ObjC++Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum std=c11C ObjCConform to the ISO 2011 C standard (experimental and incomplete support) std=c1xC ObjC Alias(std=c11)Deprecated in favor of -std=c11 std=c89C ObjC Alias(std=c90)Conform to the ISO 1990 C standard std=c90C ObjCConform to the ISO 1990 C standard std=c99C ObjCConform to the ISO 1999 C standard std=c9xC ObjC Alias(std=c99)Deprecated in favor of -std=c99 std=f2003FortranConform to the ISO Fortran 2003 standard std=f2008FortranConform to the ISO Fortran 2008 standard std=f2008tsFortranConform to the ISO Fortran 2008 standard including TS 29113 std=f95FortranConform to the ISO Fortran 95 standard std=gnuFortranConform to nothing in particular std=gnu++03C++ ObjC++ Alias(std=gnu++98)Conform to the ISO 1998 C++ standard revised by the 2003 technicalcorrigendum with GNU extensions std=gnu++0xC++ ObjC++ Alias(std=gnu++11)Deprecated in favor of -std=gnu++11 std=gnu++11C++ ObjC++Conform to the ISO 2011 C++ standard with GNU extensions (experimental and incomplete support) std=gnu++1yC++ ObjC++Conform to the ISO 201y(7?) C++ draft standard with GNU extensions (experimental and incomplete support) std=gnu++98C++ ObjC++Conform to the ISO 1998 C++ standard revised by the 2003 technicalcorrigendum with GNU extensions std=gnu11C ObjCConform to the ISO 2011 C standard with GNU extensions (experimental and incomplete support) std=gnu1xC ObjC Alias(std=gnu11)Deprecated in favor of -std=gnu11 std=gnu89C ObjC Alias(std=gnu90)Conform to the ISO 1990 C standard with GNU extensions std=gnu90C ObjCConform to the ISO 1990 C standard with GNU extensions std=gnu99C ObjCConform to the ISO 1999 C standard with GNU extensions std=gnu9xC ObjC Alias(std=gnu99)Deprecated in favor of -std=gnu99 std=iso9899:1990C ObjC Alias(std=c90)Conform to the ISO 1990 C standard std=iso9899:199409C ObjCConform to the ISO 1990 C standard as amended in 1994 std=iso9899:1999C ObjC Alias(std=c99)Conform to the ISO 1999 C standard std=iso9899:199xC ObjC Alias(std=c99)Deprecated in favor of -std=iso9899:1999 std=iso9899:2011C ObjC Alias(std=c11)Conform to the ISO 2011 C standard (experimental and incomplete support) std=legacyFortranAccept extensions to support legacy code symbolicDriver tDriver timeDriver Var(report_times) time=Driver JoinedOrMissing traditionalDriver traditional-cppC ObjC C++ ObjC++Enable traditional preprocessing trigraphsC ObjC C++ ObjC++-trigraphs Support ISO C trigraphs uDriver Joined Separate undefC ObjC C++ ObjC++ Var(flag_undef)Do not predefine system-specific and GCC-specific macros undefDriver undefFortran vC ObjC C++ ObjC++ vCommon Driver Var(verbose_flag)Enable verbose output vFortran versionCommon Var(version_flag) RejectDriverDisplay the compiler's version versionJava RejectDriver wC ObjC C++ ObjC++ wCommon Var(inhibit_warnings)Suppress warnings wrapperDriver Separate Var(wrapper_string) xDriver Joined Separate zDriver Joined Separate