Created attachment 62537 [details] bash script to find options missing @opindex entries In conjunction with pr122242, I put together a hacky shell script to try look for options that had no @opindex entry to at least scope out the extent of the problem and possibly use as a base for scripting to add the missing index entries mechanically. There are hundreds of them. :-( Somewhat more surprising, there are also hundreds of options that are missing index entries in their positive form as well. I believe a bunch of the missing -no entries are actually bugs in the input .opt files. E.g. probably all options of the form "-ffoo=" with the Joined attribute should have a RejectNegative to inhibit the -fno-foo= form, and all explicit options starting with "-fno-" should also have RejectNegative. I spot-checked about a dozen of the options listed as missing index entries for the positive form; in some cases they're missing documentation entirely, I saw at least one listed in the "Option Summary" but missing detailed documentation, and some that had detailed documention in the right place but missing @opindex entries. I believe some of them may also have entries that don't quite match the name of the option (in spite of my efforts to make the script more lax about matching options that take arguments). Anyway: - probably all the options that are showing up as missing an index entry for the positive form need to be checked/fixed manually - some manual effort is also needed to clean up the .opt files to add RejectNegative where it makes sense - given a list of options that have an @opindex for the positive form but are missing one for the negative form, that can easily be fixed mechanically.
.
Created attachment 62538 [details] list of -W/-f/-g/-m options that have no @opindex for the positive form Script output: list of -W/-f/-g/-m options that have no @opindex for the positive form
Created attachment 62539 [details] list of "no-" options that have no @opindex entries Script output: list of "no-" options that have no @opindex entries
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:546083d0d5ee866ab489e6d2f65a534414b27558 commit r16-5125-g546083d0d5ee866ab489e6d2f65a534414b27558 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Wed Oct 15 20:29:57 2025 +0000 Fix typos in @opindex entries [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (fdump-analyzer-exploded-nodes): Correct spelling of option in @opindex. (fdump-analyzer-exploded-nodes-2): Likewise. (fdump-analyzer-exploded-nodes-3): Likewise. (fdump-analyzer-feasibility): Likewise. (fdump-analyzer-infinite-loop): Likewise. (fstack-reuse): Likewise.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:d705745caafd17df486adc45d9bdefd34906fcea commit r16-5126-gd705745caafd17df486adc45d9bdefd34906fcea Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Wed Oct 15 23:30:00 2025 +0000 Add some missing @opindex entries [PR122243] The options handled in this patch already have documentation but are either missing an @opindex entry entirely, or index only the negative option form. gcc/ChangeLog PR other/122243 * doc/cppopts.texi (fcanonical-system-headers): Add @opindex. * doc/invoke.texi (fdump-ada-spec-slim): Add @opindex. (fcontract-semantic): Likewise. (fdiagnostics-plain-output): Likewise. (Wc11-c2x-compat): Likewise. (Wvla-parameter): Likewise. (fanalyzer-verbose-edges): Likewise. (fanalyzer-verbose-state-changes): Likewise. (fanalyzer-verbosity): Likewise. (flimit-function-alignment): Likewise.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:b415dc39c77f698958d079de3ed59d7e4cdb4a38 commit r16-5127-gb415dc39c77f698958d079de3ed59d7e4cdb4a38 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Thu Oct 16 18:21:40 2025 +0000 Mark some unused/undocumented options as "Ignore" [PR122243] gcc/c-family/ChangeLog PR other/122243 * c.opt (Wsynth): Mark as "Ignore". gcc/ChangeLog PR other/122243 * common.opt (ftree-lrs): Mark as "Ignore".
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:5b276d38c2fdd7df3d167755940da2038e049308 commit r16-5128-g5b276d38c2fdd7df3d167755940da2038e049308 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Oct 17 15:11:47 2025 +0000 Add "RejectNegative" to some options where it doesn't make sense [PR122243] This patch adds the "RejectNegative" property to several options where it doesn't make sense. These are either options of the form "name=value" rather than an on/off switch, those that are already in a "no-" form, or options that form a mutually-exclusive set. Also, the fhelp, ftarget-help, and fversion options that do not take arguments ignore the "-no" prefix so that even "-fno-help" (etc) causes help to be printed instead of suppressing help output. Since that behavior is not useful, I've added RejectNegative to those options as well. gcc/analyzer/ChangeLog PR other/122243 * analyzer.opt (fanalyzer-verbosity=): Add RejectNegative. gcc/c-family/ChangeLog PR other/122243 * c.opt: (fdeps-format=): Add RejectNegative. (fdeps-file=): Likewise. (fdeps-target=): Likewise. (Walloc-size-larger-than=): Likewise. (Wno-alloc-size-larger-than): Likewise. (Walloca-larger-than=): Likewise. (Wno-alloca-larger-than): Likewise. (Woverloaded-virtual=): Likewise. (Wvla-larger-than=): Likewise. (Wno-vla-larger-than): Likewise. (fopenacc-dim=): Likewise. (femit-struct-debug-baseonly): Likewise. (femit-struct-debug-reduced): Likewise. (femit-struct-debug-detailed=): Likewise. gcc/ChangeLog PR other/122243 * common.opt (fhelp): Add RejectNegative. (fhelp=): Likewise. (ftarget-help): Likewise. (fversion): Likewise. (Wno-frame-larger-than): Likewise. (Wno-larger-than): Likewise. (Wno-stack-usage): Likewise. (fdiagnostics-minimum-margin-width=): Likewise. (flto-incremental=): Likewise. (foffload=): Likewise. (foffload-options=): Likewise. (foffload-abi-host-opts=): Likewise. (fpatchable-function-entry=): Likewise. (gno-pubnames): Likewise. (gpubnames): Likewise. (ggnu-pubnames): Likewise.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:a8826f65233161505fa4a2a3d43d7f2adebb7cb6 commit r16-5129-ga8826f65233161505fa4a2a3d43d7f2adebb7cb6 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Tue Oct 28 22:38:08 2025 +0000 Mark some undocumented options as such [PR122243] We have a number of command-line options that are undocumented (either intentionally or because they are obsolete and retained only for compatibility), that ought to be marked as "Undocumented". I've also added some comments to the .opt files. gcc/c-family/ChangeLog PR other/122243 * c.opt (fmodule-version-ignore): Mark as "Undocumented". gcc/ChangeLog PR other/122243 * common.opt (fhelp, fhelp=, ftarget-help, fversion): Mark as "Undocumented". (fbounds-check): Update comments. (flag-graphite, fsel-sched-reschedule-pipelined): Mark as "Undocumented". (fstack-limit): Add comment.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:eed59c586c565f7fd14aa1bfd814a631466bb4e9 commit r16-5130-geed59c586c565f7fd14aa1bfd814a631466bb4e9 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Thu Nov 6 23:29:50 2025 +0000 Add missing options to option summary [PR122243] I noticed that several options (mostly C++ options, including those for contracts) were documented in the manual but were not listed in the corresponding option summary table. Besides adding the entries, I also corrected the alphabetization in the C++ option table and some formatting issues for option arguments. gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary): Add missing entries, also correct alphabetization and formatting of the C++ options. (C++ Language Options): Fix some formatting issues.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:a9bd095b6dd52f6d0ffacfb3defd688932646c4a commit r16-5131-ga9bd095b6dd52f6d0ffacfb3defd688932646c4a Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Wed Oct 22 01:58:01 2025 +0000 Only document -A/--assert options in cpp manual [PR122243] Assertions are a preprocessor feature that has been declared obsolete with strong warnings not to use them since 2001. The main GCC manual documents the -A command-line option but doesn't include the section that explains the purpose of the feature or that it is obsolete; that material appears only in the preprocessor manual. It seems rather pointless to clutter up the GCC manual with unhelpful documentation of an obsolete feature, so I've restricted the option documentation to the preprocessor manual too. I've also added the missing documentation entries for the long form of the option, --assert. gcc/ChangeLog PR other/122243 * doc/cppopts.texi (-A): Restrict option documentation to the CPP manual. Also document the --assert form. * doc/invoke.texi (Option Summary): Don't list the -A option.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:6786a073fcead3b10e7fc3082713c66c39e3b5a3 commit r16-5132-g6786a073fcead3b10e7fc3082713c66c39e3b5a3 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sun Oct 26 21:16:13 2025 +0000 Document long-form command-line options [PR122243] GCC has long supported long-form command-line options with the same meanings as its traditional one-character options, e.g. --output as an alias for -o, --language for -x, and so on. However, these have never been documented in the manual. This patch adds the missing documentation for these options, plus some additional options that have previously undocumented two-dash aliases with the same names as the one-dash form (e.g., -dumpdir and --dumpdir). gcc/ChangeLog PR other/122243 * doc/cppdiropts.texi: Document --include-directory, --include-directory-after, --include-barrier, --include-prefix, --include-with-prefix, --include-with-prefix-after, --include-with-prefix-before, --no-standard-includes. --embed-directory. * doc/cppopts.texi: Document --define-macro, --undefine-macro, --include, --imacros, --dependencies, --user-dependencies, --print-missing-file-dependencies, --write-dependencies, --write-user-dependencies, --comments, --comments-in-macros, --no-line-commands, --traditional, --traditional-cpp, --trigraphs, --trace-includes, --dump. * doc/invoke.texi: Add missing long options to Option Summary. Document --language, --compile, --assemble, --preprocess, --output, --dumpbase, --dumpbase-ext, --dumpdir, --verbose, --pass-exit-codes, --pipe, --specs, --ansi, --no-warnings, --pedantic, --pedantic-errors, --all-warnings, --extra-warnings, --debug, --optimize, --profile, -coverage, --no-integrated-cpp, --for-assembler, --no-standard-libraries, --entries, --pie, --static-pie, --static, --shared, --symbolic, --for-linker, --force-link, --library-directory, --prefix, --no-canonical-prefixes, --dump, --save-temps, --print-file-name, --print-multi-directory, --print-multi-lib, --print-multi-os-directory, --print-multiarch, --print-prog-name, --print-libgcc-file-name, --print-search-dirs, --print-sysroot, --print-sysroot-headers-suffix.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:40e9895fec6d36811a7ce6ac9a6f5ee12a4bd0b0 commit r16-5133-g40e9895fec6d36811a7ce6ac9a6f5ee12a4bd0b0 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Mon Oct 27 21:56:48 2025 +0000 Add missing documentation for some -f, -g, and -W options [PR122243] [PR120064] gcc/ChangeLog PR other/122243 PR rtl-optimization/120064 * doc/invoke.texi: Document -fconcepts-diagnostics-depth, -Wdeprecated-copy-dtor, -Wformat-diag, -Wcannot-profile, -fvar-tracking-uninit, -gno-pubnames, -finline-atomics, -fext-dce, -fipa-icf-functions, -fipa-icf-variables, -fprofile, -fdump-internal-locations, and -Wopenacc-dims. Minor copy-editing and rearrangement of items in the option summary lists.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:060af69489000c456cc9bd2530e933a1aa6fc4a8 commit r16-5134-g060af69489000c456cc9bd2530e933a1aa6fc4a8 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Wed Oct 29 22:11:44 2025 +0000 Document linker options + -Q and -S [PR122243] This patch adds documentation for several options that the GCC driver passes to the linker via specs without further interpretation. I've also added some comments/documentation strings to common.opt for these and a couple other options that previously didn't have any. gcc/ChangeLog PR other/122243 * common.opt: Add comments/documentation for -N, -Q, -S, -T, -Tbss, -Tdata, -Ttext, -Z, -n, -Q, -s, -t, -z. * doc/invoke.texi: Add documentation for -Tbss, -Tdata, -Ttext, -N, -n, -t, -Z.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:6f9ab2f01f7c0d34b723c48756e2d418bb843f84 commit r16-5135-g6f9ab2f01f7c0d34b723c48756e2d418bb843f84 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Thu Oct 30 00:56:22 2025 +0000 Documentation for -fident and -Qy/-Qn options [PR122243] I noticed that the comments for -fident in common.opt were garbled, and its description is confusing; this is classed as a code generation option rather than a preprocessor option, and it controls emission of all ".ident" directives in the assembly file, not just those inserted by the "#ident" preprocessor directive. Also, the -Qy/-Qn options which have the same effect as -fident/-fno-ident were documented as System V Options when in fact they are available on all targets. Fixed thusly. gcc/ChangeLog PR other/122243 * common.opt: Clean up comments/documentation for -fident. * doc/invoke.texi: Move -Qy/-Qn documentation from System V options and combine with -fident/-fno-ident entry.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:ecf9cca53ce397523c47409c722d2ef7e47f0014 commit r16-5139-gecf9cca53ce397523c47409c722d2ef7e47f0014 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Mon Nov 10 20:17:39 2025 +0000 doc: regenerate-opt-urls after .opt file/invoke.texi changes [PR122243] gcc/analyzer/ChangeLog PR other/122243 * analyzer.opt.urls: Regenerated. gcc/c-family/ChangeLog PR other/122243 * c.opt.urls: Regenerated. gcc/cobol/ChangeLog PR other/122243 * lang.opt.urls: Regenerated. gcc/ChangeLog PR other/122243 * common.opt.urls: Regenerated. * config/dragonfly.opt.urls: Regenerated. * config/freebsd.opt.urls: Regenerated. * config/gcn/gcn.opt.urls: Regenerated. * config/gnu-user.opt.urls: Regenerated. gcc/fortran/ChangeLog PR other/122243 * lang.opt.urls: Regenerated.
(In reply to GCC Commits from comment #7) > The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: > > https://gcc.gnu.org/g:5b276d38c2fdd7df3d167755940da2038e049308 > > commit r16-5128-g5b276d38c2fdd7df3d167755940da2038e049308 > Author: Sandra Loosemore <sloosemore@baylibre.com> > Date: Fri Oct 17 15:11:47 2025 +0000 > > Add "RejectNegative" to some options where it doesn't make sense > [PR122243] > > This patch adds the "RejectNegative" property to several options where > it doesn't make sense. These are either options of the form > "name=value" rather than an on/off switch, those that are already in a > "no-" form, or options that form a mutually-exclusive set. > > Also, the fhelp, ftarget-help, and fversion options that do not take > arguments ignore the "-no" prefix so that even "-fno-help" (etc) > causes help to be printed instead of suppressing help output. Since that > behavior is not useful, I've added RejectNegative to those options as > well. > > gcc/analyzer/ChangeLog > PR other/122243 > * analyzer.opt (fanalyzer-verbosity=): Add RejectNegative. > > gcc/c-family/ChangeLog > PR other/122243 > * c.opt: (fdeps-format=): Add RejectNegative. > (fdeps-file=): Likewise. > (fdeps-target=): Likewise. > (Walloc-size-larger-than=): Likewise. > (Wno-alloc-size-larger-than): Likewise. In https://bugs.kde.org/show_bug.cgi?id=511972 `valgrind` was noticed to use '-Wno-alloc-size-larger-than=18446744073709551615'. From what I understand from the r16-5128-g5b276d38c2fdd7 it's an intentional change in `gcc` to start rejecting those. Mark suggested to flag it as a possible regression. I'm not sure what would the better fallback. Some options are: - warn about unrecognized option and still disable the warning - just warn about the option and don't disable the warning - keep things as is and keep failing the builds with unexpected flags /cc Mark, what would be your preference? Meanwhile `valgrind` was fixed to pass a valid option: https://sourceware.org/git/?p=valgrind.git;a=commitdiff;h=51c5973d9d1f096b9472df75638f2a53324fafed
As already discussed on gcc irc: gcc previously accepted -Wno-alloc-size-larger-than=18446744073709551615, but the driver parsed it the same as -Walloc-size-larger-than=18446744073709551615. You can confirm this by using --verbose to show the command-line options the driver passes to cc1 in a gcc built from a revision before I applied the patch to disable this: it passes the positive form of the option to cc1. I cannot imagine that this was behavior expected by users, it is just a bug. The already-documented negative form of -Walloc-size-larger-than= is -Wno-alloc-size-larger-than, without any "=value" at the end.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:7920cbcbe3b2e21334f6b584dfe3bafd9bfcfadf commit r16-5705-g7920cbcbe3b2e21334f6b584dfe3bafd9bfcfadf Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Thu Nov 6 23:34:58 2025 +0000 doc, aarch64: Clean up aarch64 options and documentation [PR122243] gcc/ChangeLog PR other/122243 * config/aarch64/aarch64.opt (Wexperimental-fmv-target): Mark as "Undocumented". * doc/invoke.texi (Option Summary) <AArch64 Options>: Don't list "Undocumented" aarch64 options -mverbose-cost-dump or -Wexperimental-fmv-target, or both positive and negative forms of other options. Add missing options. Fix whitespace problems. (AArch64 Options): Light copy-editing. Add missing @opindex entries to match the documented options. Undocument -mverbose-cost-dump and -Wexperimental-fmv-target.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:671ba57ba3c7a7faf82df2d546d99a90edccefd7 commit r16-5706-g671ba57ba3c7a7faf82df2d546d99a90edccefd7 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sat Nov 1 20:35:12 2025 +0000 doc, epiphany: Clean up epiphany target options and docs [PR122243] gcc/ChangeLog PR other/122243 * config/epiphany/epiphany.opt (mlong-calls): Make it do something useful. (may-round-for-trunc): Make this undocumented option with a weird name an alias for -mmay-round-for-trunc. (mfp-iarith): Fix doc string. * doc/invoke.texi (Option Summary) <Adapteva Epiphany Options>: Add missing options. (Adapteva Epiphany Options): Document negative forms also when that is not the default, or where it's unclear. Document -may-round-for-trunc and -mfp-iarith. Fix spelling of -mpost-inc and -mpost-modify.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:b67da7cf289f51e750cf522280160cfd35586867 commit r16-5707-gb67da7cf289f51e750cf522280160cfd35586867 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sat Nov 1 22:57:01 2025 +0000 doc, gcn: Clean up gcn target options and docs [PR122243] [PR122288] Per PR target/122288, gcn.opt contained some invalid syntax that was quietly accepted by the options processor. This patch fixes that, marks some useless options as "Undocumented", and brings the documentation into sync with the options file. I tested the .opt file changes on both a standalone gcn build (gcc and g++ testsuites) and in an x86_64-linux-gnu build with gcn as offload target (libgomp). gcc/ChangeLog PR other/122243 PR target/122288 * config/gcn/gcn.opt (m32, m64, mgomp): Mark "Undocumented" since these options don't actually do anything useful. (flag_bypass_init_error, stack_size_opt, gang_size_opt): Correct opt file syntax. (mstack-size=): Mark "Undocumented" since it's obsolete. * doc/invoke.texi (Option Summary) <AMD GCN Options>: Remove obsolete options, add missing entries for -mgang-private-size=, -msram-ecc=, and -mxnack=. (AMD GCN Options): Likewise.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:9708501f9d78e030f5655baa3b0823a3035d1199 commit r16-5708-g9708501f9d78e030f5655baa3b0823a3035d1199 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Thu Nov 6 23:37:46 2025 +0000 doc, arm: Clean up ARM option documentation [PR122243] This patch undocuments ARM target-specific options that have never been implemented, are already marked as "Undocumented" in arm.opt file, and/or are presently documented as obsolete or only useful for back end debugging. I've also cleaned up the option summary to list only one of the positive or negative forms of each option, and to consistently index both forms. gcc/ChangeLog PR other/122243 * config/arm/arm.opt (mapcs-reentrant): Mark as "Undocumented", updatehelp string for internal documentation. (mapcs-stack-check): Likewise update help string. (mprint-tune-info, mneon-for-64bits): Mark as "Undocumented". * doc/invoke.texi (Option Summary) <ARM Options>: Remove duplicate entries for negative forms and entries for options that are explicitly "Undocumented". Add missing entry for -mpic-data-is-text-relative. Fix some formatting issues. (ARM Options): Remove documentation for -mapcs-stack-check, -mapcs-reentrant, -mflip-thumb, -mneon-for-64-bits, -mprint-tune-info, and -mverbose-cost-dump. Add index entries for -mno- option forms. Minor editing for clarity.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:0862b729b3f6c6f920cc036e3f2f27744aac5977 commit r16-5709-g0862b729b3f6c6f920cc036e3f2f27744aac5977 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sun Nov 2 16:58:19 2025 +0000 doc, blackfin: Don't separately document no- form of Blackfin options [PR122243] The documentation for Blackfin options had separate entries for the positive and negative forms of many options, both in the Option Summary and detailed documentation. This is unnecessarily verbose and counter to the general rule that only one form of each option is documented. gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <Blackfin Options>: Remove redundant -mno- entries. (Blackfin Options): Combine explicit -mno-* documentation with that for the corresponding positive form of the option. Add @opindex entries for the negative forms of options that didn't already have one.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:90c4a63aa8cff750cf599ad4ca5fcd7416d1058f commit r16-5710-g90c4a63aa8cff750cf599ad4ca5fcd7416d1058f Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sun Nov 16 16:10:30 2025 +0000 doc, c6x: Document missing C6X options [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <C6X Options>: Add -mdbst and -mlong-calls. (C6X Options): Likewise.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:fa149bf843b7bd251085ec103af2eea7699662d8 commit r16-5711-gfa149bf843b7bd251085ec103af2eea7699662d8 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Wed Nov 5 15:37:48 2025 +0000 doc, cris: Clean up CRIS option documentation [PR122243] This is another patch in the series to make documentation of target-specific options in invoke.texi match what is in the corresponding .opt files. The cris.opt file is a bit strange, with many cases where negative forms are listed explicitly as separate options from the positive forms, with both having "RejectNegative" and one (typically the form that is the default) being marked as "Undocumented". I've left that alone since fixing it to the more normal style of having a single option setting a boolean flag would require code changes, and I'm not set up to build or test this target. Beyond that, the "Undocumented" status of options in the .opt file did not in several cases match what was actually documented in the manual. I've generally assumed that the manual is correct, and e.g. the -m32-bit, -m16-bit, and -m8-bit options, all previously marked "Undocumented" but listed in invoke.texi, are preferred to the equivalent options without the hyphen. I've removed the references to the obsolete -melf and -maout options and added documentation in the manual for some options that were previously documented only in the .opt file. gcc/ChangeLog PR other/122243 * config/cris/cris.opt (m32-bit, m16-bit, m8-bit): Remove Undocumented property. (m32bit, m8bit): Add Undocumented property. * doc/invoke.texi (Option Summary) <CRIS Options>: Remove obsolete -melf and -maout options from table, plus redundant -mno-mul-bug-workaround. (CRIS Options): Add @opindex for -mno- forms that didn't already have one. Remove obsolete -melf documentation. Document -mbest-lib-options, -moverride-best-lib-options, -mtrap-using-break8, -mtrap-unaligned-atomic, and -munaligned-atomic-may-use-library.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:c49c290a33a27d4d4705af0c76629b08f8ffdac3 commit r16-5712-gc49c290a33a27d4d4705af0c76629b08f8ffdac3 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Wed Nov 5 20:54:16 2025 +0000 doc, csky: C-SKY option documentation cleanup [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <C-SKY Options>: Remove entries for "Undocumented" options -EB, -EL, -mhard-float, -msoft-float, and nonexistent option -mcse-cc. (C-SKY Options): Likewise. Also remove references to "Undocumented" option -mstm and uniformly index/document the -mno- forms for consistency with other options in this section that already do so.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:393b5b4b189bf8152ec1c427a02769a61c908b01 commit r16-5713-g393b5b4b189bf8152ec1c427a02769a61c908b01 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Tue Nov 18 05:01:02 2025 +0000 doc, mingw: Clean up Cygwin and MinGW option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <Cygwin and MinGW Options>: Correct spelling of -mthreads and add missing options. (Cygwin and MinGW Options): Add @opindex for negative forms.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:3b66b18fe806863e7b9a9bcb4bdaa0a6f28e8aab commit r16-5714-g3b66b18fe806863e7b9a9bcb4bdaa0a6f28e8aab Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Tue Nov 18 23:34:09 2025 +0000 doc, darwin: Clean up Darwin options and documentation [PR122243] The Darwin target options documentation was a bit of a mess, with several undocumented options, some that were listed in the option summary or mentioned in discussion of other options but not actually documented, and a large number of options listed in darwin.opt as being obsolete. I've undocumented all the obsolete options to streamline things, plus a few others that seem to have been intentially undocumented or supplanted by other options. For the others that were probably supposed to documented, I did my best to guess what they're for by reading the code or just copying the documentation string in the .opt file, but it's certainly possible I screwed some up. gcc/ChangeLog PR other/122243 * config/darwin.opt (findirect-virtual-calls): Mark as Undocumented. (fterminated-vtables): Likewise. (multi_module): Likewise. (multiply_defined): Likewise. (multiply_defined_unused): Likewise. (no_dead_strip_inits_and_terms): Likewise. (noprefixbinding): Likewise. (nomultidefs): Likewise. (noprebind): Likewise. (noseglinkedit): Likewise. (ObjC, ObjC++): Add documentation strings. (object): Mark as Undocumented. (prebind): Likewise. (prebind_all_twolevel_modules): Likewise. (private_bundle): Likewise. (sectobjectsymbols): Likewise. (sectorder): Likewise. (seg_addr_table_filename): Likewise. (segcreate): Likewise. (seglinkedit): Likewise. (single_module): Likewise. (X): Likewise. (y): Likewise. (Mach): Likewise. * doc/invoke.texi (Option Summary) <Darwin Options>: Improve alphabetization of the list. Remove obsolete/undocumented options and add missing entries. (Darwin Options): Add documentation for -arch, -dependency-file, -fapple-kext, -matt-stubs, -fconstant-cfstrings, -mdynamic-no-pic, -asm_macosx_version_min, -msymbol-stubs, -mtarget-linker, -ObjC, -ObjC++, -Wnonportable-cfstrings. Update the list of options passed to the linker to remove obsolete options and add missing ones; also move the block of @opindex entries before the list items instead of putting it in the middle.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:32bc699760def63853100069c5bae17a493b5060 commit r16-5715-g32bc699760def63853100069c5bae17a493b5060 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Tue Nov 18 14:41:33 2025 +0000 doc, alpha: Document missing alpha options [PR122243] gcc/ChangeLog PR other/122243 * config/alpha/alpha.opt (mgas): Mark as Undocumented. * doc/invoke.texi (Option Summary) <DEC Alpha Options>: Add -mtls-kernel, -mtls-size=, -mlong-double-128, and -mlong-double-64. (DEC Alpha Options): Likewise.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:bd360e9f247c325d9089fed6d90e426939573aec commit r16-5716-gbd360e9f247c325d9089fed6d90e426939573aec Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Wed Nov 5 15:38:11 2025 +0000 doc, bpf: Clean up eBPF option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <eBPF Options>: Fix formatting issues. Remove redundant entry for -mno-co-re. (eBPF Options): Add missing @opindex entries. Combine documentation for -mco-re and -mno-co-re.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:6477814cb73ee12e6ae16b0f496a1072d45cec71 commit r16-5717-g6477814cb73ee12e6ae16b0f496a1072d45cec71 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sun Nov 16 23:11:33 2025 +0000 doc, fr30: Clean up FR30 option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (FR30 Options): Add @opindex for -mno-small-model.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:7ba5e0e4509dc0bfd4932137b8d89ce97c8a5425 commit r16-5718-g7ba5e0e4509dc0bfd4932137b8d89ce97c8a5425 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Mon Nov 17 00:00:18 2025 +0000 doc, ft32: Clean up FT32 options and documentation [PR122243] gcc/ChangeLog PR other/122243 * config/ft32/ft32.opt (mlra): Mark obsolete option as Undocumented. * doc/invoke.texi (Option Summary) <FT32 Options>: Remove -mlra. (FT32 Options): Likewise. Add @opindex entries for negative option forms.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:8a57aabf339f4ea6d5b345fd8435fc948d518cc5 commit r16-5719-g8a57aabf339f4ea6d5b345fd8435fc948d518cc5 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Wed Nov 5 15:39:14 2025 +0000 doc, frv: Clean up FRV option documentation [PR122243] frv.opt has a few options that have never been documented in the manual. In the initial commit of the FRV port (prior to the adoption of .opt files) they were marked as "Internal debug switch" so I have explicitly made them "Undocumented", consistently with other options similarly marked in the original port. The documentation changes all straightforward here, to bring this section into conformance with conventions being applied through this chapter of the manual. gcc/ChangeLog PR other/122243 * config/frv/frv.opt (mbranch-cost=): Mark as Undocumented. (mcond-exec-insns=): Likewise. (mcond-exec-tempss=): Likewise. * doc/invoke.texi (Option Summary) <FRV Options>: Remove duplicate positive/negative forms from the list. (FRV Options): Combine documentation of positive/negative forms where they were listed separately. Add @opindex entries for negative forms.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:1290b35c7e7da448177edc56421ea0d966c0aeaa commit r16-5720-g1290b35c7e7da448177edc56421ea0d966c0aeaa Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Mon Nov 17 15:30:15 2025 +0000 doc, linux: Clean up GNU/Linux option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi: Document -mno-android.
General update on status: I'm planning at least two more large batches of commits for the target-specific options. Probably expect 40 or so more commits total as I work through the remaining sections. I made some improvements in my scripting but I haven't been relying on that as I've been manually plowing through the options documentation in invoke.texi. Once I've completed the first pass of cleanups I'll try the script approach again and see if it turns up things I missed.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:eb03ea05f3445736ccf69e0fe42c54a72fb1a576 commit r16-6078-geb03ea05f3445736ccf69e0fe42c54a72fb1a576 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Thu Nov 6 00:26:04 2025 +0000 arc: Fix positive form of -mno-brcc and -mno-dpfp-lrsr options [PR122243] These two options are defined in the negative form and don't have the RejectNegative property so they end up having positive forms beginning with "-mno-no-", which is confusing. I've inverted the sense of the option instead (so that the positive forms are -mbrcc and -mdpfp-lrsr). I'm not set up to build or test gcc for ARC but this is a straightforward change similar to fixes I've made for other target-inspecific options. Either this fix or adding RejectNegative would break any makefiles that use the (undocumented) -mno-no forms, though. gcc/ChangeLog PR other/122243 * config/arc/arc.opt (-mno-brcc, -mno-dpfp-lrsr): Redefine in the positive sense.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:9a8e948c9f2868764a81ed608b2d8f7f22f540fd commit r16-6079-g9a8e948c9f2868764a81ed608b2d8f7f22f540fd Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:20 2025 +0000 doc, arc: Clean up ARC option documentation [PR122243] The ARC front end presently has a large number of options that are explicitly deprecated, either by the "Warn" option or by being documented as such in the GCC manual. The manual text has documented a long list of obsolete options with a warning that they will be removed completely in a future release since at least GCC 5, 10+ years ago. Some of documented options have, in fact, already been deleted. This patch does *not* delete the remaining obsolete options, but only marks them as "Undocumented" in the .opt file and removes the documentation to reduce clutter in the manual. I've also added missing index entries for the remaining options to the manual. gcc/ChangeLog PR other/122243 * config/arc/arc.opt: Mark -mbig-endian, -mlittle-endian, -mmixed-code, -mno-mpy, -margonaut, -munalign-prob-threshold=, -mannotate-align, -malign-call, -mRcq, -mRcw, -mbbit-peephole, -mcompact-casesi, -mq-class, -mexpand-adddi, -mcrc, -mdsp-packa, -mdvbf, -mtelephony, -mrtsc, -EB, -EL, -mrla, -mEA, and -multcost= as "Undocumented". * doc/invoke.texi: Remove documentation for the above options. plus -mmac-d16 and -mmac-24 (which were already marked as "Undocumented"). Likewise remove documentation for -mbarrel_shifter, -mdpfp_compact, -mdpfp_fast, -mdsp_packa, -mmac_24, -mmac_d16, -mspfp_compact, and -mspfp_fast, which had already been deleted from arc.opt at some point. Add index entries for the -mno- forms of remaining options that have them. Document positive forms of -mno-brcc and -mno-dpfp-lrsr.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:6562d3364706eb907b8abafd48163db312bd07d8 commit r16-6080-g6562d3364706eb907b8abafd48163db312bd07d8 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:21 2025 +0000 doc, h8300: Clean up H8/300 option and attribute documentation [PR122243] Comparing the documentation in invoke.texi with hs8300.opt, I spotted a few options in the latter that were missing documentation, and added it. I wanted to add a link to the "monitor" attribute referenced in the existing docs for this option, but found that was also missing, along with docs for the "OS_Task" attribute; so I fixed those problems while I was at it. gcc/ChangeLog PR other/122243 * config/h8300/h8300.opt (mexr, mno-exr): Add FIXME re ambiguity for -mno-exr semantics. * doc/extend.texi (H8/300 Function Attributes): Document monitor and OS_Task attributes. * doc/invoke.texi (Option Summary) <H8/300 Options}: Add -msx, -ms2600, -mquickcall, -mslowbyte. Combine -mexr and -mno-exr. (H8/300 Options): Likewise. Add @opindex entries for options that have negative forms.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:286d9bc94beef4d266fcdec36355bab33b0116be commit r16-6081-g286d9bc94beef4d266fcdec36355bab33b0116be Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:21 2025 +0000 doc, pa: HPPA option documentation cleanup [PR122243] Note that the default for the -mlra option on HPPA was recently changed from 0 to 1. This option has never been documented for this target and reload is supposed to be going away entirely soon, so I see no reason to document it now. gcc/ChangeLog PR other/122243 * config/pa/pa.opt (mbig-switch): Mark obsolete option as "Undocumented". (mjump-in-delay): Likewise. (mlra): Likewise. (mnosnake, msnake): Likewise. * doc/invoke.texi (Option Summary) <HPPA Options>: Remove deliberately undocumented options from list. Remove redundant negative/positive forms from list. Fix formatting so there is uniformly two spaces between options on the same line. (HPPA Options): Remove documentation for obsolete options. Add @opindex for negative forms. Properly list -mwsio instead of just referring to it in the -msio docs. Light copy-editing to fix markup, jargon, etc.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:ba0072f51f4424b85d507114f3b7d831a9a2cdcc commit r16-6082-gba0072f51f4424b85d507114f3b7d831a9a2cdcc Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:22 2025 +0000 doc, ia64: Clean up documentation of IA-64 options [PR122243] This backend is no longer maintained and was supposed to have been deleted as of GCC 15, but since it is still part of GCC and documented in the manual, I have gone ahead and fixed up its options documentation for consistency with other active targets. gcc/ChangeLog PR other/122243 * config/ia64/ia64.opt (msched-prefer-data-spec-insns): Mark as explicitly "Undocumented". (msched-prefer-non-control-spec-insns): Likewise. * doc/invoke.texi (Option Summary) <IA-64 Options>: Remove explicitly undocumented and redundant mno- forms from the list. (IA-64 Options): Remove documentation for already-deleted option -mfused-add and the two explicitly undocumented options. Add @opindex for negative forms and explicitly list the -mno-forms of options that are enabled by default.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:1b5e06cd377a38e0768ec996d520bfdc64b1420d commit r16-6083-g1b5e06cd377a38e0768ec996d520bfdc64b1420d Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:23 2025 +0000 doc, lm32: Clean up LM32 option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (LM32 Options): Add @opindex entries for negative option forms.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:fd9e9dd4d2af421c11102058b04e565c6c049417 commit r16-6084-gfd9e9dd4d2af421c11102058b04e565c6c049417 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:23 2025 +0000 doc, loongarch: Clean up LoongArch option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <LoongArch Options>: Remove redundant -mno forms from list. Fix formatting so that there is uniformly two spaces between options on the same line. (LoongArch Options): Copy-editing for grammar, etc. Add @opindex for negative forms.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:7e9ff94b34a91d04291f55b7212093d667688444 commit r16-6085-g7e9ff94b34a91d04291f55b7212093d667688444 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:24 2025 +0000 doc, m32c: Clean up M32C option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (M32C Options): Add missing @opindex for negative form.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:0928e08cd76d45fa0987d0376ff2675c80d6cca7 commit r16-6086-g0928e08cd76d45fa0987d0376ff2675c80d6cca7 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:25 2025 +0000 doc, m32r: Clean up documentation of M32R/D options [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <M32R/D Options>: Remove redundant -mno entry. (M32R/D Options): Regularize form of @opindex entries for various options of the form -mfoo=@var{value}. Combine the documentation for -malign-loops and -mno-align-loops.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:2f310fe4d6017d0a33bcac2dc991a2e890f70b7f commit r16-6087-g2f310fe4d6017d0a33bcac2dc991a2e890f70b7f Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:25 2025 +0000 doc, m68k: Clean up M680x0 option documentation [PR122243] [PR119404] gcc/ChangeLog PR other/122243 PR target/119404 * config/m68k/m68k.opt (mlra): Fix typo in help string. * doc/invoke.texi (Option Summary) <M680x0 Options>: Remove redundant -mno- forms from the list. (M680x0 Options): Combine documentation for -mshort, mbitfield, -msep-data, -mid-shared-library with that for their respective negatives that were formerly separately listed. Add missing @opindex entries.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:e16a20a37b726d9abcae51dac207d57badcc35af commit r16-6088-ge16a20a37b726d9abcae51dac207d57badcc35af Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:26 2025 +0000 doc, mcore: Clean up MCore option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <MCore Options>: Remove redundant -no options. (MCore Options): Disambiguate documentation for -mbig-endian/-mlittle-endian and -m210/-m340.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:cca7c55cda3db8038f6e20e813ea8b17644531eb commit r16-6089-gcca7c55cda3db8038f6e20e813ea8b17644531eb Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:27 2025 +0000 doc, microblaze: Clean up MicroBlaze option documentation [PR122243] gcc/ChangeLog PR other/122243 * config/microblaze/microblaze.opt (Zxl-mode-bootstrap): Mark as "Undocumented". (Zxl-mode-executable): Likewise. (Zxl-mode-novectors): Likewise. (Zxl-mode-xilkernel): Likewise. (Zxl-mode-xmdstub): Likewise. (mxl-stack-check): Likewise. (mno-clearbss): Likewise. (mxl-mode-executable): Make help string more useful. (mxl-mode-xmdstub): Likewise. (mxl-mode-bootstrap): Likewise. (mxl-mode-novectors): Likewise. (mxl-mode-xilkernel): Mark as "Undocumented". * doc/invoke.texi (Option Summary) <MicroBlaze Options>: Delete entries for obsolete options now explicitly undocumented, and add missing -mxl-prefetch option. (MicroBlaze Options): Add missing @opindex entries for negative option forms and list negative forms explicitly when appropriate. Delete documentation for obsolete/deprecated options. Add missing @opindex entries for the m[no-]xml-mode- options. Add missing documentation for -mxl-prefetch.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:cccf8a11be13908e51ae42940b124ebe72426444 commit r16-6090-gcccf8a11be13908e51ae42940b124ebe72426444 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:27 2025 +0000 doc, mips: Clean up MIPS option documentation [PR122243] gcc/ChangeLog PR other/122243 * config/mips/mips.opt (mnoasmopt): Mark as "Undocumented". * doc/invoke.texi (Option Summary) <MIPS Options>: Add missing entries for -mel/-meb. Only list one of -mfoo/-mno-foo. (MIPS Options): Document -meb/-mel as synonyms for -EB/-EL. Add missing @opindex entries. Document -mmsa and -mfix4300. Minor copy-editing for grammar and jargon issues.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:a259434efa72e8e73bab0bf4d9a57d48c54a9920 commit r16-6091-ga259434efa72e8e73bab0bf4d9a57d48c54a9920 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:28 2025 +0000 doc, mmix: Clean up MMIX option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <MMIX Options>: Remove redundant -mno- forms from the list.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:59df2037d0451d2cbcb8e1798054586bb19e159e commit r16-6092-g59df2037d0451d2cbcb8e1798054586bb19e159e Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:29 2025 +0000 doc, mn10300: Clean up MN10300 option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <MN10300 Options>: Remove redundant -mno- forms from the list. (MN10300 Options): Combine the documentation for -mmult-bug, -mam33, -mliw, and -msetlb with the entries for the respective negative forms. List and index the negative forms -mno-am33-2, -mno-am34, -mno-return-pointer-on-d0, -mno-mul.x.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:371b159a50e45a9776a47e2e88aa1b3747d4a2c8 commit r16-6093-g371b159a50e45a9776a47e2e88aa1b3747d4a2c8 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:29 2025 +0000 doc, msp430: Clean up MSP430 option documentation [PR122243] gcc/ChangeLog PR other/122243 * config/msp430/msp430.opt (mcpu): Mark deprecated option as "Undocumented". (mdevices-csv-loc=): Mark option not intended to be used by users as "Undocumented". * doc/invoke.texi (Option Summary) <MSP430 Options>: Fill in argument syntax for options of the form -mfoo=@var{arg}. Don't list deprecated option -mcpu=. Add missing entries for -mwarn-devices-csv and -muse-lower-region-prefix. (MSP430 Options): Similarly document argument syntax in the table @item entries. Add @opindex entries for negative forms. Delete documentation of deprecated -mcpu= option. Add documentation for -muse-lower-region-prefix. Markup and copy-editing fixes throughout the section.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:a1adb9e81427133fa338e82c98dce95b31dd4f71 commit r16-6094-ga1adb9e81427133fa338e82c98dce95b31dd4f71 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:30 2025 +0000 doc, nds32: Clean up NDS32 option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <NDS32 Options>: Don't list both positive and negative option forms. (NDS32 Options): Consolidate separate entries for positive and negative forms of the same option. Document missing negative forms in the same style.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:15fe4914b691d0ea082df98b379467ab3b980d6c commit r16-6095-g15fe4914b691d0ea082df98b379467ab3b980d6c Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:31 2025 +0000 doc, nvptx: Clean up documentation of Nvidia PTX Options [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <Nvidia PTX Options>: Add several missing options. (Nvidia PTX Options): Correct index entry for -march-map. List negative forms of -moptimize, muniform-simt, and -mgomp. Fix some Texinfo markup issues.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:6b932314a181d459b5c37eced03a634eb20777b8 commit r16-6096-g6b932314a181d459b5c37eced03a634eb20777b8 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:31 2025 +0000 doc, or1k: Clean up OpenRISC option documentation [PR122243] I'm not sure what the rationale is for having "RejectNegative" on all of the options that control instruction usage except for -mdouble-float, but with this patch the documentation matches what is in the .opt files. gcc/ChangeLog PR other/122243 * config/or1k/elf.opt (mnewlib): Mark obsolete option as "Undocumented". * config/or1k/or1k.opt (mcmov): Don't use future tense in doc string. (msfimm): Likewise. (mshftimm): Likewise. * doc/invoke.texi (Option Summary) <OpenRISC Options>: Don't document -mnewlib. (OpenRISC Options): Likewise. Add @opindex entry for -mno-double-float. Fix more instances of incorrect use of future tense.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:4c3042273307cd8a34d4d05f90cd0657148646cb commit r16-6097-g4c3042273307cd8a34d4d05f90cd0657148646cb Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:32 2025 +0000 doc, pdp11: Clean up PDP-11 documentation [PR122243] While working on this patch I saw that this target has an -mlra option that still defaults to off. Although the LRA support was added in 2018 apparently it wasn't robust enough to enable by default. We are supposed to be deleting reload support and all targets that don't use LRA by default in GCC 16, so this target may be declared obsolete very soon, but I've made the documentation of other options consistent with the .opt files and conventions used for other targets anyway in case either somebody who can build/test for this target switches the default (see PR target/113947) or the reload removal is postponed. gcc/ChangeLog PR other/122243 * config/pdp11/pdp11.opt (m40, m45): Add RejectNegative. * doc/invoke.texi (Option Summary) <PDP-11 Options>: Remove redundant -mno- forms from the list. (PDP-11 Options): Fix some markup issues. Merge documentation of positive and negative forms of -mac0. Index negative forms of -msplit, -mlra.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:ddbc8556c299c9727ca4de0782c4bdf29ce75419 commit r16-6098-gddbc8556c299c9727ca4de0782c4bdf29ce75419 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Dec 5 17:07:33 2025 +0000 doc, pru: Clean up PRU option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <PRU Options>: Fix whitespace in option list. (PRU Options): Copy-editing. Index and list negative option forms.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:2bd7beba81dd3849041851b6265d51e7cbd44bba commit r16-6392-g2bd7beba81dd3849041851b6265d51e7cbd44bba Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sun Dec 14 00:38:48 2025 +0000 doc, riscv: Clean up documentation of RISC-V options [PR122243] gcc/ChangeLog PR other/122243 * config/riscv/riscv.opt (mplt): Mark deprecated option Undocumented. (msmall-data-limit=): Mark RejectNegative. * doc/invoke.texi (Option Summary) <RISC-V Options>: Remove -mplt documentation. Only list one form of each option. Add missing options -mcpu, -mscalar-strict-align, -mno-vector-strict-align, -momit-leaf-frame-pointer, -mstringop-strategy, -mrvv-vector-bits, -mrvv-max-lmul, -madjust-lmul-cost, -mmax-vectorization, and -mno-autovec-segment. (RISC-V Options): Remove -mplt documentation. Add documentation for missing options listed above. Add missing index entries for negative forms. Correct the default for the -minline-str* options, which has changed. Copy-edit for markup, spelling, and usage. Trivial whitespace fixes.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:65ed2b042c2b85cd209efeb13ea60378a322ea61 commit r16-6862-g65ed2b042c2b85cd209efeb13ea60378a322ea61 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sat Dec 27 21:03:55 2025 +0000 doc, rl78: Clean up RL78 option documentation [PR122243] [PR71340] This target is probably dead (no listed maintainer and no support for LRA). There seems to be no interest in reviving the 2014 patch for the documented but never-committed -m64bit-doubles and -m32bit-doubles options, so I've removed those docs instead, along with some other routine housekeeping to keep the docs in sync with the options file. gcc/ChangeLog PR other/122243 PR target/71340 * doc/invoke.texi (Option Summary) <RL78 Options>: Remove never-implemented -m64bit-doubles and -m32bit-doubles options. Add missing entries for -mrelax, -mes0, -mmul=rl78, -mcpu=rl78, and -mrl78. (RL78 Options): Likewise. Add missing @opindex entries. Light copy-editing.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:efed253b3d6418b1e9eac658e7046e09dcc2a416 commit r16-6863-gefed253b3d6418b1e9eac658e7046e09dcc2a416 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Wed Dec 31 16:28:38 2025 +0000 doc, rs6000: Clean up RS/6000 options documentation [PR122243] Similar to other patches in this series, the focus is on ensuring all options are either documented or marked "Undocumented", listed in both the options summary and detailed documentation, and both positive and negative forms have entries in the table of contents. gcc/ChangeLog PR other/122243 * config/rs6000/darwin.opt (Waltivec-long-deprecated): Mark as Undocumented. (faltivec, ffix-and-continue, findirect-data): Likewise. * config/rs6000/rs6000.opt (mvrsave): Likewise. * config/rs6000/sysv4.opt (mno-toc, mtoc, mno-traceback): Likewise. (mshlib, mnewlib): Likewise. * doc/invoke.texi (Option Summary) <RS/6000 and PowerPC Options>: Document only one form of each option. Add missing options. Correct whitespace. (RS/6000 and PowerPC Options): Separately document -mpowerpc-gpopt, -mpowerpc-gfxopt, -mpowerpc64, -mmfcrf, -mpopcntb, -mpopcntd, -mfprnd, -mcmpb, and -mhard-dfp and move their documentation after -mcpu=. Remove documentation for -mtoc which is unimplemented. Add missing @opindex entries. Minor copy-editing and whitespace fixes.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:451a1046d16fb6f489c85df91ad2278d3fd8927e commit r16-6864-g451a1046d16fb6f489c85df91ad2278d3fd8927e Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Thu Jan 1 18:29:54 2026 +0000 doc, rx: Clean up RX options documentation [PR122243] gcc/ChangeLog PR other/122243 * config/rx/rx.opt (mgcc-abi, mrx-abi): Mark as Undocumented. * doc/invoke.texi (Option Summary) <RX Options>: Remove redundant entries for -mno-forms, correct name of -msmall-data-limit option, add -mlra, clean up formatting. (RX Options): Minor copy-editing, add -mlra.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:bab23949135a2346510aa1998e7b1dfb44cdd1f2 commit r16-6865-gbab23949135a2346510aa1998e7b1dfb44cdd1f2 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Fri Jan 2 17:38:52 2026 +0000 doc, s390: Clean up S/390 and z series options [PR122243] There were numerous S/390 options missing entries in the manual. Fortunately the documentation strings in the .opt file and previous commit messages and patch mails explained these well enough that I was able to fill in the missing material without too much trouble. I marked a few that seemed to be for internal use or intentially not exposed to the user as "Undocumented". gcc/ChangeLog PR other/122243 * config/s390/s390.opt (mbranch-cost): Mark as Undocumented. * config/s390/tpf.opt (mtpf-trace-hook-prologue-check=): Likewise. (mtpf-trace-hook-prologue-target=): Likewise. (mtpf-trace-hook-epilogue-check=): Likewise. (mtpf-trace-hook-epilogue-target=): Likewise. * doc/invoke.texi (Option Summary) <S/390 and zSeries Options>: Remove redundant -mno- entries and add missing options. Make entries with arguments match the syntax in the main documentation. (S/390 and zSeries Options): Light copy-editing. Wrap overly-long lines. Add missing @opindex entries. Add documention for -mmain, -mno-pic-data-is-text-relative, -mindirect-branch, -mindirect-branch-jump, -mindirect-branch-call, -mfunction-return, -mfunction-return-mem, -mfunction-return-reg, -mindirect-branch-table, -mfentry, -mrecord-mcount, -mnop-mcount, -mpreserve-args, and -munaligned-symbols.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:2247b62a152f9f03fe0de41e4ec9a25bc2765aed commit r16-6866-g2247b62a152f9f03fe0de41e4ec9a25bc2765aed Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sun Jan 4 20:48:26 2026 +0000 doc, sh: Clean up SH options documentation [PR122243] gcc/ChangeLog PR other/122243 * config/sh/sh.opt (mhitachi, mpadstruct): Mark obsolete options as Undocumented. * doc/invoke.texi (Option Summary) <SH Options>: Add missing entries for -m4-* and other options. Remove redundant -mno- entries and obsolete options. Add missing options -mfdpic, -mlra. (SH Options): Combine entries for -mrenesas and -mno-renesas. Index and list -mno- forms for other options that have them. Remove documentation for obsolete options -mpadstruct and -mfused-madd. Add documentation for -mlra. Copy-edit and wrap long lines throughout the section.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:82e0355a40cb03cde89becb8b6c2aed7f02514a7 commit r16-6867-g82e0355a40cb03cde89becb8b6c2aed7f02514a7 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sun Jan 4 23:03:46 2026 +0000 doc, Solaris: Clean up documentation of Solaris 2 options [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <Solaris 2 Options>: Remove redundant negative option forms from list. List both -pthread and -pthreads. (Solaris 2 Options): Index and list the negative forms here. Combine the two @table environments. Document both -pthread and -pthreads.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:4db1e805a0037cd4e0bdf6ef1fe42837f261d737 commit r16-6868-g4db1e805a0037cd4e0bdf6ef1fe42837f261d737 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Mon Jan 5 01:09:22 2026 +0000 doc, sparc: Clean up SPARC option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <SPARC Options>: Remove redundant -mno- forms from the list. Add -mptr32 and -mptr64. (SPARC Options): Document -mptr32 and -mptr64.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:063b07dd4e1eb13945dcc5cb7ad2dd64d6c7341c commit r16-6869-g063b07dd4e1eb13945dcc5cb7ad2dd64d6c7341c Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Mon Jan 5 15:48:00 2026 +0000 doc, v850: Clean up V850 options and documentation [PR122243] gcc/ChangeLog PR other/122243 * config/v850/v850.opt: Copy-edit documentation strings. (mdebug): Make Undocumented. (mno-strict-align): Add RejectNegative. (mUS-bit-set): Make Undocumented. * doc/invoke.texi (Option Summary) <V850 Options>: Remove redundant -mno- forms from list. Add missing entries. (V850 Options): Add @opindex for negative forms. Combine entries for -mapp-regs and -mno-app-regs. Document -msmall-sld, -mno-strict-align, and -mjump-tables-in-data-section.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:7505a381b104198782225fc25bb3dd1d17dd2e8e commit r16-6870-g7505a381b104198782225fc25bb3dd1d17dd2e8e Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Mon Jan 5 21:12:26 2026 +0000 doc, vax: Clean up VAX option documentation [PR122243] gcc/ChangeLog PR other/122243 * config/vax/elf.opt (mno-asm-pic): Mark as Undocumented. * doc/invoke.texi (Option Summary) <VAX Options>: Add -mvaxc-alignment and -mqmath. (VAX Options): Likewise.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:d2fa706a6026bc999a45cc42fcc58ff9383cabba commit r16-6871-gd2fa706a6026bc999a45cc42fcc58ff9383cabba Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Mon Jan 5 21:39:07 2026 +0000 doc, visium: Clean up Visium options documentation [PR122243] gcc/ChangeLog PR other/122243 * config/visium/visium.opt (menable-trampolines): Mark Undocumented. * doc/invoke.texi (Options Summary) <Visium Options>: Remove redundant -mno- option. (Visium Options): Copy-editing to put in active voice and add markup.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:5b82b1dbeec10bea2e599e02ed14d0e68e1d4537 commit r16-6872-g5b82b1dbeec10bea2e599e02ed14d0e68e1d4537 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Mon Jan 5 22:26:08 2026 +0000 doc, vms: Clean up VMS options [PR122243] gcc/ChangeLog PR other/122243 * config/vms/vms.opt (map): Mark as Undocumented.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:5442b8a4b6cc643833d0f0659d2bbd9ae308dc97 commit r16-6873-g5442b8a4b6cc643833d0f0659d2bbd9ae308dc97 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Mon Jan 5 23:46:12 2026 +0000 doc, VxWorks: Clean up VxWorks option documentation [PR122243] gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <VxWorks Options>: Add -mvthreads. (VxWorks Options): Likewise.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:8421ed7a4b84aa3ab93d28ad3638c2e1e35a098d commit r16-6874-g8421ed7a4b84aa3ab93d28ad3638c2e1e35a098d Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Tue Jan 6 23:49:27 2026 +0000 doc, x86: Clean up x86 options documentation [PR122243] Besides the usual fixes in this series to make the options summary agree with the options listed in the detailed documentation and add missing @opindex entries, I decided it was not very helpful to users to have dozens of ISA extension options documented as a group spanning multiple pages in the manual. I broke that up so each of those options is described separately, using the documentation string from the .opt file. gcc/ChangeLog PR other/122243 * config/i386/i386.opt (malign-functions): Mark undocumented/unused option as Undocumented. (malign-jumps): Likewise. (malign-loops): Likewise. (mbranch-cost, mforce-drap): Mark undocumented options likely intended for developer use only as Undocumented. (mstv): Correct sense of option in doc string. (mavx512cd): Remove extra "and" from doc string. (mavx512dq): Likewise. (mavx512bw): Likewise. (mavx512vl): Likewise. (mavx512ifma): Likewise. (mavx512bvmi): Likewise. * doc/invoke.texi (Options Summary) <x86 Options>: Add missing options. Correct whitespace and re-wrap long lines. Remove -mthreads which is now classed as a MinGW option. (Cygwin and MinGW Options): Replace existing documentation of -mthreads with the more detailed text moved from x86 Options. (x86 Options): Move introductory text about ISA extensions before the individual options instead of after. Document them all individually instead of as a group, and move immediately after -march/-mtune documentation. Rewrap long lines. Document interaction between SSE and AVX with -mfpmath=sse. Move -masm documentation farther down instead of grouped with options affecting floating-point behavior. Add missing @opindex entries. Rewrite the -mdaz-ftz documentation. Document -mstack-arg-probe. Copy-editing. Document -mstv. Remove obsolete warning about -mskip-rax-setup in very old GCC versions. Rewrite the -mapx-inline-asm-use-gpr32 documentation. Document -mgather and -mscatter. Split -miamcu documentation from -m32/-m64/etc. Rewrite -munroll-only-small-loops documentation. Document -mdispatch-scheduler.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:392989cd190393dab1c1c43fcf66b759dc425e47 commit r16-6875-g392989cd190393dab1c1c43fcf66b759dc425e47 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Thu Jan 8 17:24:56 2026 +0000 doc, xtensa: Clean up Xtensa options documentation [PR122243] gcc/ChangeLog PR other/122243 * config/xtensa/uclinux.opt (elf2flt, elf2flt=): Mark as Undocumented. * config/xtensa/xtensa.opt (mlra): Likewise. * doc/invoke.texi (Option Summary) <Xtensa Options>: Remove redundant negative forms plus obsolete -mfused-madd option. (Xtensa Options): Likewise undocument -mfused-madd. List negative form of -mforce-no-pic.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:bea502111c477c3deeb7bea7497a0e63249cc6cc commit r16-6876-gbea502111c477c3deeb7bea7497a0e63249cc6cc Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sat Jan 10 20:27:36 2026 +0000 doc, nds32: Add missing documentation for nds32 options [PR122243] This back end had numerous options defined that were not documented in the manual. Descriptions were taken from the .opt file. I also did some editorial cleanups in the .opt file text where appropriate. gcc/ChangeLog PR other/122243 * config/nds32/nds32.opt: Tidy documentation strings. (mbig-endian, mlittle-endian): Remove "Undocumented" flag since these are, in fact, documented. * doc/invoke.texi (Option Summary) <NDS32 Options>: Document -EB, -EL, -mabi, -mfloat-abi, -malways-align, -malign-functions, -mfp-as-gp, -mext-dsp, -mext-fpu-fma, -mext-fpu-sp, -mext-fpu-dp, -misr-vector-size, -misr-secure, -mcpu, -mconfig-fpu, -mconfig-mul, -mconfig-register-ports, -mrelax-hint, -msched-prolog-epilog, -mno-ret-in-naked-func, -malways-save-lp, -munaligned-access, and -minline-asm-r15. (NDS32 Options): Likewise.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:0bbbc432cb2cf5877f7314d2d77f3a59e6d78e50 commit r16-7021-g0bbbc432cb2cf5877f7314d2d77f3a59e6d78e50 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Mon Jan 19 02:58:41 2026 +0000 doc, lynx: Document LynxOS options [PR122243] The LynxOS port of GCC has been around for a long time but its target-specific options have never been documented. Fixed thusly. gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) <LynxOS Options>: New. (LynxOS Options): New section.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:bd0740e6301e3f67b43d181d0b6a0d0d71aa91fa commit r16-7023-gbd0740e6301e3f67b43d181d0b6a0d0d71aa91fa Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Mon Jan 12 01:08:11 2026 +0000 doc: -g debug option documentation cleanup [PR122243] This patch corrects the option summary for debug options, adds missing @opindex entries, and copy-edits the option descriptions in this section of the manual. I also marked -gtoggle as RejectNegative; given its documented special handling, it does not seem possible to use the negative form to override an earlier positive option. gcc/ChangeLog PR other/122243 * common.opt (gtoggle): Mark RejectNegative. * doc/invoke.texi (Option Summary) <Debugging Options>: Remove redundant -gno- forms from the list. (Debugging Options): Add @opindex for -gno- option forms. Copy-edit option descriptions to avoid future tense and use of implementor jargon.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:d0ce13e26cab65735bb99f0a61c1ff25979eb0ba commit r16-7024-gd0ce13e26cab65735bb99f0a61c1ff25979eb0ba Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sun Jan 25 00:40:51 2026 +0000 doc: Mark more options as Undocumented/RejectNegative [PR122243] In reviewing the autogenerated list of remaining undocumented options after my first pass through the whole chapter, I found several more options I'd previously overlooked that should either be marked Undocumented, or that were missing a RejectNegative attribute where one was plainly appropriate. gcc/c-family/ChangeLog PR other/122243 * c.opt (-output-pch): Mark as Undocumented, as it seems to be an internal option that has never been documented anyway. (Werror-implicit-function-declaration): Mark deprecated option that is not currently documented as Undocumented. (fconstant-string-class=): Add RejectNegative property. gcc/ChangeLog PR other/122243 * common.opt (fbounds-check): Mark as Undocumented, expand comments to explain why. * config/frv/frv.opt (msched-lookahead=): Mark unused option as Undocumented. * config/m68k/m68k.opt (m68851): Add RejectNegative. * config/nvptx/nvptx.opt (minit-regs=): Mark as Undocumented. It's not currently documented and seems to have been introduced as a stopgap to experiment with different implementation strategies. * config/rs6000/476.opt (mpreserve-link-stack): Mark as Undocumented. It seems to be an internal option that is enabled by default on the cpu that can benefit from it.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:2973b1881cf34b447e00c4fbec451a7389dabedf commit r16-7025-g2973b1881cf34b447e00c4fbec451a7389dabedf Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sat Jan 10 01:04:56 2026 +0000 doc: Fix various option documentation problems [PR122243] This patch fixes a number of minor problems I found after my initial pass through the options documentation; a few options still missing documentation, options documented but missing entries in the index or option summary, options whose names were misspelled in either the main entry, option summary, or index, etc. gcc/ChangeLog PR other/122243 * doc/cppdiropts.texi: Document -imultiarch. * doc/invoke.texi (Option Summary) <Optimization Options>: Add -flto-toplevel-asm-heuristics. <Program Instrumentation Options>: Remove -fbounds-check. <Directory Options>: Add -imultiarch. <ARC Options>: Add -mbitops, -mcmem, -munaligned-access. <ARM Options>: Add -mvectorize-with-neon-quad and -mvectorize-with-neon-double. <AVR Options>: Add -mrmw and -mstrict-X. <CRIS Options>: Fix typo in -mmax-stackframe. <Cygwin and MinGW Options>: Add -muse-libstdc-wrappers. <M680x0 Options>: Add several missing CPU options, plus -mxtls. <MIPS Options>: Add -mno-data-in-code and -mcode-xonly. <MMIX Options>: Add mset-data-start, -mset-program-start, and -mno-set-program-start. <Nvidia PTX Options>: Add -msoft-stack-reserve-local. <RS/6000 and PowerPC Options>: Add -mprofile-kernel, -mbit-word, -mno-splat-word-constant, -mno-splat-float-constant, -mno-ieee128-constant, and -mno-warn-altivec-long. (Optimization Options): Document -flto-toplevel-asm-heuristics. (ARC Options): Document -mbitops and -mcmem. (ARM Options): Add index entries for mbe32, m[no-]fix-cortex-a57-aes-1742098, m[no-]fix-cortex-a72-aes-1655431. Document -mvectorize-with-neon-quad and -mvectorize-with-neon-double. (AVR Options): Document -mpmem-wrap-around. (CRIS Options): Fix typo in -mmax-stackframe. (Cygwin and MinGW Options): Document -muse-libstdc-wrappers. (DEC Alpha Options): Fix typo in -mfp-regs. (eBPF Options): Add @opindex for -mframe-limit. (HPPA Options): Fix typos in -mno-disable-fpregs and -mno-gas index entries. (m680x0 Options): Document -m68302, -m68332, -m68851, and -mfidoa. Document -mnoshort and -mnortd aliases. Document -mxtls. (MCore Options): Fix typos in -m[no-]relax-immediates. (MIPS Options): Document -mno-data-in-code and -mcode-xonly. (MMIX Options): Document -mset-data-start, -mset-program-start, and -mno-set-program-start. (Nvidia PTX Options): Document -msoft-stack-reserve-local. (RS/6000 and PowerPC Options): Document -mprofile-kernel, -mbit-word, -msplat-word-constant, -msplat-float-constant, -mieee128-constant, and -mwarn-altivec-long. (SH Options): Add index entry for -m2e. Document -m4-400.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:128b0e70f2c3a17eb7bf490b6e23dfd8b4b729d3 commit r16-7026-g128b0e70f2c3a17eb7bf490b6e23dfd8b4b729d3 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sun Jan 11 20:43:11 2026 +0000 doc: Add missing index entries for -Wno-* options [PR122243] This patch was initially mechanically generated but has been hand-checked and corrected where necessary. gcc/ChangeLog PR other/122243 * doc/cppwarnopts.texi: Add missing @opindex entries for -Wno-* options. * doc/invoke.texi: Likewise.
The master branch has been updated by Sandra Loosemore <sandra@gcc.gnu.org>: https://gcc.gnu.org/g:ed2924c7628343ff8b699f320a05c85bdb9c2837 commit r16-7027-ged2924c7628343ff8b699f320a05c85bdb9c2837 Author: Sandra Loosemore <sloosemore@baylibre.com> Date: Sun Jan 11 23:31:44 2026 +0000 doc: Add missing index entries for -fno-* options [PR122243] This patch was initially mechanically generated but has been hand-checked and corrected where necessary. gcc/ChangeLog PR other/122243 * doc/cppopts.texi: Add missing @opindex entries for -fno-* options. * doc/invoke.texi: Likewise.
I'm marking this issue complete now. I rather suspect I've overlooked a few things, especially in matching up the option summaries with the detailed documentation, but after two passes through this section of the documentation it's time to move on to something else. The --param documentation cleanup still needs to be done; that's PR123245. The current plan is to move it all to the GCC internals manual and get it out of the user documentation completely.