Subject: [Boost-bugs] [Boost C++ Libraries] #10113: [1.55] no lock-free synchronization on Solaris 10 sparcv9 (sp_counted_base.hpp)
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2014-06-11 11:53:58
#10113: [1.55] no lock-free synchronization on Solaris 10 sparcv9
(sp_counted_base.hpp)
----------------------------+------------------------------
Reporter: anonymous | Type: Bugs
Status: new | Milestone: To Be Determined
Component: Building Boost | Version: Boost 1.55.0
Severity: Problem | Keywords: lock-free sync.
----------------------------+------------------------------
I wonder, why lock-free synchronization is not in use on solaris 10
(sparcv9).
E.g. check with
http://www.boost.org/doc/libs/1_53_0/doc/html/lockfree/examples.html
When i build boost 1.55 with gcc-4.7.2, then i get for
> ./b2
[...]
- lockfree boost::atomic_flag : no
But there seems to be some support for cas32 (e.g.) in
./include/boost/smart_ptr/detail/...
But in ./include/boost/smart_ptr/detail/sp_counted_base.hpp there is in
the sequence of #if...#elif...#else...#endif is:
{{{
[...]
#elif defined( __GNUC__ ) && ( defined( __mips__ ) || defined( _mips ) )
&& !defined(__PATHSCALE__)
# include <boost/smart_ptr/detail/sp_counted_base_gcc_mips.hpp>
#elif defined( BOOST_SP_HAS_SYNC )
# include <boost/smart_ptr/detail/sp_counted_base_sync.hpp>
#elif defined(__GNUC__) && ( defined( __sparcv9 ) || ( defined( __sparcv8
) && ( __GNUC__ * 100 + __GNUC_MINOR__ >= 402 ) ) )
# include <boost/smart_ptr/detail/sp_counted_base_gcc_sparc.hpp>
[...]
}}}
I.e. BOOST_SP_HAS_SYNC is preferred.
Is this correct?
- many thanks!
best regards,
Frank
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/10113> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:16 UTC