Boost logo

Boost :

From: Tim Blechmann (tim_at_[hidden])
Date: 2008-04-29 18:31:30

>> Compression is a good way to solve many ABA
>> problems on architectures where CAS2 is not available. A compressing
>> allocator/pointer pair would be required for any hope of portability.
>> Of course, noncompressing version should be available for platofrm
>> that could support it (such as Intel)
> Yes, I actually combine the pointer and an ABA counter into one 64-bit
> value for legacy AMD systems that don't support CAS2. I have only
> tested this on Windows - I have no idea how other OSes lay out their
> memory. This also introduces the idea of "preparing" a pointer for CAS,
> though the algorithm code can still be generic enough for all archs.

i have just implemented a compressed pointer for the x86_64 architecture,
tested on one linux machine ...;a=blob;f=boost/lockfree/

cheers, tim

Silence is only frightening to people who are compulsively
  William S. Burroughs

Boost list run by bdawes at, gregod at, cpdaniel at, john at