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

* libpei.h (_bfd_pe_bfd_get_symbol_info): Declare.
	* peigen.c (_bfd_pe_bfd_get_symbol_info): New function.
	* peicode.h (coff_get_symbol_info): Define.
This commit is contained in:
Ian Lance Taylor 1999-09-12 00:02:11 +00:00
parent 0717ebb780
commit 7d2b58d612
4 changed files with 24 additions and 1 deletions

View file

@ -7,6 +7,10 @@
1999-09-11 Donn Terry <donn@interix.com>
* libpei.h (_bfd_pe_bfd_get_symbol_info): Declare.
* peigen.c (_bfd_pe_bfd_get_symbol_info): New function.
* peicode.h (coff_get_symbol_info): Define.
* config.bfd (i[3456]86-*-interix*): Set targ_cflags to
-DSTRICT_PE_FORMAT.
* coffcode.h (styp_to_sec_flags): Check STRICT_PE_FORMAT rather

View file

@ -234,7 +234,9 @@ unsigned int _bfd_pei_swap_scnhdr_out PARAMS ((bfd *, PTR, PTR));
boolean _bfd_pe_print_private_bfd_data_common PARAMS ((bfd *, PTR));
boolean _bfd_pe_bfd_copy_private_bfd_data_common PARAMS ((bfd*, bfd*));
boolean _bfd_pe_bfd_copy_private_bfd_data_common PARAMS ((bfd *, bfd *));
void _bfd_pe_get_symbol_info PARAMS ((bfd *, asymbol *, symbol_info *));
/* The following are needed only for ONE of pe or pei, but don't
otherwise vary; peicode.h fixes up ifdefs but we provide the

View file

@ -347,3 +347,5 @@ pe_bfd_copy_private_bfd_data (ibfd, obfd)
#define coff_bfd_copy_private_section_data \
_bfd_pe_bfd_copy_private_section_data
#define coff_get_symbol_info _bfd_pe_get_symbol_info

View file

@ -1808,3 +1808,18 @@ _bfd_pe_bfd_copy_private_section_data (ibfd, isec, obfd, osec)
return true;
}
void
_bfd_pe_get_symbol_info (abfd, symbol, ret)
bfd *abfd;
asymbol *symbol;
symbol_info *ret;
{
coff_get_symbol_info (abfd, symbol, ret);
if (pe_data (abfd) != NULL
&& ((symbol->flags & BSF_DEBUGGING) == 0
|| (symbol->flags & BSF_DEBUGGING_RELOC) != 0)
&& ! bfd_is_abs_section (symbol->section))
ret->value += pe_data (abfd)->pe_opthdr.ImageBase;
}