Date: Mon, 29 Oct 2001 09:27:04 -0800 (PST) From: John Baldwin <jhb@FreeBSD.org> To: Bruce Evans <bde@zeta.org.au> Cc: arch@FreeBSD.ORG Subject: Re: syscall() ABI questions Message-ID: <XFMail.011029092704.jhb@FreeBSD.org> In-Reply-To: <20011030035059.L12873-100000@delplex.bde.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 29-Oct-01 Bruce Evans wrote: > On Mon, 29 Oct 2001, John Baldwin wrote: > >> I've got some questions about td->td_retval[1] and our syscall ABI. On some >> archs (ia64, alpha) we preinitialie this value to 0. On other archs (i386, >> sparc64, ppc) we set it to the value of the register it will be set to so >> that >> effectively this register's value is preserved across the syscall. My >> question >> is do our syscall ABI's actually assume that for syscalls with only one >> return >> value that register isn't written to? NetBSD recently changed their i386 >> syscall code to preinitialize to 0 rather than %edx. Anyone have the >> history >> on this? > > Not me. It's older than FreeBSD-1.1. It seems to be just a pessimization > to preinitialize retval[1]. That's depressing. I was hoping you would know what was going on here. :) > Bruce -- John Baldwin <jhb@FreeBSD.org> -- http://www.FreeBSD.org/~jhb/ PGP Key: http://www.baldwin.cx/~john/pgpkey.asc "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.011029092704.jhb>