This patch implements TLS descriptor support in GCC. TLS descriptors are described at http://www.codesourcery.com/publications/RFC-TLSDESC-ARM.txt and blessed by ARM, who have reserved the relocation numbers. Binutils and GLIBC patches are already committed (there is an orthogonal glibc patch to do with make dependencies that I need to post though). This patch adds a --with-tls={arm|gnu} configuration option, to specify the default scheme. It can be overridden with a -mtls-dialect={arm|gnu} option (this is the name used by the x86 backend, which also has tlsdescriptor support). I have not added --with-tls support to the x86 bits of config.gcc etc, but it would be simple to do so. The arm.{c,h,md} changes are fairly mechanical -- a new tls pattern and smarts to emit it appropriately. This patch has been tested for both default arm and default gnu tls schemes using the gcc and glibc testsuites for an arm-linux-gnueabi target. ok? nathan -- Nathan Sidwell :: http://www.codesourcery.com :: CodeSourcery