Subject: Re: gdb on m68k
To: None <Paul.Mackerras@cs.anu.edu.au, cgd@alpha.bostic.com>
From: Mike Hibler <mike@cs.utah.edu>
List: port-m68k
Date: 09/14/1994 13:42:12
> To: Paul Mackerras <Paul.Mackerras@cs.anu.edu.au>
> Cc: port-m68k@NetBSD.ORG, core@NetBSD.ORG
> Subject: Re: gdb on m68k 
> Date: Wed, 14 Sep 1994 13:13:12 -0400
> From: "Chris G. Demetriou" <cgd@alpha.bostic.com>
> 
> > 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.
> 
I'll throw out one more marginally-related alignment tidbit here just for the
record (in case everyone didn't know).  The netiso code requires a compiler
that doesn't pad the size of odd-length structures.  Hence CSRG changed the
default value of STRUCTURE_SIZE_BOUNDARY from 16 to 8 for the 68k (actually
just in the hp3bsd.h config file).  I am told by Keith Sklower that this is
essential.