public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/37990] New: -Os produces redundant instructions
@ 2008-11-01 21:26 reza at parvan dot net
2008-11-02 10:34 ` [Bug c/37990] " rguenth at gcc dot gnu dot org
2008-11-02 11:03 ` reza at parvan dot net
0 siblings, 2 replies; 3+ messages in thread
From: reza at parvan dot net @ 2008-11-01 21:26 UTC (permalink / raw)
To: gcc-bugs
DESCRIPTION:
----------------------------------------
Simple test case is below.
There is redundant stack manipulation in the assembly output.
Use gcc -Wall -Os -S test.c
-----------------------------------------
VERSION INFO:
----------------------------------
gcc -v
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v
--enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr
--enable-shared --with-system-zlib --libexecdir=/usr/lib
--without-included-gettext --enable-threads=posix --enable-nls
--program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu
--enable-libstdcxx-debug --enable-mpfr --enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5)
-----------------------------------
SOURCE CODE:
----------------------------------
extern int ii(int i);
void
mm()
{
int i=99;
more:
i = ii(i);
goto inc;
inc:
if(i==0)
goto more;
i++;
goto more;
}
---------------------------------------
--
Summary: -Os produces redundant instructions
Product: gcc
Version: 4.1.2
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: reza at parvan dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37990
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug c/37990] -Os produces redundant instructions
2008-11-01 21:26 [Bug c/37990] New: -Os produces redundant instructions reza at parvan dot net
@ 2008-11-02 10:34 ` rguenth at gcc dot gnu dot org
2008-11-02 11:03 ` reza at parvan dot net
1 sibling, 0 replies; 3+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-11-02 10:34 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from rguenth at gcc dot gnu dot org 2008-11-02 10:33 -------
What exactly do you mean with redundant stack manipulation? Note that the
ABI requires the stack to be aligned properly at function entry which makes
stack adjustment necessary before the call. Note also that you can use
-maccumulate-outgoing-args to reduce the number of stack operations, but that
may cause bigger code in some cases.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37990
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug c/37990] -Os produces redundant instructions
2008-11-01 21:26 [Bug c/37990] New: -Os produces redundant instructions reza at parvan dot net
2008-11-02 10:34 ` [Bug c/37990] " rguenth at gcc dot gnu dot org
@ 2008-11-02 11:03 ` reza at parvan dot net
1 sibling, 0 replies; 3+ messages in thread
From: reza at parvan dot net @ 2008-11-02 11:03 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from reza at parvan dot net 2008-11-02 11:01 -------
Arrrg! I'm very sorry. Please ignore this bug report.
I'll change the status to INVALID if that's okay.
Thanks for your response.
Reza.
--
reza at parvan dot net changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |INVALID
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37990
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2008-11-02 11:03 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-11-01 21:26 [Bug c/37990] New: -Os produces redundant instructions reza at parvan dot net
2008-11-02 10:34 ` [Bug c/37990] " rguenth at gcc dot gnu dot org
2008-11-02 11:03 ` reza at parvan dot net
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).