From FEDORA_PATCHES Mon Sep 17 00:00:00 2001 From: Andrew Cagney Date: Fri, 27 Oct 2017 21:07:50 +0200 Subject: gdb-6.3-ppc64displaysymbol-20041124.patch ;; Include the pc's section when doing a symbol lookup so that the ;; correct symbol is found. ;;=push: Write new testcase. 2004-11-24 Andrew Cagney * printcmd.c (build_address_symbolic): Find a section for the address. diff --git a/gdb/printcmd.c b/gdb/printcmd.c --- a/gdb/printcmd.c +++ b/gdb/printcmd.c @@ -587,6 +587,14 @@ build_address_symbolic (struct gdbarch *gdbarch, addr = overlay_mapped_address (addr, section); } } + /* To ensure that the symbol returned belongs to the correct setion + (and that the last [random] symbol from the previous section + isn't returned) try to find the section containing PC. First try + the overlay code (which by default returns NULL); and second try + the normal section code (which almost always succeeds). */ + section = find_pc_overlay (addr); + if (section == NULL) + section = find_pc_section (addr); /* First try to find the address in the symbol table, then in the minsyms. Take the closest one. */