|
Boost : |
From: David Abrahams (dave_at_[hidden])
Date: 2007-07-15 21:01:05
on Sun Jul 15 2007, "Matt Calabrese" <rivorus-AT-gmail.com> wrote:
> It shouldn't be much more difficult to port than the proposals. A lot of
> stuff is automatically generated based off of a single macro definition.
> Specifying a CAS definition and what size/alignment of types that are
> useable with CAS on your system automatically generates the entire rest of
> the library including the integer headers and lock-free ops on types smaller
> and of a different alignment as well (by taking the encapsulating word and
> doing CAS on that, as specified in a couple of the proposals). You can go
> further and provide more direct support for any other operations to override
> defaults, and you can even take short-cuts such as just specifying the
> behavior of volatile on your compiler (i.e. if volatile implies
> acquire loads and release stores, you just specify as such and it will
> generate the corresponding functions automatically based off of that).
Yeah, I probably should have mentioned this earlier: Matt is really
good ;-)
-- Dave Abrahams Boost Consulting http://www.boost-consulting.com The Astoria Seminar ==> http://www.astoriaseminar.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk