diff auto/cc/conf @ 3366:b44a7159c5fb

atomic operations test-run
author Igor Sysoev <igor@sysoev.ru>
date Fri, 27 Nov 2009 22:00:39 +0000
parents b57a4a704f3c
children 568a854383f9
line wrap: on
line diff
--- a/auto/cc/conf
+++ b/auto/cc/conf
@@ -127,13 +127,18 @@ if [ "$NGX_PLATFORM" != win32 ]; then
 
     ngx_feature="gcc builtin atomic operations"
     ngx_feature_name=NGX_HAVE_GCC_ATOMIC
-    ngx_feature_run=no
+    ngx_feature_run=yes
     ngx_feature_incs=
     ngx_feature_path=
     ngx_feature_libs=
-    ngx_feature_test="long  n;
-                      __sync_bool_compare_and_swap(&n, 0, 1);
-                      __sync_fetch_and_add(&n, 1);"
+    ngx_feature_test="long  n = 0;
+                      if (!__sync_bool_compare_and_swap(&n, 0, 1))
+                          return 1;
+                      if (__sync_fetch_and_add(&n, 1) != 1)
+                          return 1;
+                      if (n != 2)
+                          return 1;
+                      __sync_synchronize();"
     . auto/feature