riccibruno added a comment.

In D58612#1409215 <https://reviews.llvm.org/D58612#1409215>, @alexfh wrote:

> > In D58612#1409024 <https://reviews.llvm.org/D58612#1409024>, @riccibruno 
> > wrote:
> > 
> >> ...
> >>  For example in `DeclBase.cpp`
> >>
> >>   #define DECL(DERIVED, BASE) static int n##DERIVED##s = 0;
> >>   #define ABSTRACT_DECL(DECL)
> >>   #include "clang/AST/DeclNodes.inc"
> >>
> >>
> >> ...
> > 
> > 
> > These are probably easier to convert to std::atomic<int>, but I'd do this 
> > separately.
>
> Just converting these to `std::atomic<>` will mute TSan, but won't fix the 
> underlying issue: the stats should be collected per-compiler instance. 
> Initialization will require a bit more locking as well. Not sure what would 
> be a good solution here.


I agree that making them atomic is not a good solution. I am not sure that the 
stats should be stored in the compiler instance (is that what you are 
suggesting ?). The number of declaration nodes of each kind seems to be 
something that should be stored in the AST context.


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D58612/new/

https://reviews.llvm.org/D58612



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to