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

Reply via email to