From 5dc8db48973c10e9a4d8500c923ea1197c835011 Mon Sep 17 00:00:00 2001 From: Ken Raeburn Date: Mon, 6 Feb 1995 08:31:27 +0000 Subject: [PATCH] msdos .exe file support from bryan ford --- bfd/ChangeLog | 19 +++++++++++++++++++ bfd/bfd-in2.h | 21 ++++++++++++--------- 2 files changed, 31 insertions(+), 9 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 074bf3b..3b9df30 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,24 @@ +Mon Feb 6 03:20:17 1995 Ken Raeburn + + Changes from Bryan Ford, baford@schirf.cs.utah.edu: + * config.bfd (i[345]86-*-msdos*): New target. + * configure.in (i386msdos_vec): Handle it. + * i386msdos.c: New file. + * config/i386-msdos.mt: New file. + * bfd.c (enum bfd_error): Added new value bfd_error_file_too_big. + (bfd_errmsgs): Added string to table. + * libaout.h (reloc_type-lookup): Declare it. + * targets.c (enum bfd_flavour): Added bfd_target_msdos_flavour. + (i386msdos_vec): Declare. + (bfd_target_vector): Add it to the list. + * bfd-in2.h: Regenerated. + Wed Feb 1 01:32:14 1995 Jeff Law (law@snake.cs.utah.edu) + * som.c (som_set_reloc_info, case R_DATA_ONE_SYMBOL): If there's + nothing in R_DATA_OVERRIDE, then try to find the addend in the + section's contents. + * som.c (som_object_setup): More heruistics to detect the braindamaged HP OSF1 linker. (setup_sections): Don't forget to free subspace_sections if we get diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h index 6f58d66..fd4cf43 100644 --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -1,5 +1,5 @@ /* Main header file for the bfd library -- portable access to object files. - Copyright 1990, 1991, 1992, 1993, 1994 Free Software Foundation, Inc. + Copyright 1990, 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc. Contributed by Cygnus Support. ** NOTE: bfd.h and bfd-in2.h are GENERATED files. Don't change them; @@ -160,6 +160,7 @@ typedef unsigned long bfd_size_type; #define printf_vma(x) fprintf_vma(stdout,x) typedef unsigned int flagword; /* 32 bits of flags */ +typedef unsigned char bfd_byte; /** File formats */ @@ -229,6 +230,9 @@ typedef enum bfd_format { /* A count of carsyms (canonical archive symbols). */ typedef unsigned long symindex; +/* How to perform a relocation. */ +typedef const struct reloc_howto_struct reloc_howto_type; + #define BFD_NO_MORE_SYMBOLS ((symindex) ~0) /* General purpose part of a symbol X; @@ -259,7 +263,6 @@ struct orl { /* output ranlib */ file_ptr pos; /* bfd* or file position */ int namidx; /* index into string table */ }; - /* Linenumber stuff */ @@ -1153,7 +1156,7 @@ typedef struct reloc_cache_entry bfd_vma addend; /* Pointer to how to perform the required relocation */ - const struct reloc_howto_struct *howto; + reloc_howto_type *howto; } arelent; enum complain_overflow @@ -1174,9 +1177,6 @@ enum complain_overflow complain_overflow_unsigned }; -typedef unsigned char bfd_byte; -typedef const struct reloc_howto_struct reloc_howto_type; - struct reloc_howto_struct { /* The type field has mainly a documetary use - the back end can @@ -1531,7 +1531,7 @@ of instruction. */ BFD_RELOC_UNUSED }; typedef enum bfd_reloc_code_real bfd_reloc_code_real_type; -const struct reloc_howto_struct * +reloc_howto_type * bfd_reloc_type_lookup PARAMS ((bfd *abfd, bfd_reloc_code_real_type code)); @@ -1844,6 +1844,7 @@ typedef enum bfd_error bfd_error_no_debug_section, bfd_error_bad_value, bfd_error_file_truncated, + bfd_error_file_too_big, bfd_error_invalid_error_code } bfd_error_type; @@ -2013,7 +2014,9 @@ enum bfd_flavour { bfd_target_tekhex_flavour, bfd_target_srec_flavour, bfd_target_som_flavour, - bfd_target_os9k_flavour}; + bfd_target_os9k_flavour, + bfd_target_msdos_flavour +}; /* Forward declaration. */ typedef struct bfd_link_info _bfd_link_info; @@ -2161,7 +2164,7 @@ CAT(NAME,_bfd_reloc_type_lookup) long (*_bfd_canonicalize_reloc) PARAMS ((bfd *, sec_ptr, arelent **, struct symbol_cache_entry **)); /* See documentation on reloc types. */ - CONST struct reloc_howto_struct * + reloc_howto_type * (*reloc_type_lookup) PARAMS ((bfd *abfd, bfd_reloc_code_real_type code)); -- 2.7.4