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 | c5cda68bbddc8a64f3782bfaa0d008d6abdca9dd (patch) | |
tree | 7b905bc6cd1d38f195a3f48e4762b12976ffb7d5 /bfd/syms.c | |
parent | 49b39ae91652c0149ce83b2685f5b3f90c3c17af (diff) | |
download | binutils-redhat-c5cda68bbddc8a64f3782bfaa0d008d6abdca9dd.tar.gz |
* 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
diff --git a/bfd/syms.c b/bfd/syms.c index 9d425684d9..8831b9257c 100644 --- a/bfd/syms.c +++ b/bfd/syms.c @@ -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 |