X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=bfd%2Fsyms.c;h=0ff94164ed5e28dfb78a7049980d30e9c55ca096;hb=0bf60745767d2465c81ee57ae7705a62d6d8fafe;hp=6b615a2b5f4bec35c901e2f59cd423972f6b4b49;hpb=eea6121ac0cb22524c627017191ca09825e3d702;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/syms.c b/bfd/syms.c index 6b615a2b5f..0ff94164ed 100644 --- a/bfd/syms.c +++ b/bfd/syms.c @@ -18,7 +18,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ /* SECTION @@ -355,7 +355,7 @@ bfd_is_local_label (bfd *abfd, asymbol *sym) /* The BSF_SECTION_SYM check is needed for IA-64, where every label that starts with '.' is local. This would accidentally catch section names if we didn't reject them here. */ - if ((sym->flags & (BSF_GLOBAL | BSF_WEAK | BSF_SECTION_SYM)) != 0) + if ((sym->flags & (BSF_GLOBAL | BSF_WEAK | BSF_FILE | BSF_SECTION_SYM)) != 0) return FALSE; if (sym->name == NULL) return FALSE; @@ -380,6 +380,23 @@ DESCRIPTION . */ +/* +FUNCTION + bfd_is_target_special_symbol + +SYNOPSIS + bfd_boolean bfd_is_target_special_symbol (bfd *abfd, asymbol *sym); + +DESCRIPTION + Return TRUE iff a symbol @var{sym} in the BFD @var{abfd} is something + special to the particular target represented by the BFD. Such symbols + should normally not be mentioned to the user. + +.#define bfd_is_target_special_symbol(abfd, sym) \ +. BFD_SEND (abfd, _bfd_is_target_special_symbol, (abfd, sym)) +. +*/ + /* FUNCTION bfd_canonicalize_symtab @@ -1016,6 +1033,10 @@ _bfd_stab_section_find_nearest_line (bfd *abfd, asymbol *sym; r = *pr; + /* Ignore R_*_NONE relocs. */ + if (r->howto->dst_mask == 0) + continue; + if (r->howto->rightshift != 0 || r->howto->size != 2 || r->howto->bitsize != 32