diff options
author | Jeff Law <law@redhat.com> | 1999-09-19 20:14:30 +0000 |
---|---|---|
committer | Jeff Law <law@redhat.com> | 1999-09-19 20:14:30 +0000 |
commit | b3fe7ee28094aefa7eb930b8585e7352be0cf30f (patch) | |
tree | c579a8b0908872c406aaa2821b8675a1392334ce | |
parent | eb32eb44aa12cc0e178d05b66e625e5914d7453d (diff) | |
download | binutils-gdb-b3fe7ee28094aefa7eb930b8585e7352be0cf30f.tar.gz |
* hppa-dis.c (extract_22): New function.
-rw-r--r-- | opcodes/ChangeLog | 2 | ||||
-rw-r--r-- | opcodes/hppa-dis.c | 12 |
2 files changed, 13 insertions, 1 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 41c80dacb9d..29e0915c947 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,5 +1,7 @@ Sun Sep 19 10:41:27 1999 Jeffrey A Law (law@cygnus.com) + * hppa-dis.c (extract_22): New function. + * hppa-dis.c (print_insn_hppa): Handle 'J', 'K', and 'cc'. * hppa-dis.c (print_insn_hppa): Handle 'fe' and 'cJ'. diff --git a/opcodes/hppa-dis.c b/opcodes/hppa-dis.c index d34eeabd229..e21815e298b 100644 --- a/opcodes/hppa-dis.c +++ b/opcodes/hppa-dis.c @@ -315,6 +315,17 @@ extract_17 (word) (word & 0x1) << 16, 17) << 2; } +static int +extract_22 (word) + unsigned word; +{ + return sign_extend (GET_FIELD (word, 19, 28) | + GET_FIELD (word, 29, 29) << 10 | + GET_FIELD (word, 11, 15) << 11 | + GET_FIELD (word, 6, 10) << 16 | + (word & 0x1) << 21, 22) << 2; +} + /* Print one instruction. */ int print_insn_hppa (memaddr, info) @@ -926,7 +937,6 @@ print_insn_hppa (memaddr, info) fput_const (extract_14 (insn), info); break; - case '#': { int sign = GET_FIELD (insn, 31, 31); |