From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: In-Reply-To: References: <1174544624.10836.24.camel@localhost.localdomain> <94d8e19d4b061504fcfd08d1ab70cc78@kernel.crashing.org> <20070323120619.GA7472@localhost.localdomain> <94FD59E6-B618-4AB2-9BAB-D40A70CC1589@kernel.crashing.org> <1174679208.10836.71.camel@localhost.localdomain> <6df7c98b19ded7a8a006e375255e3c3f@kernel.crashing.org> Mime-Version: 1.0 (Apple Message framework v623) Content-Type: text/plain; charset=US-ASCII; format=flowed Message-Id: <2900f15414598ecb5ebb6845f6defe86@kernel.crashing.org> From: Segher Boessenkool Subject: Re: [PATCH] force -mno-string option on cell Date: Mon, 26 Mar 2007 14:33:07 +0200 To: Geert Uytterhoeven Cc: Arnd Bergmann , Akinobu Mita , linuxppc-dev list , Paul Mackerras , cbe-oss-dev@ozlabs.org List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , >>> strings instructions suck, get away with it. >> >> No they don't. >> >> End of this particular subthread I suppose, heh. > > Really? `They suck!' 'They don't!'... > > Ben: Why do they suck? > Segher: Why don't they suck? On most CPUs, they perform just fine, microcoded or not, in most circumstances (hint: the bottleneck is not at the decode stage). They can actually help because of improved code density. For CPUs where they do suck, GCC knows (or should know) preferably not to generate them. Like on CBE, where lswi causes a lovely 11-cycle bubble. But guess what, many more insns do so -- and we're not going to unconditionally add a compiler flag to every kernel build that prevents the compiler from generating "andi." insns I hope :-) Segher