diff options
author | Frank Ch. Eigler <fche@redhat.com> | 2001-01-03 15:10:26 +0000 |
---|---|---|
committer | Frank Ch. Eigler <fche@redhat.com> | 2001-01-03 15:10:26 +0000 |
commit | 7e30bc3635d961336a9db1c88d4e18bea5012038 (patch) | |
tree | fd954dcefe616f753174206d35f43d411e7804e6 | |
parent | b96ed59a5719c80faca6dcfd1ec1d98cf6f8ca09 (diff) | |
download | gdb-7e30bc3635d961336a9db1c88d4e18bea5012038.zip gdb-7e30bc3635d961336a9db1c88d4e18bea5012038.tar.gz gdb-7e30bc3635d961336a9db1c88d4e18bea5012038.tar.bz2 |
* generalization
2001-01-03 Richard Sandiford <r.sandiford@redhat.com>
cgen-dis.in (read_insn): Use bfd_get_bits()
-rw-r--r-- | opcodes/ChangeLog | 4 | ||||
-rw-r--r-- | opcodes/cgen-dis.in | 16 |
2 files changed, 5 insertions, 15 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index a9a0645..1666a76 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,7 @@ +2001-01-03 Richard Sandiford <r.sandiford@redhat.com> + + cgen-dis.in (read_insn): Use bfd_get_bits() + 2001-01-02 Richard Sandiford <rsandifo@redhat.com> * cgen-dis.c (hash_insn_array): Use bfd_put_bits(). diff --git a/opcodes/cgen-dis.in b/opcodes/cgen-dis.in index 22cef1f..9d25c1a 100644 --- a/opcodes/cgen-dis.in +++ b/opcodes/cgen-dis.in @@ -211,21 +211,7 @@ read_insn (cd, pc, info, buf, buflen, ex_info, insn_value) ex_info->valid = (1 << buflen) - 1; ex_info->insn_bytes = buf; - switch (buflen) - { - case 1: - *insn_value = buf[0]; - break; - case 2: - *insn_value = info->endian == BFD_ENDIAN_BIG ? bfd_getb16 (buf) : bfd_getl16 (buf); - break; - case 4: - *insn_value = info->endian == BFD_ENDIAN_BIG ? bfd_getb32 (buf) : bfd_getl32 (buf); - break; - default: - abort (); - } - + *insn_value = bfd_get_bits (buf, buflen * 8, info->endian == BFD_ENDIAN_BIG); return 0; } |