diff options
author | Nick Clifton <nickc@redhat.com> | 2020-04-29 13:13:55 +0100 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2020-04-29 13:13:55 +0100 |
commit | 5c936ef50f02fe21a6e1306e30849b4487c65b2c (patch) | |
tree | 5a9e05736ce354bf06a4221c3cb18e2a314e42ec /gas/config/tc-sh.c | |
parent | 4849fabc7c4c47d770b61adc025e34bc2a23fe23 (diff) | |
download | gdb-5c936ef50f02fe21a6e1306e30849b4487c65b2c.zip gdb-5c936ef50f02fe21a6e1306e30849b4487c65b2c.tar.gz gdb-5c936ef50f02fe21a6e1306e30849b4487c65b2c.tar.bz2 |
Fix the disassmbly of SH instructions which have an unsigned 8-bit immediate operand.
PR 22699
opcodes * sh-opc.h (IMM0_8): Replace with IMM0_8S and IMM0_8U. Use
IMM0_8S for arithmetic insns and IMM0_8U for logical insns.
* sh-dis.c (print_insn_sh): Change IMM0_8 case to IMM0_8S and add
IMM0_8U case.
gas * config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
IMM0_8S and add support for IMM0_8U.
* testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
unsigned 8-bit immediate.
* testsuite/gas/sh/sh4a.d: Extended expected disassembly.
Diffstat (limited to 'gas/config/tc-sh.c')
-rw-r--r-- | gas/config/tc-sh.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gas/config/tc-sh.c b/gas/config/tc-sh.c index decbb29..d06cc5e 100644 --- a/gas/config/tc-sh.c +++ b/gas/config/tc-sh.c @@ -2091,7 +2091,8 @@ build_Mytes (sh_opcode_info *opcode, sh_operand_info *operand) case IMM0_8BY2: insert (output + low_byte, BFD_RELOC_SH_IMM8BY2, 0, operand); break; - case IMM0_8: + case IMM0_8U: + case IMM0_8S: insert (output + low_byte, BFD_RELOC_SH_IMM8, 0, operand); break; case IMM1_8BY4: |