diff options
author | James E Wilson <wilson@specifixinc.com> | 2003-11-11 20:54:38 +0000 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 2003-11-11 12:54:38 -0800 |
commit | 0b69c29f22d08dba08c8913e2f4778d14d64e239 (patch) | |
tree | 0a648267a26f2ea2e72eb46f836e98ba14c3b1f9 /gcc/expmed.c | |
parent | 5b84be73837bd61dc88a7a76fd68f90440dc2e49 (diff) | |
download | gcc-0b69c29f22d08dba08c8913e2f4778d14d64e239.tar.gz |
Undo accidental GET_MODE_BITSIZE damage.
(store_bit_field, extract_bit_field): Revert last two
changes.
From-SVN: r73463
Diffstat (limited to 'gcc/expmed.c')
-rw-r--r-- | gcc/expmed.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/gcc/expmed.c b/gcc/expmed.c index cb30ff35db6..d93be934be3 100644 --- a/gcc/expmed.c +++ b/gcc/expmed.c @@ -326,17 +326,13 @@ store_bit_field (rtx str_rtx, unsigned HOST_WIDE_INT bitsize, If the target is memory, storing any naturally aligned field can be done with a simple store. For targets that support fast unaligned - memory, any naturally sized, unit aligned field can be done directly. - - It's okay if the requested bitsize is greater than fieldmode's - bitsize; that just means the mode has padding bits. */ + memory, any naturally sized, unit aligned field can be done directly. */ byte_offset = (bitnum % BITS_PER_WORD) / BITS_PER_UNIT + (offset * UNITS_PER_WORD); if (bitpos == 0 - && GET_MODE_BITSIZE (fieldmode) != 0 - && bitsize >= GET_MODE_BITSIZE (fieldmode) + && bitsize == GET_MODE_BITSIZE (fieldmode) && (GET_CODE (op0) != MEM ? ((GET_MODE_SIZE (fieldmode) >= UNITS_PER_WORD || GET_MODE_SIZE (GET_MODE (op0)) == GET_MODE_SIZE (fieldmode)) @@ -1033,12 +1029,9 @@ extract_bit_field (rtx str_rtx, unsigned HOST_WIDE_INT bitsize, if (GET_CODE (op0) == REG && mode == GET_MODE (op0) && bitnum == 0 - && GET_MODE_BITSIZE (GET_MODE (op0)) != 0 - && bitsize >= GET_MODE_BITSIZE (GET_MODE (op0))) + && bitsize == GET_MODE_BITSIZE (GET_MODE (op0))) { - /* We're trying to extract a full register from itself. - (If the requested bitsize is greater than the bitsize of op0, - that just means op0's mode has padding bits.) */ + /* We're trying to extract a full register from itself. */ return op0; } |