From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bernd Schmidt Subject: Re: gcc inlining heuristics was Re: [PATCH -v7][RFC]: mutex: implement adaptive spinning Date: Mon, 12 Jan 2009 19:06:45 +0100 Message-ID: <496B86B5.3090707@t-online.de> References: <1231676801.25018.150.camel@macbook.infradead.org> <20090111181307.GM26290@one.firstfloor.org> <20090111201427.GP26290@one.firstfloor.org> <1231704939.25018.548.camel@macbook.infradead.org> <20090111203441.GQ26290@one.firstfloor.org> <20090112001255.GR26290@one.firstfloor.org> <20090112005228.GS26290@one.firstfloor.org> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: Linus Torvalds , David Woodhouse , Andrew Morton , Ingo Molnar , Harvey Harrison , "H. Peter Anvin" , Chris Mason , Peter Zijlstra , Steven Rostedt , paulmck@linux.vnet.ibm.com, Gregory Haskins , Matthew Wilcox , Linux Kernel Mailing List , linux-fsdevel , linux-btrfs , Thomas Gleixner , Nick Piggin , Peter Morreale , Sven Dietrich , jh@suse.cz To: Andi Kleen Return-path: Received: from mailout01.t-online.de ([194.25.134.80]:50164 "EHLO mailout01.t-online.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752782AbZALSsl (ORCPT ); Mon, 12 Jan 2009 13:48:41 -0500 In-Reply-To: <20090112005228.GS26290@one.firstfloor.org> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: Andi Kleen wrote: > On Sun, Jan 11, 2009 at 04:21:03PM -0800, Linus Torvalds wrote: >> >> On Mon, 12 Jan 2009, Andi Kleen wrote: >>> so at least least for this case it works. Your case also doesn't work >>> for me. So it looks like gcc didn't like something you did in your test >>> program. >> I very intentionally used _different_ types. >> >> If you use the same type, gcc will apparenrly happily say "hey, I can >> combine two variables of the same type with different liveness into the >> same variable". > > Confirmed. > >> But that's not the interesting case. > > Weird. I wonder where this strange restriction comes from. Something at the back of my mind said "aliasing". $ gcc linus.c -O2 -S ; grep subl linus.s subl $1624, %esp $ gcc linus.c -O2 -S -fno-strict-aliasing; grep subl linus.s subl $824, %esp That's with 4.3.2. Bernd -- This footer brought to you by insane German lawmakers. Analog Devices GmbH Wilhelm-Wagenfeld-Str. 6 80807 Muenchen Sitz der Gesellschaft Muenchen, Registergericht Muenchen HRB 40368 Geschaeftsfuehrer Thomas Wessel, William A. Martin, Margaret Seif