aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ld/ChangeLog3
-rw-r--r--ld/emultempl/pe.em17
2 files changed, 14 insertions, 6 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 56b86db..b048ec4 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,7 +1,8 @@
2000-10-13 Nick Clifton <nickc@redhat.com>
* emultempl/pe.em (_after_open): Delete 'is2' and 'nsyms'
- local variables - they are not used.
+ local variables - they are not used, but leave in the call to
+ bfd_canonicalize_symtab.
(_open_dynamic_archive): Add #ifdef DLL_SUPPORT around use of
pe_dll_search_prefix.
diff --git a/ld/emultempl/pe.em b/ld/emultempl/pe.em
index 99829a2..bbf0c94 100644
--- a/ld/emultempl/pe.em
+++ b/ld/emultempl/pe.em
@@ -855,11 +855,18 @@ gld_${EMULATION_NAME}_after_open ()
for (sec = is->the_bfd->sections; sec; sec = sec->next)
{
int i;
- int symsize = bfd_get_symtab_upper_bound (is->the_bfd);
- asymbol **symbols = (asymbol **) xmalloc (symsize);
- int relsize = bfd_get_reloc_upper_bound (is->the_bfd, sec);
- arelent **relocs = (arelent **) xmalloc ((size_t) relsize);
- int nrelocs = bfd_canonicalize_reloc (is->the_bfd, sec,
+ int symsize;
+ asymbol **symbols;
+ int relsize;
+ arelent **relocs;
+ int nrelocs;
+
+ symsize = bfd_get_symtab_upper_bound (is->the_bfd);
+ symbols = (asymbol **) xmalloc (symsize);
+ bfd_canonicalize_symtab (is->the_bfd, symbols);
+ relsize = bfd_get_reloc_upper_bound (is->the_bfd, sec);
+ relocs = (arelent **) xmalloc ((size_t) relsize);
+ nrelocs = bfd_canonicalize_reloc (is->the_bfd, sec,
relocs, symbols);
for (i=0; i<nrelocs; i++)
{