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 ...
-- tim_at_[hidden] http://tim.klingt.org Silence is only frightening to people who are compulsively verbalizing. William S. Burroughs
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk