diff options
author | Nick Clifton <nickc@redhat.com> | 2008-06-12 21:44:54 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2008-06-12 21:44:54 +0000 |
commit | dd1ca61c85f06a957fe2f5d7b0dd83e9a7f2af8d (patch) | |
tree | ef52181566fe9eca345768ebb73c29cfc7bc18d5 /opcodes/mips-dis.c | |
parent | d73f1714b55b31e4f19465f5fd961cd1861041ba (diff) | |
download | binutils-redhat-dd1ca61c85f06a957fe2f5d7b0dd83e9a7f2af8d.tar.gz |
* mips.h: Document new field descriptors +Q.
(OP_SH_SEQI, OP_MASK_SEQI): New bit mask and shift count for SEQI.
opcodes/
* mips-dis.c (print_insn_args): Handle field descriptor +Q.
* mips-opc.c (mips_builtin_opcodes): Add Octeon instructions seq,
seqi, sne and snei.
gas/
* config/tc-mips.c (validate_mips_insn): Handle field descriptor +Q.
(mips_ip): Likewise.
(macro_build): Likewise.
(CPU_HAS_SEQ): New macro.
(macro2) <M_SEQ_I, M_SNE_I>: Use it. Emit seq/sne and seqi/snei.
gas/testsuite/
* gas/mips/octeon.s, gas/mips/octeon.d: Add tests for seq* and sne*.
* gas/mips/octeon-ill.s, gas/mips/octeon-ill.s: Add tests for seqi
and snei.
Diffstat (limited to 'opcodes/mips-dis.c')
-rw-r--r-- | opcodes/mips-dis.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/opcodes/mips-dis.c b/opcodes/mips-dis.c index 4202b7d1db..ada753f4f8 100644 --- a/opcodes/mips-dis.c +++ b/opcodes/mips-dis.c @@ -902,6 +902,13 @@ print_insn_args (const char *d, (l >> OP_SH_CINSLM1) & OP_MASK_CINSLM1); break; + case 'Q': /* seqi/snei immediate field */ + op = (l >> OP_SH_SEQI) & OP_MASK_SEQI; + /* Sign-extend it. */ + op = (op ^ 512) - 512; + (*info->fprintf_func) (info->stream, "%d", op); + break; + default: /* xgettext:c-format */ (*info->fprintf_func) (info->stream, |