From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11725 invoked by alias); 1 Jun 2008 10:47:02 -0000 Received: (qmail 10672 invoked by uid 48); 1 Jun 2008 10:46:19 -0000 Date: Sun, 01 Jun 2008 10:47:00 -0000 Subject: [Bug rtl-optimization/36409] New: Additional instructions in prologue and epilogue. X-Bugzilla-Reason: CC Message-ID: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "ramana at icerasemi dot com" 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: 2008-06/txt/msg00015.txt.bz2 Stack space creation instructions in prologue and epilogue don't get deleted. foo: sub sp, sp, #8 --> Unnecessary mov r3, #0 add sp, sp, #8 --> Unnecessary str r3, [r0] struct Foo { int *p; int *q; }; void __attribute__((noinline)) foo(struct Foo f) { *f.p = 0; } This appears to be due to get_frame_size returning the size of the incoming parameters being 8 bytes in the backend . -- Summary: Additional instructions in prologue and epilogue. Product: gcc Version: 4.3.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ramana at icerasemi dot com GCC host triplet: i686-linux GCC target triplet: arm-none-eabi http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36409