From owner-cvs-all Wed May 1 1:40:50 2002 Delivered-To: cvs-all@freebsd.org Received: from anchor-post-34.mail.demon.net (anchor-post-34.mail.demon.net [194.217.242.92]) by hub.freebsd.org (Postfix) with ESMTP id 5024E37B400; Wed, 1 May 2002 01:40:45 -0700 (PDT) Received: from mailgate.nlsystems.com ([62.49.251.130] helo=herring.nlsystems.com) by anchor-post-34.mail.demon.net with esmtp (Exim 3.35 #1) id 172pfB-000O3x-0Y; Wed, 01 May 2002 09:40:37 +0100 Received: from herring.nlsystems.com (localhost [127.0.0.1]) by herring.nlsystems.com (8.12.3/8.11.2) with ESMTP id g418eYcj008493; Wed, 1 May 2002 09:40:34 +0100 (BST) (envelope-from dfr@herring.nlsystems.com) Received: (from dfr@localhost) by herring.nlsystems.com (8.12.3/8.12.3/Submit) id g418eXSb008492; Wed, 1 May 2002 09:40:33 +0100 (BST) Content-Type: text/plain; charset="iso-8859-1" From: Doug Rabson To: Marcel Moolenaar Subject: Re: cvs commit: src/sys/ia64/ia64 exception.s src/sys/ia64/include frame.h Date: Wed, 1 May 2002 09:40:33 +0100 X-Mailer: KMail [version 1.4] Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org References: <200204300637.g3U6bQc25956@freefall.freebsd.org> <20020430165257.M25863-100000@herring.nlsystems.com> <20020430195757.GA70203@gauss.cup.hp.com> In-Reply-To: <20020430195757.GA70203@gauss.cup.hp.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Message-Id: <200205010940.33776.dfr@nlsystems.com> Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG 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 t= hese > > 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 entr= y=20 path didn't disturb the value of ar.lc (or ar.ec for that matter) and tha= t it=20 can rely on the value being preserved by the higher level handlers (e.g.=20 trap, interrupt, syscall etc), it can also rely on the value in=20 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). --=20 Doug Rabson=09=09=09=09Mail: dfr@nlsystems.com =09=09=09=09=09Phone: +44 20 8348 6160 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message