------- Comment #4 from sebastian dot pop at cri dot ensmp dot fr 2005-10-12 16:26 ------- Subject: Re: [4.1 Regression] ICE: verify_ssa failed with -O -msse2 -ftree-vectorize
irar at il dot ibm dot com wrote: > Here scev analyzer calculates the evolution of 'D.1703_5 * 2 + i_15', > where 'D.1703_5 = i_15/2'. Scev doesn't handle division, therefore > for D.1703_5 we get unknown scev, but then it's combined with the > rest of the expression, erroneously leading to {D.1703_5*2, +, 1}. > I don't follow: "unknown + something" should be folded into "unknown", not {D.1703_5*2, +, 1}_x: if D.1703_5 is defined in loop_x, it potentially has an evolution in loop_x. I'm thinking that a test: if (!expr_invariant_in_loop_p (loop, CHREC_LEFT (chrec))) then give up with this case, would solve this bug. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24262