Hello, the unique caller of the function `make_return_insns' is not guarded by [HAVE_return], causing a linker error if !HAVE_return.
Any comment? Cheers, Giuseppe gcc/ChangeLog 2011-09-13 Giuseppe Scrivano <gscriv...@gnu.org> * reorg.c: Always define make_return_insns. diff --git a/gcc/reorg.c b/gcc/reorg.c index 8880545..ce6e142 100644 --- a/gcc/reorg.c +++ b/gcc/reorg.c @@ -219,9 +219,7 @@ static rtx fill_slots_from_thread (rtx, rtx, rtx, rtx, int *, rtx); static void fill_eager_delay_slots (void); static void relax_delay_slots (rtx); -#ifdef HAVE_return static void make_return_insns (rtx); -#endif /* A wrapper around next_active_insn which takes care to return ret_rtx unchanged. */ @@ -3711,7 +3709,6 @@ relax_delay_slots (rtx first) } } -#ifdef HAVE_return /* Look for filled jumps to the end of function label. We can try to convert them into RETURN insns if the insns in the delay slot are valid for the @@ -3867,7 +3864,7 @@ make_return_insns (rtx first) fill_simple_delay_slots (1); fill_simple_delay_slots (0); } -#endif + /* Try to find insns to place in delay slots. */