http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46964
--- Comment #1 from joseph at codesourcery dot com <joseph at codesourcery dot com> 2010-12-15 16:57:07 UTC --- On Wed, 15 Dec 2010, joel at gcc dot gnu.org wrote: > does not define SAVE_REGS in gcc-go.c for ARM. Is this correct for ARM? > > #elif defined(__arm__) > #define SAVE_REGS asm ("" : : : "r4", "r5", "r6", "r7", "r8", "r9", \ > "r10", "r11", "r12", "r13", "r14", "r15" ) If this is built for each multilib then you need to allow for the possibility of VFP/NEON multilibs - there are call-preserved NEON registers as well (s16-s31/d8-d15/q4-q7, see AAPCS). However, not all of the registers you list above need preserving in AAPCS. But rather than trying to duplicate such information for all targets in go-go.c, wouldn't it be better just to call __builtin_unwind_init, or if that function doesn't have quite the right semantics then another built-in function defined to have the right semantics?