Subject: Re: gdb on m68k
To: Paul Mackerras <Paul.Mackerras@cs.anu.edu.au>
From: Chris G. Demetriou <cgd@alpha.bostic.com>
List: port-m68k
Date: 09/14/1994 13:13:12
> So I commented out the check that the address is a multiple of 4, for
> both the PT_READ_U and PT_WRITE_U functions in kern/sys_process.c, and
> GDB now appears to work.  I don't really see any way to fix the
> problem, other than removing the alignment checks.  I reckon that we
> need a cpp symbol defined somewhere to say whether the machine can do
> unaligned accesses.  Then we could use that to disable the alignment
> checks.

Eventually, yes, such a cpp symbol would be a good idea -- it's also
important in code like msdosfs, that is usable on multiple
architectures, and likes to use odd addresses as short/int pointers,
etc.

For now, i fixed this with an #ifdef.  for the m68k (the only machine
that has this problem -- every other port that can support unaligned
accesses actually has all of the registers nicely aligned), it now
requires 16-bit alignment.  That should solve the problem, for now.



chris