diff options
author | Paul Eggert <[email protected]> | 2011-05-23 18:20:04 -0700 |
---|---|---|
committer | Paul Eggert <[email protected]> | 2011-05-23 18:20:04 -0700 |
commit | c8a9ca5a6456e7d0ec9577493d5110b692b818bf (patch) | |
tree | 7c22b6cbed8d77bda8144bd6d1b57de58ef8483b /src/data.c | |
parent | 519e1d69210be09fc3d541ad3c086c1521f23f26 (diff) |
* data.c (arith_driver, Flsh): Avoid unnecessary casts to EMACS_UINT.
Diffstat (limited to 'src/data.c')
-rw-r--r-- | src/data.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/data.c b/src/data.c index 073fb0d492..ce0e8e40f5 100644 --- a/src/data.c +++ b/src/data.c @@ -2494,8 +2494,9 @@ arith_driver (enum arithop code, size_t nargs, register Lisp_Object *args) case Amult: if (INT_MULTIPLY_OVERFLOW (accum, next)) { + EMACS_UINT a = accum, b = next, ab = a * b; overflow = 1; - accum = (EMACS_UINT) accum * (EMACS_UINT) next & INTMASK; + accum = ab & INTMASK; } else accum *= next; @@ -2792,11 +2793,11 @@ In this case, zeros are shifted in on the left. */) if (XINT (count) >= BITS_PER_EMACS_INT) XSETINT (val, 0); else if (XINT (count) > 0) - XSETINT (val, (EMACS_UINT) XUINT (value) << XFASTINT (count)); + XSETINT (val, XUINT (value) << XFASTINT (count)); else if (XINT (count) <= -BITS_PER_EMACS_INT) XSETINT (val, 0); else - XSETINT (val, (EMACS_UINT) XUINT (value) >> -XINT (count)); + XSETINT (val, XUINT (value) >> -XINT (count)); return val; } |