This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug regression/59320] ftree-vrp breaks simple loops


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59320

--- Comment #9 from David Kaufmann <astra at ionic dot at> ---
(In reply to Joost VandeVondele from comment #7)
> (In reply to David Kaufmann from comment #5)
> > Created attachment 31320 [details]
> > preprocessor output
> > the buggy function is on line 18136, but it does not seem to have been
> > changed.
> 
> static unsigned char dash_list[16][2]
> static int ndash_dot = 4;
> nd=ndash_dot;
> for (il =0; il<nd; il ++){
> dash_list[op][il] = ...
> }
> so clearly il<nd == 1

i am not sure, that probably is another bug. (as dash_list[op]-size is only
two, but dash_list[op][0], dash_list[op][1] and dash_list[op][3] get set.)

however, gdb says it crashes on line 1401:
1401:          if (fl[il] != 0.) {

from the backtrace it can be seen that il somehow is 441896, if i do a printf
on il it shows il counting up from 0 up to approx 448000, then it segfaults.

Also, as this is happening only with -O2 (and with -O1 -ftree-vrp) but not with
-O1, so i suspect some weird behavior in -ftree-vrp.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]