Hi,
This is a series of 3 patches relating to ARM atomic operations.
1) Provide 64 bit atomic operations using the new ldrexd/strexd in ARMv6k
and above.
2) Provide fallbacks so that when compiled for earlier CPUs a Linux kernel
asssist is called (as per 32bit and smaller ops)
3) Fix pr48126 which is a misplaced barrier in the atomic generation
Many thanks to Richard Sandiford for pointing me in the right direction
and reviewing it.
This work is part of Linaro blueprint:
https://blueprints.launchpad.net/linaro-toolchain-misc/+spec/64-bit-sync-primitives
The patch was generated from the gcc git tree from about 2 weeks back
but applies happily on top of the head.
It's been tested cross to ARM from x86 and also a native x86 build & test.
Dave