From owner-freebsd-current@FreeBSD.ORG Wed Feb 25 12:12:25 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C77C416A4CE; Wed, 25 Feb 2004 12:12:25 -0800 (PST) Received: from ns1.xcllnt.net (209-128-86-226.bayarea.net [209.128.86.226]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9FC0043D2F; Wed, 25 Feb 2004 12:12:25 -0800 (PST) (envelope-from marcel@xcllnt.net) Received: from ns1.xcllnt.net (localhost [127.0.0.1]) by ns1.xcllnt.net (8.12.10/8.12.10) with ESMTP id i1PKBsOE059045; Wed, 25 Feb 2004 12:11:54 -0800 (PST) (envelope-from marcel@ns1.xcllnt.net) Received: (from marcel@localhost) by ns1.xcllnt.net (8.12.10/8.12.10/Submit) id i1PKBsKD059044; Wed, 25 Feb 2004 12:11:54 -0800 (PST) (envelope-from marcel) Date: Wed, 25 Feb 2004 12:11:54 -0800 From: Marcel Moolenaar To: "David O'Brien" , Alexander Kabaev , Julian Elischer , FreeBSD current users Message-ID: <20040225201154.GD58866@ns1.xcllnt.net> References: <20040225174522.GC58071@ns1.xcllnt.net> <20040225130455.672f28f6@kanpc.gte.com> <20040225180922.GB58265@ns1.xcllnt.net> <20040225182038.GD7567@dragon.nuxi.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20040225182038.GD7567@dragon.nuxi.com> User-Agent: Mutt/1.5.5.1i Subject: Re: TLS, Thread Local Storage.. X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 Feb 2004 20:12:25 -0000 On Wed, Feb 25, 2004 at 10:20:38AM -0800, David O'Brien wrote: > On Wed, Feb 25, 2004 at 10:09:22AM -0800, Marcel Moolenaar wrote: > > Ok. I assume this applies to i386 and amd64 only and that alpha and > > sparc64 still lack compiler support for it or are alpha and sparc64 > > fixed too? > > http://people.freebsd.org/~marcel/tls.html says nothing special is needed > for Alpha. Can you clarify? Bad wording. The compiler does not generate any thread-local access sequences when it should. The compiler seems to ignore the __thread keyword and pretend the variable is global. That's pretty much the same kind of support as on sparc64, except that on sparc64 the compiler emits an error for __thread. So, on alpha the compiler needs to be enhanced to emit thread-local access sequences. I'll make the page more clear. -- Marcel Moolenaar USPA: A-39004 marcel@xcllnt.net