------- Comment #4 from rguenth at gcc dot gnu dot org  2007-04-10 13:39 -------
I don't see the warning, but the range with overflow is derived from
vrp_visit_phi_node where we fall back to +INF(OVF) from [1, 536870911] because

  /* To prevent infinite iterations in the algorithm, derive ranges
     when the new value is slightly bigger or smaller than the
     previous one.  */ 

but why exactly do we care bout overflow infinities there at all (apart from
if the new max/min are overflowed)?  Instead we throw away overflowed (and
not overflowed) infinites dropping to VARYING.  Strange....

(of course the whole block preventing inifinite iterations is pessimizing
some cases which is why I introduced all_const -- we might use
all_or_all_but_one_const here ;))


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2007-04-10 13:39:22
               date|                            |


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

Reply via email to