https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79665
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Author: jakub Date: Thu Feb 23 07:49:06 2017 New Revision: 245676 URL: https://gcc.gnu.org/viewcvs?rev=245676&root=gcc&view=rev Log: 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. Modified: trunk/gcc/ChangeLog trunk/gcc/expr.c trunk/gcc/internal-fn.c trunk/gcc/tree.c trunk/gcc/tree.h