This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/52678] internal compiler error: in vect_update_ivs_after_vectorizer, at tree-vect-loop-manip.c:1842
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 23 Mar 2012 09:06:32 +0000
- Subject: [Bug tree-optimization/52678] internal compiler error: in vect_update_ivs_after_vectorizer, at tree-vect-loop-manip.c:1842
- Auto-submitted: auto-generated
- References: <bug-52678-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52678
--- Comment #2 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-03-23 09:06:32 UTC ---
I can reproduce the ICE, it's one of the more fragile areas of the
vectorizer...
Reduced testcase, ICEs at -O -ftree-vectorize -ffixed-form:
SUBROUTINE OpenAD_set_ref_state(DRF, RHOFACF, RHOFACC)
real(8) DRF(1 : 15)
real(8) RHOFACF(1 : 16)
real(8) RHOFACC(1 : 15)
integer, dimension(:), allocatable :: oad_it
integer :: oad_it_ptr
INTEGER(8) OpenAD_Symbol_188
INTEGER(4) K
OpenAD_Symbol_188 = 0
DO K = 2, 15, 1
RHOFACF(INT(K)) = ((RHOFACC(K) * DRF(K + (-1)) + RHOFACC(K +
+ (-1)) * DRF(K)) /(DRF(K) + DRF(K + (-1))))
OpenAD_Symbol_188 = (INT(OpenAD_Symbol_188) + INT(1))
END DO
oad_it(oad_it_ptr) = OpenAD_Symbol_188
end subroutine OpenAD_set_ref_state