From: A. Wilcox Date: Thu, 22 Feb 2018 12:49:49 +0000 (+0000) Subject: Fix memory access violation when attempting to shorten a suffixed micromips instructi... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=39334a61e63321352304cbae77b37fcba4fed662;p=binutils-gdb.git Fix memory access violation when attempting to shorten a suffixed micromips instruction during lookup. PR 22014 * config/tc-mips.c (mips_lookup_insn): Use memmove to strip the instruction size suffix. --- diff --git a/gas/ChangeLog b/gas/ChangeLog index 07e35748611..ce7e2585950 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2018-02-22 A. Wilcox + + PR 22014 + * config/tc-mips.c (mips_lookup_insn): Use memmove to strip the + instruction size suffix. + 2018-02-20 Maciej W. Rozycki * testsuite/gas/mips/mips16-branch-reloc-4.d: New test. diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index fca0dea8dc4..6c68395094c 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -13955,7 +13955,7 @@ mips_lookup_insn (struct hash_control *hash, const char *start, suffix = 0; if (suffix) { - memcpy (name + opend - 2, name + opend, length - opend + 1); + memmove (name + opend - 2, name + opend, length - opend + 1); insn = (struct mips_opcode *) hash_find (hash, name); if (insn) {