diff options
author | Nick Clifton <nickc@redhat.com> | 2007-09-21 07:58:03 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2007-09-21 07:58:03 +0000 |
commit | 6119d2522e8a598e50cb2ed05bf523e0ecedad3f (patch) | |
tree | 3564ca5bb09a8712a115b5cc992eb68d6af57406 /bfd/syms.c | |
parent | 80576242ab144a06ef28d698a432eea831fdc5c0 (diff) | |
download | gdb-6119d2522e8a598e50cb2ed05bf523e0ecedad3f.zip gdb-6119d2522e8a598e50cb2ed05bf523e0ecedad3f.tar.gz gdb-6119d2522e8a598e50cb2ed05bf523e0ecedad3f.tar.bz2 |
* syms.c (_bfd_stab_section_find_nearest_line): Look at the
specific SOM sections for stabs if the regular ones are not found.
* som.h (struct somdata): Add a line_info field, to be used by som_find_nearest_line.
* som.c (som_find_nearest_line): Implement using the bfd stabs function above.
Diffstat (limited to 'bfd/syms.c')
-rw-r--r-- | bfd/syms.c | 15 |
1 files changed, 11 insertions, 4 deletions
@@ -989,10 +989,17 @@ _bfd_stab_section_find_nearest_line (bfd *abfd, if (info->stabsec == NULL || info->strsec == NULL) { - /* No stabs debugging information. Set *pinfo so that we - can return quickly in the info != NULL case above. */ - *pinfo = info; - return TRUE; + /* Try SOM section names. */ + info->stabsec = bfd_get_section_by_name (abfd, "$GDB_SYMBOLS$"); + info->strsec = bfd_get_section_by_name (abfd, "$GDB_STRINGS$"); + + if (info->stabsec == NULL || info->strsec == NULL) + { + /* No stabs debugging information. Set *pinfo so that we + can return quickly in the info != NULL case above. */ + *pinfo = info; + return TRUE; + } } stabsize = (info->stabsec->rawsize |