aboutsummaryrefslogtreecommitdiff
path: root/gdb/ppc-linux-tdep.c
diff options
context:
space:
mode:
authorEdjunior Barbosa Machado <emachado@linux.vnet.ibm.com>2012-11-08 14:16:33 +0000
committerEdjunior Barbosa Machado <emachado@linux.vnet.ibm.com>2012-11-08 14:16:33 +0000
commit2834ab426416fbf6e63ecb19f4cf1025990b01dc (patch)
treec6af0365f38a60f78b29dabaf60a7af5023d4999 /gdb/ppc-linux-tdep.c
parent84f1359519f1c7ff240d9fb2f84dfd7315ba4576 (diff)
downloadgdb-2834ab426416fbf6e63ecb19f4cf1025990b01dc.zip
gdb-2834ab426416fbf6e63ecb19f4cf1025990b01dc.tar.gz
gdb-2834ab426416fbf6e63ecb19f4cf1025990b01dc.tar.bz2
* ppc-linux-tdep.c (ppc64_standard_linkage1, ppc64_standard_linkage2,
ppc64_standard_linkage3): Mark ld r11 instructions as optional, following the change in PLT call stubs on linker.
Diffstat (limited to 'gdb/ppc-linux-tdep.c')
-rw-r--r--gdb/ppc-linux-tdep.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/gdb/ppc-linux-tdep.c b/gdb/ppc-linux-tdep.c
index ccded83..f88d697 100644
--- a/gdb/ppc-linux-tdep.c
+++ b/gdb/ppc-linux-tdep.c
@@ -390,8 +390,8 @@ static struct insn_pattern ppc64_standard_linkage1[] =
/* mtctr r11 */
{ insn_xfx (-1, -1, -1, -1), insn_xfx (31, 11, 9, 467), 0 },
- /* ld r11, <any>(r12) */
- { insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 12, 0, 0), 0 },
+ /* ld r11, <any>(r12) <optional> */
+ { insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 12, 0, 0), 1 },
/* bctr */
{ -1, 0x4e800420, 0 },
@@ -421,8 +421,8 @@ static struct insn_pattern ppc64_standard_linkage2[] =
/* ld r2, <any>(r12) */
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 2, 12, 0, 0), 0 },
- /* ld r11, <any>(r12) */
- { insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 12, 0, 0), 0 },
+ /* ld r11, <any>(r12) <optional> */
+ { insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 12, 0, 0), 1 },
/* bctr */
{ -1, 0x4e800420, 0 },
@@ -446,8 +446,8 @@ static struct insn_pattern ppc64_standard_linkage3[] =
/* mtctr r11 */
{ insn_xfx (-1, -1, -1, -1), insn_xfx (31, 11, 9, 467), 0 },
- /* ld r11, <any>(r2) */
- { insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 2, 0, 0), 0 },
+ /* ld r11, <any>(r2) <optional> */
+ { insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 2, 0, 0), 1 },
/* ld r2, <any>(r2) */
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 2, 2, 0, 0), 0 },