diff options
author | Alan Modra <amodra@gmail.com> | 2019-12-11 16:45:14 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2019-12-11 21:14:19 +1030 |
commit | 1d61b032265e69317f42e8019e072506f11890c5 (patch) | |
tree | 226c023afd93046735bb928dc67d6490f8466e97 /opcodes/tic54x-dis.c | |
parent | 13c9c48599ebc8ad2f3a1fb9f672740219cd3841 (diff) | |
download | gdb-1d61b032265e69317f42e8019e072506f11890c5.zip gdb-1d61b032265e69317f42e8019e072506f11890c5.tar.gz gdb-1d61b032265e69317f42e8019e072506f11890c5.tar.bz2 |
Remove more shifts for sign/zero extension
cpu/
* epiphany.cpu (f-sdisp11): Don't sign extend with shifts.
* lm32.cpu (f-branch, f-vall): Likewise.
* m32.cpu (f-lab-8-16): Likewise.
opcodes/
* arc-dis.c (BITS): Don't truncate high bits with shifts.
* nios2-dis.c (nios2_print_insn_arg): Don't sign extend with shifts.
* tic54x-dis.c (print_instruction): Likewise.
* tilegx-opc.c (parse_insn_tilegx): Likewise.
* tilepro-opc.c (parse_insn_tilepro): Likewise.
* visium-dis.c (disassem_class0): Likewise.
* pdp11-dis.c (sign_extend): Likewise.
(SIGN_BITS): Delete.
* epiphany-ibld.c: Regenerate.
* lm32-ibld.c: Regenerate.
* m32c-ibld.c: Regenerate.
Diffstat (limited to 'opcodes/tic54x-dis.c')
-rw-r--r-- | opcodes/tic54x-dis.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/opcodes/tic54x-dis.c b/opcodes/tic54x-dis.c index c4ecdda..d8b80a3 100644 --- a/opcodes/tic54x-dis.c +++ b/opcodes/tic54x-dis.c @@ -394,8 +394,7 @@ print_instruction (disassemble_info *info, break; } case OP_k5: - sprintf (operand[i], "#%d", - (int) (((signed char) opcode & 0x1F) << 3) >> 3); + sprintf (operand[i], "#%d", ((opcode & 0x1F) ^ 0x10) - 0x10); info->fprintf_func (info->stream, "%s%s", comma, operand[i]); break; case OP_k8u: |