summaryrefslogtreecommitdiff
path: root/gdb/frv-tdep.c
diff options
context:
space:
mode:
authorKevin Buettner <kevinb@redhat.com>2005-04-29 21:48:28 +0000
committerKevin Buettner <kevinb@redhat.com>2005-04-29 21:48:28 +0000
commitb8d0b146f3af22987c51415b924d3157640c2c1c (patch)
treecac9e2f3757084f0f039330b3623926aa60ee1bc /gdb/frv-tdep.c
parent601cfdbb216b6a0032260b6438c6a759779b4413 (diff)
downloadgdb-b8d0b146f3af22987c51415b924d3157640c2c1c.tar.gz
Fix bugs related to inferior function calls on FRV using the FDPIC ABI.
Diffstat (limited to 'gdb/frv-tdep.c')
-rw-r--r--gdb/frv-tdep.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gdb/frv-tdep.c b/gdb/frv-tdep.c
index 20b4427c9c3..e597037b912 100644
--- a/gdb/frv-tdep.c
+++ b/gdb/frv-tdep.c
@@ -1079,6 +1079,13 @@ find_func_descr (struct gdbarch *gdbarch, CORE_ADDR entry_point)
{
CORE_ADDR descr;
char valbuf[4];
+ CORE_ADDR start_addr;
+
+ /* If we can't find the function in the symbol table, then we assume
+ that the function address is already in descriptor form. */
+ if (!find_pc_partial_function (entry_point, NULL, &start_addr, NULL)
+ || entry_point != start_addr)
+ return entry_point;
descr = frv_fdpic_find_canonical_descriptor (entry_point);