I noticed recently in looking at the configure output of glib2.0 that the __GCC_HAVE_SYNC_COMPARE_AND_SWAP_[1,2,4] defines are not defined on hppa-linux because the corresponding builtins are implemented as library functions.

Tested on hppa-linux.  Committed to trunk.

Dave
--
John David Anglin       dave.ang...@bell.net


2013-09-20  John David Anglin  <dang...@gcc.gnu.org>

        * config/pa/pa-linux.h (TARGET_OS_CPP_BUILTINS): Define
        __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1, __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2,
        and __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4.

Index: config/pa/pa-linux.h
===================================================================
--- config/pa/pa-linux.h        (revision 202154)
+++ config/pa/pa-linux.h        (working copy)
@@ -22,6 +22,9 @@
 #define TARGET_OS_CPP_BUILTINS()               \
   do                                           \
     {                                          \
+       builtin_define ("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1");  \
+       builtin_define ("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2");  \
+       builtin_define ("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4");  \
        GNU_USER_TARGET_OS_CPP_BUILTINS();      \
        builtin_assert ("machine=bigendian");   \
     }                                          \

Reply via email to