From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate.crashing.org (gate.crashing.org [63.228.1.57]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 83E0DB7CEF for ; Tue, 16 Feb 2010 06:59:58 +1100 (EST) Subject: Re: register long sp asm("r1") incorrect From: Benjamin Herrenschmidt To: Pavel Machek In-Reply-To: <20100215073405.GB20456@atrey.karlin.mff.cuni.cz> References: <20100209152444.GA30176@atrey.karlin.mff.cuni.cz> <1265866273.16346.34.camel@pasglop> <20100215073405.GB20456@atrey.karlin.mff.cuni.cz> Content-Type: text/plain; charset="UTF-8" Date: Tue, 16 Feb 2010 06:59:52 +1100 Message-ID: <1266263992.16346.125.camel@pasglop> Mime-Version: 1.0 Cc: linuxppc-dev@ozlabs.org, paulus@samba.org, kernel list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , On Mon, 2010-02-15 at 08:34 +0100, Pavel Machek wrote: > > On Tue, 2010-02-09 at 16:24 +0100, Pavel Machek wrote: > > > ...according to gcc docs, sp should be global, or placement in > > > register is not guaranteed (except at asm boundaries, but there > are > > > none). > > > > Sorry I'm not sure I grok what you mean. > > Well, according to gcc doscs and my experience, local "register int > __asm()" variables only work by accident (or not at all). Hrm... we definitely rely on that for our thread_info() access, and so far it has worked well for us, but I'll poke our gcc folks just in case. Cheers, Ben.