[Bug middle-end/38932] ICE in set_value_range, at tree-vrp.c:398

pinskia at gmail dot com gcc-bugzilla@gcc.gnu.org
Thu Jan 22 09:17:00 GMT 2009



------- 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-bugzilla@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



More information about the Gcc-bugs mailing list