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 tree-optimization/35787] [4.4 Regression]: Revision 133680 breaks 447.dealII



------- Comment #5 from rguenth at gcc dot gnu dot org  2008-04-01 23:00 -------
Subject: Bug 35787

Author: rguenth
Date: Tue Apr  1 22:59:21 2008
New Revision: 133808

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=133808
Log:
2008-04-02  Richard Guenther  <rguenther@suse.de>

        * tree-vrp.c (extract_range_from_assert): Make sure to not
        produce range min/max with TREE_OVERFOW set.
        If merging a anti-range and a range keep the anti-range if
        the range covers all values of the type.
        (register_edge_assert_for_2): Only allow sign-changing
        conversions in detecting canonical range checks.  Also
        register an assert for the unsigned name if useful.

        PR tree-optimization/35787
        * tree-vrp.c (vrp_val_max): New function.
        (vrp_val_min): Likewise.
        (vrp_val_is_max): Move earlier, use vrp_val_{min,max}.
        (vrp_val_is_min): Likewise.
        (supports_overflow_infinity): Use vrp_val_{min,max}.
        (negative_overflow_infinity): Likewise.
        (positive_overflow_infinity): Likewise.
        (is_negative_overflow_infinity): Use vrp_val_is_{min,max}.
        (is_positive_overflow_infinity): Likewise.
        (is_overflow_infinity): Likewise.
        (avoid_overflow_infinity): Use vrp_val_{min,max} and
        vrp_val_is_{min,max}.
        (set_and_canonicalize_value_range): Canonicalize anti-ranges
        to ranges if possible.  Avoid empty ranges.

        * gcc.dg/tree-ssa/vrp38.c: New testcase.
        * gcc.dg/tree-ssa/vrp39.c: Likewise.

Added:
    trunk/gcc/testsuite/gcc.dg/tree-ssa/vrp38.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/vrp39.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-vrp.c


-- 


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


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