https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81082

--- Comment #12 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Fri Jan 26 10:30:36 2018
New Revision: 257077

URL: https://gcc.gnu.org/viewcvs?rev=257077&root=gcc&view=rev
Log:
2018-01-26  Richard Biener  <rguent...@suse.de>

        PR tree-optimization/81082
        * fold-const.c (fold_plusminus_mult_expr): Do not perform the
        association if it requires casting to unsigned.
        * match.pd ((A * C) +- (B * C) -> (A+-B)): New patterns derived
        from fold_plusminus_mult_expr to catch important cases late when
        range info is available.

        * gcc.dg/vect/pr81082.c: New testcase.
        * gcc.dg/tree-ssa/loop-15.c: XFAIL the (int)((unsigned)n + -1U) * n + n
        simplification to n * n.

Added:
    trunk/gcc/testsuite/gcc.dg/vect/pr81082.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/fold-const.c
    trunk/gcc/match.pd
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.dg/tree-ssa/loop-15.c

Reply via email to