From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29774 invoked by alias); 19 Nov 2009 18:34:12 -0000 Received: (qmail 29766 invoked by uid 22791); 19 Nov 2009 18:34:12 -0000 X-SWARE-Spam-Status: No, hits=-2.3 required=5.0 tests=AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from hrndva-omtalb.mail.rr.com (HELO hrndva-omtalb.mail.rr.com) (71.74.56.123) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 19 Nov 2009 18:33:08 +0000 Received: from [192.168.23.10] (really [74.67.89.75]) by hrndva-omta01.mail.rr.com with ESMTP id <20091119183306480.JJUZ4786@hrndva-omta01.mail.rr.com>; Thu, 19 Nov 2009 18:33:06 +0000 Subject: Re: BUG: GCC-4.4.x changes the function frame on some functions From: Steven Rostedt Reply-To: rostedt@goodmis.org To: Andrew Haley Cc: Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , LKML , Andrew Morton , Heiko Carstens , feng.tang@intel.com, Fr??d??ric Weisbecker , Peter Zijlstra , jakub@redhat.com, gcc@gcc.gnu.org In-Reply-To: <4B058C76.9090609@redhat.com> References: <20091119072040.GA23579@elte.hu> <4B058C76.9090609@redhat.com> Content-Type: text/plain Date: Thu, 19 Nov 2009 18:34:00 -0000 Message-Id: <1258655585.22249.751.camel@gandalf.stny.rr.com> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2009-11/txt/msg00511.txt.bz2 On Thu, 2009-11-19 at 18:20 +0000, Andrew Haley wrote: > OK, I found it. There is a struct defined as > > struct entry { > ... > } __attribute__((__aligned__((1 << (4))))); > > and then in timer_stats_update_stats you have a local variable of type > struct entry: > > void timer_stats_update_stats() > { > spinlock_t *lock; > struct entry *entry, input; > > So, gcc has to 16-align the stack pointer to satisfy the alignment > for struct entry. It has to align the entire stack? Why not just the variable within the stack? -- Steve