Subject: Re: CVS commit: src/sys/arch/vax/boot/common
To: Anders Magnusson <ragge@netbsd.org>
From: David Laight <david@l8s.co.uk>
List: source-changes
Date: 10/07/2003 13:42:31
On Tue, Oct 07, 2003 at 12:01:27PM +0000, Anders Magnusson wrote:
>
> Module Name: src
> Committed By: ragge
> Date: Tue Oct 7 12:01:27 UTC 2003
>
> Modified Files:
> src/sys/arch/vax/boot/common: str.S
>
> Log Message:
> The last commit broke the boot code (memset may be larger than 64k).
> Johnny Billquist fixed it and bugfixed some routines.
A couple of minor points (from the person who broke it! [1])
- memcpy (and bcopy) don't need to support overlapped copies
- the return value of memcpy/memset should be the target buffer address
- The ENTRY macro aligns the code on a 64byte (?) boundary, on other
architectures you can avoid this problem by just defining a label.
But, IIRC, on vax there is a 'magic' word at the start of each function.
- maybe memmove() ought to be here?
- I don't like the $250 in strcmp - maybe 'clr %r3' instead?
It might be worth trawling for the bcopy/bzero calls in the boot code
and removing them (as was done for the kernel a while ago).
David
[1] trying to get the boot code to fit having used memcpy/memset in it.
--
David Laight: david@l8s.co.uk