From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12488 invoked by alias); 4 Oct 2007 00:02:19 -0000 Received: (qmail 12333 invoked by uid 48); 4 Oct 2007 00:01:58 -0000 Date: Thu, 04 Oct 2007 00:02:00 -0000 Message-ID: <20071004000158.12332.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug middle-end/16660] attribute((aligned)) doesn't work for variables on the stack for greater than required alignement In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "hjl at lucon dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2007-10/txt/msg00282.txt.bz2 ------- Comment #12 from hjl at lucon dot org 2007-10-04 00:01 ------- (In reply to comment #11) > This only helps x86 really. If you look at my patch, it already implements > (correctly) handling large cases like 128byte alignment (which people use with > the Cell). What you are proposing will cause more stack to be used than > actually required and more complex for the normal case. If you look at my > patch, you will see it handles 1-4 issues nicely without any problems (because > the stack itself is not realigned). Oh on PPC, the stack pointer has to be > correct so you cannot use frame pointer to be the old stack pointer. Does your patch handle register spill which needs a larger alignment? What is the impact of your approach on performance when stack alignment is needed for local variable as well as register spill? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16660