summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/binutils/bfd/coff-i386.c
diff options
context:
space:
mode:
authorNiklas Hallqvist <niklas@cvs.openbsd.org>1996-06-10 10:55:58 +0000
committerNiklas Hallqvist <niklas@cvs.openbsd.org>1996-06-10 10:55:58 +0000
commita7e831079363e3bb45f3172f6e59ba48e335682b (patch)
treeee4324eac9a9d66f189fab60498ec42b8226b7fc /gnu/usr.bin/binutils/bfd/coff-i386.c
parent467cb0a471d13c5186a6ee166e60b47c30da64e9 (diff)
Bring Cygnus versions into the trunk, keeping our local patches
Diffstat (limited to 'gnu/usr.bin/binutils/bfd/coff-i386.c')
-rw-r--r--gnu/usr.bin/binutils/bfd/coff-i386.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/gnu/usr.bin/binutils/bfd/coff-i386.c b/gnu/usr.bin/binutils/bfd/coff-i386.c
index cc23a3e022c..85216d06bec 100644
--- a/gnu/usr.bin/binutils/bfd/coff-i386.c
+++ b/gnu/usr.bin/binutils/bfd/coff-i386.c
@@ -414,6 +414,8 @@ coff_i386_reloc_type_lookup (abfd, code)
return howto_table +R_IMAGEBASE;
case BFD_RELOC_32:
return howto_table + R_DIR32;
+ case BFD_RELOC_32_PCREL:
+ return howto_table + R_PCRLONG;
default:
BFD_FAIL ();
return 0;
@@ -446,14 +448,20 @@ const bfd_target
"coff-i386", /* name */
#endif
bfd_target_coff_flavour,
- false, /* data byte order is little */
- false, /* header byte order is little */
+ BFD_ENDIAN_LITTLE, /* data byte order is little */
+ BFD_ENDIAN_LITTLE, /* header byte order is little */
(HAS_RELOC | EXEC_P | /* object flags */
HAS_LINENO | HAS_DEBUG |
HAS_SYMS | HAS_LOCALS | WP_TEXT | D_PAGED),
+#ifndef COFF_WITH_PE
(SEC_HAS_CONTENTS | SEC_ALLOC | SEC_LOAD | SEC_RELOC), /* section flags */
+#else
+ (SEC_HAS_CONTENTS | SEC_ALLOC | SEC_LOAD | SEC_RELOC /* section flags */
+ | SEC_LINK_ONCE | SEC_LINK_DUPLICATES),
+#endif
+
#ifdef TARGET_UNDERSCORE
TARGET_UNDERSCORE, /* leading underscore */
#else