diff options
author | Jeff Law <law@redhat.com> | 1999-08-28 10:59:07 +0000 |
---|---|---|
committer | Jeff Law <law@redhat.com> | 1999-08-28 10:59:07 +0000 |
commit | af10de82403f32c2818d0d56818895c93df1147b (patch) | |
tree | e90b4e39a057e7255bb3dcc777bd76ea6b17efb4 /opcodes/hppa-dis.c | |
parent | 90927b9c0e36b2abc118b6898736b3c45137def3 (diff) | |
download | fsf-binutils-gdb-af10de82403f32c2818d0d56818895c93df1147b.zip fsf-binutils-gdb-af10de82403f32c2818d0d56818895c93df1147b.tar.gz fsf-binutils-gdb-af10de82403f32c2818d0d56818895c93df1147b.tar.bz2 |
* hppa-dis.c (print_insn_hppa): Add args q, %, !, and |.
Diffstat (limited to 'opcodes/hppa-dis.c')
-rw-r--r-- | opcodes/hppa-dis.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/opcodes/hppa-dis.c b/opcodes/hppa-dis.c index 42c364b..adbc8c4 100644 --- a/opcodes/hppa-dis.c +++ b/opcodes/hppa-dis.c @@ -372,6 +372,9 @@ print_insn_hppa (memaddr, info) case 'E': fput_fp_reg (GET_FIELD (insn, 6, 10), info); break; + case '!': + fput_creg (11, info); + break; case 't': fput_reg (GET_FIELD (insn, 27, 31), info); break; @@ -476,6 +479,10 @@ print_insn_hppa (memaddr, info) if (GET_FIELD (insn, 25, 25)) (*info->fprintf_func) (info->stream, ",i"); break; + case 'z': + if (!GET_FIELD (insn, 21, 21)) + (*info->fprintf_func) (info->stream, ",z"); + break; case 'a': (*info->fprintf_func) (info->stream, "%s", add_compl_names[GET_FIELD @@ -757,10 +764,34 @@ print_insn_hppa (memaddr, info) (*info->fprintf_func) (info->stream, "%d", GET_FIELD (insn, 22, 26)); break; + case 'q': + { + int num; + num = GET_FIELD (insn, 20, 20) << 5; + num |= GET_FIELD (insn, 22, 26); + (*info->fprintf_func) (info->stream, "%d", num); + break; + } case 'T': (*info->fprintf_func) (info->stream, "%d", 32 - GET_FIELD (insn, 27, 31)); break; + case '%': + { + int num; + num = (GET_FIELD (insn, 23, 23) + 1) * 32; + num -= GET_FIELD (insn, 27, 31); + (*info->fprintf_func) (info->stream, "%d", num); + break; + } + case '|': + { + int num; + num = (GET_FIELD (insn, 19, 19) + 1) * 32; + num -= GET_FIELD (insn, 27, 31); + (*info->fprintf_func) (info->stream, "%d", num); + break; + } case '$': fput_const (GET_FIELD (insn, 20, 28), info); break; |