This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/55247] [4.8 Regression] internal compiler error: Max. number of generated reload insns per insn is achieved (90)
- From: "hjl.tools at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Sat, 10 Nov 2012 19:11:03 +0000
- Subject: [Bug rtl-optimization/55247] [4.8 Regression] internal compiler error: Max. number of generated reload insns per insn is achieved (90)
- Auto-submitted: auto-generated
- References: <bug-55247-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55247
--- Comment #13 from H.J. Lu <hjl.tools at gmail dot com> 2012-11-10 19:11:03 UTC ---
(In reply to comment #12)
> (In reply to comment #11)
> > ~/gcc-build/gcc/cc1 -O2 -mx32 -maddress-mode=long pr55247.c
> >
> > results in following sequence:
> >
> > movdqu (%eax), %xmm0
> > movdqa %xmm0, (%rsp)
> > movq (%rsp), %rax
> > movq 8(%rsp), %rdx
> > movq %rax, 16(%rsp)
> > movq %rdx, 24(%rsp)
> >
> > while -maddress=mode=short produces expected code:
> >
> > movq 8(%eax), %rdx
> > movq (%eax), %rax
> > movq %rdx, 8(%esp)
> > movq %rax, (%esp)
>
> This is related to PR 55259. This patch:
>
> http://gcc.gnu.org/ml/gcc-patches/2012-11/msg00799.html
>
> fixes it.
With this fix, we don't need to change *movti_internal_rex64
since it generates redundant load/store.