This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: __sync_swap* with acq/rel/full memory barrier semantics
On 06/20/2011 09:22 AM, Andrew MacLeod wrote:
> builtins.c:expand_builtin_lock_test_and_set (enum machine_mode mode, tree exp,
> builtins.c: case BUILT_IN_LOCK_TEST_AND_SET_1:
> builtins.c: case BUILT_IN_LOCK_TEST_AND_SET_2:
> builtins.c: case BUILT_IN_LOCK_TEST_AND_SET_4:
>
> whereas everything else is 'sync_lock_test_and_set'..
>
> So i guess it falls to prior art... I assume Aldy just cut-and-pasted
> for his new routine and just changed the names in the same format.
Heh. So this is really my fault. Ah well.
> Ah, even better. For some reason I thought I saw somewhere that it
> wasn't a full barrier. Might have just been the documentation for
> lock_test_and_set.
Very likely.
r~