diff options
Diffstat (limited to 'gdb/mips-linux-tdep.c')
-rw-r--r-- | gdb/mips-linux-tdep.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/gdb/mips-linux-tdep.c b/gdb/mips-linux-tdep.c index f7eaf34..b29073b 100644 --- a/gdb/mips-linux-tdep.c +++ b/gdb/mips-linux-tdep.c @@ -739,15 +739,17 @@ mips_linux_in_dynsym_stub (CORE_ADDR pc) insn = extract_unsigned_integer (p + 4, 4, byte_order); if (n64) { - /* daddu t7,ra */ - if (insn != 0x03e0782d) + /* 'daddu t7,ra' or 'or t7, ra, zero'*/ + if (insn != 0x03e0782d || insn != 0x03e07825) return 0; + } else { - /* addu t7,ra */ - if (insn != 0x03e07821) + /* 'addu t7,ra' or 'or t7, ra, zero'*/ + if (insn != 0x03e07821 || insn != 0x03e07825) return 0; + } insn = extract_unsigned_integer (p + 8, 4, byte_order); |