Re: [Valgrind-users] helgrind and threadsafe-statics

2014-06-09 Thread Bart Van Assche
On 06/08/14 19:09, David Faure wrote: I'm using helgrind quite a lot these days, and I love it. However I wonder if it doesn't give me false positives for the case of reading a value from a static object, which was set in the constructor. Given that gcc does indeed implement threadsafe

Re: [Valgrind-users] cannot get Helgrind/DRD work with C++11 thread

2014-06-09 Thread Bart Van Assche
On 06/09/14 08:51, Dave Ohlsson wrote: int i = 0; int main() { std::thread t1( []() { i = 1; } ); std::thread t2( []() { i = 2; } ); t1.join(); t2.join(); std::cerr i = i std::endl; return 0; } [other code as before] /updated part of main.cc The

Re: [Valgrind-users] helgrind and threadsafe-statics

2014-06-09 Thread Bart Van Assche
On 06/09/14 13:16, Olivier Goffart wrote: On Monday 09 June 2014 09:53:37 Bart Van Assche wrote: If g++ would be modified such that the if (!guard.first_byte) test can be skipped at run-time then it would become possible for Helgrind and DRD to recognize static initialization by intercepting

Re: [Valgrind-users] helgrind and threadsafe-statics

2014-06-09 Thread Patrick J. LoPresti
On Mon, Jun 9, 2014 at 12:53 AM, Bart Van Assche bvanass...@acm.org wrote: I think g++ will have to be modified to allow Helgrind and DRD to recognize thread-safe statics on architectures that do not have relaxed memory consistency. From the gcc source file gcc/cp/decl.c I derived that on