1,5 → 1,5 |
/* ldcref.c -- output a cross reference table |
Copyright 1996-2013 Free Software Foundation, Inc. |
Copyright (C) 1996-2015 Free Software Foundation, Inc. |
Written by Ian Lance Taylor <ian@cygnus.com> |
|
This file is part of the GNU Binutils. |
40,7 → 40,8 |
/* We keep an instance of this structure for each reference to a |
symbol from a given object. */ |
|
struct cref_ref { |
struct cref_ref |
{ |
/* The next reference. */ |
struct cref_ref *next; |
/* The object. */ |
55,7 → 56,8 |
|
/* We keep a hash table of symbols. Each entry looks like this. */ |
|
struct cref_hash_entry { |
struct cref_hash_entry |
{ |
struct bfd_hash_entry root; |
/* The demangled name. */ |
const char *demangled; |
65,7 → 67,8 |
|
/* This is what the hash table looks like. */ |
|
struct cref_hash_table { |
struct cref_hash_table |
{ |
struct bfd_hash_table root; |
}; |
|
348,7 → 351,10 |
const struct cref_hash_entry * const *p2 = |
(const struct cref_hash_entry * const *) a2; |
|
if (demangling) |
return strcmp ((*p1)->demangled, (*p2)->demangled); |
else |
return strcmp ((*p1)->root.string, (*p2)->root.string); |
} |
|
/* Write out the cref table. */ |
426,8 → 432,16 |
} |
} |
|
if (demangling) |
{ |
fprintf (fp, "%s ", h->demangled); |
len = strlen (h->demangled) + 1; |
} |
else |
{ |
fprintf (fp, "%s ", h->root.string); |
len = strlen (h->root.string) + 1; |
} |
|
for (r = h->refs; r != NULL; r = r->next) |
{ |