Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756178AbZALSsz (ORCPT ); Mon, 12 Jan 2009 13:48:55 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753324AbZALSsm (ORCPT ); Mon, 12 Jan 2009 13:48:42 -0500 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 X-Greylist: delayed 1003 seconds by postgrey-1.27 at vger.kernel.org; Mon, 12 Jan 2009 13:48:40 EST Message-ID: <496B86B5.3090707@t-online.de> Date: Mon, 12 Jan 2009 19:06:45 +0100 From: Bernd Schmidt User-Agent: Thunderbird 2.0.0.19 (X11/20090102) MIME-Version: 1.0 To: Andi Kleen 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 Subject: Re: gcc inlining heuristics was Re: [PATCH -v7][RFC]: mutex: implement adaptive spinning 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> In-Reply-To: <20090112005228.GS26290@one.firstfloor.org> X-Enigmail-Version: 0.95.7 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-ID: SrOp00ZHohbDhjgpFlG1cYfR+11mi1FpObY3P1APy+a6W+H3YoeVmx09K0Bq7r5Qcd X-TOI-MSGID: 425abeeb-39f7-4a5e-96dc-a5d566753528 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1381 Lines: 40 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 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/