summaryrefslogtreecommitdiff
path: root/gcc/expmed.c
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2013-11-10 10:08:45 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2013-11-10 10:08:45 +0000
commit7a3a929089997af03710c05de346ed5c0f512363 (patch)
tree4a86dc181ce18fc13b674a98ccfb29518ffe408c /gcc/expmed.c
parent55af3bae674945beea2845ed091e5ea341e8aabf (diff)
downloadgcc-7a3a929089997af03710c05de346ed5c0f512363.tar.gz
Various simplifications.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/wide-int@204624 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expmed.c')
-rw-r--r--gcc/expmed.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/expmed.c b/gcc/expmed.c
index f7303c9eab4..c3d773e1d9d 100644
--- a/gcc/expmed.c
+++ b/gcc/expmed.c
@@ -3652,7 +3652,7 @@ expand_smod_pow2 (enum machine_mode mode, rtx op0, HOST_WIDE_INT d)
modulus. By including the signbit in the operation, many targets
can avoid an explicit compare operation in the following comparison
against zero. */
- wide_int mask = wi::mask (logd, false, GET_MODE_PRECISION (mode));
+ wide_int mask = wi::mask (logd, false, prec);
mask = wi::set_bit (mask, prec - 1);
temp = expand_binop (mode, and_optab, op0,
@@ -3667,7 +3667,7 @@ expand_smod_pow2 (enum machine_mode mode, rtx op0, HOST_WIDE_INT d)
temp = expand_binop (mode, sub_optab, result, const1_rtx, result,
0, OPTAB_LIB_WIDEN);
- mask = wi::mask (logd, true, GET_MODE_PRECISION (mode));
+ mask = wi::mask (logd, true, prec);
temp = expand_binop (mode, ior_optab, temp,
immed_wide_int_const (mask, mode),
result, 1, OPTAB_LIB_WIDEN);