Hi, I've applied the patch below to trunk and gcc-4.7-branch.
It contains 2 RTEMS specific cleanups which have been in use for avr-rtems for quite a while.
Ralf
2012-10-26 Ralf Corsépius <ralf.corsep...@rtems.org> * config/avr/rtems.h (TARGET_OS_CPP_BUILTINS): Remove __USE_INIT_FINI__. * config/avr/t-rtems (LIB1ASMFUNCS): Filter out _exit. Index: config/avr/rtems.h =================================================================== --- config/avr/rtems.h (revision 192827) +++ config/avr/rtems.h (working copy) @@ -23,6 +23,5 @@ #define TARGET_OS_CPP_BUILTINS() \ do { \ builtin_define ("__rtems__"); \ - builtin_define ("__USE_INIT_FINI__"); \ builtin_assert ("system=rtems"); \ } while (0) Index: config/avr/t-rtems =================================================================== --- config/avr/t-rtems (revision 192827) +++ config/avr/t-rtems (working copy) @@ -1,3 +1,4 @@ # Multilibs for avr RTEMS targets. -# ATM, this is just a stub +# RTEMS uses _exit from newlib +LIB1ASMFUNCS := $(filter-out _exit,$(LIB1ASMFUNCS))