From c3205d294e519f994829d9355eb133670729aab4 Mon Sep 17 00:00:00 2001 From: wm4 Date: Fri, 27 Jan 2017 09:15:32 +0100 Subject: atomic: drop __sync builtins The correctness of the stdatomic.h emulation via the __sync builtins is questionable, and we've been relying on exact stdatomic semantics for a while, so just get rid of it. Compilers which support __sync but not stdatomic.h will use to the slow mutex fallback. Not sure about the __atomic builtins. It doesn't seem to harm either, so leave it for now. --- wscript | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) (limited to 'wscript') diff --git a/wscript b/wscript index a7ec0a9c3d..6ebc3f9fd0 100644 --- a/wscript +++ b/wscript @@ -178,20 +178,12 @@ main_dependencies = [ 'int64_t test = 0;' 'test = __atomic_add_fetch(&test, 1, __ATOMIC_SEQ_CST)')), 'deps_neg': [ 'stdatomic' ], - }, { - 'name': 'sync-builtins', - 'desc': 'compiler support for __sync built-ins', - 'func': check_statement('stdint.h', - 'int64_t test = 0;' - '__typeof__(test) x = ({int a = 1; a;});' - 'test = __sync_add_and_fetch(&test, 1)'), - 'deps_neg': [ 'stdatomic', 'atomic-builtins' ], }, { 'name': 'atomics', 'desc': 'stdatomic.h support or emulation', 'func': check_true, 'req': True, - 'deps_any': ['stdatomic', 'atomic-builtins', 'sync-builtins', 'gnuc'], + 'deps_any': ['stdatomic', 'atomic-builtins', 'gnuc'], }, { 'name': 'c11-tls', 'desc': 'C11 TLS support', -- cgit v1.2.3