This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/37512] Useless instructions in member call by pointer
- From: "9ugsa9j02 at sneakemail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 14 Sep 2008 11:17:31 -0000
- Subject: [Bug rtl-optimization/37512] Useless instructions in member call by pointer
- References: <bug-37512-8546@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #2 from 9ugsa9j02 at sneakemail dot com 2008-09-14 11:17 -------
Subject: Re: Useless instructions in member call
by pointer
pinskia at gcc dot gnu dot org gcc-bugzilla-at-gcc.gnu.org |Forums| wrote:
> ------- Comment #1 from pinskia at gcc dot gnu dot org 2008-09-14 02:01 -------
> Fixed on the trunk by the new register allocator (IRA):
> __Z6callfnP1AMS_FvvE:
> LFB0:
> pushq %rbp
> LCFI0:
> testb $1, %sil
> movq %rsi, %r11
> movq %rsp, %rbp
> LCFI1:
> movq %rsi, -16(%rbp) <--- ?
> movq %rdx, -8(%rbp) <--- ?
> je L3
> movq (%rdi,%rdx), %rax
> movq -1(%rsi,%rax), %r11
> L3:
> addq %rdx, %rdi
> leave
> jmp *%r11
Ok, so that fixes the extra register store. Why is it still creating a
stack temporary?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37512