On Fri, Oct 31, 2014 at 2:07 PM, Richard Biener <richard.guent...@gmail.com> wrote: > This implements the last pattern from fold_unary that covers > inputs that can come from a GIMPLE_UNARY_RHS assignment > and thus allows removal of the fold_unary dispatch from fold_stmt > and gimple_fold_stmt_to_constant_1. Remember that to not cause > regressions it is enough to cover cases that do not need SSA > name use-def following. Also remember that gimple_simplify > still dispatches to fold_unary for all tcc_constant operands. > > The next goal is obviously to remove the GIMPLE_BINARY_RHS and > GIMPLE_TERNARY_RHS dispatches to fold_binary/ternary. > > Bootstrapped on x86_64-unknown-linux-gnu, testing in progress.
The following is what I applied. Bootstrapped and tested on x86_64-unknown-linux-gnu. Richard. 2014-11-03 Richard Biener <rguent...@suse.de> * match.pd: Add two abs patterns. Announce tree_expr_nonnegative_p. Also drop bogus FLOAT_EXPR and FIX_TRUNC_EXPR. * fold-const.c (fold_unary_loc): Remove them here. (tree_unary_nonnegative_warnv_p): Use CASE_CONVERT. * gimple-fold.c (fold_gimple_assign): Remove now obsolete GIMPLE_UNARY_RHS case. (gimple_fold_stmt_to_constant_1): Likewise. (replace_stmt_with_simplification): Fix inverted comparison.
mas-merge-10
Description: Binary data