PR middle-end/79665
commit039172063feaf8617a93da0087cd8f4651914ebf
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 23 Feb 2017 07:49:06 +0000 (23 07:49 +0000)
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 23 Feb 2017 07:49:06 +0000 (23 07:49 +0000)
treec83ce2682d44020d9ccc173ce01b86a17929c8a2
parent214f77eca6a3c5bfe1bb2689ec82b3dd80b645bf
PR middle-end/79665
* internal-fn.c (get_range_pos_neg): Moved to ...
* tree.c (get_range_pos_neg): ... here.  No longer static.
* tree.h (get_range_pos_neg): New prototype.
* expr.c (expand_expr_real_2) <case TRUNC_DIV_EXPR>: If both arguments
are known to be in between 0 and signed maximum inclusive, try to
expand both unsigned and signed divmod and use the cheaper one from
those.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@245676 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/expr.c
gcc/internal-fn.c
gcc/tree.c
gcc/tree.h