[ColdFire 53/63] Static chain fixes

Jeffrey Law law@redhat.com
Wed Jan 10 21:48:00 GMT 2007


On Wed, 2007-01-10 at 21:32 +0000, Paul Brook wrote:
> > > 	* config/m68k/m68k.h (M68K_STATIC_CHAIN_REG_NAME): New macro.
> > > 	(INITIALIZE_TRAMPOLINE): Use STATIC_CHAIN_REGNUM.
> > > 	(__transfer_from_trampoline): Use M68K_STATIC_CHAIN_REG_NAME.
> > > 	* config/m68k/m68kelf.h (STATIC_CHAIN_REGNUM): Override.
> > > 	(M68K_STATIC_CHAIN_REG_NAME): Likewise.
> > > 	* config/m68k/netbsd-elf.h (M68K_STATIC_CHAIN_REG_NAME): Likewise.
> > >
> > > gcc/testsuite/
> > > 200x-xx-xx  Nathan Sidwell  <nathan@codesourcery.com>
> > >
> > > 	* gcc.c-torture/execute/nestfunc-7.c: New.
> >
> > Isn't this an ABI change?  If so it needs to be documented at the least
> > so that users of the m68k elf port aren't caught by surprise.
> 
> I thought STATIC_CHAIN_REGNUM was an internal implementation detail.
> It's a private interface between the trampoline and the nested function, and 
> never escapes to the outside world.
Doesn't the caller need to tell the callee where to find stacked
variables?  It seems to me the caller and callee need to agree on
that location.

jeff




More information about the Gcc-patches mailing list