diff options
author | DJ Delorie <dj@redhat.com> | 2013-06-14 19:57:10 +0000 |
---|---|---|
committer | DJ Delorie <dj@redhat.com> | 2013-06-14 19:57:10 +0000 |
commit | 3531d54957df0088a866d314d33cf96bd234bdf3 (patch) | |
tree | 04caacf25759da2a3c7510b07541b842c02b6053 /opcodes/rx-decode.opc | |
parent | 2532064ada52626ab032fa0be568f2c27535c8b8 (diff) | |
download | gdb-3531d54957df0088a866d314d33cf96bd234bdf3.zip gdb-3531d54957df0088a866d314d33cf96bd234bdf3.tar.gz gdb-3531d54957df0088a866d314d33cf96bd234bdf3.tar.bz2 |
* rx-decode.opc (rx_decode_opcode): Bit operations on
registers are 32-bit operations, not 8-bit operations.
* rx-decode.c: Regenerate.
Diffstat (limited to 'opcodes/rx-decode.opc')
-rw-r--r-- | opcodes/rx-decode.opc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/opcodes/rx-decode.opc b/opcodes/rx-decode.opc index 75734df..772e292 100644 --- a/opcodes/rx-decode.opc +++ b/opcodes/rx-decode.opc @@ -895,6 +895,8 @@ rx_decode_opcode (unsigned long pc AU, /** 1111 1100 0110 00sd rdst rsrc bset %1, %0%S0 */ ID(bset); BWL(BSIZE); SR(rsrc); DD(sd, rdst, BSIZE); F_____; + if (sd == 3) /* bset reg,reg */ + BWL(LSIZE); /** 0111 100b ittt rdst bset #%1, %0 */ ID(bset); BWL(LSIZE); SC(b*16+ittt); DR(rdst); F_____; @@ -905,6 +907,8 @@ rx_decode_opcode (unsigned long pc AU, /** 1111 1100 0110 01sd rdst rsrc bclr %1, %0%S0 */ ID(bclr); BWL(BSIZE); SR(rsrc); DD(sd, rdst, BSIZE); F_____; + if (sd == 3) /* bset reg,reg */ + BWL(LSIZE); /** 0111 101b ittt rdst bclr #%1, %0 */ ID(bclr); BWL(LSIZE); SC(b*16+ittt); DR(rdst); F_____; @@ -915,6 +919,8 @@ rx_decode_opcode (unsigned long pc AU, /** 1111 1100 0110 10sd rdst rsrc btst %2, %1%S1 */ ID(btst); BWL(BSIZE); S2R(rsrc); SD(sd, rdst, BSIZE); F___ZC; + if (sd == 3) /* bset reg,reg */ + BWL(LSIZE); /** 0111 110b ittt rdst btst #%2, %1 */ ID(btst); BWL(LSIZE); S2C(b*16+ittt); SR(rdst); F___ZC; @@ -925,6 +931,8 @@ rx_decode_opcode (unsigned long pc AU, /** 1111 1100 0110 11sd rdst rsrc bnot %1, %0%S0 */ ID(bnot); BWL(BSIZE); SR(rsrc); DD(sd, rdst, BSIZE); + if (sd == 3) /* bset reg,reg */ + BWL(LSIZE); /** 1111 1101 111bittt 1111 rdst bnot #%1, %0 */ ID(bnot); BWL(LSIZE); SC(bittt); DR(rdst); |