* fold-const.c (int_const_binop_1): Abstract...
commitb8c83ca39abf840e772078e38b33a0fb4781ebbc
authoraldyh <aldyh@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 16 Jul 2018 06:49:39 +0000 (16 06:49 +0000)
committeraldyh <aldyh@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 16 Jul 2018 06:49:39 +0000 (16 06:49 +0000)
tree4ab834e2c0791a891484a44e2e4d8ae246f635c7
parenta74ad5764707d0880112678b70f386daea278f09
    * fold-const.c (int_const_binop_1): Abstract...
        (wide_int_binop): ...wide int code here.
(poly_int_binop): ...poly int code here.
(tree_binop): ...tree code here.
        * fold-const.h (wide_int_binop): New.
        * tree-vrp.c (vrp_int_const_binop): Call wide_int_binop.
Remove useless PLUS/MINUS_EXPR case.
        (zero_nonzero_bits_from_vr): Move wide int code...
        (zero_nonzero_bits_from_bounds): ...here.
        (extract_range_from_binary_expr_1): Move mask optimization code...
        (range_easy_mask_min_max): ...here.
        * tree-vrp.h (zero_nonzero_bits_from_bounds): New.
        (range_easy_mask_min_max): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@262676 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/fold-const.c
gcc/fold-const.h
gcc/tree-vrp.c
gcc/tree-vrp.h