[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: m68k toolchain status?



On Tue, Jul 31, 2007 at 02:30:39PM +1000, Finn Thain wrote:
> On Mon, 30 Jul 2007, Brad Boyer wrote:
> 
> > One issue is that I don't have a real copy of the ELF ABI documentation 
> > for m68k. I found a copy of the PPC documentation, but even that was 
> > difficult. Does anyone have a copy or hints on how to find it? I'm 
> > worried that the current ABI isn't really flexible enough to do TLS in a 
> > proper fashion.
> 
> I'm out of my depth here, so please take what I say with a grain of salt 
> -- but my impression is that we never followed the published standards 
> anyway:
> 
> http://c1.complang.tuwien.ac.at/cacaowiki/M68kCallingConventions
> 
> http://gcc.gnu.org/ml/gcc-patches/2005-04/msg01054.html
> 
> ...which said: "Align ints to a word boundary.  This breaks compatibility 
> with the published ABI's for structures containing ints, but produces 
> faster code on cpus with 32-bit busses (020, 030, 040, 060, CPU32+, 
> ColdFire). It's required for ColdFire cpus without a misalignment 
> module."

Yes, but that's listed above
#define MASK_ALIGN_INT (1 << 13)
#define TARGET_ALIGN_INT (target_flags & MASK_ALIGN_INT)

Which I read as it being a flag value for a compile option? Or am I
totally wrong here?

> The de facto ABI as defined by the toolchain itself may be more relevant 
> if the only published standards are obsolete.

Of course.

However, that not being written down anywhere makes it rather hard to
understand it. Your first link surely is very helpful already, but it
might be nice if we could extend that wiki page to be more detailed?

I understood from Roman that A5 has some special meaning in position
independent code; I just don't know what that is.

Those pages tell me that D0 and D1 are used for function return values.
I knew about D0, but what's with D1?

Figuring out alignment of structs shouldn't be too hard, but AFAIK it
isn't done.

etc.

Thoughts?

-- 
<Lo-lan-do> Home is where you have to wash the dishes.
  -- #debian-devel, Freenode, 2004-09-22



Reply to: