From owner-freebsd-alpha Fri Jan 4 6:16:12 2002 Delivered-To: freebsd-alpha@freebsd.org Received: from pcnet1.pcnet.com (pcnet1.pcnet.com [204.213.232.3]) by hub.freebsd.org (Postfix) with ESMTP id 0F36337B405 for ; Fri, 4 Jan 2002 06:16:10 -0800 (PST) Received: (from eischen@localhost) by pcnet1.pcnet.com (8.12.1/8.12.1) id g04EF3qJ018737; Fri, 4 Jan 2002 09:15:03 -0500 (EST) Date: Fri, 4 Jan 2002 09:14:58 -0500 (EST) From: Daniel Eischen To: Bernd Walter Cc: alpha@FreeBSD.org Subject: Re: {get,set,make,swap}context for alpha In-Reply-To: <20020104143622.A8703@cicely8.cicely.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-alpha@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org On Fri, 4 Jan 2002, Bernd Walter wrote: > On Thu, Jan 03, 2002 at 04:05:25PM -0500, Daniel Eischen wrote: > > I've got *context implemented and working for i386, but need some > > help getting them to work on the alpha. Anyone here care to give > > it a try? You can get them from: > > > > http://people.freebsd.org/~deischen/ucontext/uc-libc-sys.diffs > > http://people.freebsd.org/~deischen/ucontext/uc-i386-standalone.tgz > > http://people.freebsd.org/~deischen/ucontext/uc-alpha-standalone.tgz [...] > One problem I found is that you defined getcontext to be a LEAF > function, but actually call others. Hmm, lib/libc/alpha/gen/setjmp.S does the same thing and also makes a call to sigprocmask. I see that it does save and restore ra though. So I guess I should use NESTED, or make sure I save and restore ra and any S register I use? It seems weird that ra needs to be restored in order for a branch instruction to work properly... -- Dan Eischen To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message