Date: Wed, 1 May 2002 09:40:33 +0100 From: Doug Rabson <dfr@nlsystems.com> To: Marcel Moolenaar <marcel@cup.hp.com> Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/ia64/ia64 exception.s src/sys/ia64/include frame.h Message-ID: <200205010940.33776.dfr@nlsystems.com> In-Reply-To: <20020430195757.GA70203@gauss.cup.hp.com> References: <200204300637.g3U6bQc25956@freefall.freebsd.org> <20020430165257.M25863-100000@herring.nlsystems.com> <20020430195757.GA70203@gauss.cup.hp.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday 30 April 2002 8:57 pm, Marcel Moolenaar wrote: > On Tue, Apr 30, 2002 at 04:53:59PM +0100, Doug Rabson wrote: > > On Mon, 29 Apr 2002, Marcel Moolenaar wrote: > > > marcel 2002/04/29 23:37:25 PDT > > > > > > Modified files: > > > sys/ia64/ia64 exception.s > > > sys/ia64/include frame.h > > > Log: > > > Add ar.lc and ar.ec to the trapframe. These are not saved for > > > syscalls, only for exceptions. > > > > I was kind-of relying on the C calling conventions saving/restoring these > > as needed. > > ar.lc is callee saved. We have to do it even for the syscall case. > ar.ec is automatic as part of the call/return mechanism. We need to > explicitly save it only if it's possible to have syscalls inlined. What I actually meant by that statement was that since the exception entry path didn't disturb the value of ar.lc (or ar.ec for that matter) and that it can rely on the value being preserved by the higher level handlers (e.g. trap, interrupt, syscall etc), it can also rely on the value in exception_restore being the user's value. > > I think we should save them both for syscalls as well. Thoughts? I don't think so (for the above reason). -- Doug Rabson Mail: dfr@nlsystems.com Phone: +44 20 8348 6160 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200205010940.33776.dfr>
