Boost logo

Boost :

Subject: Re: [boost] Notice: Boost.Atomic (atomic operations library)
From: Helge Bahmann (hcb_at_[hidden])
Date: 2009-12-03 16:19:46


Hi Phil,

Am Thursday 03 December 2009 15:58:03 schrieb Phil Endecott:
> Helge Bahmann wrote:
> > I will shortly be adding a small howto on adding platform support to the
> > library.
>
> Please let me know when this is ready. I currently have a bit of time
> to spend on this.

There is one planned internal API change (switching to the four-parameter
compare_exchange_*) still pending, but that should be straight-forward
afterwards. If you want to try, I have started writing things up, the current
state is at:

http://www.chaoticmind.net/~hcb/projects/boost.atomic/doc/architecture_support.html

(the tarball also contains the generated docs, still busy reworking to use
boostdoc)

> In summary, the cases that I need to handle are:
>
> 1. Linux kernel provided memory-barrier and CAS operations (only);

does any of these arm platforms (this is pre-v6 probably?) actually support
smp? if not, then the barriers will probably be NOPs

> 2. Asm load-locked/store-conditional for words (only);
> 3. As 2 but also for smaller types.

sounds like this is going to be one of the most complicated platforms, so I
really appreciate your experience here...

> I could probably work this out from the source, but it would save some
> time to have some hints....

It's probably still required to delve into the source, but I hope that the
write-up provides a good entry point (but of course don't hesitate on
commenting, there is lots of things to improve).

Best regards
Helge


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