This was spotted on powerpc-rtems but likely impacts more targets. It is triggered by -Os. I will attach the preprocessed file.
powerpc-rtems4.11-gcc (GCC) 4.5.0 20100414 (RTEMS gcc-4.5.0-10.fc12/newlib-1.18.0-10.fc12) $ powerpc-rtems4.11-gcc -mcpu=603e -Os -S j.c $ grep _rest j.s b _restgpr_31_x $ powerpc-rtems4.11-gcc -mcpu=603e -O0 -S j.c $ grep _rest j.s $ powerpc-rtems4.11-gcc -mcpu=603e -O1 -S j.c $ grep _rest j.s $ powerpc-rtems4.11-gcc -mcpu=603e -O2 -S j.c $ grep _rest j.s $ -- Summary: Code generated references undefined symbol Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: joel at gcc dot gnu dot org GCC host triplet: powerpc-rtems4.11 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44793