Boost logo

Boost :

Subject: Re: [boost] [atomic] atomic<int>::is_lock_free() returns false on iPad 4 (armv7s)
From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2013-09-06 13:43:13


On Friday 06 September 2013 09:20:16 Tim Blechmann wrote:
> >> boost:atomic<int>::is_lock_free() returns false on iPad 4 (armv7s) but
> >>
> >> returns true on iPad 3 (armv7). Is this expected or did I build boost
> >> incorrectly?
> >
> > Most of Boost.Atomic code is header-only, so the problem is not related to
> > building Boost.
> >
> > I suppose, noone added detection for the armv7s target because noone knows
> > how to detect it at compile time. If you could provide a compiler
> > predefined macro that can be used for this purpose, we could add the
> > support.
>
> my experience with arm is rather limited (ccing phil, who wrote the
> arm-part), just two points:
>
> * if armv7s is similar to armv7, it may be safe to adapt
> atomic/detail/platform.hpp with __ARM_ARCH_7S__

I've found that this (and quite a few other) macros are used in
boost/smart_ptr/detail/spinlock_gcc_arm.hpp, so I've updated Boost.Atomic to
use them as well. It would be great if anyone could test the updated version
for the actual ARM target.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk