1999-09-06 Donn Terry <donn@interix.com>

* syms.c (stt): Add some PE/PEI section names.
	(bfd_decode_symclass): Return 'w', not 'U', for a weak undefined
	symbol.
	(bfd_symbol_info): Check for 'w'.
This commit is contained in:
Ian Lance Taylor 1999-09-06 18:44:56 +00:00
parent 022a5af495
commit 9296256064
2 changed files with 17 additions and 2 deletions

View File

@ -1,5 +1,10 @@
1999-09-06 Donn Terry <donn@interix.com>
* syms.c (stt): Add some PE/PEI section names.
(bfd_decode_symclass): Return 'w', not 'U', for a weak undefined
symbol.
(bfd_symbol_info): Check for 'w'.
* section.c (struct bfd_comdat_info): Define.
(asection): Add comdat field.
(STD_SECTION): Initialize comdat field.

View File

@ -523,6 +523,11 @@ static CONST struct section_to_type stt[] =
{".sdata", 'g'}, /* Small initialized data. */
{".text", 't'},
{"code", 't'}, /* MRI .text */
{".drectve", 'i'}, /* MSVC's .drective section */
{".idata", 'i'}, /* MSVC's .idata (import) section */
{".edata", 'e'}, /* MSVC's .edata (export) section */
{".pdata", 'p'}, /* MSVC's .pdata (stack unwind) section */
{".debug", 'N'}, /* MSVC's .debug (non-standard debug syms) */
{0, 0}
};
@ -572,7 +577,12 @@ bfd_decode_symclass (symbol)
if (bfd_is_com_section (symbol->section))
return 'C';
if (bfd_is_und_section (symbol->section))
return 'U';
{
if (symbol->flags & BSF_WEAK)
return 'w';
else
return 'U';
}
if (bfd_is_ind_section (symbol->section))
return 'I';
if (symbol->flags & BSF_WEAK)
@ -619,7 +629,7 @@ bfd_symbol_info (symbol, ret)
symbol_info *ret;
{
ret->type = bfd_decode_symclass (symbol);
if (ret->type != 'U')
if (ret->type != 'U' && ret->type != 'w')
ret->value = symbol->value + symbol->section->vma;
else
ret->value = 0;