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

            Bug ID: 62267
           Summary: disable fprofile-use at coverage-mismatch
           Product: gcc
           Version: 4.9.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: gcov-profile
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ioctl at yandex dot ru

I would like to suggest a new feature: Add an option to disable profile usage
in case of profile missmatch.

While rebuilding libreoffice 4.3.0 with profile data to make it work faster on
my old CPU, I have noticed a lot of errors like this:

the control flow of function
«_ZNSt16allocator_traitsISaIPN5svgio9svgreader18SvgStyleAttributesEEE8allocateERS4_j»
does not match its profile data (counter «time_profiler»)
[-Werror=coverage-mismatch]


At that I clearly remember, that I have not changed source archive before
rebuilding with profile usage. However, some files possibly generated with
bison or flex may be changed.

Now in this situation I have three choices:
1) Do not use profile data, that will decrease program speed.
2) Add option to treat this error as warning, so some modules will be
"deoptimized".
3) Rebuild any such case manually without profile, that require a lot of time.

I would like to suggest an option to make possible another choice:

4) Automatically disable profile usage in case of profile missmatch.

Reply via email to