Re: [PATCH, libstdc++] Improve slightly __cxa_guard_acquire

2012-09-11 Thread Richard Henderson
On 09/11/2012 08:02 AM, Jakub Jelinek wrote: > 2012-09-11 Jakub Jelinek > > PR libstdc++/54172 > * libsupc++/guard.cc (__cxa_guard_acquire): Fix up the last > argument of the first __atomic_compare_exchange_n. Looks good. r~

Re: [PATCH, libstdc++] Improve slightly __cxa_guard_acquire

2012-09-11 Thread Jakub Jelinek
On Thu, Sep 06, 2012 at 11:10:37PM +0200, Jakub Jelinek wrote: > > + int expected(0); > > if (__atomic_compare_exchange_n(gi, &expected, pending_bit, false, > > __ATOMIC_ACQ_REL, > > __ATOMIC_RELAXED)) >

Re: [PATCH, libstdc++] Improve slightly __cxa_guard_acquire

2012-09-06 Thread Jakub Jelinek
On Thu, Sep 06, 2012 at 01:33:11PM -0700, Benjamin De Kosnik wrote: > Here's the patch as applied to trunk in rev. 191042. I'll apply it to > 4.7 this weekend as long as nobody yelps. > 2012-09-06 Thiago Macieira > > PR libstdc++/54172 > * libsupc++/guard.cc (__cxa_guard_acquire)

Re: [PATCH, libstdc++] Improve slightly __cxa_guard_acquire

2012-09-06 Thread Thiago Macieira
On quinta-feira, 6 de setembro de 2012 13.33.11, Benjamin De Kosnik wrote: > Here's the patch as applied to trunk in rev. 191042. I'll apply it to > 4.7 this weekend as long as nobody yelps. Thanks. The change to ACQUIRE is also a bugfix. -- Thiago Macieira - thiago.macieira (AT) intel.com Soft

Re: [PATCH, libstdc++] Improve slightly __cxa_guard_acquire

2012-09-06 Thread Benjamin De Kosnik
Here's the patch as applied to trunk in rev. 191042. I'll apply it to 4.7 this weekend as long as nobody yelps. -benjamin 2012-09-06 Thiago Macieira PR libstdc++/54172 * libsupc++/guard.cc (__cxa_guard_acquire): Exit the loop earlier if we detect that another thread has had

Re: [PATCH, libstdc++] Improve slightly __cxa_guard_acquire

2012-09-06 Thread Benjamin De Kosnik
On Thu, 30 Aug 2012 12:48:34 +0200 Thiago Macieira wrote: > Hello > > The attached patch is a simple improvement to make a thread that > failed to set the waiting bit to exit the function earlier, if it > detects that another thread has successfully finished initialising. > It matches the CAS co

[PATCH, libstdc++] Improve slightly __cxa_guard_acquire

2012-08-30 Thread Thiago Macieira
Hello The attached patch is a simple improvement to make a thread that failed to set the waiting bit to exit the function earlier, if it detects that another thread has successfully finished initialising. It matches the CAS code from a few lines above. The change from RELAXED to ACQUIRE is not