diff options
author | mrs <mrs@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-09-20 23:01:12 +0000 |
---|---|---|
committer | mrs <mrs@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-09-20 23:01:12 +0000 |
commit | e1dfbe3090ccf6cfbc7275cfdfa38f71647de3ed (patch) | |
tree | 8c98991ecdce73acfe22e53e466031d83b2524c1 /gcc/loop-unroll.c | |
parent | 6f44b17da48973c9fe4f7b690879dd90bf8a8c90 (diff) | |
parent | 1b2bf75690af8115739ebba710a44d05388c7a1a (diff) | |
download | gcc-e1dfbe3090ccf6cfbc7275cfdfa38f71647de3ed.tar.gz |
Merge in trunk.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/wide-int@202802 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/loop-unroll.c')
-rw-r--r-- | gcc/loop-unroll.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/gcc/loop-unroll.c b/gcc/loop-unroll.c index 0b46f1d8399..b2587bb6aee 100644 --- a/gcc/loop-unroll.c +++ b/gcc/loop-unroll.c @@ -1160,8 +1160,7 @@ unroll_loop_runtime_iterations (struct loop *loop) the number of unrollings is a power of two, and thus this is correct even if there is overflow in the computation. */ niter = expand_simple_binop (desc->mode, AND, - niter, - GEN_INT (max_unroll), + niter, gen_int_mode (max_unroll, desc->mode), NULL_RTX, 0, OPTAB_LIB_WIDEN); init_code = get_insns (); @@ -1304,7 +1303,7 @@ unroll_loop_runtime_iterations (struct loop *loop) gcc_assert (!desc->const_iter); desc->niter_expr = simplify_gen_binary (UDIV, desc->mode, old_niter, - GEN_INT (max_unroll + 1)); + gen_int_mode (max_unroll + 1, desc->mode)); loop->nb_iterations_upper_bound = wi::udiv_trunc (loop->nb_iterations_upper_bound, max_unroll + 1); if (loop->any_estimate) |