From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5672 invoked by alias); 15 Jan 2009 15:08:22 -0000 Received: (qmail 5619 invoked by uid 48); 15 Jan 2009 15:08:10 -0000 Date: Thu, 15 Jan 2009 15:08:00 -0000 Message-ID: <20090115150810.5618.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug middle-end/37843] [4.4 Regression] unaligned stack in main due to tail call optimization In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "jakub at gcc dot gnu 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: 2009-01/txt/msg01602.txt.bz2 ------- Comment #23 from jakub at gcc dot gnu dot org 2009-01-15 15:08 ------- Please s/incomoing/incoming/g in the patch. Otherwise the patch makes a lot of sense to me. As INCOMING_STACK_BOUNDARY is used not only in expand_stack_alignment, but also in 386's targetm.function_ok_for_sibcall (and i386 is the only target that has variable INCOMING_STACK_BOUNDARY ATM). This target hook is called from expand_call, indirectly from expand_gimple_basic_block. expand_stack_alignment is called after all the expand_gimple_basic_block calls, and the patch moves INCOMING_STACK_BOUNDARY initialization before those calls. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37843