On Thursday 07 October 2010 13:03:14 Wookey wrote:
gcc has the multilib feature, but the way it is implemented means it works well for about 2 or 3 options, but you rapidly get combinatorial explosion of libgcc instances if you try to do more things than that. (i.e if you ask for v5, v6, v7, vfp, and neon options you get 25 versions of libgcc1, most of which are silly combinations)
If I understood Uli correctly, you can have one version of libgcc that is used as the fallback in a multilib setup, and most variants are backwards compatible.
We could have one version for the variant we're targetting (v7-a, thumb2, vfp, neon) and one version as a fallback for most older targets (v5 or v4, arm, novfp, noneon) which would get us a _long_ way, and it would still be compatible with the version we normally use.
There are however some incompatible options (big-endian, thumb 1, hardfloat) that might need an extra multilib variant if we really want them.
Arnd