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: [ColdFire 53/63] Static chain fixes


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



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