CS has this patch in SG++: http://gcc.gnu.org/ml/gcc-patches/2008-12/msg00199.html
This patch improves code size in a useful, target independent way, but was not committed upstream. It's not clear why. Since the patch does not belong to CodeSourcery, we can't upstream it ourselves either.
Is that patch a suitable candidate for Linaro GCC?
It is not upstreamable due to copyright issues, but we have a policy that we can keep such patches, if we wish.
The principle of not letting Linaro and SG++ diverge too far also suggests keeping it.
Any thoughts? If nobody objects soon I shall merge it in.
Andrew