https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119851

            Bug ID: 119851
           Summary: [13/14/15/16 regression] -O2 -Q --help=common suggests
                    -ftree-vectorize is disabled by default (since
                    r12-4240-g2b8453c401b699)
           Product: gcc
           Version: 16.0
            Status: UNCONFIRMED
          Keywords: documentation
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: sjames at gcc dot gnu.org
                CC: liuhongt at gcc dot gnu.org
  Target Milestone: ---

Since r12-4240-g2b8453c401b699, we enable -ftree-vectorize by default at -O2
along with -fvect-cost-model=very-cheap.

But the following doesn't reflect that:
```
$ gcc -O2 -Q --help=common | grep ftree-vectorize
  -ftree-vectorize                      [disabled]
  -ftree-vectorizer-verbose=
```

I've seen users needlessly add -ftree-vectorize as a result.

It looks like adding -ftree-vectorize does, however, make a difference to the
cost model we use:
```
$ gcc -O2 -Q --help=common | grep fvect
  -fvect-cost-model                     -fvect-cost-model=dynamic
  -fvect-cost-model=[unlimited|dynamic|cheap|very-cheap]        very-cheap
```
vs
```
$ gcc -O2 -Q --help=common | grep fvect
  -fvect-cost-model                     -fvect-cost-model=dynamic
  -fvect-cost-model=[unlimited|dynamic|cheap|very-cheap]        very-cheap
```

So:
* -ftree-vectorize being default-enabled at -O2 should be reflected in --help=
* -ftree-vectorize implying -fvect-cost-model=dynamic should be documented

Reply via email to