Move encoded as 'or' in binutils.
A patch (http://sourceware.org/ml/binutils/2015-07/msg00376.html) submitted to binutils will be encoding move as an 'or' instruction over [d]addu in assembly and various code stubs. This patch for gdb addresses that change for the mips specific parts of gdb. gdb/ChangeLog: * mips-linux-tdep.c (mips_linux_in_dynsym_stub): Recognise 'or' as move along with [d]addu.
This commit is contained in:
parent
3043c1aba1
commit
93084fcd9b
|
@ -1,3 +1,8 @@
|
||||||
|
2015-10-28 Simon Dardis <Simon.Dardis@imgtec.com>
|
||||||
|
|
||||||
|
* mips-linux-tdep.c (mips_linux_in_dynsym_stub): Recognise 'or'
|
||||||
|
as move along with [d]addu.
|
||||||
|
|
||||||
2015-10-28 Yao Qi <yao.qi@linaro.org>
|
2015-10-28 Yao Qi <yao.qi@linaro.org>
|
||||||
|
|
||||||
* aarch64-tdep.c (aarch64_software_single_step): Pass 1 to
|
* aarch64-tdep.c (aarch64_software_single_step): Pass 1 to
|
||||||
|
|
|
@ -739,15 +739,17 @@ mips_linux_in_dynsym_stub (CORE_ADDR pc)
|
||||||
insn = extract_unsigned_integer (p + 4, 4, byte_order);
|
insn = extract_unsigned_integer (p + 4, 4, byte_order);
|
||||||
if (n64)
|
if (n64)
|
||||||
{
|
{
|
||||||
/* daddu t7,ra */
|
/* 'daddu t7,ra' or 'or t7, ra, zero'*/
|
||||||
if (insn != 0x03e0782d)
|
if (insn != 0x03e0782d || insn != 0x03e07825)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* addu t7,ra */
|
/* 'addu t7,ra' or 'or t7, ra, zero'*/
|
||||||
if (insn != 0x03e07821)
|
if (insn != 0x03e07821 || insn != 0x03e07825)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
insn = extract_unsigned_integer (p + 8, 4, byte_order);
|
insn = extract_unsigned_integer (p + 8, 4, byte_order);
|
||||||
|
|
Loading…
Reference in New Issue