On 11/02/2011 07:59 AM, Andrew MacLeod wrote:
> gcc
> * builtins.c (fold_builtin_atomic_always_lock_free): Add object param
> and check alignment if present.
> (expand_builtin_atomic_always_lock_free): Expect 2nd argument.
> (fold_builtin_atomic_is_lock_free): Expect 2nd argument.
> (expand_builtin_atomic_is_lock_free): Expect 2nd argument.
> (fold_builtin_1): Remove LOCK_FREE builtins.
> (fold_builtin_2): Add LOCK_FREE builtins.
> * sync-builtins.def (BUILT_IN_ATOMIC_{IS,ALWAYS}_LOCK_FREE): Add param.
> * builtin-types.def (BT_FN_BOOL_SIZE): Remove.
> (BT_FN_BOOL_SIZE_CONST_VPTR): Add.
>
> fortran
> * types.def (BT_FN_BOOL_SIZE): Remove.
> (BT_FN_BOOL_SIZE_CONST_VPTR): Add.
>
> libstdc++-v3
> * include/std/atomic (is_lock_free): Add object pointer to
> __atomic_is_lock_free.
> * include/bits/atomic_base.h (LOCKFREE_PROP): Add 0 for object ptr.
> (is_lock_free): Add object pointer to __atomic_is_lock_free.
>
> testsuite
> * gcc.dg/atomic-lockfree-aux.c: Add extra lock-free parameter.
> * gcc.dg/atomic-invalid.c: Add extra lock-free parameter.
> * gcc.dg/atomic-lockfree.c: Add extra lock-free parameter.
Ok.
r~