From owner-cvs-all Thu Nov 14 11:40:34 2002 Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 35B7937B401; Thu, 14 Nov 2002 11:40:33 -0800 (PST) Received: from kayak.xcllnt.net (209-128-86-226.bayarea.net [209.128.86.226]) by mx1.FreeBSD.org (Postfix) with ESMTP id D878443E77; Thu, 14 Nov 2002 11:40:31 -0800 (PST) (envelope-from marcel@xcllnt.net) Received: from dhcp01.pn.xcllnt.net (dhcp01.pn.xcllnt.net [192.168.4.201]) by kayak.xcllnt.net (8.12.6/8.12.6) with ESMTP id gAEJeV0N031418; Thu, 14 Nov 2002 11:40:31 -0800 (PST) (envelope-from marcel@kayak.pn.xcllnt.net) Received: from dhcp01.pn.xcllnt.net (localhost [127.0.0.1]) by dhcp01.pn.xcllnt.net (8.12.6/8.12.6) with ESMTP id gAEJewRM000899; Thu, 14 Nov 2002 11:40:58 -0800 (PST) (envelope-from marcel@dhcp01.pn.xcllnt.net) Received: (from marcel@localhost) by dhcp01.pn.xcllnt.net (8.12.6/8.12.6/Submit) id gAEJewSG000898; Thu, 14 Nov 2002 11:40:58 -0800 (PST) (envelope-from marcel) Date: Thu, 14 Nov 2002 11:40:58 -0800 From: Marcel Moolenaar To: Doug Rabson Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/lib/libc/ia64/gen _setjmp.S Message-ID: <20021114194057.GA856@dhcp01.pn.xcllnt.net> References: <200211140640.gAE6eNq9016231@repoman.freebsd.org> <200211141009.45000.dfr@nlsystems.com> <20021114181340.GA603@dhcp01.pn.xcllnt.net> <1037298535.19149.8.camel@builder02.qubesoft.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1037298535.19149.8.camel@builder02.qubesoft.com> User-Agent: Mutt/1.5.1i 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 Thu, Nov 14, 2002 at 06:28:55PM +0000, Doug Rabson wrote: > > > > Why do you need a flushrs in longjmp() anyway? > > All you really need to achieve is that ar.bsp equals ar.bspstore > > before you set ar.bspstore, right? > > (note that the loadrs is missing a cover or an alloc) > > You would need a flushrs if you really wanted to use longjmp for thread > switching, otherwise you would lose the stacked registers of the thread > you were switching away from. But you need a setjmp to save that context, right? How would you otherwise return to the thread? > > It's good to eventually optimize setjmp/longjmp for the common case, > > but at this time it's all we have and I think we'd better focus on > > being functionally complete. > > I don't think thread switching is (should be) part of the functional > specification of setjmp/longjmp. I don't disagree, but deischen's swapcontext stuff is not here yet and not having libc_r is hurting now. -- Marcel Moolenaar USPA: A-39004 marcel@xcllnt.net To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message