diff options
author | David S. Miller <davem@pierdol.cobaltmicro.com> | 1998-10-02 20:17:50 +0000 |
---|---|---|
committer | David S. Miller <davem@gcc.gnu.org> | 1998-10-02 13:17:50 -0700 |
commit | 47401c4d4bb3b037324a314f183297502c1cb3d4 (patch) | |
tree | 1e6cb762a97fdda65888ebc52324fdf8bcfa92bb /gcc/function.c | |
parent | d01d29035e2120d46d44a9620b76c0d0825b260f (diff) | |
download | gcc-47401c4d4bb3b037324a314f183297502c1cb3d4.zip gcc-47401c4d4bb3b037324a314f183297502c1cb3d4.tar.gz gcc-47401c4d4bb3b037324a314f183297502c1cb3d4.tar.bz2 |
function.c (purge_addressof_1): Do not perform endianness corrections on bitpos, who we call will do it for us.
* function.c (purge_addressof_1): Do not perform endianness
corrections on bitpos, who we call will do it for us.
From-SVN: r22766
Diffstat (limited to 'gcc/function.c')
-rw-r--r-- | gcc/function.c | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/gcc/function.c b/gcc/function.c index d4f29db..41f400e 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -2879,21 +2879,8 @@ purge_addressof_1 (loc, insn, force, store) /* Do a bitfield insertion to mirror what would happen in memory. */ - int bitpos; rtx val, seq; - bitpos = 0; - if (WORDS_BIG_ENDIAN) - { - bitpos += (size_sub / BITS_PER_WORD) * BITS_PER_WORD; - bitpos -= (size_x / BITS_PER_WORD) * BITS_PER_WORD; - } - if (BYTES_BIG_ENDIAN) - { - bitpos += size_sub % BITS_PER_WORD; - bitpos -= size_x % BITS_PER_WORD; - } - if (store) { /* If we can't replace with a register, be afraid. */ @@ -2907,7 +2894,7 @@ purge_addressof_1 (loc, insn, force, store) emit_insn_before (seq, insn); start_sequence (); - store_bit_field (sub, size_x, bitpos, GET_MODE (x), + store_bit_field (sub, size_x, 0, GET_MODE (x), val, GET_MODE_SIZE (GET_MODE (sub)), GET_MODE_SIZE (GET_MODE (sub))); @@ -2918,7 +2905,7 @@ purge_addressof_1 (loc, insn, force, store) else { start_sequence (); - val = extract_bit_field (sub, size_x, bitpos, 1, NULL_RTX, + val = extract_bit_field (sub, size_x, 0, 1, NULL_RTX, GET_MODE (x), GET_MODE (x), GET_MODE_SIZE (GET_MODE (sub)), GET_MODE_SIZE (GET_MODE (sub))); |