This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/39002] [4.4 Regression] codegen bug, stack pointer is not restored
- From: "ktietz at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 29 Jan 2009 14:04:55 -0000
- Subject: [Bug target/39002] [4.4 Regression] codegen bug, stack pointer is not restored
- References: <bug-39002-11564@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #26 from ktietz at gcc dot gnu dot org 2009-01-29 14:04 -------
(In reply to comment #25)
> Can't reproduce that with a cross compiler.
You are right, I changed something else, too. Sorry.
But this patch to expand_epilogue is proper IIUC
Comment tells
"If we're only restoring one register and sp is not valid then using a move
instruction to restore the register since it's less work than reloading sp and
popping the register." ...
for w64 the can be more then one register in use but the check in the if
doesn't verify this, and produces therefore slower code.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39002