aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Law <law@redhat.com>1996-07-11 18:07:31 +0000
committerJeff Law <law@redhat.com>1996-07-11 18:07:31 +0000
commitbf0b880f39a4f624e80bf52513121c9e42515e55 (patch)
tree6095c4d396cdbaa4902307dd1832eb800a87860d
parent0decb7fde3e3c5dd32a7850fc3cacea8e11bcdb3 (diff)
downloadgdb-bf0b880f39a4f624e80bf52513121c9e42515e55.zip
gdb-bf0b880f39a4f624e80bf52513121c9e42515e55.tar.gz
gdb-bf0b880f39a4f624e80bf52513121c9e42515e55.tar.bz2
* h8300-dis.c (bfd_h8_disassemble): Mask off unwanted bits
for L_3 and L_2. So we only get values in the right range for L_3 (0..7) and L_2 (0..3).
-rw-r--r--opcodes/ChangeLog3
-rw-r--r--opcodes/h8300-dis.c4
2 files changed, 5 insertions, 2 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 4daebc5..27dc16d 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,5 +1,8 @@
Thu Jul 11 11:58:44 1996 Jeffrey A Law (law@cygnus.com)
+ * h8300-dis.c (bfd_h8_disassemble): Mask off unwanted bits
+ for L_3 and L_2.
+
* h8300-dis.c (bfd_h8_disassemble): Don't set plen for
3bit immediate operands.
diff --git a/opcodes/h8300-dis.c b/opcodes/h8300-dis.c
index 3ba4d8b..959cb75 100644
--- a/opcodes/h8300-dis.c
+++ b/opcodes/h8300-dis.c
@@ -243,12 +243,12 @@ bfd_h8_disassemble (addr, info, mode)
}
else if (looking_for & L_3)
{
- bit = thisnib;
+ bit = thisnib & 0x7;
}
else if (looking_for & L_2)
{
plen = 2;
- abs = thisnib;
+ abs = thisnib & 0x3;
}
else if (looking_for == E)
{