------- Comment #5 from pinskia at gmail dot com 2009-01-22 09:17 ------- Subject: Re: ICE in set_value_range, at tree-vrp.c:398
Sent from my iPhone On Jan 22, 2009, at 1:00 AM, "bonzini at gnu dot org" <gcc-bugzi...@gcc.gnu.org > wrote: > > > ------- Comment #4 from bonzini at gnu dot org 2009-01-22 09:00 > ------- > In PRE there is a fold_convert_const_int_from_int call simplifying > "(signed > char) 249" to -7, but setting the TREE_OVERFLOW flag in the > meanwhile. I > don't think it makes sense to set the overflow flag on a NOP: Yes but changing that right now opens lots of bags of worms. It has been tried before. The simple way to fix this is in pre unset TREE_OVERFLOW because at this point in the IR it does not matter. I hope someone would change vrp to do the correct thing but I guess that won't happen any time soon. Thanks, Andrew Pinski > > > * `The result of, or the signal raised by, converting an integer > to a > signed integer type when the value cannot be represented in an > object of that type (C90 6.2.1.2, C99 6.3.1.3).' > > For conversion to a type of width N, the value is reduced modulo > 2^N to be within range of the type; no signal is raised. > > (Integers implementation, from the gcc manual). > > > -- > > bonzini at gnu dot org changed: > > What |Removed |Added > --- > --- > ---------------------------------------------------------------------- > CC| |rguenth at gcc dot > gnu dot > | |org > > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38932 > -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38932