Michael, the best, long term engineering solution, is to rely on the gcc __sync primatives. Whether there any intermediate steps along the way is debatable. Discuss Dave
On 14 Nov 2010, at 22:26, Michael Hope wrote: > Hi there. I've been looking into updating the QT4 atomic operations > as an alternative to working around it in GCC. There's ARM specific > code in: > http://qt.gitorious.org/qt/qt/blobs/4.7/src/corelib/arch/qatomic_armv6.h > that should be updated to include IT instructions so that it can > compile in Thumb-2 mode. > > There are bigger problems here though: > * There's code in corelib/arch/armv6/qatomic*.c that may also being used > * qatomic_armv6.h includes code for RVCT which should be updated for > Thumb-2 by someone > * The code may not work on multi-processor systems like Panda due to > the lack of DMB instructions > > The better fix would be to replace everything with __sync_* primitives > similar to qatomic_avr32.h and require GCC 4.4 or higher. The same > probably applies to glib. > > Thoughts? Any volunteers? It's mildly outside the Toolchain WG's mandate. > > See also: > https://bugs.launchpad.net/ubuntu/+source/qt4-x11/+bug/673085 > > -- Michael > > _______________________________________________ > linaro-dev mailing list > linaro-dev@lists.linaro.org > http://lists.linaro.org/mailman/listinfo/linaro-dev _______________________________________________ linaro-dev mailing list linaro-dev@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-dev