diff options
author | Dave Anglin <dave.anglin@nrc.ca> | 2005-11-20 19:21:06 +0000 |
---|---|---|
committer | Dave Anglin <dave.anglin@nrc.ca> | 2005-11-20 19:21:06 +0000 |
commit | d8e36d3e74d655a95eafa91180bf13e094082378 (patch) | |
tree | aa859180a332efd7cf19abd129065c982c088254 | |
parent | d598b1f9257fce277a1aa4223504c33062734be4 (diff) | |
download | gdb-d8e36d3e74d655a95eafa91180bf13e094082378.tar.gz |
* som.c (som_decode_symclass): Decode BSF_WEAK symbols in the same
manner as bfd_decode_symclass.
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/som.c | 23 |
2 files changed, 26 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 49da6ebb239..57ba88a73ce 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2005-11-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> + + * som.c (som_decode_symclass): Decode BSF_WEAK symbols in the same + manner as bfd_decode_symclass. + 2005-11-18 Alan Modra <amodra@bigpond.net.au> * elf64-ppc.c (ppc64_elf_check_relocs): Don't set has_14bit_branch diff --git a/bfd/som.c b/bfd/som.c index c1195c9a10a..0c9e1b79f9c 100644 --- a/bfd/som.c +++ b/bfd/som.c @@ -5355,11 +5355,30 @@ som_decode_symclass (asymbol *symbol) if (bfd_is_com_section (symbol->section)) return 'C'; if (bfd_is_und_section (symbol->section)) - return 'U'; + { + if (symbol->flags & BSF_WEAK) + { + /* If weak, determine if it's specifically an object + or non-object weak. */ + if (symbol->flags & BSF_OBJECT) + return 'v'; + else + return 'w'; + } + else + return 'U'; + } if (bfd_is_ind_section (symbol->section)) return 'I'; if (symbol->flags & BSF_WEAK) - return 'W'; + { + /* If weak, determine if it's specifically an object + or non-object weak. */ + if (symbol->flags & BSF_OBJECT) + return 'V'; + else + return 'W'; + } if (!(symbol->flags & (BSF_GLOBAL | BSF_LOCAL))) return '?'; |