aboutsummaryrefslogtreecommitdiff
path: root/binutils/dlltool.c
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2007-03-16 15:13:21 +0000
committerNick Clifton <nickc@redhat.com>2007-03-16 15:13:21 +0000
commit591a748af9fb110937669a59bcf60fee440f2042 (patch)
treeab7f28f106653bb37bc3b39e5a1ec95b342a1240 /binutils/dlltool.c
parent29975052f1690bab530c126559a7a638af23134c (diff)
downloadfsf-binutils-gdb-591a748af9fb110937669a59bcf60fee440f2042.zip
fsf-binutils-gdb-591a748af9fb110937669a59bcf60fee440f2042.tar.gz
fsf-binutils-gdb-591a748af9fb110937669a59bcf60fee440f2042.tar.bz2
Use pc-relative relocation instead of an absolute relocation for x86_64-pc-mingw32 target.
Diffstat (limited to 'binutils/dlltool.c')
-rw-r--r--binutils/dlltool.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/binutils/dlltool.c b/binutils/dlltool.c
index 1bcd974..8ee61d3 100644
--- a/binutils/dlltool.c
+++ b/binutils/dlltool.c
@@ -2412,6 +2412,12 @@ make_one_lib_file (export_type *exp, int i)
BFD_RELOC_16_GOTOFF);
rel->sym_ptr_ptr = iname_pp;
}
+ else if (machine == MX86)
+ {
+ rel->howto = bfd_reloc_type_lookup (abfd,
+ BFD_RELOC_32_PCREL);
+ rel->sym_ptr_ptr = iname_pp;
+ }
else
{
rel->howto = bfd_reloc_type_lookup (abfd, BFD_RELOC_32);