aboutsummaryrefslogtreecommitdiff
path: root/gcc/expmed.c
diff options
context:
space:
mode:
authorRichard Stallman <rms@gnu.org>1993-10-18 20:17:08 +0000
committerRichard Stallman <rms@gnu.org>1993-10-18 20:17:08 +0000
commit733484b5d62fe6104f83bcc292caff83b0b14727 (patch)
treeb41b58b0759d1b269498fcafc58167d8fa929379 /gcc/expmed.c
parent6358b911d4105cda85ce9a1211e7cfc070742a20 (diff)
downloadgcc-733484b5d62fe6104f83bcc292caff83b0b14727.zip
gcc-733484b5d62fe6104f83bcc292caff83b0b14727.tar.gz
gcc-733484b5d62fe6104f83bcc292caff83b0b14727.tar.bz2
(extract_split_bit_field): Change shift count calculation
in little-endian case. From-SVN: r5794
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 bb22a05..9329833 100644
--- a/gcc/expmed.c
+++ b/gcc/expmed.c
@@ -1503,9 +1503,9 @@ extract_split_bit_field (op0, bitsize, bitpos, unsignedp, align)
part = expand_shift (LSHIFT_EXPR, word_mode, part,
build_int_2 (bitsize - bitsdone, 0), 0, 1);
#else
- if (bitsdone != 0)
+ if (bitsdone != thissize)
part = expand_shift (LSHIFT_EXPR, word_mode, part,
- build_int_2 (bitsdone, 0), 0, 1);
+ build_int_2 (bitsdone - thissize, 0), 0, 1);
#endif
if (first)