configure: Check for __atomic_add_fetch() and __atomic_load()
authorVolker Lendecke <vl@samba.org>
Mon, 13 Dec 2021 16:40:52 +0000 (17:40 +0100)
committerJeremy Allison <jra@samba.org>
Wed, 15 Dec 2021 00:15:33 +0000 (00:15 +0000)
To be used in the tdb_seqnum code soon

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
lib/replace/wscript

index a928b80f2f7a06bf590a46a6d0ad8be0e35f0428..e60ff15f90309d7c7d7e1ffdf248a25c611439c5 100644 (file)
@@ -313,6 +313,22 @@ def configure(conf):
                     headers='stdint.h sys/atomic.h',
                     msg='Checking for atomic_add_32 compiler builtin')
 
+    conf.CHECK_CODE('''
+                    uint32_t i,j;
+                    j = __atomic_add_fetch(&i,1,__ATOMIC_SEQ_CST)
+                    ''',
+                    'HAVE___ATOMIC_ADD_FETCH',
+                    headers='stdint.h',
+                    msg='Checking for __atomic_add_fetch compiler builtin')
+
+    conf.CHECK_CODE('''
+                    uint32_t i,j;
+                    __atomic_load(&i,&j,__ATOMIC_SEQ_CST)
+                    ''',
+                    'HAVE___ATOMIC_ADD_LOAD',
+                    headers='stdint.h',
+                    msg='Checking for __atomic_load compiler builtin')
+
     # Check for thread fence. */
     tf = conf.CHECK_CODE('atomic_thread_fence(memory_order_seq_cst);',
                          'HAVE_ATOMIC_THREAD_FENCE',