[PATCH] D58612: Use std::atomic<> for static counters.
Alexander Kornienko via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Feb 25 07:52:56 PST 2019
alexfh added a comment.
In D58612#1409024 <https://reviews.llvm.org/D58612#1409024>, @riccibruno wrote:
> In D58612#1408991 <https://reviews.llvm.org/D58612#1408991>, @alexfh wrote:
>
> > In D58612#1408942 <https://reviews.llvm.org/D58612#1408942>, @riccibruno wrote:
> >
> > > Okay, but what about the other similar uses of static members which have the same problem ?
> >
> >
> > Do you have any example in mind? I've only seen TSan warnings for these counters, nothing else so far.
>
>
> For example in `DeclBase.cpp`
>
> #define DECL(DERIVED, BASE) static int n##DERIVED##s = 0;
> #define ABSTRACT_DECL(DECL)
> #include "clang/AST/DeclNodes.inc"
>
>
> which count the number of declaration node of each kind.
In D58612#1409024 <https://reviews.llvm.org/D58612#1409024>, @riccibruno wrote:
> In D58612#1408991 <https://reviews.llvm.org/D58612#1408991>, @alexfh wrote:
>
> > In D58612#1408942 <https://reviews.llvm.org/D58612#1408942>, @riccibruno wrote:
> >
> > > Okay, but what about the other similar uses of static members which have the same problem ?
> >
> >
> > Do you have any example in mind? I've only seen TSan warnings for these counters, nothing else so far.
>
>
> For example in `DeclBase.cpp`
>
> #define DECL(DERIVED, BASE) static int n##DERIVED##s = 0;
> #define ABSTRACT_DECL(DECL)
> #include "clang/AST/DeclNodes.inc"
>
>
> which count the number of declaration node of each kind.
These are probably easier to convert to std::atomic<int>, but I'd do this separately.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D58612/new/
https://reviews.llvm.org/D58612
More information about the cfe-commits
mailing list