------- Comment #2 from pinskia at gcc dot gnu dot org 2007-04-26 09:05 ------- So the range in an semi-old (3 days) compiler, we get is: D.1602_2: VARYING D.1602_3: [-32768, -32768] EQUIVALENCES: { D.1602_2 D.1602_8 } (2 elements) D.1603_4: [-INF(OVF), -32768] EQUIVALENCES: { } (0 elements) D.1602_8: [-32768, -32768] EQUIVALENCES: { D.1602_2 } (1 elements)
Well obviously the recent patch to tree-vrp.c (which was also applied to the 4.2 branch) caused this failure as we are checking for overflow in some cases. I always said the patch should never have been applied to the 4.2 branch without a lot more testing. -- pinskia at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ian at gcc dot gnu dot org Severity|normal |blocker GCC build triplet|x86_64-unknown-linux-gnu | GCC host triplet|x86_64-unknown-linux-gnu | GCC target triplet|x86_64-unknown-linux-gnu | Keywords| |ice-checking, ice-on-valid- | |code Summary|ICE in in set_value_range, |[4.2/4.3 Regression] ICE in |at tree-vrp.c:278 |in set_value_range, at tree- | |vrp.c:278 Target Milestone|--- |4.2.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31710