aboutsummaryrefslogtreecommitdiff
path: root/opcodes/xstormy16-ibld.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2019-12-16 10:00:07 +1030
committerAlan Modra <amodra@gmail.com>2019-12-16 17:35:13 +1030
commite6ced26afd50b0d74b8ea14ca1cd62cdc5d11ae8 (patch)
treeac662714d50d455e71e8f2f73101b06c284cb7d3 /opcodes/xstormy16-ibld.c
parent84e098cdea4eb6a5ddc525a2145ffe66475fa2af (diff)
downloadgdb-e6ced26afd50b0d74b8ea14ca1cd62cdc5d11ae8.zip
gdb-e6ced26afd50b0d74b8ea14ca1cd62cdc5d11ae8.tar.gz
gdb-e6ced26afd50b0d74b8ea14ca1cd62cdc5d11ae8.tar.bz2
ubsan: xstormy16: left shift of negative value
cpu/ * xstormy16.cpu (f-rel12a): Avoid signed overflow. opcodes/ * xstormy16-ibld.c: Regenerate.
Diffstat (limited to 'opcodes/xstormy16-ibld.c')
-rw-r--r--opcodes/xstormy16-ibld.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/opcodes/xstormy16-ibld.c b/opcodes/xstormy16-ibld.c
index babdd46..69da986 100644
--- a/opcodes/xstormy16-ibld.c
+++ b/opcodes/xstormy16-ibld.c
@@ -800,7 +800,7 @@ xstormy16_cgen_extract_operand (CGEN_CPU_DESC cd,
{
long value;
length = extract_normal (cd, ex_info, insn_value, 0|(1<<CGEN_IFLD_SIGNED)|(1<<CGEN_IFLD_PCREL_ADDR), 0, 4, 11, 32, total_length, pc, & value);
- value = ((((value) << (1))) + (((pc) + (2))));
+ value = ((((value) * (2))) + (((pc) + (2))));
fields->f_rel12a = value;
}
break;