Improve gas error messages for invalid instructions.
[deliverable/binutils-gdb.git] / bfd / libaout.h
index a08af0a11fa5f06b3ee08c988fd0b28c15b914c8..818b10c95e8e7c136a749c5e150140bf6a964b27 100644 (file)
@@ -1,5 +1,6 @@
 /* BFD back-end data structures for a.out (and similar) files.
-   Copyright 1990, 91, 92, 93, 94, 95, 1996 Free Software Foundation, Inc.
+   Copyright 1990, 91, 92, 93, 94, 95, 96, 97, 1998
+   Free Software Foundation, Inc.
    Written by Cygnus Support.
 
 This file is part of BFD, the Binary File Descriptor library.
@@ -32,22 +33,39 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 #if ARCH_SIZE==64
 #define GET_WORD bfd_h_get_64
 #define GET_SWORD bfd_h_get_signed_64
+#define GET_MAGIC bfd_h_get_32
 #define PUT_WORD bfd_h_put_64
+#define PUT_MAGIC bfd_h_put_32
 #ifndef NAME
 #define NAME(x,y) CAT3(x,_64_,y)
 #endif
 #define JNAME(x) CAT(x,_64)
 #define BYTES_IN_WORD 8
+#else
+#if ARCH_SIZE==16
+#define GET_WORD bfd_h_get_16
+#define GET_SWORD bfd_h_get_signed_16
+#define GET_MAGIC bfd_h_get_16
+#define PUT_WORD bfd_h_put_16
+#define PUT_MAGIC bfd_h_put_16
+#ifndef NAME
+#define NAME(x,y) CAT3(x,_16_,y)
+#endif
+#define JNAME(x) CAT(x,_16)
+#define BYTES_IN_WORD 2
 #else /* ARCH_SIZE == 32 */
 #define GET_WORD bfd_h_get_32
 #define GET_SWORD bfd_h_get_signed_32
+#define GET_MAGIC bfd_h_get_32
 #define PUT_WORD bfd_h_put_32
+#define PUT_MAGIC bfd_h_put_32
 #ifndef NAME
 #define NAME(x,y) CAT3(x,_32_,y)
 #endif
 #define JNAME(x) CAT(x,_32)
 #define BYTES_IN_WORD 4
 #endif /* ARCH_SIZE==32 */
+#endif /* ARCH_SIZE==64 */
 
 /* Declare at file level, since used in parameter lists, which have
    weird scope.  */
@@ -105,6 +123,12 @@ struct aout_backend_data
      If not, the text section starts on the next page.  */
   unsigned char text_includes_header;
 
+  /* If this flag is set, then if the entry address is not in the
+     first SEGMENT_SIZE bytes of the text section, it is taken to be
+     the address of the start of the text section.  This can be useful
+     for kernels.  */
+  unsigned char entry_is_text_address;
+
   /* The value to pass to N_SET_FLAGS.  */
   unsigned char exec_hdr_flags;
 
@@ -222,11 +246,24 @@ enum machine_type {
   M_68K4K_NETBSD = 136,        /* NetBSD/m68k4k binary */
   M_532_NETBSD = 137,  /* NetBSD/ns32k binary */
   M_SPARC_NETBSD = 138,        /* NetBSD/sparc binary */
+  M_PMAX_NETBSD = 139, /* NetBSD/pmax (MIPS little-endian) binary */
+  M_VAX_NETBSD = 140,  /* NetBSD/vax binary */
+  M_ALPHA_NETBSD = 141,        /* NetBSD/alpha binary */
+  M_ARM6_NETBSD = 143, /* NetBSD/arm32 binary */
+  M_SPARCLET_1 = 147,  /* 0x93, reserved */
   M_MIPS1 = 151,        /* MIPS R2000/R3000 binary */
   M_MIPS2 = 152,        /* MIPS R4000/R6000 binary */
+  M_SPARCLET_2 = 163,  /* 0xa3, reserved */
+  M_SPARCLET_3 = 179,  /* 0xb3, reserved */
+  M_SPARCLET_4 = 195,  /* 0xc3, reserved */
   M_HP200 = 200,       /* HP 200 (68010) BSD binary */
   M_HP300 = (300 % 256), /* HP 300 (68020+68881) BSD binary */
-  M_HPUX = (0x20c % 256)/* HP 200/300 HPUX binary */
+  M_HPUX = (0x20c % 256), /* HP 200/300 HPUX binary */
+  M_SPARCLET_5 = 211,  /* 0xd3, reserved */
+  M_SPARCLET_6 = 227,  /* 0xe3, reserved */
+  /*  M_SPARCLET_7 = 243       / * 0xf3, reserved */
+  M_SPARCLITE_LE = 243,
+  M_CRIS = 255         /* Axis CRIS binary.  */
 };
 
 #define N_DYNAMIC(exec) ((exec).a_info & 0x80000000)
@@ -547,6 +584,8 @@ NAME(aout,bfd_free_cached_info) PARAMS ((bfd *));
 
 /* A.out uses the generic versions of these routines... */
 
+#define        aout_16_get_section_contents    _bfd_generic_get_section_contents
+
 #define        aout_32_get_section_contents    _bfd_generic_get_section_contents
 
 #define        aout_64_get_section_contents    _bfd_generic_get_section_contents
@@ -554,8 +593,8 @@ NAME(aout,bfd_free_cached_info) PARAMS ((bfd *));
 #define NO_WRITE_HEADER_KLUDGE 0
 #endif
 
-#ifndef aout_32_bfd_is_local_label
-#define aout_32_bfd_is_local_label bfd_generic_is_local_label
+#ifndef aout_32_bfd_is_local_label_name
+#define aout_32_bfd_is_local_label_name bfd_generic_is_local_label_name
 #endif
 
 #ifndef WRITE_HEADERS
This page took 0.027932 seconds and 4 git commands to generate.