This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/25371] -ftree-vectorize results in internal compiler error on AMD64
- From: "spop at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 8 May 2007 20:19:07 -0000
- Subject: [Bug tree-optimization/25371] -ftree-vectorize results in internal compiler error on AMD64
- References: <bug-25371-11859@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #7 from spop at gcc dot gnu dot org 2007-05-08 21:19 -------
Subject: Re: -ftree-vectorize results in internal compiler error on AMD64
On 5/8/07, Sjodin, Jan <Jan.Sjodin@amd.com> wrote:
> > Okay, I looked at the code, and the problem is that we have to pass to
> > force_gimple_operand an expression that is not a chain of recurrence,
> > ie. a real expression that can be used to be decomposed in 3 addr code
> > by the gimplifier.
>
> Thanks! That was the answer I was looking for. Sounds like the
> vectorizer is biting off more than it can chew :) Perhaps there is a
> check missing for chrecs somewhere.
Yes, I also think that the quick fix is to add to the vectorizer the missing
checks for simple enough expressions.
I went back to look at the testcase, and I saw these nested loops,
and we are trying to vectorize the innermost ones. So for avoiding a
failed vectorization, and making the vectorizer to produce the right code,
we want to generate some code for the base address in the outer loop.
Sebastian
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25371