This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [arm] Omit register save in noreturn functions


On Fri, Jan 20, 2006 at 01:16:19PM -0800, Richard Henderson wrote:
> On Fri, Jan 20, 2006 at 12:01:42AM +0000, Paul Brook wrote:
> > arm.c:arm_compute_func_type contains logic to avoid saving registers in the 
> > function prologue if the function never returns, and we don't need to unwind 
> > through it.  The patch below makes this condition hold when exceptions and
> > unwinding tables are disabled. This is the case for most C code.
> 
> Well, except for the fact that it makes it much harder to figure out
> what went wrong with a breakpoint on "abort".  This is why, for
> instance, we disabled tail calls to noreturn functions.

Amen from someone who gets the GDB bug reports when this doesn't work!
But that's what the original check (before it got broken) was trying to
do, if I understand correctly.  Seems a shame for some unspecified ARM
kernel facility to trump backtraces like this.

-- 
Daniel Jacobowitz
CodeSourcery


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]