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

            Bug ID: 97065
           Summary: Support -fprofile-update=set (boolean counters)
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: gcov-profile
          Assignee: unassigned at gcc dot gnu.org
          Reporter: i at maskray dot me
                CC: marxin at gcc dot gnu.org
  Target Milestone: ---

I can understand that defaulting -fprofile-update=prefer-atomic in GCC 7 and
using atomic counters when -pthread is specified is for very good reasons that
imprecise line execution counts can be very confusing.

However, atomic counters can lead to very drastic performance degradation when
the contention is large (e.g. bug 80952)

Sometimes users just need to know whether a statement is executed or not. For
example lcov does not really need to know the number. A boolean mode
-fprofile-update=set may be useful. 'set' is the name used by Go -covermode=set

Reply via email to