r227878 - in /trunk: gcc/ChangeLog gcc/builtins...

redi@gcc.gnu.org redi@gcc.gnu.org
Thu Sep 17 15:46:00 GMT 2015


Author: redi
Date: Thu Sep 17 15:46:04 2015
New Revision: 227878

URL: https://gcc.gnu.org/viewcvs?rev=227878&root=gcc&view=rev
Log:
Handle alignment in __atomic_is_lock_free

gcc:

2015-09-17  Richard Henderson  <rth@redhat.com>

	PR libstdc++/65913
	* builtins.c (fold_builtin_atomic_always_lock_free): Handle fake
	pointers that encode the alignment of the object.

libstdc++-v3:

2015-09-17  Jonathan Wakely  <jwakely@redhat.com>

	PR libstdc++/65913
	* include/bits/atomic_base.h (__atomic_base<_TTp>::is_lock_free(),
	__atomic_base<_PTp*>::is_lock_free()): Call the built-in with the
	immediate pointer value, not a variable.
	* include/std/atomic (atomic<T>::is_lock_free()): Likewise.
	* testsuite/29_atomics/atomic/65913.cc: New.

Added:
    trunk/libstdc++-v3/testsuite/29_atomics/atomic/65913.cc
Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/include/bits/atomic_base.h
    trunk/libstdc++-v3/include/std/atomic

Changes in other areas also in this revision:
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/builtins.c



More information about the Libstdc++-cvs mailing list