diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/bfd/ChangeLog.M68HC11 binutils-2.11.2-m68hc1x/bfd/ChangeLog.M68HC11
--- binutils-2.11.2/bfd/ChangeLog.M68HC11	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/bfd/ChangeLog.M68HC11	Sun Feb  3 11:56:50 2002
@@ -0,0 +1,50 @@
+2002-02-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* elf32-m68hc12.c: Don't compile this file since it is now merged
+	in elf32-m68hc11.c.
+
+2002-01-20  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* elf32-m68hc11.c (m68hc11_relax_group): New to relax group of
+	instructions.
+	(m68hc11_elf_relax_section): Relax group of instructions.
+	(elf_m68hc11_howto_table): Use complain_overflow_dont for
+	R_M68HC11_NONE.
+	(m68hc11_elf_relax_delete_bytes): Fix deletion of page2 prefix
+	for brclr/brset instructions.
+
+2001-12-23  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* elf32-m68hc11.c (R_M68HC11_PCREL_8): Fix src_mask.
+	(R_M68HC11_PCREL_16): Likewise.
+
+2001-12-15  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* reloc.c (BFD_RELOC_M68HC11_RL_JUMP): New reloc.
+	(BFD_RELOC_M68HC11_RL_GROUP): Likewise.
+	* bfd-in2.h: Rebuild.
+	* elf32-m68hc11.c (elf_m68hc11_howto_table): Add new relocs for
+	relaxation.
+	(m68hc11_reloc_map): Likewise.
+	(m68hc11_elf_ignore_reloc): New for above relocs.
+	(elf32_m68hc11_gc_mark_hook): New for section GC.
+	(elf32_m68hc11_gc_sweep_hook): Likewise.
+	(m68hc11_direct_relax_table): New, table of relaxable instructions.
+	(find_relaxable_insn): New, find a relaxable insn.
+	(compare_reloc): New to compare two relocs.
+	(m68hc11_elf_relax_section): New, relax text sections.
+	(m68hc11_elf_relax_delete_bytes): New, delete bytes and adjust branchs.
+	(elf32_m68hc11_check_relocs): New function for GC support.
+	(elf32_m68hc11_relocate_section): New function for GC support.
+	(bfd_elf32_bfd_relax_section): Define to support linker relaxation.
+	(elf_backend_gc_mark_hook): Define for GC section support.
+	(elf_backend_gc_sweep_hook): Likewise.
+	(elf_backend_check_relocs): Likewise.
+	(elf_backend_relocate_section): Likewise.
+	(elf_backend_can_gc_sections): Likewise.
+
+2001-09-22  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* dwarf2.c (comp_unit_find_nearest_line): Check for end of
+	compilation unit.
+
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/bfd/bfd-in2.h binutils-2.11.2-m68hc1x/bfd/bfd-in2.h
--- binutils-2.11.2/bfd/bfd-in2.h	Fri Sep 21 20:58:38 2001
+++ binutils-2.11.2-m68hc1x/bfd/bfd-in2.h	Sat Dec 15 23:07:12 2001
@@ -2636,6 +2636,14 @@ This is the 8 bits low part of an absolu
 This is the 3 bits of a value. */
   BFD_RELOC_M68HC11_3B,
 
+/* Motorola 68HC11 reloc.
+   Relaxation instruction to use direct addressing mode.  */
+  BFD_RELOC_M68HC11_RL_JUMP,
+
+/* Motorola 68HC11 reloc.
+   Relaxation instruction to use direct addressing mode.  */
+  BFD_RELOC_M68HC11_RL_GROUP,
+
 /* These relocs are only used within the CRIS assembler.  They are not
 (at present) written to any object files. */
   BFD_RELOC_CRIS_BDISP8,
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/bfd/dwarf2.c binutils-2.11.2-m68hc1x/bfd/dwarf2.c
--- binutils-2.11.2/bfd/dwarf2.c	Fri Sep 21 20:58:38 2001
+++ binutils-2.11.2-m68hc1x/bfd/dwarf2.c	Sat Sep 22 00:00:10 2001
@@ -1431,7 +1431,8 @@ comp_unit_find_nearest_line (unit, addr,
 	  return false;
 	}
 
-      if (! scan_unit_for_functions (unit))
+      if (unit->first_child_die_ptr < unit->end_ptr
+          && ! scan_unit_for_functions (unit))
 	{
 	  unit->error = 1;
 	  return false;
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/bfd/elf32-m68hc11.c binutils-2.11.2-m68hc1x/bfd/elf32-m68hc11.c
--- binutils-2.11.2/bfd/elf32-m68hc11.c	Fri Sep 21 20:58:38 2001
+++ binutils-2.11.2-m68hc1x/bfd/elf32-m68hc11.c	Sun Jan 20 18:45:57 2002
@@ -1,5 +1,5 @@
-/* Motorola 68HC11-specific support for 32-bit ELF
-   Copyright 1999, 2000 Free Software Foundation, Inc.
+/* Motorola 68HC11/68HC12-specific support for 32-bit ELF
+   Copyright 1999, 2000, 2001 Free Software Foundation, Inc.
    Contributed by Stephane Carrez (stcarrez@worldnet.fr)
    (Heavily copied from the D10V port by Martin Hunt (hunt@cygnus.com))
 
@@ -21,6 +21,7 @@ Foundation, Inc., 59 Temple Place - Suit
 
 #include "bfd.h"
 #include "sysdep.h"
+#include "bfdlink.h"
 #include "libbfd.h"
 #include "elf-bfd.h"
 #include "elf/m68hc11.h"
@@ -29,6 +30,33 @@ static reloc_howto_type *bfd_elf32_bfd_r
 PARAMS ((bfd * abfd, bfd_reloc_code_real_type code));
 static void m68hc11_info_to_howto_rel
 PARAMS ((bfd *, arelent *, Elf32_Internal_Rel *));
+static bfd_reloc_status_type m68hc11_elf_ignore_reloc
+PARAMS ((bfd *abfd, arelent *reloc_entry,
+         asymbol *symbol, PTR data, asection *input_section,
+         bfd *output_bfd, char **error_message));
+static asection *elf32_m68hc11_gc_mark_hook
+PARAMS ((bfd *abfd, struct bfd_link_info *info,
+         Elf_Internal_Rela *rel, struct elf_link_hash_entry *h,
+         Elf_Internal_Sym *sym));
+static boolean elf32_m68hc11_gc_sweep_hook
+PARAMS ((bfd *abfd, struct bfd_link_info *info,
+         asection *sec, const Elf_Internal_Rela *relocs));
+static boolean elf32_m68hc11_check_relocs
+PARAMS ((bfd * abfd, struct bfd_link_info * info,
+         asection * sec, const Elf_Internal_Rela * relocs));
+static boolean elf32_m68hc11_relocate_section
+PARAMS ((bfd *output_bfd, struct bfd_link_info *info,
+         bfd *input_bfd, asection *input_section,
+         bfd_byte *contents, Elf_Internal_Rela *relocs,
+         Elf_Internal_Sym *local_syms, asection **local_sections));
+static boolean m68hc11_elf_relax_section
+  PARAMS ((bfd *, asection *, struct bfd_link_info *, boolean *));
+static void m68hc11_elf_relax_delete_bytes
+PARAMS ((bfd *abfd, asection *sec, bfd_vma addr, int count));
+static void m68hc11_relax_group
+PARAMS ((bfd *abfd, asection *sec, bfd_byte *contents,
+         unsigned value, unsigned long offset, unsigned long end_group));
+
 
 /* Use REL instead of RELA to save space */
 #define USE_REL
@@ -46,7 +74,7 @@ static reloc_howto_type elf_m68hc11_howt
 	 32,			/* bitsize */
 	 false,			/* pc_relative */
 	 0,			/* bitpos */
-	 complain_overflow_bitfield,	/* complain_on_overflow */
+	 complain_overflow_dont,/* complain_on_overflow */
 	 bfd_elf_generic_reloc,	/* special_function */
 	 "R_M68HC11_NONE",	/* name */
 	 false,			/* partial_inplace */
@@ -110,7 +138,7 @@ static reloc_howto_type elf_m68hc11_howt
 	 bfd_elf_generic_reloc,	/* special_function */
 	 "R_M68HC11_PCREL_8",	/* name */
 	 false,			/* partial_inplace */
-	 0x0,			/* src_mask */
+	 0x00ff,		/* src_mask */
 	 0x00ff,		/* dst_mask */
 	 false),		/* pcrel_offset */
 
@@ -171,7 +199,7 @@ static reloc_howto_type elf_m68hc11_howt
 	 bfd_elf_generic_reloc,	/* special_function */
 	 "R_M68HC11_PCREL_16",	/* name */
 	 false,			/* partial_inplace */
-	 0x0,			/* src_mask */
+	 0xffff,		/* src_mask */
 	 0xffff,		/* dst_mask */
 	 false),		/* pcrel_offset */
 
@@ -204,6 +232,46 @@ static reloc_howto_type elf_m68hc11_howt
 	 0,			/* src_mask */
 	 0,			/* dst_mask */
 	 false),		/* pcrel_offset */
+
+  EMPTY_HOWTO (11),
+  EMPTY_HOWTO (12),
+  EMPTY_HOWTO (13),
+  EMPTY_HOWTO (14),
+  EMPTY_HOWTO (15),
+  EMPTY_HOWTO (16),
+  EMPTY_HOWTO (17),
+  EMPTY_HOWTO (18),
+  EMPTY_HOWTO (19),
+  
+  /* Mark beginning of a jump instruction (any form).  */
+  HOWTO (R_M68HC11_RL_JUMP,	/* type */
+	 0,			/* rightshift */
+	 1,			/* size (0 = byte, 1 = short, 2 = long) */
+	 0,			/* bitsize */
+	 false,			/* pc_relative */
+	 0,			/* bitpos */
+	 complain_overflow_dont,	/* complain_on_overflow */
+	 m68hc11_elf_ignore_reloc,	/* special_function */
+	 "R_M68HC11_RL_JUMP",	/* name */
+	 true,			/* partial_inplace */
+	 0,			/* src_mask */
+	 0,			/* dst_mask */
+	 true),                 /* pcrel_offset */
+
+  /* Mark beginning of Gcc relaxation group instruction.  */
+  HOWTO (R_M68HC11_RL_GROUP,	/* type */
+	 0,			/* rightshift */
+	 1,			/* size (0 = byte, 1 = short, 2 = long) */
+	 0,			/* bitsize */
+	 false,			/* pc_relative */
+	 0,			/* bitpos */
+	 complain_overflow_dont,	/* complain_on_overflow */
+	 m68hc11_elf_ignore_reloc,	/* special_function */
+	 "R_M68HC11_RL_GROUP",	/* name */
+	 true,			/* partial_inplace */
+	 0,			/* src_mask */
+	 0,			/* dst_mask */
+	 true),                 /* pcrel_offset */
 };
 
 /* Map BFD reloc types to M68HC11 ELF reloc types.  */
@@ -225,9 +293,11 @@ static const struct m68hc11_reloc_map m6
   {BFD_RELOC_32, R_M68HC11_32},
   {BFD_RELOC_M68HC11_3B, R_M68HC11_3B},
 
-  /* The following relocs are defined but they probably don't work yet.  */
   {BFD_RELOC_VTABLE_INHERIT, R_M68HC11_GNU_VTINHERIT},
   {BFD_RELOC_VTABLE_ENTRY, R_M68HC11_GNU_VTENTRY},
+
+  {BFD_RELOC_M68HC11_RL_JUMP, R_M68HC11_RL_JUMP},
+  {BFD_RELOC_M68HC11_RL_GROUP, R_M68HC11_RL_GROUP},
 };
 
 static reloc_howto_type *
@@ -248,6 +318,25 @@ bfd_elf32_bfd_reloc_type_lookup (abfd, c
   return NULL;
 }
 
+/* This function is used for relocs which are only used for relaxing,
+   which the linker should otherwise ignore.  */
+
+static bfd_reloc_status_type
+m68hc11_elf_ignore_reloc (abfd, reloc_entry, symbol, data, input_section,
+                          output_bfd, error_message)
+     bfd *abfd ATTRIBUTE_UNUSED;
+     arelent *reloc_entry;
+     asymbol *symbol ATTRIBUTE_UNUSED;
+     PTR data ATTRIBUTE_UNUSED;
+     asection *input_section;
+     bfd *output_bfd;
+     char **error_message ATTRIBUTE_UNUSED;
+{
+  if (output_bfd != NULL)
+    reloc_entry->address += input_section->output_offset;
+  return bfd_reloc_ok;
+}
+
 /* Set the howto pointer for an M68HC11 ELF reloc.  */
 
 static void
@@ -263,6 +352,1080 @@ m68hc11_info_to_howto_rel (abfd, cache_p
   cache_ptr->howto = &elf_m68hc11_howto_table[r_type];
 }
 
+static asection *
+elf32_m68hc11_gc_mark_hook (abfd, info, rel, h, sym)
+     bfd *abfd;
+     struct bfd_link_info *info ATTRIBUTE_UNUSED;
+     Elf_Internal_Rela *rel;
+     struct elf_link_hash_entry *h;
+     Elf_Internal_Sym *sym;
+{
+  if (h != NULL)
+    {
+      switch (ELF32_R_TYPE (rel->r_info))
+	{
+	default:
+	  switch (h->root.type)
+	    {
+	    case bfd_link_hash_defined:
+	    case bfd_link_hash_defweak:
+	      return h->root.u.def.section;
+
+	    case bfd_link_hash_common:
+	      return h->root.u.c.p->section;
+
+	    default:
+	      break;
+	    }
+	}
+    }
+  else
+    {
+      if (!(elf_bad_symtab (abfd)
+	    && ELF_ST_BIND (sym->st_info) != STB_LOCAL)
+	  && !((sym->st_shndx <= 0 || sym->st_shndx >= SHN_LORESERVE)
+	       && sym->st_shndx != SHN_COMMON))
+	{
+	  return bfd_section_from_elf_index (abfd, sym->st_shndx);
+	}
+    }
+  return NULL;
+}
+
+static boolean
+elf32_m68hc11_gc_sweep_hook (abfd, info, sec, relocs)
+     bfd *abfd ATTRIBUTE_UNUSED;
+     struct bfd_link_info *info ATTRIBUTE_UNUSED;
+     asection *sec ATTRIBUTE_UNUSED;
+     const Elf_Internal_Rela *relocs ATTRIBUTE_UNUSED;
+{
+  /* We don't use got and plt entries for 68hc11/68hc12.  */
+  return true;
+}
+
+struct m68hc11_direct_relax 
+{
+  const char *name;
+  unsigned char code;
+  unsigned char direct_code;
+} m68hc11_direct_relax_table[] = {
+  { "adca", 0xB9, 0x99 },
+  { "adcb", 0xF9, 0xD9 },
+  { "adda", 0xBB, 0x9B },
+  { "addb", 0xFB, 0xDB },
+  { "addd", 0xF3, 0xD3 },
+  { "anda", 0xB4, 0x94 },
+  { "andb", 0xF4, 0xD4 },
+  { "cmpa", 0xB1, 0x91 },
+  { "cmpb", 0xF1, 0xD1 },
+  { "cpd",  0xB3, 0x93 },
+  { "cpxy", 0xBC, 0x9C },
+/* { "cpy",  0xBC, 0x9C }, */
+  { "eora", 0xB8, 0x98 },
+  { "eorb", 0xF8, 0xD8 },
+  { "jsr",  0xBD, 0x9D },
+  { "ldaa", 0xB6, 0x96 },
+  { "ldab", 0xF6, 0xD6 },
+  { "ldd",  0xFC, 0xDC },
+  { "lds",  0xBE, 0x9E },
+  { "ldxy", 0xFE, 0xDE },
+  /*  { "ldy",  0xFE, 0xDE },*/
+  { "oraa", 0xBA, 0x9A },
+  { "orab", 0xFA, 0xDA },
+  { "sbca", 0xB2, 0x92 },
+  { "sbcb", 0xF2, 0xD2 },
+  { "staa", 0xB7, 0x97 },
+  { "stab", 0xF7, 0xD7 },
+  { "std",  0xFD, 0xDD },
+  { "sts",  0xBF, 0x9F },
+  { "stxy", 0xFF, 0xDF },
+  /*  { "sty",  0xFF, 0xDF },*/
+  { "suba", 0xB0, 0x90 },
+  { "subb", 0xF0, 0xD0 },
+  { "subd", 0xB3, 0x93 },
+  { 0, 0, 0 }
+};
+
+static struct m68hc11_direct_relax *
+find_relaxable_insn (unsigned char code)
+{
+  int i;
+
+  for (i = 0; m68hc11_direct_relax_table[i].name; i++)
+    if (m68hc11_direct_relax_table[i].code == code)
+      return &m68hc11_direct_relax_table[i];
+
+  return 0;
+}
+
+static int
+compare_reloc (e1, e2)
+     const void *e1;
+     const void *e2;
+{
+  const Elf_Internal_Rela *i1 = (const Elf_Internal_Rela *) e1;
+  const Elf_Internal_Rela *i2 = (const Elf_Internal_Rela *) e2;
+
+  if (i1->r_offset == i2->r_offset)
+    return 0;
+  else
+    return i1->r_offset < i2->r_offset ? -1 : 1;
+}
+
+#define M6811_OP_LDX_IMMEDIATE (0xCE)
+
+static void
+m68hc11_relax_group (abfd, sec, contents, value, offset, end_group)
+     bfd *abfd;
+     asection *sec;
+     bfd_byte *contents;
+     unsigned value;
+     unsigned long offset;
+     unsigned long end_group;
+{
+  unsigned char code;
+  unsigned long start_offset;
+  unsigned long ldx_offset = offset;
+  unsigned long ldx_size;
+  int can_delete_ldx;
+  int relax_ldy = 0;
+
+  /* First instruction of the relax group must be a
+     LDX #value or LDY #value.  If this is not the case,
+     ignore the relax group.  */
+  code = bfd_get_8 (abfd, contents + offset);
+  if (code == 0x18)
+    {
+      relax_ldy++;
+      offset++;
+      code = bfd_get_8 (abfd, contents + offset);
+    }
+  ldx_size = offset - ldx_offset + 3;
+  offset += 3;
+  if (code != M6811_OP_LDX_IMMEDIATE || offset >= end_group)
+    return;
+
+
+  /* We can remove the LDX/LDY only when all bset/brclr instructions
+     of the relax group have been converted to use direct addressing
+     mode.  */
+  can_delete_ldx = 1;
+  while (offset < end_group)
+    {
+      unsigned isize;
+      unsigned new_value;
+      int bset_use_y;
+
+      bset_use_y = 0;
+      start_offset = offset;
+      code = bfd_get_8 (abfd, contents + offset);
+      if (code == 0x18)
+        {
+          bset_use_y++;
+          offset++;
+          code = bfd_get_8 (abfd, contents + offset);
+        }
+
+      /* Check the instruction and translate to use direct addressing mode.  */
+      switch (code)
+        {
+          /* bset */
+        case 0x1C:
+          code = 0x14;
+          isize = 3;
+          break;
+
+          /* brclr */
+        case 0x1F:
+          code = 0x13;
+          isize = 4;
+          break;
+
+          /* brset */
+        case 0x1E:
+          code = 0x12;
+          isize = 4;
+          break;
+
+          /* bclr */
+        case 0x1D:
+          code = 0x15;
+          isize = 3;
+          break;
+
+          /* This instruction is not recognized and we are not
+             at end of the relax group.  Ignore and don't remove
+             the first LDX (we don't know what it is used for...).  */
+        default:
+          return;
+        }
+      new_value = (unsigned) bfd_get_8 (abfd, contents + offset + 1);
+      new_value += value;
+      if ((new_value & 0xff00) == 0 && bset_use_y == relax_ldy)
+        {
+          bfd_put_8 (abfd, code, contents + offset);
+          bfd_put_8 (abfd, new_value, contents + offset + 1);
+          if (start_offset != offset)
+            {
+              m68hc11_elf_relax_delete_bytes (abfd, sec, start_offset,
+                                              offset - start_offset);
+              end_group--;
+            }
+        }
+      else
+        {
+          can_delete_ldx = 0;
+        }
+      offset = start_offset + isize;
+    }
+  if (can_delete_ldx)
+    {
+      /* Remove the move instruction (3 or 4 bytes win).  */
+      m68hc11_elf_relax_delete_bytes (abfd, sec, ldx_offset, ldx_size);
+    }
+}
+
+/* This function handles relaxing for the 68HC11.
+
+   
+	and somewhat more difficult to support.  */
+
+static boolean
+m68hc11_elf_relax_section (abfd, sec, link_info, again)
+     bfd *abfd;
+     asection *sec;
+     struct bfd_link_info *link_info;
+     boolean *again;
+{
+  Elf_Internal_Shdr *symtab_hdr;
+  Elf_Internal_Rela *internal_relocs;
+  Elf_Internal_Rela *free_relocs = NULL;
+  Elf_Internal_Rela *irel, *irelend;
+  bfd_byte *contents = NULL;
+  bfd_byte *free_contents = NULL;
+  Elf32_External_Sym *extsyms = NULL;
+  Elf32_External_Sym *free_extsyms = NULL;
+  Elf_Internal_Rela *prev_insn_branch = NULL;
+  Elf_Internal_Rela *prev_insn_group = NULL;
+  unsigned insn_group_value;
+
+  /* Assume nothing changes.  */
+  *again = false;
+
+  /* We don't have to do anything for a relocateable link, if
+     this section does not have relocs, or if this is not a
+     code section.  */
+  if (link_info->relocateable
+      || (sec->flags & SEC_RELOC) == 0
+      || sec->reloc_count == 0
+      || (sec->flags & SEC_CODE) == 0)
+    return true;
+
+  /* If this is the first time we have been called for this section,
+     initialize the cooked size.  */
+  if (sec->_cooked_size == 0)
+    sec->_cooked_size = sec->_raw_size;
+
+  symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
+
+  /* Get a copy of the native relocations.  */
+  internal_relocs = (_bfd_elf32_link_read_relocs
+		     (abfd, sec, (PTR) NULL, (Elf_Internal_Rela *) NULL,
+		      link_info->keep_memory));
+  if (internal_relocs == NULL)
+    goto error_return;
+  if (! link_info->keep_memory)
+    free_relocs = internal_relocs;
+
+  /* Checking for branch relaxation relies on the relocations to
+     be sorted on 'r_offset'.  This is not guaranteed so we must sort.  */
+  qsort (internal_relocs, sec->reloc_count, sizeof (Elf_Internal_Rela),
+         compare_reloc);
+
+  /* Walk through them looking for relaxing opportunities.  */
+  irelend = internal_relocs + sec->reloc_count;
+  for (irel = internal_relocs; irel < irelend; irel++)
+    {
+      bfd_vma symval;
+      bfd_vma value;
+      Elf_Internal_Sym isym;
+
+      /* If this isn't something that can be relaxed, then ignore
+	 this reloc.  */
+      if (ELF32_R_TYPE (irel->r_info) != (int) R_M68HC11_16
+          && ELF32_R_TYPE (irel->r_info) != (int) R_M68HC11_RL_JUMP
+          && ELF32_R_TYPE (irel->r_info) != (int) R_M68HC11_RL_GROUP)
+        {
+          prev_insn_branch = 0;
+          prev_insn_group = 0;
+          continue;
+        }
+
+      /* Get the section contents if we haven't done so already.  */
+      if (contents == NULL)
+	{
+	  /* Get cached copy if it exists.  */
+	  if (elf_section_data (sec)->this_hdr.contents != NULL)
+	    contents = elf_section_data (sec)->this_hdr.contents;
+	  else
+	    {
+	      /* Go get them off disk.  */
+	      contents = (bfd_byte *) bfd_malloc (sec->_raw_size);
+	      if (contents == NULL)
+		goto error_return;
+	      free_contents = contents;
+
+	      if (! bfd_get_section_contents (abfd, sec, contents,
+					      (file_ptr) 0, sec->_raw_size))
+		goto error_return;
+	    }
+	}
+
+      /* Try to eliminate an unconditional 8 bit pc-relative branch
+	 which immediately follows a conditional 8 bit pc-relative
+	 branch around the unconditional branch.
+
+	    original:		new:
+	    bCC lab1		bCC' lab2
+	    bra lab2
+	   lab1:	       lab1:
+
+	 This happens when the bCC can't reach lab2 at assembly time,
+	 but due to other relaxations it can reach at link time.  */
+      if (ELF32_R_TYPE (irel->r_info) == (int) R_M68HC11_RL_JUMP)
+	{
+	  Elf_Internal_Rela *nrel;
+	  unsigned char code;
+          unsigned char roffset;
+
+          prev_insn_branch = 0;
+          prev_insn_group = 0;
+          
+	  /* Do nothing if this reloc is the last byte in the section.  */
+	  if (irel->r_offset == sec->_cooked_size)
+	    continue;
+
+	  /* See if the next instruction is an unconditional pc-relative
+	     branch, more often than not this test will fail, so we
+	     test it first to speed things up.  */
+	  code = bfd_get_8 (abfd, contents + irel->r_offset + 2);
+	  if (code != 0x7e)
+	    continue;
+
+	  /* Also make sure the next relocation applies to the next
+	     instruction and that it's a pc-relative 8 bit branch.  */
+	  nrel = irel + 1;
+	  if (nrel == irelend
+	      || irel->r_offset + 3 != nrel->r_offset
+	      || ELF32_R_TYPE (nrel->r_info) != (int) R_M68HC11_16)
+	    continue;
+
+	  /* Make sure our destination immediately follows the
+	     unconditional branch.  */
+          roffset = bfd_get_8 (abfd, contents + irel->r_offset + 1);
+          if (roffset != 3)
+            continue;
+
+	  /* Now make sure we are a conditional branch.  This may not
+	     be necessary, but why take the chance.
+
+	     Note these checks assume that R_MN10200_PCREL8 relocs
+	     only occur on bCC and bCCx insns.  If they occured
+	     elsewhere, we'd need to know the start of this insn
+	     for this check to be accurate.  */
+#if 0
+	  code = bfd_get_8 (abfd, contents + irel->r_offset - 1);
+	  if (code != 0xe0 && code != 0xe1 && code != 0xe2
+	      && code != 0xe3 && code != 0xe4 && code != 0xe5
+	      && code != 0xe6 && code != 0xe7 && code != 0xe8
+	      && code != 0xe9 && code != 0xec && code != 0xed
+	      && code != 0xee && code != 0xef && code != 0xfc
+	      && code != 0xfd && code != 0xfe && code != 0xff)
+	    continue;
+	  /* We also have to be sure there is no symbol/label
+	     at the unconditional branch.  */
+	  if (mn10200_elf_symbol_address_p (abfd, sec, extsyms,
+					    irel->r_offset + 1))
+	    continue;
+#endif
+
+          prev_insn_branch = irel;
+          prev_insn_group = 0;
+          continue;
+        }
+
+      /* Read this BFD's symbols if we haven't done so already.  */
+      if (extsyms == NULL)
+	{
+	  /* Get cached copy if it exists.  */
+	  if (symtab_hdr->contents != NULL)
+	    extsyms = (Elf32_External_Sym *) symtab_hdr->contents;
+	  else
+	    {
+	      /* Go get them off disk.  */
+	      bfd_size_type amt = symtab_hdr->sh_size;
+	      extsyms = (Elf32_External_Sym *) bfd_malloc (amt);
+	      if (extsyms == NULL)
+		goto error_return;
+	      free_extsyms = extsyms;
+	      if (bfd_seek (abfd, symtab_hdr->sh_offset, SEEK_SET) != 0
+		  || bfd_read (extsyms, 1, amt, abfd) != amt)
+		goto error_return;
+	    }
+	}
+
+      /* Get the value of the symbol referred to by the reloc.  */
+      if (ELF32_R_SYM (irel->r_info) < symtab_hdr->sh_info)
+	{
+	  asection *sym_sec;
+
+	  /* A local symbol.  */
+	  bfd_elf32_swap_symbol_in (abfd,
+				    extsyms + ELF32_R_SYM (irel->r_info),
+				    &isym);
+
+	  sym_sec = bfd_section_from_elf_index (abfd, isym.st_shndx);
+	  symval = (isym.st_value
+		    + sym_sec->output_section->vma
+		    + sym_sec->output_offset);
+	}
+      else
+	{
+	  unsigned long indx;
+	  struct elf_link_hash_entry *h;
+
+	  /* An external symbol.  */
+	  indx = ELF32_R_SYM (irel->r_info) - symtab_hdr->sh_info;
+	  h = elf_sym_hashes (abfd)[indx];
+	  BFD_ASSERT (h != NULL);
+	  if (h->root.type != bfd_link_hash_defined
+	      && h->root.type != bfd_link_hash_defweak)
+	    {
+	      /* This appears to be a reference to an undefined
+                 symbol.  Just ignore it--it will be caught by the
+                 regular reloc processing.  */
+              prev_insn_branch = 0;
+              prev_insn_group = 0;
+	      continue;
+	    }
+
+	  symval = (h->root.u.def.value
+		    + h->root.u.def.section->output_section->vma
+		    + h->root.u.def.section->output_offset);
+	}
+
+      if (ELF32_R_TYPE (irel->r_info) == (int) R_M68HC11_RL_GROUP)
+	{
+          prev_insn_branch = 0;
+          prev_insn_group = 0;
+          
+	  /* Do nothing if this reloc is the last byte in the section.  */
+	  if (irel->r_offset == sec->_cooked_size)
+	    continue;
+
+          prev_insn_group = irel;
+          insn_group_value = isym.st_value;
+          continue;
+        }
+
+      value = symval;
+      /* Try to turn a far branch to a near branch.  */
+      if (ELF32_R_TYPE (irel->r_info) == (int) R_M68HC11_16
+          && prev_insn_branch)
+        {
+          bfd_vma offset;
+          unsigned char code;
+
+          offset = value - (prev_insn_branch->r_offset
+                            + sec->output_section->vma
+                            + sec->output_offset + 2);
+
+          /* If the offset is still out of -128..+127 range,
+             leave that far branch unchanged.  */
+          if ((offset & 0xff80) != 0 && (offset & 0xff80) != 0xff80)
+            {
+              prev_insn_branch = 0;
+              continue;
+            }
+
+          /* Shrink the branch.  */
+          code = bfd_get_8 (abfd, contents + prev_insn_branch->r_offset);
+          if (code == 0x7e)
+            {
+              code = 0x20;
+              bfd_put_8 (abfd, code, contents + prev_insn_branch->r_offset);
+              bfd_put_8 (abfd, offset,
+                         contents + prev_insn_branch->r_offset + 1);
+              irel->r_info = ELF32_R_INFO (ELF32_R_SYM (irel->r_info),
+                                           R_M68HC11_NONE);
+              m68hc11_elf_relax_delete_bytes (abfd, sec,
+                                              irel->r_offset, 1);
+            }
+          else
+            {
+              code ^= 0x1;
+              bfd_put_8 (abfd, code, contents + prev_insn_branch->r_offset);
+              bfd_put_8 (abfd, offset,
+                         contents + prev_insn_branch->r_offset + 1);
+              irel->r_info = ELF32_R_INFO (ELF32_R_SYM (irel->r_info),
+                                           R_M68HC11_NONE);
+              m68hc11_elf_relax_delete_bytes (abfd, sec,
+                                              irel->r_offset - 1, 3);
+            }
+          prev_insn_branch = 0;
+        }
+
+      /* Try to turn a 16 bit address into a 8 bit page0 address.  */
+      else if (ELF32_R_TYPE (irel->r_info) == (int) R_M68HC11_16
+               && (value & 0xff00) == 0)
+	{
+          unsigned char code;
+          unsigned short offset;
+          struct m68hc11_direct_relax *rinfo;
+
+          prev_insn_branch = 0;
+          offset = bfd_get_16 (abfd, contents + irel->r_offset);
+          offset += value;
+          if ((offset & 0xff00) != 0)
+            {
+              prev_insn_group = 0;
+              continue;
+            }
+
+          if (prev_insn_group)
+            {
+              /* Note that we've changed the reldection contents, etc.  */
+              elf_section_data (sec)->relocs = internal_relocs;
+              free_relocs = NULL;
+
+              elf_section_data (sec)->this_hdr.contents = contents;
+              free_contents = NULL;
+
+              symtab_hdr->contents = (bfd_byte *) extsyms;
+              free_extsyms = NULL;
+
+              m68hc11_relax_group (abfd, sec, contents, offset,
+                                   prev_insn_group->r_offset,
+                                   insn_group_value);
+              irel = prev_insn_group;
+              prev_insn_group = 0;
+              irel->r_info = ELF32_R_INFO (ELF32_R_SYM (irel->r_info),
+                                           R_M68HC11_NONE);
+              continue;
+            }
+          
+          /* Get the opcode.  */
+          code = bfd_get_8 (abfd, contents + irel->r_offset - 1);
+          rinfo = find_relaxable_insn (code);
+          if (rinfo == 0)
+            {
+              prev_insn_group = 0;
+              continue;
+            }
+
+          /* Note that we've changed the reldection contents, etc.  */
+          elf_section_data (sec)->relocs = internal_relocs;
+          free_relocs = NULL;
+
+          elf_section_data (sec)->this_hdr.contents = contents;
+          free_contents = NULL;
+
+          symtab_hdr->contents = (bfd_byte *) extsyms;
+          free_extsyms = NULL;
+
+          /* Fix the opcode.  */
+          /* printf ("A relaxable case : 0x%02x (%s)\n",
+             code, rinfo->name); */
+          bfd_put_8 (abfd, rinfo->direct_code,
+                     contents + irel->r_offset - 1);
+
+          /* Delete one byte of data (upper byte of address).  */
+          m68hc11_elf_relax_delete_bytes (abfd, sec, irel->r_offset, 1);
+
+          /* Fix the relocation's type.  */
+          irel->r_info = ELF32_R_INFO (ELF32_R_SYM (irel->r_info),
+                                       R_M68HC11_8);
+
+          /* That will change things, so, we should relax again.
+             Note that this is not required, and it may be slow.  */
+          *again = true;
+        }
+      else if (ELF32_R_TYPE (irel->r_info) == R_M68HC11_16)
+        {
+          unsigned char code;
+          bfd_vma offset;
+
+          prev_insn_branch = 0;
+          code = bfd_get_8 (abfd, contents + irel->r_offset - 1);
+          if (code == 0x7e)
+            {
+              offset = value - (irel->r_offset
+                                + sec->output_section->vma
+                                + sec->output_offset + 1);
+              offset += bfd_get_16 (abfd, contents + irel->r_offset);
+              /*printf ("Found jmp [%x]\n", offset);*/
+              
+
+              /* If the offset is still out of -128..+127 range,
+                 leave that far branch unchanged.  */
+              if ((offset & 0xff80) == 0 || (offset & 0xff80) == 0xff80)
+                {
+
+                  /* Note that we've changed the reldection contents, etc.  */
+                  elf_section_data (sec)->relocs = internal_relocs;
+                  free_relocs = NULL;
+                  
+                  elf_section_data (sec)->this_hdr.contents = contents;
+                  free_contents = NULL;
+                  
+                  symtab_hdr->contents = (bfd_byte *) extsyms;
+                  free_extsyms = NULL;
+
+                  /* Shrink the branch.  */
+                  code = 0x20;
+                  bfd_put_8 (abfd, code,
+                             contents + irel->r_offset - 1);
+                  bfd_put_8 (abfd, offset,
+                             contents + irel->r_offset);
+                  irel->r_info = ELF32_R_INFO (ELF32_R_SYM (irel->r_info),
+                                               R_M68HC11_NONE);
+                  m68hc11_elf_relax_delete_bytes (abfd, sec,
+                                                  irel->r_offset + 1, 1);
+                }
+            }
+        }
+      prev_insn_branch = 0;
+    }
+
+  if (free_relocs != NULL)
+    {
+      free (free_relocs);
+      free_relocs = NULL;
+    }
+
+  if (free_contents != NULL)
+    {
+      if (! link_info->keep_memory)
+	free (free_contents);
+      else
+	{
+	  /* Cache the section contents for elf_link_input_bfd.  */
+	  elf_section_data (sec)->this_hdr.contents = contents;
+	}
+      free_contents = NULL;
+    }
+
+  if (free_extsyms != NULL)
+    {
+      if (! link_info->keep_memory)
+	free (free_extsyms);
+      else
+	{
+	  /* Cache the symbols for elf_link_input_bfd.  */
+	  symtab_hdr->contents = (unsigned char *) extsyms;
+	}
+      free_extsyms = NULL;
+    }
+
+  return true;
+
+ error_return:
+  if (free_relocs != NULL)
+    free (free_relocs);
+  if (free_contents != NULL)
+    free (free_contents);
+  if (free_extsyms != NULL)
+    free (free_extsyms);
+  return false;
+}
+
+/* Delete some bytes from a section while relaxing.  */
+
+static void
+m68hc11_elf_relax_delete_bytes (abfd, sec, addr, count)
+     bfd *abfd;
+     asection *sec;
+     bfd_vma addr;
+     int count;
+{
+  Elf_Internal_Shdr *symtab_hdr;
+  Elf32_External_Sym *extsyms;
+  int shndx, index;
+  bfd_byte *contents;
+  Elf_Internal_Rela *irel, *irelend;
+  bfd_vma toaddr;
+  Elf32_External_Sym *esym, *esymend;
+  struct elf_link_hash_entry *sym_hash;
+
+  symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
+  extsyms = (Elf32_External_Sym *) symtab_hdr->contents;
+
+  shndx = _bfd_elf_section_from_bfd_section (abfd, sec);
+
+  contents = elf_section_data (sec)->this_hdr.contents;
+
+  toaddr = sec->_cooked_size;
+
+  irel = elf_section_data (sec)->relocs;
+  irelend = irel + sec->reloc_count;
+
+  /* Actually delete the bytes.  */
+  memmove (contents + addr, contents + addr + count,
+	   (size_t) (toaddr - addr - count));
+  sec->_cooked_size -= count;
+
+  /* Adjust all the relocs.  */
+  for (irel = elf_section_data (sec)->relocs; irel < irelend; irel++)
+    {
+      unsigned char code;
+      unsigned char offset;
+      unsigned short raddr;
+      unsigned long old_offset;
+      int branch_pos;
+
+      old_offset = irel->r_offset;
+
+      /* See if this reloc was for the bytes we have deleted, in which
+	 case we no longer care about it.  Don't delete relocs which
+	 represent addresses, though.  */
+      if (ELF32_R_TYPE (irel->r_info) != R_M68HC11_RL_JUMP
+          && irel->r_offset >= addr && irel->r_offset < addr + count)
+        irel->r_info = ELF32_R_INFO (ELF32_R_SYM (irel->r_info),
+                                     R_M68HC11_NONE);
+
+      if (ELF32_R_TYPE (irel->r_info) == R_M68HC11_NONE)
+        continue;
+
+      /* Get the new reloc address.  */
+      if ((irel->r_offset > addr
+	   && irel->r_offset < toaddr))
+	irel->r_offset -= count;
+
+      /* If this is a PC relative reloc, see if the range it covers
+         includes the bytes we have deleted.  */
+      switch (ELF32_R_TYPE (irel->r_info))
+	{
+	default:
+	  break;
+
+	case R_M68HC11_RL_JUMP:
+          code = bfd_get_8 (abfd, contents + irel->r_offset);
+          switch (code)
+            {
+            case 0x12:
+            case 0x13:
+              branch_pos = 3;
+              raddr = 4;
+
+              /* Special case when we translate a brclr N,y into brclr *<addr>
+                 In this case, the 0x18 page2 prefix is removed.
+                 The reloc offset is not modified but the instruction
+                 size is reduced by 1.  */
+              if (old_offset == addr)
+                raddr++;
+              break;
+
+            case 0x1e:
+            case 0x1f:
+              branch_pos = 3;
+              raddr = 4;
+              break;
+
+            case 0x18:
+              branch_pos = 4;
+              raddr = 5;
+              break;
+
+            default:
+              branch_pos = 1;
+              raddr = 2;
+              break;
+            }
+          offset = bfd_get_8 (abfd, contents + irel->r_offset + branch_pos);
+          raddr += old_offset;
+          raddr += ((unsigned short) offset | ((offset & 0x80) ? 0xff00 : 0));
+          if (irel->r_offset < addr && raddr >= addr)
+            {
+              offset -= count;
+              bfd_put_8 (abfd, offset, contents + irel->r_offset + branch_pos);
+            }
+          else if (irel->r_offset >= addr && raddr <= addr)
+            {
+              offset += count;
+              bfd_put_8 (abfd, offset, contents + irel->r_offset + branch_pos);
+            }
+          else
+            {
+              /*printf ("Not adjusted 0x%04x [0x%4x 0x%4x]\n", raddr,
+                irel->r_offset, addr);*/
+            }
+          
+          break;
+	}
+    }
+
+  /* Adjust the local symbols defined in this section.  */
+  esym = extsyms;
+  esymend = esym + symtab_hdr->sh_info;
+  for (; esym < esymend; esym++)
+    {
+      Elf_Internal_Sym isym;
+
+      bfd_elf32_swap_symbol_in (abfd, esym, &isym);
+
+      if (isym.st_shndx == shndx
+	  && isym.st_value > addr
+	  && isym.st_value < toaddr)
+	{
+	  isym.st_value -= count;
+	  bfd_elf32_swap_symbol_out (abfd, &isym, esym);
+	}
+    }
+
+  /* Now adjust the global symbols defined in this section.  */
+  esym = extsyms + symtab_hdr->sh_info;
+  esymend = extsyms + (symtab_hdr->sh_size / sizeof (Elf32_External_Sym));
+  for (index = 0; esym < esymend; esym++, index++)
+    {
+      Elf_Internal_Sym isym;
+
+      bfd_elf32_swap_symbol_in (abfd, esym, &isym);
+      sym_hash = elf_sym_hashes (abfd)[index];
+      if (isym.st_shndx == shndx
+	  && ((sym_hash)->root.type == bfd_link_hash_defined
+	      || (sym_hash)->root.type == bfd_link_hash_defweak)
+	  && (sym_hash)->root.u.def.section == sec
+	  && (sym_hash)->root.u.def.value > addr
+	  && (sym_hash)->root.u.def.value < toaddr)
+	{
+	  (sym_hash)->root.u.def.value -= count;
+	}
+    }
+}
+
+/* Look through the relocs for a section during the first phase.
+   Since we don't do .gots or .plts, we just need to consider the
+   virtual table relocs for gc.  */
+
+static boolean
+elf32_m68hc11_check_relocs (abfd, info, sec, relocs)
+     bfd * abfd;
+     struct bfd_link_info * info;
+     asection * sec;
+     const Elf_Internal_Rela * relocs;
+{
+  Elf_Internal_Shdr *           symtab_hdr;
+  struct elf_link_hash_entry ** sym_hashes;
+  struct elf_link_hash_entry ** sym_hashes_end;
+  const Elf_Internal_Rela *     rel;
+  const Elf_Internal_Rela *     rel_end;
+
+  if (info->relocateable)
+    return true;
+
+  symtab_hdr = & elf_tdata (abfd)->symtab_hdr;
+  sym_hashes = elf_sym_hashes (abfd);
+  sym_hashes_end = sym_hashes + symtab_hdr->sh_size / sizeof (Elf32_External_Sym);
+  if (!elf_bad_symtab (abfd))
+    sym_hashes_end -= symtab_hdr->sh_info;
+
+  rel_end = relocs + sec->reloc_count;
+
+  for (rel = relocs; rel < rel_end; rel++)
+    {
+      struct elf_link_hash_entry * h;
+      unsigned long r_symndx;
+
+      r_symndx = ELF32_R_SYM (rel->r_info);
+
+      if (r_symndx < symtab_hdr->sh_info)
+        h = NULL;
+      else
+        h = sym_hashes [r_symndx - symtab_hdr->sh_info];
+
+      switch (ELF32_R_TYPE (rel->r_info))
+        {
+        /* This relocation describes the C++ object vtable hierarchy.
+           Reconstruct it for later use during GC.  */
+        case R_M68HC11_GNU_VTINHERIT:
+          if (!_bfd_elf32_gc_record_vtinherit (abfd, sec, h, rel->r_offset))
+            return false;
+          break;
+
+        /* This relocation describes which C++ vtable entries are actually
+           used.  Record for later use during GC.  */
+        case R_M68HC11_GNU_VTENTRY:
+          if (!_bfd_elf32_gc_record_vtentry (abfd, sec, h, rel->r_addend))
+            return false;
+          break;
+        }
+    }
+
+  return true;
+}
+
+/* Relocate a 68hc11/68hc12 ELF section.  */
+static boolean
+elf32_m68hc11_relocate_section (output_bfd, info, input_bfd, input_section,
+                                contents, relocs, local_syms, local_sections)
+     bfd *output_bfd ATTRIBUTE_UNUSED;
+     struct bfd_link_info *info;
+     bfd *input_bfd;
+     asection *input_section;
+     bfd_byte *contents;
+     Elf_Internal_Rela *relocs;
+     Elf_Internal_Sym *local_syms;
+     asection **local_sections;
+{
+  Elf_Internal_Shdr *symtab_hdr;
+  struct elf_link_hash_entry **sym_hashes;
+  Elf_Internal_Rela *rel, *relend;
+  const char *name;
+
+  symtab_hdr = &elf_tdata (input_bfd)->symtab_hdr;
+  sym_hashes = elf_sym_hashes (input_bfd);
+
+  rel = relocs;
+  relend = relocs + input_section->reloc_count;
+  for (; rel < relend; rel++)
+    {
+      int r_type;
+      reloc_howto_type *howto;
+      unsigned long r_symndx;
+      Elf_Internal_Sym *sym;
+      asection *sec;
+      struct elf_link_hash_entry *h;
+      bfd_vma relocation;
+      bfd_reloc_status_type r;
+
+      r_symndx = ELF32_R_SYM (rel->r_info);
+      r_type = ELF32_R_TYPE (rel->r_info);
+
+      if (r_type == R_M68HC11_GNU_VTENTRY
+          || r_type == R_M68HC11_GNU_VTINHERIT )
+        continue;
+
+      howto = elf_m68hc11_howto_table + r_type;
+
+      if (info->relocateable)
+	{
+	  /* This is a relocateable link.  We don't have to change
+	     anything, unless the reloc is against a section symbol,
+	     in which case we have to adjust according to where the
+	     section symbol winds up in the output section.  */
+	  if (r_symndx < symtab_hdr->sh_info)
+	    {
+	      sym = local_syms + r_symndx;
+	      if (ELF_ST_TYPE (sym->st_info) == STT_SECTION)
+		{
+		  sec = local_sections[r_symndx];
+		  rel->r_addend += sec->output_offset + sym->st_value;
+		}
+	    }
+
+	  continue;
+	}
+
+      /* This is a final link.  */
+      h = NULL;
+      sym = NULL;
+      sec = NULL;
+      if (r_symndx < symtab_hdr->sh_info)
+	{
+	  sym = local_syms + r_symndx;
+	  sec = local_sections[r_symndx];
+	  relocation = (sec->output_section->vma
+			+ sec->output_offset
+			+ sym->st_value);
+	}
+      else
+	{
+	  h = sym_hashes[r_symndx - symtab_hdr->sh_info];
+	  while (h->root.type == bfd_link_hash_indirect
+		 || h->root.type == bfd_link_hash_warning)
+	    h = (struct elf_link_hash_entry *) h->root.u.i.link;
+	  if (h->root.type == bfd_link_hash_defined
+	      || h->root.type == bfd_link_hash_defweak)
+	    {
+	      sec = h->root.u.def.section;
+	      relocation = (h->root.u.def.value
+			    + sec->output_section->vma
+			    + sec->output_offset);
+	    }
+	  else if (h->root.type == bfd_link_hash_undefweak)
+	    relocation = 0;
+	  else
+	    {
+	      if (!((*info->callbacks->undefined_symbol)
+		    (info, h->root.root.string, input_bfd,
+		     input_section, rel->r_offset, true)))
+		return false;
+	      relocation = 0;
+	    }
+	}
+
+      if (h != NULL)
+	name = h->root.root.string;
+      else
+	{
+	  name = (bfd_elf_string_from_elf_section
+		  (input_bfd, symtab_hdr->sh_link, sym->st_name));
+	  if (name == NULL || *name == '\0')
+	    name = bfd_section_name (input_bfd, sec);
+	}
+
+      r = _bfd_final_link_relocate (howto, input_bfd, input_section,
+                                    contents, rel->r_offset,
+                                    relocation, rel->r_addend);
+
+      if (r != bfd_reloc_ok)
+	{
+	  const char * msg = (const char *) 0;
+
+	  switch (r)
+	    {
+	    case bfd_reloc_overflow:
+	      if (!((*info->callbacks->reloc_overflow)
+		    (info, name, howto->name, (bfd_vma) 0,
+		     input_bfd, input_section, rel->r_offset)))
+		return false;
+	      break;
+
+	    case bfd_reloc_undefined:
+	      if (!((*info->callbacks->undefined_symbol)
+		    (info, name, input_bfd, input_section,
+		     rel->r_offset, true)))
+		return false;
+	      break;
+
+	    case bfd_reloc_outofrange:
+	      msg = _ ("internal error: out of range error");
+	      goto common_error;
+
+	    case bfd_reloc_notsupported:
+	      msg = _ ("internal error: unsupported relocation error");
+	      goto common_error;
+
+	    case bfd_reloc_dangerous:
+	      msg = _ ("internal error: dangerous error");
+	      goto common_error;
+
+	    default:
+	      msg = _ ("internal error: unknown error");
+	      /* fall through */
+
+	    common_error:
+	      if (!((*info->callbacks->warning)
+		    (info, msg, name, input_bfd, input_section,
+		     rel->r_offset)))
+		return false;
+	      break;
+	    }
+	}
+    }
+
+  return true;
+}
 /* Below is the only difference between elf32-m68hc12.c and elf32-m68hc11.c.
    The Motorola spec says to use a different Elf machine code.  */
 #define ELF_ARCH		bfd_arch_m68hc11
@@ -274,7 +1437,29 @@ m68hc11_info_to_howto_rel (abfd, cache_p
 
 #define elf_info_to_howto	0
 #define elf_info_to_howto_rel	m68hc11_info_to_howto_rel
+#define bfd_elf32_bfd_relax_section  m68hc11_elf_relax_section
+#define elf_backend_gc_mark_hook     elf32_m68hc11_gc_mark_hook
+#define elf_backend_gc_sweep_hook    elf32_m68hc11_gc_sweep_hook
+#define elf_backend_check_relocs     elf32_m68hc11_check_relocs
+#define elf_backend_relocate_section elf32_m68hc11_relocate_section
 #define elf_backend_object_p	0
 #define elf_backend_final_write_processing	0
+#define elf_backend_can_gc_sections		1
+
+#include "elf32-target.h"
+
+/* Below is the only difference between elf32-m68hc12.c and elf32-m68hc11.c.
+   The Motorola spec says to use a different Elf machine code.  */
+#undef ELF_ARCH
+#define ELF_ARCH		bfd_arch_m68hc12
+#undef ELF_MACHINE_CODE
+#define ELF_MACHINE_CODE	EM_68HC12
+
+#undef TARGET_BIG_SYM
+#define TARGET_BIG_SYM          bfd_elf32_m68hc12_vec
+#undef TARGET_BIG_NAME
+#define TARGET_BIG_NAME		"elf32-m68hc12"
+
+#define elf32_bed elf32_m68hc12_bed
 
 #include "elf32-target.h"
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/bfd/elf32-m68hc12.c binutils-2.11.2-m68hc1x/bfd/elf32-m68hc12.c
--- binutils-2.11.2/bfd/elf32-m68hc12.c	Fri Sep 21 20:58:38 2001
+++ binutils-2.11.2-m68hc1x/bfd/elf32-m68hc12.c	Sun Feb  3 11:05:29 2002
@@ -24,7 +24,7 @@ Foundation, Inc., 59 Temple Place - Suit
 #include "libbfd.h"
 #include "elf-bfd.h"
 #include "elf/m68hc11.h"
-
+#if 0
 static reloc_howto_type *bfd_elf32_bfd_reloc_type_lookup
 PARAMS ((bfd * abfd, bfd_reloc_code_real_type code));
 static void m68hc11_info_to_howto_rel
@@ -278,3 +278,4 @@ m68hc11_info_to_howto_rel (abfd, cache_p
 #define elf_backend_final_write_processing	0
 
 #include "elf32-target.h"
+#endif
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/bfd/reloc.c binutils-2.11.2-m68hc1x/bfd/reloc.c
--- binutils-2.11.2/bfd/reloc.c	Fri Sep 21 20:58:39 2001
+++ binutils-2.11.2-m68hc1x/bfd/reloc.c	Sat Dec 15 23:07:37 2001
@@ -2931,6 +2931,16 @@ ENUM
 ENUMDOC
   Motorola 68HC11 reloc.
   This is the 3 bits of a value.
+ENUM
+  BFD_RELOC_M68HC11_RL_JUMP
+ENUMDOC
+  Motorola 68HC11 reloc.
+  Relaxation instruction for a jump.
+ENUM
+  BFD_RELOC_M68HC11_RL_GROUP
+ENUMDOC
+  Motorola 68HC11 reloc.
+  Relaxation group instruction to use direct addressing mode.
 
 ENUM
   BFD_RELOC_CRIS_BDISP8
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/ChangeLog.M68HC11 binutils-2.11.2-m68hc1x/binutils/ChangeLog.M68HC11
--- binutils-2.11.2/binutils/ChangeLog.M68HC11	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/binutils/ChangeLog.M68HC11	Sat Dec 15 23:02:55 2001
@@ -0,0 +1,27 @@
+2001-11-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* readelf.c (dump_relocations): Handle 68HC11/68HC12 relocations.
+
+2001-07-11  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* binutils.texi: Use @command{name} for commands;
+	use @option{-opt} for options; use @table @env for list of options;
+	remove spaces arround [ | ] in synopsis.
+	* Makefile.am (POD2MAN): Use 'GNU Development Tools' for the
+	center title.
+
+2001-03-26  Andreas Jaeger  <aj@suse.de>
+
+	* binutils.texi (nm): Fix texi syntax.
+
+2001-03-25  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* binutils.texi: Put @c man begin and @c man end indications
+	to generate man pages using texi2pod and pod2man. Put @c man title
+	to identify each man. Add SEEALSO entries.
+	* Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variable.
+	(man_MANS): Add dlltool.1, nlmconv.1, readelf.1, windres.1,
+	sort the list.
+	(*.1): Build the man pages from binutils.texi.
+	* Makefile.in: Regenerate.
+
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/Makefile.am binutils-2.11.2-m68hc1x/binutils/Makefile.am
--- binutils-2.11.2/binutils/Makefile.am	Fri Sep 21 20:58:39 2001
+++ binutils-2.11.2-m68hc1x/binutils/Makefile.am	Fri Sep 21 22:07:03 2001
@@ -52,8 +52,29 @@ DLLWRAP_PROG=dllwrap
 
 SRCONV_PROG=srconv$(EXEEXT) sysdump$(EXEEXT) coffdump$(EXEEXT) 
 
-man_MANS = ar.1 nm.1 objdump.1 ranlib.1 size.1 strings.1 strip.1 objcopy.1 \
-	addr2line.1 nlmconv.1 $(DEMANGLER_NAME).1
+MANCONF  = -Dman
+
+TEXI2POD = perl $(srcdir)/../etc/texi2pod.pl
+
+POD2MAN = pod2man --center="GNU Development Tools" \
+	 --release="binutils-$(VERSION)" --section=1
+
+# List of man pages generated from binutils.texi
+man_MANS = \
+	addr2line.1 \
+	ar.1 \
+	dlltool.1 \
+	nlmconv.1 \
+	nm.1 \
+	objcopy.1 \
+	objdump.1 \
+	ranlib.1 \
+	readelf.1 \
+	size.1 \
+	strings.1 \
+	strip.1 \
+	windres.1 \
+	$(DEMANGLER_NAME).1
 
 PROGS = $(SIZE_PROG) $(OBJDUMP_PROG) $(NM_PROG) $(AR_PROG) $(STRINGS_PROG) $(STRIP_PROG) $(RANLIB_PROG) $(DEMANGLER_PROG) $(OBJCOPY_PROG) @BUILD_NLMCONV@ @BUILD_SRCONV@ @BUILD_DLLTOOL@ @BUILD_WINDRES@ $(ADDR2LINE_PROG) $(READELF_PROG) @BUILD_DLLWRAP@ @BUILD_MISC@
 
@@ -338,6 +359,105 @@ config.texi: Makefile
 binutils.dvi: $(srcdir)/binutils.texi config.texi
 
 binutils.info: $(srcdir)/binutils.texi config.texi
+
+# Man page generation from texinfo
+$(srcdir)/addr2line.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Daddr2line < $< > addr2line.pod
+	-($(POD2MAN) addr2line.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f addr2line.pod
+
+$(srcdir)/ar.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dar < $< > ar.pod
+	-($(POD2MAN) ar.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f ar.pod
+
+$(srcdir)/dlltool.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Ddlltool < $< > dlltool.pod
+	-($(POD2MAN) dlltool.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f dlltool.pod
+
+$(srcdir)/nlmconv.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dnlmconv < $< > nlmconv.pod
+	-($(POD2MAN) nlmconv.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f nlmconv.pod
+
+$(srcdir)/nm.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dnm < $< > nm.pod
+	-($(POD2MAN) nm.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f nm.pod
+
+$(srcdir)/objcopy.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dobjcopy < $< > objcopy.pod
+	-($(POD2MAN) objcopy.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f objcopy.pod
+
+$(srcdir)/objdump.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dobjdump < $< > objdump.pod
+	-($(POD2MAN) objdump.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f objdump.pod
+
+$(srcdir)/ranlib.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dranlib < $< > ranlib.pod
+	-($(POD2MAN) ranlib.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f ranlib.pod
+
+$(srcdir)/readelf.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dreadelf < $< > readelf.pod
+	-($(POD2MAN) readelf.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f readelf.pod
+
+$(srcdir)/size.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dsize < $< > size.pod
+	-($(POD2MAN) size.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f size.pod
+
+$(srcdir)/strings.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dstrings < $< > strings.pod
+	-($(POD2MAN) strings.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f strings.pod
+
+$(srcdir)/strip.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dstrip < $< > strip.pod
+	-($(POD2MAN) strip.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f strip.pod
+
+$(srcdir)/windres.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dwindres < $< > windres.pod
+	-($(POD2MAN) windres.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f windres.pod
+
+$(srcdir)/cxxfilt.man:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dcxxfilt < $< > cxxfilt.pod
+	-($(POD2MAN) cxxfilt.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f cxxfilt.pod
 
 MAINTAINERCLEANFILES = config.texi
 
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/Makefile.in binutils-2.11.2-m68hc1x/binutils/Makefile.in
--- binutils-2.11.2/binutils/Makefile.in	Fri Sep 21 20:58:39 2001
+++ binutils-2.11.2-m68hc1x/binutils/Makefile.in	Sat Sep 22 12:06:30 2001
@@ -161,8 +161,15 @@ DLLWRAP_PROG = dllwrap
 
 SRCONV_PROG = srconv$(EXEEXT) sysdump$(EXEEXT) coffdump$(EXEEXT) 
 
-man_MANS = ar.1 nm.1 objdump.1 ranlib.1 size.1 strings.1 strip.1 objcopy.1 \
-	addr2line.1 nlmconv.1 $(DEMANGLER_NAME).1
+MANCONF = -Dman
+
+TEXI2POD = perl $(srcdir)/../etc/texi2pod.pl
+
+POD2MAN = pod2man --center="GNU Development Tools" 	 --release="binutils-$(VERSION)" --section=1
+
+
+# List of man pages generated from binutils.texi
+man_MANS =  	addr2line.1 	ar.1 	dlltool.1 	nlmconv.1 	nm.1 	objcopy.1 	objdump.1 	ranlib.1 	readelf.1 	size.1 	strings.1 	strip.1 	windres.1 	$(DEMANGLER_NAME).1
 
 
 PROGS = $(SIZE_PROG) $(OBJDUMP_PROG) $(NM_PROG) $(AR_PROG) $(STRINGS_PROG) $(STRIP_PROG) $(RANLIB_PROG) $(DEMANGLER_PROG) $(OBJCOPY_PROG) @BUILD_NLMCONV@ @BUILD_SRCONV@ @BUILD_DLLTOOL@ @BUILD_WINDRES@ $(ADDR2LINE_PROG) $(READELF_PROG) @BUILD_DLLWRAP@ @BUILD_MISC@
@@ -184,24 +191,15 @@ MKDEP = gcc -MM
 
 INCLUDES = -D_GNU_SOURCE -I. -I$(srcdir) -I../bfd -I$(BFDDIR) -I$(INCDIR) @HDEFINES@ -I$(srcdir)/../intl -I../intl -DLOCALEDIR="\"$(prefix)/share/locale\""
 
-HFILES = arsup.h bucomm.h budbg.h coffgrok.h debug.h nlmconv.h dlltool.h \
-	windres.h winduni.h
+HFILES = arsup.h bucomm.h budbg.h coffgrok.h debug.h nlmconv.h dlltool.h 	windres.h winduni.h
 
 
 GENERATED_HFILES = arparse.h sysroff.h sysinfo.h defparse.h rcparse.h
 
-CFILES = addr2line.c ar.c arsup.c bucomm.c coffdump.c coffgrok.c debug.c \
-	dlltool.c filemode.c ieee.c is-ranlib.c is-strip.c maybe-ranlib.c \
-	maybe-strip.c nlmconv.c nm.c not-ranlib.c not-strip.c \
-	objcopy.c objdump.c prdbg.c rdcoff.c rddbg.c size.c srconv.c \
-	stabs.c strings.c sysdump.c version.c wrstabs.c \
-	windres.c resrc.c rescoff.c resbin.c winduni.c readelf.c \
-	resres.c dllwrap.c rename.c
+CFILES = addr2line.c ar.c arsup.c bucomm.c coffdump.c coffgrok.c debug.c 	dlltool.c filemode.c ieee.c is-ranlib.c is-strip.c maybe-ranlib.c 	maybe-strip.c nlmconv.c nm.c not-ranlib.c not-strip.c 	objcopy.c objdump.c prdbg.c rdcoff.c rddbg.c size.c srconv.c 	stabs.c strings.c sysdump.c version.c wrstabs.c 	windres.c resrc.c rescoff.c resbin.c winduni.c readelf.c 	resres.c dllwrap.c rename.c
 
 
-GENERATED_CFILES = \
-	underscore.c arparse.c arlex.c sysroff.c sysinfo.c syslex.c \
-	defparse.c deflex.c nlmheader.c rcparse.c rclex.c
+GENERATED_CFILES =  	underscore.c arparse.c arlex.c sysroff.c sysinfo.c syslex.c 	defparse.c deflex.c nlmheader.c rcparse.c rclex.c
 
 
 DEBUG_SRCS = rddbg.c debug.c stabs.c ieee.c rdcoff.c
@@ -218,29 +216,12 @@ LIBIBERTY = ../libiberty/libiberty.a
 
 POTFILES = $(CFILES) $(DEBUG_SRCS) $(HFILES)
 
-EXPECT = `if [ -f $$r/../expect/expect ] ; then \
-          echo $$r/../expect/expect ; \
-          else echo expect ; fi`
-
-RUNTEST = `if [ -f ${srcdir}/../dejagnu/runtest ] ; then \
-           echo ${srcdir}/../dejagnu/runtest ; \
-           else echo runtest ;  fi`
-
-
-CC_FOR_TARGET = ` \
-  if [ -f $$r/../gcc/xgcc ] ; then \
-    if [ -f $$r/../newlib/Makefile ] ; then \
-      echo $$r/../gcc/xgcc -B$$r/../gcc/ -idirafter $$r/../newlib/targ-include -idirafter $${srcroot}/../newlib/libc/include -nostdinc; \
-    else \
-      echo $$r/../gcc/xgcc -B$$r/../gcc/; \
-    fi; \
-  else \
-    if [ "@host@" = "@target@" ] ; then \
-      echo $(CC); \
-    else \
-      echo gcc | sed '$(transform)'; \
-    fi; \
-  fi`
+EXPECT = `if [ -f $$r/../expect/expect ] ; then           echo $$r/../expect/expect ;           else echo expect ; fi`
+
+RUNTEST = `if [ -f ${srcdir}/../dejagnu/runtest ] ; then            echo ${srcdir}/../dejagnu/runtest ;            else echo runtest ;  fi`
+
+
+CC_FOR_TARGET = `   if [ -f $$r/../gcc/xgcc ] ; then     if [ -f $$r/../newlib/Makefile ] ; then       echo $$r/../gcc/xgcc -B$$r/../gcc/ -idirafter $$r/../newlib/targ-include -idirafter $${srcroot}/../newlib/libc/include -nostdinc;     else       echo $$r/../gcc/xgcc -B$$r/../gcc/;     fi;   else     if [ "@host@" = "@target@" ] ; then       echo $(CC);     else       echo gcc | sed '$(transform)';     fi;   fi`
 
 
 info_TEXINFOS = binutils.texi
@@ -285,26 +266,22 @@ sysdump_SOURCES = sysdump.c $(BULIBS)
 
 nlmconv_SOURCES = nlmconv.c nlmheader.y $(BULIBS)
 
-windres_SOURCES = windres.c resrc.c rescoff.c resbin.c rcparse.y rclex.l \
-	winduni.c resres.c $(BULIBS)
+windres_SOURCES = windres.c resrc.c rescoff.c resbin.c rcparse.y rclex.l 	winduni.c resres.c $(BULIBS)
 
 windres_LDADD = $(BFDLIB) $(LIBIBERTY) @LEXLIB@ $(INTLLIBS)
 
 dllwrap_SOURCES = dllwrap.c version.c
 dllwrap_LDADD = $(LIBIBERTY) $(INTLLIBS)
 
-DISTSTUFF = arparse.c arparse.h arlex.c nlmheader.c sysinfo.c sysinfo.h \
-	syslex.c deflex.c defparse.h defparse.c rclex.c rcparse.h rcparse.c
+DISTSTUFF = arparse.c arparse.h arlex.c nlmheader.c sysinfo.c sysinfo.h 	syslex.c deflex.c defparse.h defparse.c rclex.c rcparse.h rcparse.c
 
 
-DISTCLEANFILES = stamp-under sysinfo underscore.c sysroff.c sysroff.h \
-	site.exp site.bak
+DISTCLEANFILES = stamp-under sysinfo underscore.c sysroff.c sysroff.h 	site.exp site.bak
 
 
 MAINTAINERCLEANFILES = config.texi
 
-MOSTLYCLEANFILES = sysinfo $(DEMANGLER_NAME).1 binutils.log binutils.sum \
-	abcdefgh*
+MOSTLYCLEANFILES = sysinfo $(DEMANGLER_NAME).1 binutils.log binutils.sum 	abcdefgh*
 
 
 CLEANFILES = dep.sed DEP DEPA DEP1 DEP2
@@ -930,7 +907,7 @@ distdir: $(DISTFILES)
 	@for file in $(DISTFILES); do \
 	  if test -f $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
-	    cp -pr $$d/$$file $(distdir)/$$file; \
+	    cp -pr $$/$$file $(distdir)/$$file; \
 	  else \
 	    test -f $(distdir)/$$file \
 	    || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
@@ -1231,6 +1208,105 @@ config.texi: Makefile
 binutils.dvi: $(srcdir)/binutils.texi config.texi
 
 binutils.info: $(srcdir)/binutils.texi config.texi
+
+# Man page generation from texinfo
+$(srcdir)/addr2line.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Daddr2line < $< > addr2line.pod
+	-($(POD2MAN) addr2line.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f addr2line.pod
+
+$(srcdir)/ar.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dar < $< > ar.pod
+	-($(POD2MAN) ar.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f ar.pod
+
+$(srcdir)/dlltool.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Ddlltool < $< > dlltool.pod
+	-($(POD2MAN) dlltool.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f dlltool.pod
+
+$(srcdir)/nlmconv.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dnlmconv < $< > nlmconv.pod
+	-($(POD2MAN) nlmconv.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f nlmconv.pod
+
+$(srcdir)/nm.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dnm < $< > nm.pod
+	-($(POD2MAN) nm.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f nm.pod
+
+$(srcdir)/objcopy.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dobjcopy < $< > objcopy.pod
+	-($(POD2MAN) objcopy.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f objcopy.pod
+
+$(srcdir)/objdump.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dobjdump < $< > objdump.pod
+	-($(POD2MAN) objdump.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f objdump.pod
+
+$(srcdir)/ranlib.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dranlib < $< > ranlib.pod
+	-($(POD2MAN) ranlib.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f ranlib.pod
+
+$(srcdir)/readelf.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dreadelf < $< > readelf.pod
+	-($(POD2MAN) readelf.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f readelf.pod
+
+$(srcdir)/size.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dsize < $< > size.pod
+	-($(POD2MAN) size.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f size.pod
+
+$(srcdir)/strings.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dstrings < $< > strings.pod
+	-($(POD2MAN) strings.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f strings.pod
+
+$(srcdir)/strip.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dstrip < $< > strip.pod
+	-($(POD2MAN) strip.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f strip.pod
+
+$(srcdir)/windres.1:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dwindres < $< > windres.pod
+	-($(POD2MAN) windres.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f windres.pod
+
+$(srcdir)/cxxfilt.man:	$(srcdir)/binutils.texi
+	touch $@
+	-$(TEXI2POD) $(MANCONF) -Dcxxfilt < $< > cxxfilt.pod
+	-($(POD2MAN) cxxfilt.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+		mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
+	rm -f cxxfilt.pod
 
 $(DEMANGLER_NAME).1: cxxfilt.man Makefile
 	sed -e 's/@PROGRAM@/$(DEMANGLER_NAME)/' < $(srcdir)/cxxfilt.man \
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/addr2line.1 binutils-2.11.2-m68hc1x/binutils/addr2line.1
--- binutils-2.11.2/binutils/addr2line.1	Tue Nov 28 21:40:34 2000
+++ binutils-2.11.2-m68hc1x/binutils/addr2line.1	Fri Sep 21 22:11:27 2001
@@ -1,503 +1,232 @@
-.\" Copyright (c) 1997, 2000 Free Software Foundation
-.\" See COPYING for conditions for redistribution
-.TH addr2line 1 "27 March 1997" "Free Software Foundation" "GNU Development Tools"
-.de BP
-.sp
-.ti \-.2i
-\(**
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:09:38 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
 ..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
 
-.SH NAME
-addr2line \- convert addresses into file names and line numbers
-
-.SH SYNOPSIS
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
 .hy 0
-.na
-.TP
-.B addr2line
-.RB "[\|" "\-b\ "\c
-.I bfdname\c
-.RB " | " "\-\-target="\c
-.I bfdname\c
-\&\|]
-.RB "[\|" \-C | \-\-demangle "\|]"
-.RB "[\|" "\-e\ "\c
-.I filename\c
-.RB " | " "\-\-exe="\c
-.I filename\c
-\&\|]
-.RB "[\|" \-f | \-\-functions "\|]"
-.RB "[\|" \-s | \-\-basenames "\|]"
-.RB "[\|" \-H | \-\-help "\|]"
-.RB "[\|" \-V | \-\-version "\|]"
-.RB "[\|" addr addr ...  "\|]"
-.ad b
-.hy 1
-.SH DESCRIPTION
-\c
-.B addr2line
-translates program addresses into file names and line numbers.  Given
-an address and an executable, it uses the debugging information in the
-executable to figure out which file name and line number are
-associated with a given address.
-
-The executable to use is specified with the
-.B \-e
-option.  The default is
-.B a.out\c
-\&.
-
-.B addr2line
-has two modes of operation.
-
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "ADDR2LINE 1"
+.TH ADDR2LINE 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
+.UC
+.SH "NAME"
+addr2line \- convert addresses into file names and line numbers.
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+addr2line [\fB\-b\fR \fIbfdname\fR|\fB\*(--target=\fR\fIbfdname\fR]
+          [\fB\-C\fR|\fB\*(--demangle\fR[=\fIstyle\fR]
+          [\fB\-e\fR \fIfilename\fR|\fB\*(--exe=\fR\fIfilename\fR]
+          [\fB\-f\fR|\fB\*(--functions\fR] [\fB\-s\fR|\fB\*(--basename\fR]
+          [\fB\-H\fR|\fB\*(--help\fR] [\fB\-V\fR|\fB\*(--version\fR]
+          [addr addr ...]
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fBaddr2line\fR translates program addresses into file names and line
+numbers.  Given an address and an executable, it uses the debugging
+information in the executable to figure out which file name and line
+number are associated with a given address.
+.PP
+The executable to use is specified with the \fB\-e\fR option.  The
+default is the file \fIa.out\fR.
+.PP
+\&\fBaddr2line\fR has two modes of operation.
+.PP
 In the first, hexadecimal addresses are specified on the command line,
-and
-.B addr2line
-displays the file name and line number for each address.
-
-In the second,
-.B addr2line
-reads hexadecimal addresses from standard input, and prints the file
-name and line number for each address on standard output.  In this
-mode,
-.B addr2line
-may be used in a pipe to convert dynamically chosen addresses.
-
-The format of the output is FILENAME:LINENO.  The file name and line
-number for each address is printed on a separate line.  If the
-.B \-f
-option is used, then each FILENAME:LINENO line is preceded by a
-FUNCTIONNAME line which is the name of the function containing the
+and \fBaddr2line\fR displays the file name and line number for each
 address.
-
+.PP
+In the second, \fBaddr2line\fR reads hexadecimal addresses from
+standard input, and prints the file name and line number for each
+address on standard output.  In this mode, \fBaddr2line\fR may be used
+in a pipe to convert dynamically chosen addresses.
+.PP
+The format of the output is \fB\s-1FILENAME:LINENO\s0\fR.  The file name and
+line number for each address is printed on a separate line.  If the
+\&\fB\-f\fR option is used, then each \fB\s-1FILENAME:LINENO\s0\fR line is
+preceded by a \fB\s-1FUNCTIONNAME\s0\fR line which is the name of the function
+containing the address.
+.PP
 If the file name or function name can not be determined,
-.B addr2line
-will print two question marks in their place.  If the line number can
-not be determined,
-.B addr2line
-will print 0.
-
-.SH OPTIONS
-.TP
-.BI "\-b " "bfdname"\c
-.TP
-.BI "\-\-target=" "bfdname"
-Specify the object-code format for the object files to be
-\c
-.I bfdname\c
-\&.
-
-.TP
-.B \-C
-.TP
-.B \-\-demangle
-Decode (\fIdemangle\fP) low-level symbol names into user-level names.
+\&\fBaddr2line\fR will print two question marks in their place.  If the
+line number can not be determined, \fBaddr2line\fR will print 0.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+The long and short forms of options, shown here as alternatives, are
+equivalent.
+.IP "\fB\-b\fR \fIbfdname\fR" 4
+.IX Item "-b bfdname"
+.PD 0
+.IP "\fB\*(--target=\fR\fIbfdname\fR" 4
+.IX Item "target=bfdname"
+.PD
+Specify that the object-code format for the object files is
+\&\fIbfdname\fR.
+.IP "\fB\-C\fR" 4
+.IX Item "-C"
+.PD 0
+.IP "\fB\*(--demangle[=\fR\fIstyle\fR\fB]\fR" 4
+.IX Item "demangle[=style]"
+.PD
+Decode (\fIdemangle\fR) low-level symbol names into user-level names.
 Besides removing any initial underscore prepended by the system, this
-makes C++ function names readable.
-
-.TP
-.BI "\-e " "filename"\c
-.TP
-.BI "\-\-exe=" "filename"
+makes \*(C+ function names readable.  Different compilers have different
+mangling styles. The optional demangling style argument can be used to 
+choose an appropriate demangling style for your compiler. 
+.IP "\fB\-e\fR \fIfilename\fR" 4
+.IX Item "-e filename"
+.PD 0
+.IP "\fB\*(--exe=\fR\fIfilename\fR" 4
+.IX Item "exe=filename"
+.PD
 Specify the name of the executable for which addresses should be
-translated.  The default file is
-.B a.out\c
-\&.
-
-.TP
-.B \-f
-.TP
-.B \-\-functions
+translated.  The default file is \fIa.out\fR.
+.IP "\fB\-f\fR" 4
+.IX Item "-f"
+.PD 0
+.IP "\fB\*(--functions\fR" 4
+.IX Item "functions"
+.PD
 Display function names as well as file and line number information.
-
-.TP
-.B \-s
-.TP
-.B \-\-basenames
+.IP "\fB\-s\fR" 4
+.IX Item "-s"
+.PD 0
+.IP "\fB\*(--basenames\fR" 4
+.IX Item "basenames"
+.PD
 Display only the base of each file name.
-
 .SH "SEE ALSO"
-.RB "`\|" binutils "\|'"
-entry in 
-.B
-info\c
-\&; 
-.I
-The GNU Binary Utilities\c
-\&, Roland H. Pesch (October 1991).
-
-.SH COPYING
-Copyright (c) 1993, 94, 95, 96, 97, 98, 1999, 2000 Free Software Foundation, Inc.
+.IX Header "SEE ALSO"
+Info entries for \fIbinutils\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
 .PP
-This document is distributed under the terms of the GNU Free
-Documentation License, version 1.1.  That license is described in the
-sources for this manual page, but it is not displayed here in order to
-make this manual more consise.  Copies of this license can also be
-obtained from: http://www.gnu.org/copyleft/.
-
-\"  .SH GNU Free Documentation License
-\"    Version 1.1, March 2000
-
-\"    Copyright (C) 2000  Free Software Foundation, Inc.
-\"    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-     
-\"    Everyone is permitted to copy and distribute verbatim
-\"    copies of this license document, but changing it is
-\"    not allowed.
-\"  .PP
-\"  0. PREAMBLE
-\"  .PP
-\"  The purpose of this License is to make a manual, textbook, or other
-\"  written document "free" in the sense of freedom: to assure everyone
-\"  the effective freedom to copy and redistribute it, with or without
-\"  modifying it, either commercially or noncommercially.  Secondarily,
-\"  this License preserves for the author and publisher a way to get
-\"  credit for their work, while not being considered responsible for
-\"  modifications made by others.
-\"  .PP
-\"  This License is a kind of "copyleft", which means that derivative
-\"  works of the document must themselves be free in the same sense.  It
-\"  complements the GNU General Public License, which is a copyleft
-\"  license designed for free software.
-\"  .PP
-\"  We have designed this License in order to use it for manuals for free
-\"  software, because free software needs free documentation: a free
-\"  program should come with manuals providing the same freedoms that the
-\"  software does.  But this License is not limited to software manuals;
-\"  it can be used for any textual work, regardless of subject matter or
-\"  whether it is published as a printed book.  We recommend this License
-\"  principally for works whose purpose is instruction or reference.
-\"  .PP
-\"  1. APPLICABILITY AND DEFINITIONS
-\"  .PP
-\"  This License applies to any manual or other work that contains a
-\"  notice placed by the copyright holder saying it can be distributed
-\"  under the terms of this License.  The "Document", below, refers to any
-\"  such manual or work.  Any member of the public is a licensee, and is
-\"  addressed as "you".
-\"  .PP
-\"  A "Modified Version" of the Document means any work containing the
-\"  Document or a portion of it, either copied verbatim, or with
-\"  modifications and/or translated into another language.
-\"  .PP
-\"  A "Secondary Section" is a named appendix or a front-matter section of
-\"  the Document that deals exclusively with the relationship of the
-\"  publishers or authors of the Document to the Document's overall subject
-\"  (or to related matters) and contains nothing that could fall directly
-\"  within that overall subject.  (For example, if the Document is in part a
-\"  textbook of mathematics, a Secondary Section may not explain any
-\"  mathematics.)  The relationship could be a matter of historical
-\"  connection with the subject or with related matters, or of legal,
-\"  commercial, philosophical, ethical or political position regarding
-\"  them.
-\"  .PP
-\"  The "Invariant Sections" are certain Secondary Sections whose titles
-\"  are designated, as being those of Invariant Sections, in the notice
-\"  that says that the Document is released under this License.
-\"  .PP
-\"  The "Cover Texts" are certain short passages of text that are listed,
-\"  as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-\"  the Document is released under this License.
-\"  .PP
-\"  A "Transparent" copy of the Document means a machine-readable copy,
-\"  represented in a format whose specification is available to the
-\"  general public, whose contents can be viewed and edited directly and
-\"  straightforwardly with generic text editors or (for images composed of
-\"  pixels) generic paint programs or (for drawings) some widely available
-\"  drawing editor, and that is suitable for input to text formatters or
-\"  for automatic translation to a variety of formats suitable for input
-\"  to text formatters.  A copy made in an otherwise Transparent file
-\"  format whose markup has been designed to thwart or discourage
-\"  subsequent modification by readers is not Transparent.  A copy that is
-\"  not "Transparent" is called "Opaque".
-\"  .PP
-\"  Examples of suitable formats for Transparent copies include plain
-\"  ASCII without markup, Texinfo input format, LaTeX input format, SGML
-\"  or XML using a publicly available DTD, and standard-conforming simple
-\"  HTML designed for human modification.  Opaque formats include
-\"  PostScript, PDF, proprietary formats that can be read and edited only
-\"  by proprietary word processors, SGML or XML for which the DTD and/or
-\"  processing tools are not generally available, and the
-\"  machine-generated HTML produced by some word processors for output
-\"  purposes only.
-\"  .PP
-\"  The "Title Page" means, for a printed book, the title page itself,
-\"  plus such following pages as are needed to hold, legibly, the material
-\"  this License requires to appear in the title page.  For works in
-\"  formats which do not have any title page as such, "Title Page" means
-\"  the text near the most prominent appearance of the work's title,
-\"  preceding the beginning of the body of the text.
-\"  .PP
-\"  2. VERBATIM COPYING
-\"  .PP
-\"  You may copy and distribute the Document in any medium, either
-\"  commercially or noncommercially, provided that this License, the
-\"  copyright notices, and the license notice saying this License applies
-\"  to the Document are reproduced in all copies, and that you add no other
-\"  conditions whatsoever to those of this License.  You may not use
-\"  technical measures to obstruct or control the reading or further
-\"  copying of the copies you make or distribute.  However, you may accept
-\"  compensation in exchange for copies.  If you distribute a large enough
-\"  number of copies you must also follow the conditions in section 3.
-\"  .PP
-\"  You may also lend copies, under the same conditions stated above, and
-\"  you may publicly display copies.
-\"  .PP
-\"  3. COPYING IN QUANTITY
-\"  .PP
-\"  If you publish printed copies of the Document numbering more than 100,
-\"  and the Document's license notice requires Cover Texts, you must enclose
-\"  the copies in covers that carry, clearly and legibly, all these Cover
-\"  Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-\"  the back cover.  Both covers must also clearly and legibly identify
-\"  you as the publisher of these copies.  The front cover must present
-\"  the full title with all words of the title equally prominent and
-\"  visible.  You may add other material on the covers in addition.
-\"  Copying with changes limited to the covers, as long as they preserve
-\"  the title of the Document and satisfy these conditions, can be treated
-\"  as verbatim copying in other respects.
-\"  .PP
-\"  If the required texts for either cover are too voluminous to fit
-\"  legibly, you should put the first ones listed (as many as fit
-\"  reasonably) on the actual cover, and continue the rest onto adjacent
-\"  pages.
-\"  .PP
-\"  If you publish or distribute Opaque copies of the Document numbering
-\"  more than 100, you must either include a machine-readable Transparent
-\"  copy along with each Opaque copy, or state in or with each Opaque copy
-\"  a publicly-accessible computer-network location containing a complete
-\"  Transparent copy of the Document, free of added material, which the
-\"  general network-using public has access to download anonymously at no
-\"  charge using public-standard network protocols.  If you use the latter
-\"  option, you must take reasonably prudent steps, when you begin
-\"  distribution of Opaque copies in quantity, to ensure that this
-\"  Transparent copy will remain thus accessible at the stated location
-\"  until at least one year after the last time you distribute an Opaque
-\"  copy (directly or through your agents or retailers) of that edition to
-\"  the public.
-\"  .PP
-\"  It is requested, but not required, that you contact the authors of the
-\"  Document well before redistributing any large number of copies, to give
-\"  them a chance to provide you with an updated version of the Document.
-\"  .PP
-\"  4. MODIFICATIONS
-\"  .PP
-\"  You may copy and distribute a Modified Version of the Document under
-\"  the conditions of sections 2 and 3 above, provided that you release
-\"  the Modified Version under precisely this License, with the Modified
-\"  Version filling the role of the Document, thus licensing distribution
-\"  and modification of the Modified Version to whoever possesses a copy
-\"  of it.  In addition, you must do these things in the Modified Version:
-\"  .PP
-\"  A. Use in the Title Page (and on the covers, if any) a title distinct
-\"  from that of the Document, and from those of previous versions
-\"  (which should, if there were any, be listed in the History section
-\"  of the Document).  You may use the same title as a previous version
-\"  if the original publisher of that version gives permission.
-\"  .PP
-\"  B. List on the Title Page, as authors, one or more persons or entities
-\"  responsible for authorship of the modifications in the Modified
-\"  Version, together with at least five of the principal authors of the
-\"  Document (all of its principal authors, if it has less than five).
-\"  .PP
-\"  C. State on the Title page the name of the publisher of the
-\"  Modified Version, as the publisher.
-\"  .PP
-\"  D. Preserve all the copyright notices of the Document.
-\"  .PP
-\"  E. Add an appropriate copyright notice for your modifications
-\"  adjacent to the other copyright notices.
-\"  .PP
-\"  F. Include, immediately after the copyright notices, a license notice
-\"  giving the public permission to use the Modified Version under the
-\"  terms of this License, in the form shown in the Addendum below.
-\"  Preserve in that license notice the full lists of Invariant Sections
-\"  and required Cover Texts given in the Document's license notice.
-\"  .PP
-\"  H. Include an unaltered copy of this License.
-\"  .PP
-\"  I. Preserve the section entitled "History", and its title, and add to
-\"  it an item stating at least the title, year, new authors, and
-\"  publisher of the Modified Version as given on the Title Page.  If
-\"  there is no section entitled "History" in the Document, create one
-\"  stating the title, year, authors, and publisher of the Document as
-\"  given on its Title Page, then add an item describing the Modified
-\"  Version as stated in the previous sentence.
-\"  .PP
-\"  J. Preserve the network location, if any, given in the Document for
-\"  public access to a Transparent copy of the Document, and likewise
-\"  the network locations given in the Document for previous versions
-\"  it was based on.  These may be placed in the "History" section.
-\"  You may omit a network location for a work that was published at
-\"  least four years before the Document itself, or if the original
-\"  publisher of the version it refers to gives permission.
-\"  .PP
-\"  K. In any section entitled "Acknowledgements" or "Dedications",
-\"  preserve the section's title, and preserve in the section all the
-\"  substance and tone of each of the contributor acknowledgements
-\"  and/or dedications given therein.
-\"  .PP
-\"  L. Preserve all the Invariant Sections of the Document,
-\"  unaltered in their text and in their titles.  Section numbers
-\"  or the equivalent are not considered part of the section titles.
-\"  .PP
-\"  M. Delete any section entitled "Endorsements".  Such a section
-\"  may not be included in the Modified Version.
-\"  .PP
-\"  N. Do not retitle any existing section as "Endorsements"
-\"  or to conflict in title with any Invariant Section.
-\"  .PP
-\"  If the Modified Version includes new front-matter sections or
-\"  appendices that qualify as Secondary Sections and contain no material
-\"  copied from the Document, you may at your option designate some or all
-\"  of these sections as invariant.  To do this, add their titles to the
-\"  list of Invariant Sections in the Modified Version's license notice.
-\"  These titles must be distinct from any other section titles.
-\"  .PP
-\"  You may add a section entitled "Endorsements", provided it contains
-\"  nothing but endorsements of your Modified Version by various
-\"  parties--for example, statements of peer review or that the text has
-\"  been approved by an organization as the authoritative definition of a
-\"  standard.
-\"  .PP
-\"  You may add a passage of up to five words as a Front-Cover Text, and a
-\"  passage of up to 25 words as a Back-Cover Text, to the end of the list
-\"  of Cover Texts in the Modified Version.  Only one passage of
-\"  Front-Cover Text and one of Back-Cover Text may be added by (or
-\"  through arrangements made by) any one entity.  If the Document already
-\"  includes a cover text for the same cover, previously added by you or
-\"  by arrangement made by the same entity you are acting on behalf of,
-\"  you may not add another; but you may replace the old one, on explicit
-\"  permission from the previous publisher that added the old one.
-\"  .PP
-\"  The author(s) and publisher(s) of the Document do not by this License
-\"  give permission to use their names for publicity for or to assert or
-\"  imply endorsement of any Modified Version.
-\"  .PP
-
-\"  5. COMBINING DOCUMENTS
-\"  .PP
-\"  You may combine the Document with other documents released under this
-\"  License, under the terms defined in section 4 above for modified
-\"  versions, provided that you include in the combination all of the
-\"  Invariant Sections of all of the original documents, unmodified, and
-\"  list them all as Invariant Sections of your combined work in its
-\"  license notice.
-\"  .PP
-\"  The combined work need only contain one copy of this License, and
-\"  multiple identical Invariant Sections may be replaced with a single
-\"  copy.  If there are multiple Invariant Sections with the same name but
-\"  different contents, make the title of each such section unique by
-\"  adding at the end of it, in parentheses, the name of the original
-\"  author or publisher of that section if known, or else a unique number.
-\"  Make the same adjustment to the section titles in the list of
-\"  Invariant Sections in the license notice of the combined work.
-\"  .PP
-\"  In the combination, you must combine any sections entitled "History"
-\"  in the various original documents, forming one section entitled
-\"  "History"; likewise combine any sections entitled "Acknowledgements",
-\"  and any sections entitled "Dedications".  You must delete all sections
-\"  entitled "Endorsements."
-\"  .PP
-
-\"  6. COLLECTIONS OF DOCUMENTS
-\"  .PP
-\"  You may make a collection consisting of the Document and other documents
-\"  released under this License, and replace the individual copies of this
-\"  License in the various documents with a single copy that is included in
-\"  the collection, provided that you follow the rules of this License for
-\"  verbatim copying of each of the documents in all other respects.
-\"  .PP
-\"  You may extract a single document from such a collection, and distribute
-\"  it individually under this License, provided you insert a copy of this
-\"  License into the extracted document, and follow this License in all
-\"  other respects regarding verbatim copying of that document.
-\"  .PP
-
-\"  7. AGGREGATION WITH INDEPENDENT WORKS
-\"  .PP
-\"  A compilation of the Document or its derivatives with other separate
-\"  and independent documents or works, in or on a volume of a storage or
-\"  distribution medium, does not as a whole count as a Modified Version
-\"  of the Document, provided no compilation copyright is claimed for the
-\"  compilation.  Such a compilation is called an "aggregate", and this
-\"  License does not apply to the other self-contained works thus compiled
-\"  with the Document, on account of their being thus compiled, if they
-\"  are not themselves derivative works of the Document.
-\"  .PP
-\"  If the Cover Text requirement of section 3 is applicable to these
-\"  copies of the Document, then if the Document is less than one quarter
-\"  of the entire aggregate, the Document's Cover Texts may be placed on
-\"  covers that surround only the Document within the aggregate.
-\"  Otherwise they must appear on covers around the whole aggregate.
-\"  .PP
-
-\"  8. TRANSLATION
-\"  .PP
-\"  Translation is considered a kind of modification, so you may
-\"  distribute translations of the Document under the terms of section 4.
-\"  Replacing Invariant Sections with translations requires special
-\"  permission from their copyright holders, but you may include
-\"  translations of some or all Invariant Sections in addition to the
-\"  original versions of these Invariant Sections.  You may include a
-\"  translation of this License provided that you also include the
-\"  original English version of this License.  In case of a disagreement
-\"  between the translation and the original English version of this
-\"  License, the original English version will prevail.
-\"  .PP
-
-\"  9. TERMINATION
-\"  .PP
-\"  You may not copy, modify, sublicense, or distribute the Document except
-\"  as expressly provided for under this License.  Any other attempt to
-\"  copy, modify, sublicense or distribute the Document is void, and will
-\"  automatically terminate your rights under this License.  However,
-\"  parties who have received copies, or rights, from you under this
-\"  License will not have their licenses terminated so long as such
-\"  parties remain in full compliance.
-\"  .PP
-
-\"  10. FUTURE REVISIONS OF THIS LICENSE
-\"  .PP
-\"  The Free Software Foundation may publish new, revised versions
-\"  of the GNU Free Documentation License from time to time.  Such new
-\"  versions will be similar in spirit to the present version, but may
-\"  differ in detail to address new problems or concerns.  See
-\"  http://www.gnu.org/copyleft/.
-\"  .PP
-\"  Each version of the License is given a distinguishing version number.
-\"  If the Document specifies that a particular numbered version of this
-\"  License "or any later version" applies to it, you have the option of
-\"  following the terms and conditions either of that specified version or
-\"  of any later version that has been published (not as a draft) by the
-\"  Free Software Foundation.  If the Document does not specify a version
-\"  number of this License, you may choose any version ever published (not
-\"  as a draft) by the Free Software Foundation.
-\"  .PP
-
-\"  ADDENDUM: How to use this License for your documents
-\"  .PP
-\"  To use this License in a document you have written, include a copy of
-\"  the License in the document and put the following copyright and
-\"  license notices just after the title page:
-\"  .PP
-\"      Copyright (c)  YEAR  YOUR NAME.
-\"      Permission is granted to copy, distribute and/or
-\"      modify this document under the terms of the GNU
-\"      Free Documentation License, Version 1.1 or any later
-\"      version published by the Free Software Foundation;
-\"      with the Invariant Sections being LIST THEIR TITLES,
-\"      with the Front-Cover Texts being LIST, and with the
-\"      Back-Cover Texts being LIST.  A copy of the license
-\"      is included in the section entitled "GNU Free
-\"      Documentation License".
-\"  .PP
-\"  If you have no Invariant Sections, write "with no Invariant Sections"
-\"  instead of saying which ones are invariant.  If you have no
-\"  Front-Cover Texts, write "no Front-Cover Texts" instead of
-\"  "Front-Cover Texts being LIST"; likewise for Back-Cover Texts.
-\"  .PP
-\"  If your document contains nontrivial examples of program code, we
-\"  recommend releasing these examples in parallel under your choice of
-\"  free software license, such as the GNU General Public License,
-\"  to permit their use in free software.
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/ar.1 binutils-2.11.2-m68hc1x/binutils/ar.1
--- binutils-2.11.2/binutils/ar.1	Tue Nov 28 21:40:34 2000
+++ binutils-2.11.2-m68hc1x/binutils/ar.1	Fri Sep 21 22:11:27 2001
@@ -1,891 +1,379 @@
-.\" Copyright (c) 1991, 1992, 1993, 1995, 1998, 1999, 2000 Free Software Foundation
-.\" See section COPYING for conditions for redistribution
-.TH ar 1 "1999" "Free Software Foundation" "GNU Development Tools"
-.de BP
-.sp
-.ti \-.2i
-\(**
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:09:39 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
 ..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
 
-.SH NAME
-ar \- create, modify, and extract from archives.
-
-.SH SYNOPSIS
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
 .hy 0
-.na
-.BR ar " [\|" "-" "\|]"\c
-.I {dmpqrtx}[abcfilNoPsSuvV] \c
-[\|\c
-.I membername\c
-\&\|] \c
-[\|\c
-.I count\c
-\&\|] \c
-.I archive\c
-\& \c
-.I files\c
-\&.\|.\|.
-
-.ad b
-.hy 1
-.SH DESCRIPTION
-The GNU \c
-.B ar\c
-\& program creates, modifies, and extracts from
-archives.  An \c
-.I archive\c
-\& is a single file holding a collection of
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "AR 1"
+.TH AR 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
+.UC
+.SH "NAME"
+ar \- create, modify, and extract from archives
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+ar [\fB\-X32_64\fR] [\fB-\fR]\fIp\fR[\fImod\fR [\fIrelpos\fR] [\fIcount\fR]] \fIarchive\fR [\fImember\fR...]
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+The \s-1GNU\s0 \fBar\fR program creates, modifies, and extracts from
+archives.  An \fIarchive\fR is a single file holding a collection of
 other files in a structure that makes it possible to retrieve
-the original individual files (called \c
-.I members\c
-\& of the archive).
-
+the original individual files (called \fImembers\fR of the archive).
+.PP
 The original files' contents, mode (permissions), timestamp, owner, and
-group are preserved in the archive, and may be reconstituted on
+group are preserved in the archive, and can be restored on
 extraction.  
-
-GNU \c
-.B ar\c
-\& can maintain archives whose members have names of any
-length; however, depending on how \c
-.B ar\c
-\& is configured on your
-system, a limit on member-name length may be imposed (for compatibility
-with archive formats maintained with other tools).  If it exists, the
+.PP
+\&\s-1GNU\s0 \fBar\fR can maintain archives whose members have names of any
+length; however, depending on how \fBar\fR is configured on your
+system, a limit on member-name length may be imposed for compatibility
+with archive formats maintained with other tools.  If it exists, the
 limit is often 15 characters (typical of formats related to a.out) or 16
 characters (typical of formats related to coff).
-
-\c
-.B ar\c
-\& is considered a binary utility because archives of this sort
-are most often used as \c
-.I libraries\c
-\& holding commonly needed
+.PP
+\&\fBar\fR is considered a binary utility because archives of this sort
+are most often used as \fIlibraries\fR holding commonly needed
 subroutines.
-
-\c
-.B ar\c
-\& will create an index to the symbols defined in relocatable
-object modules in the archive when you specify the modifier `\|\c
-.B s\c
-\|'.
-Once created, this index is updated in the archive whenever \c
-.B ar\c
-\&
-makes a change to its contents (save for the `\|\c
-.B q\c
-\|' update operation).
+.PP
+\&\fBar\fR creates an index to the symbols defined in relocatable
+object modules in the archive when you specify the modifier \fBs\fR.
+Once created, this index is updated in the archive whenever \fBar\fR
+makes a change to its contents (save for the \fBq\fR update operation).
 An archive with such an index speeds up linking to the library, and
 allows routines in the library to call each other without regard to
 their placement in the archive.
-
-You may use `\|\c
-.B nm \-s\c
-\|' or `\|\c
-.B nm \-\-print\-armap\c
-\|' to list this index
-table.  If an archive lacks the table, another form of \c
-.B ar\c
-\& called
-\c
-.B ranlib\c
-\& can be used to add just the table.
-
-\c
-.B ar\c
-\& insists on at least two arguments to execute: one
-keyletter specifying the \c
-.I operation\c
-\& (optionally accompanied by other
-keyletters specifying \c
-.I modifiers\c
-\&), and the archive name to act on.
-
-Most operations can also accept further \c
-.I files\c
-\& arguments,
-specifying particular files to operate on.
-
-.SH OPTIONS
-GNU \c
-.B ar\c
-\& allows you to mix the operation code \c
-.I p\c
-\& and modifier
-flags \c
-.I mod\c
-\& in any order, within the first command-line argument.
-
+.PP
+You may use \fBnm \-s\fR or \fBnm \-\-print-armap\fR to list this index
+table.  If an archive lacks the table, another form of \fBar\fR called
+\&\fBranlib\fR can be used to add just the table.
+.PP
+\&\s-1GNU\s0 \fBar\fR is designed to be compatible with two different
+facilities.  You can control its activity using command-line options,
+like the different varieties of \fBar\fR on Unix systems; or, if you
+specify the single command-line option \fB\-M\fR, you can control it
+with a script supplied via standard input, like the \s-1MRI\s0 ``librarian''
+program.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+\&\s-1GNU\s0 \fBar\fR allows you to mix the operation code \fIp\fR and modifier
+flags \fImod\fR in any order, within the first command-line argument.
+.PP
 If you wish, you may begin the first command-line argument with a
 dash.
-
-The \c
-.I p\c
-\& keyletter specifies what operation to execute; it may be
+.PP
+The \fIp\fR keyletter specifies what operation to execute; it may be
 any of the following, but you must specify only one of them:
-
-.TP
-.B d
-\c
-.I Delete\c
-\& modules from the archive.  Specify the names of modules to
-be deleted as \c
-.I files\c
-\&; the archive is untouched if you
+.IP "\fBd\fR" 4
+.IX Item "d"
+\&\fIDelete\fR modules from the archive.  Specify the names of modules to
+be deleted as \fImember\fR...; the archive is untouched if you
 specify no files to delete.
-
-If you specify the `\|\c
-.B v\c
-\|' modifier, \c
-.B ar\c
-\& will list each module
+.Sp
+If you specify the \fBv\fR modifier, \fBar\fR lists each module
 as it is deleted.
-
-.TP
-.B m
-Use this operation to \c
-.I move\c
-\& members in an archive.
-
+.IP "\fBm\fR" 4
+.IX Item "m"
+Use this operation to \fImove\fR members in an archive.
+.Sp
 The ordering of members in an archive can make a difference in how
 programs are linked using the library, if a symbol is defined in more
 than one member.  
-
-If no modifiers are used with \c
-.B m\c
-\&, any members you name in the
-\c
-.I files\c
-\& arguments are moved to the \c
-.I end\c
-\& of the archive;
-you can use the `\|\c
-.B a\c
-\|', `\|\c
-.B b\c
-\|', or `\|\c
-.B i\c
-\|' modifiers to move them to a
+.Sp
+If no modifiers are used with \f(CW\*(C`m\*(C'\fR, any members you name in the
+\&\fImember\fR arguments are moved to the \fIend\fR of the archive;
+you can use the \fBa\fR, \fBb\fR, or \fBi\fR modifiers to move them to a
 specified place instead.
-
-.TP
-.B p
-\c
-.I Print\c
-\& the specified members of the archive, to the standard
-output file.  If the `\|\c
-.B v\c
-\|' modifier is specified, show the member
+.IP "\fBp\fR" 4
+.IX Item "p"
+\&\fIPrint\fR the specified members of the archive, to the standard
+output file.  If the \fBv\fR modifier is specified, show the member
 name before copying its contents to standard output.
-
-If you specify no \c
-.I files\c
-\&, all the files in the archive are printed.
-
-.TP
-.B q
-\c
-.I Quick append\c
-\&; add \c
-.I files\c
-\& to the end of \c
-.I archive\c
-\&,
-without checking for replacement.  
-
-The modifiers `\|\c
-.B a\c
-\|', `\|\c
-.B b\c
-\|', and `\|\c
-.B i\c
-\|' do \c
-.I not\c
-\& affect this
+.Sp
+If you specify no \fImember\fR arguments, all the files in the archive are
+printed.
+.IP "\fBq\fR" 4
+.IX Item "q"
+\&\fIQuick append\fR; Historically, add the files \fImember\fR... to the end of
+\&\fIarchive\fR, without checking for replacement.
+.Sp
+The modifiers \fBa\fR, \fBb\fR, and \fBi\fR do \fInot\fR affect this
 operation; new members are always placed at the end of the archive.
-
-The modifier `\|\c
-.B v\c
-\|' makes \c
-.B ar\c
-\& list each file as it is appended.
-
+.Sp
+The modifier \fBv\fR makes \fBar\fR list each file as it is appended.
+.Sp
 Since the point of this operation is speed, the archive's symbol table
-index is not updated, even if it already existed; you can use `\|\c
-.B ar s\c
-\|' or
-\c
-.B ranlib\c
-\& explicitly to update the symbol table index.
-
+index is not updated, even if it already existed; you can use \fBar s\fR or
+\&\fBranlib\fR explicitly to update the symbol table index.
+.Sp
 However, too many different systems assume quick append rebuilds the
-index, so GNU
-.B ar
-implements `\|\c
-.B q\c
-\|' as a synonym for `\|\c
-.B r\c
-\|'.
-
-.TP
-.B r
-Insert \c
-.I files\c
-\& into \c
-.I archive\c
-\& (with \c
-.I replacement\c
-\&). This
-operation differs from `\|\c
-.B q\c
-\|' in that any previously existing members
-are deleted if their names match those being added.
-
-If one of the files named in \c
-.I files\c
-\& doesn't exist, \c
-.B ar\c
-\&
+index, so \s-1GNU\s0 ar implements \f(CW\*(C`q\*(C'\fR as a synonym for \f(CW\*(C`r\*(C'\fR.
+.IP "\fBr\fR" 4
+.IX Item "r"
+Insert the files \fImember\fR... into \fIarchive\fR (with
+\&\fIreplacement\fR). This operation differs from \fBq\fR in that any
+previously existing members are deleted if their names match those being
+added.
+.Sp
+If one of the files named in \fImember\fR... does not exist, \fBar\fR
 displays an error message, and leaves undisturbed any existing members
 of the archive matching that name.
-
+.Sp
 By default, new members are added at the end of the file; but you may
-use one of the modifiers `\|\c
-.B a\c
-\|', `\|\c
-.B b\c
-\|', or `\|\c
-.B i\c
-\|' to request
+use one of the modifiers \fBa\fR, \fBb\fR, or \fBi\fR to request
 placement relative to some existing member.
-
-The modifier `\|\c
-.B v\c
-\|' used with this operation elicits a line of
-output for each file inserted, along with one of the letters `\|\c
-.B a\c
-\|' or
-`\|\c
-.B r\c
-\|' to indicate whether the file was appended (no old member
+.Sp
+The modifier \fBv\fR used with this operation elicits a line of
+output for each file inserted, along with one of the letters \fBa\fR or
+\&\fBr\fR to indicate whether the file was appended (no old member
 deleted) or replaced.
-
-.TP
-.B t
-Display a \c
-.I table\c
-\& listing the contents of \c
-.I archive\c
-\&, or those
-of the files listed in \c
-.I files\c
-\& that are present in the
+.IP "\fBt\fR" 4
+.IX Item "t"
+Display a \fItable\fR listing the contents of \fIarchive\fR, or those
+of the files listed in \fImember\fR... that are present in the
 archive.  Normally only the member name is shown; if you also want to
 see the modes (permissions), timestamp, owner, group, and size, you can
-request that by also specifying the `\|\c
-.B v\c
-\|' modifier.
-
-If you do not specify any \c
-.I files\c
-\&, all files in the archive
+request that by also specifying the \fBv\fR modifier.
+.Sp
+If you do not specify a \fImember\fR, all files in the archive
 are listed.
-
-If there is more than one file with the same name (say, `\|\c
-.B fie\c
-\|') in
-an archive (say `\|\c
-.B b.a\c
-\|'), `\|\c
-.B ar t b.a fie\c
-\|' will list only the
+.Sp
+If there is more than one file with the same name (say, \fBfie\fR) in
+an archive (say \fBb.a\fR), \fBar t b.a fie\fR lists only the
 first instance; to see them all, you must ask for a complete
-listing\(em\&in our example, `\|\c
-.B ar t b.a\c
-\|'.
-
-.TP
-.B x
-\c
-.I Extract\c
-\& members (named \c
-.I files\c
-\&) from the archive.  You can
-use the `\|\c
-.B v\c
-\|' modifier with this operation, to request that
-\c
-.B ar\c
-\& list each name as it extracts it.
-
-If you do not specify any \c
-.I files\c
-\&, all files in the archive
+listing\-\-\-in our example, \fBar t b.a\fR.
+.IP "\fBx\fR" 4
+.IX Item "x"
+\&\fIExtract\fR members (named \fImember\fR) from the archive.  You can
+use the \fBv\fR modifier with this operation, to request that
+\&\fBar\fR list each name as it extracts it.
+.Sp
+If you do not specify a \fImember\fR, all files in the archive
 are extracted.
-
 .PP
-
-A number of modifiers (\c
-.I mod\c
-\&) may immediately follow the \c
-.I p\c
-\&
+A number of modifiers (\fImod\fR) may immediately follow the \fIp\fR
 keyletter, to specify variations on an operation's behavior:
-
-.TP
-.B a
-Add new files \c
-.I after\c
-\& an existing member of the
-archive.  If you use the modifier \c
-.B a\c
-\&, the name of an existing archive
-member must be present as the \c
-.I membername\c
-\& argument, before the
-\c
-.I archive\c
-\& specification.
-
-.TP
-.B b
-Add new files \c
-.I before\c
-\& an existing member of the
-archive.  If you use the modifier \c
-.B b\c
-\&, the name of an existing archive
-member must be present as the \c
-.I membername\c
-\& argument, before the
-\c
-.I archive\c
-\& specification.  (same as `\|\c
-.B i\c
-\|').
-
-.TP
-.B c
-\c
-.I Create\c
-\& the archive.  The specified \c
-.I archive\c
-\& is always
-created if it didn't exist, when you request an update.  But a warning is
+.IP "\fBa\fR" 4
+.IX Item "a"
+Add new files \fIafter\fR an existing member of the
+archive.  If you use the modifier \fBa\fR, the name of an existing archive
+member must be present as the \fIrelpos\fR argument, before the
+\&\fIarchive\fR specification.
+.IP "\fBb\fR" 4
+.IX Item "b"
+Add new files \fIbefore\fR an existing member of the
+archive.  If you use the modifier \fBb\fR, the name of an existing archive
+member must be present as the \fIrelpos\fR argument, before the
+\&\fIarchive\fR specification.  (same as \fBi\fR).
+.IP "\fBc\fR" 4
+.IX Item "c"
+\&\fICreate\fR the archive.  The specified \fIarchive\fR is always
+created if it did not exist, when you request an update.  But a warning is
 issued unless you specify in advance that you expect to create it, by
 using this modifier.
-
-.TP
-.B f
-Truncate names in the archive.  
-.B ar
-will normally permit file names of any length.  This will cause it to
-create archives which are not compatible with the native 
-.B ar
-program on some systems.  If this is a concern, the 
-.B f
-modifier may be used to truncate file names when putting them in the
-archive.
-
-.TP
-.B i
-Insert new files \c
-.I before\c
-\& an existing member of the
-archive.  If you use the modifier \c
-.B i\c
-\&, the name of an existing archive
-member must be present as the \c
-.I membername\c
-\& argument, before the
-\c
-.I archive\c
-\& specification.  (same as `\|\c
-.B b\c
-\|').
-
-.TP
-.B l
+.IP "\fBf\fR" 4
+.IX Item "f"
+Truncate names in the archive.  \s-1GNU\s0 \fBar\fR will normally permit file
+names of any length.  This will cause it to create archives which are
+not compatible with the native \fBar\fR program on some systems.  If
+this is a concern, the \fBf\fR modifier may be used to truncate file
+names when putting them in the archive.
+.IP "\fBi\fR" 4
+.IX Item "i"
+Insert new files \fIbefore\fR an existing member of the
+archive.  If you use the modifier \fBi\fR, the name of an existing archive
+member must be present as the \fIrelpos\fR argument, before the
+\&\fIarchive\fR specification.  (same as \fBb\fR).
+.IP "\fBl\fR" 4
+.IX Item "l"
 This modifier is accepted but not used.
-
-.TP
-.B N
-Uses the
-.I count
-parameter.  This is used if there are multiple entries in the archive
-with the same name.  Extract or delete instance
-.I count
-of the given name from the archive.
-
-.TP
-.B o
-Preserve the \c
-.I original\c
-\& dates of members when extracting them.  If
+.IP "\fBN\fR" 4
+.IX Item "N"
+Uses the \fIcount\fR parameter.  This is used if there are multiple
+entries in the archive with the same name.  Extract or delete instance
+\&\fIcount\fR of the given name from the archive.
+.IP "\fBo\fR" 4
+.IX Item "o"
+Preserve the \fIoriginal\fR dates of members when extracting them.  If
 you do not specify this modifier, files extracted from the archive
-will be stamped with the time of extraction.
-
-.TP
-.B P
-Use the full path name when matching names in the archive.
-.B ar
-can not create an archive with a full path name (such archives are not
-POSIX complaint), but other archive creators can.  This option will
-cause
-.B ar
-to match file names using a complete path name, which can be
-convenient when extracting a single file from an archive created by
-another tool.
-
-.TP
-.B s
+are stamped with the time of extraction.
+.IP "\fBP\fR" 4
+.IX Item "P"
+Use the full path name when matching names in the archive.  \s-1GNU\s0
+\&\fBar\fR can not create an archive with a full path name (such archives
+are not \s-1POSIX\s0 complaint), but other archive creators can.  This option
+will cause \s-1GNU\s0 \fBar\fR to match file names using a complete path
+name, which can be convenient when extracting a single file from an
+archive created by another tool.
+.IP "\fBs\fR" 4
+.IX Item "s"
 Write an object-file index into the archive, or update an existing one,
 even if no other change is made to the archive.  You may use this modifier
-flag either with any operation, or alone.  Running `\|\c
-.B ar s\c
-\|' on an
-archive is equivalent to running `\|\c
-.B ranlib\c
-\|' on it.
-
-.TP
-.B S
+flag either with any operation, or alone.  Running \fBar s\fR on an
+archive is equivalent to running \fBranlib\fR on it.
+.IP "\fBS\fR" 4
+.IX Item "S"
 Do not generate an archive symbol table.  This can speed up building a
 large library in several steps.  The resulting archive can not be used
 with the linker.  In order to build a symbol table, you must omit the
-`\|\c
-.B S\c
-\|' modifier on the last execution of `\|\c
-.B ar\c
-\|', or you must run `\|\c
-.B ranlib\c
-\|' on the archive.
-
-.TP
-.B u
-Normally, \c
-.B ar r\c
-\&.\|.\|. inserts all files
-listed into the archive.  If you would like to insert \c
-.I only\c
-\& those
+\&\fBS\fR modifier on the last execution of \fBar\fR, or you must run
+\&\fBranlib\fR on the archive.
+.IP "\fBu\fR" 4
+.IX Item "u"
+Normally, \fBar r\fR... inserts all files
+listed into the archive.  If you would like to insert \fIonly\fR those
 of the files you list that are newer than existing members of the same
-names, use this modifier.  The `\|\c
-.B u\c
-\|' modifier is allowed only for the
-operation `\|\c
-.B r\c
-\|' (replace).  In particular, the combination `\|\c
-.B qu\c
-\|' is
+names, use this modifier.  The \fBu\fR modifier is allowed only for the
+operation \fBr\fR (replace).  In particular, the combination \fBqu\fR is
 not allowed, since checking the timestamps would lose any speed
-advantage from the operation `\|\c
-.B q\c
-\|'.
-
-.TP
-.B v
-This modifier requests the \c
-.I verbose\c
-\& version of an operation.  Many
+advantage from the operation \fBq\fR.
+.IP "\fBv\fR" 4
+.IX Item "v"
+This modifier requests the \fIverbose\fR version of an operation.  Many
 operations display additional information, such as filenames processed,
-when the modifier `\|\c
-.B v\c
-\|' is appended.
-
-.TP
-.B V
-This modifier shows the version number of
-.BR ar .
-
+when the modifier \fBv\fR is appended.
+.IP "\fBV\fR" 4
+.IX Item "V"
+This modifier shows the version number of \fBar\fR.
 .PP
-
+\&\fBar\fR ignores an initial option spelt \fB\-X32_64\fR, for
+compatibility with \s-1AIX\s0.  The behaviour produced by this option is the
+default for \s-1GNU\s0 \fBar\fR.  \fBar\fR does not support any of the other
+\&\fB\-X\fR options; in particular, it does not support \fB\-X32\fR
+which is the default for \s-1AIX\s0 \fBar\fR.
 .SH "SEE ALSO"
-.RB "`\|" binutils "\|'"
-entry in 
-.B
-info\c
-\&; 
-.I
-The GNU Binary Utilities\c
-, Roland H. Pesch (October 1991).
-.BR nm ( 1 )\c
-\&,
-.BR ranlib ( 1 )\c
-\&.
-
-.SH COPYING
-Copyright (c) 1991, 1992, 1993, 1995, 1998, 1999, 2000 Free Software Foundation, Inc.
+.IX Header "SEE ALSO"
+\&\fInm\fR\|(1), \fIranlib\fR\|(1), and the Info entries for \fIbinutils\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
 .PP
-This document is distributed under the terms of the GNU Free
-Documentation License, version 1.1.  That license is described in the
-sources for this manual page, but it is not displayed here in order to
-make this manual more consise.  Copies of this license can also be
-obtained from: http://www.gnu.org/copyleft/.
-
-\"  .SH GNU Free Documentation License
-\"    Version 1.1, March 2000
-
-\"    Copyright (C) 2000  Free Software Foundation, Inc.
-\"    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-     
-\"    Everyone is permitted to copy and distribute verbatim
-\"    copies of this license document, but changing it is
-\"    not allowed.
-\"  .PP
-\"  0. PREAMBLE
-\"  .PP
-\"  The purpose of this License is to make a manual, textbook, or other
-\"  written document "free" in the sense of freedom: to assure everyone
-\"  the effective freedom to copy and redistribute it, with or without
-\"  modifying it, either commercially or noncommercially.  Secondarily,
-\"  this License preserves for the author and publisher a way to get
-\"  credit for their work, while not being considered responsible for
-\"  modifications made by others.
-\"  .PP
-\"  This License is a kind of "copyleft", which means that derivative
-\"  works of the document must themselves be free in the same sense.  It
-\"  complements the GNU General Public License, which is a copyleft
-\"  license designed for free software.
-\"  .PP
-\"  We have designed this License in order to use it for manuals for free
-\"  software, because free software needs free documentation: a free
-\"  program should come with manuals providing the same freedoms that the
-\"  software does.  But this License is not limited to software manuals;
-\"  it can be used for any textual work, regardless of subject matter or
-\"  whether it is published as a printed book.  We recommend this License
-\"  principally for works whose purpose is instruction or reference.
-\"  .PP
-\"  1. APPLICABILITY AND DEFINITIONS
-\"  .PP
-\"  This License applies to any manual or other work that contains a
-\"  notice placed by the copyright holder saying it can be distributed
-\"  under the terms of this License.  The "Document", below, refers to any
-\"  such manual or work.  Any member of the public is a licensee, and is
-\"  addressed as "you".
-\"  .PP
-\"  A "Modified Version" of the Document means any work containing the
-\"  Document or a portion of it, either copied verbatim, or with
-\"  modifications and/or translated into another language.
-\"  .PP
-\"  A "Secondary Section" is a named appendix or a front-matter section of
-\"  the Document that deals exclusively with the relationship of the
-\"  publishers or authors of the Document to the Document's overall subject
-\"  (or to related matters) and contains nothing that could fall directly
-\"  within that overall subject.  (For example, if the Document is in part a
-\"  textbook of mathematics, a Secondary Section may not explain any
-\"  mathematics.)  The relationship could be a matter of historical
-\"  connection with the subject or with related matters, or of legal,
-\"  commercial, philosophical, ethical or political position regarding
-\"  them.
-\"  .PP
-\"  The "Invariant Sections" are certain Secondary Sections whose titles
-\"  are designated, as being those of Invariant Sections, in the notice
-\"  that says that the Document is released under this License.
-\"  .PP
-\"  The "Cover Texts" are certain short passages of text that are listed,
-\"  as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-\"  the Document is released under this License.
-\"  .PP
-\"  A "Transparent" copy of the Document means a machine-readable copy,
-\"  represented in a format whose specification is available to the
-\"  general public, whose contents can be viewed and edited directly and
-\"  straightforwardly with generic text editors or (for images composed of
-\"  pixels) generic paint programs or (for drawings) some widely available
-\"  drawing editor, and that is suitable for input to text formatters or
-\"  for automatic translation to a variety of formats suitable for input
-\"  to text formatters.  A copy made in an otherwise Transparent file
-\"  format whose markup has been designed to thwart or discourage
-\"  subsequent modification by readers is not Transparent.  A copy that is
-\"  not "Transparent" is called "Opaque".
-\"  .PP
-\"  Examples of suitable formats for Transparent copies include plain
-\"  ASCII without markup, Texinfo input format, LaTeX input format, SGML
-\"  or XML using a publicly available DTD, and standard-conforming simple
-\"  HTML designed for human modification.  Opaque formats include
-\"  PostScript, PDF, proprietary formats that can be read and edited only
-\"  by proprietary word processors, SGML or XML for which the DTD and/or
-\"  processing tools are not generally available, and the
-\"  machine-generated HTML produced by some word processors for output
-\"  purposes only.
-\"  .PP
-\"  The "Title Page" means, for a printed book, the title page itself,
-\"  plus such following pages as are needed to hold, legibly, the material
-\"  this License requires to appear in the title page.  For works in
-\"  formats which do not have any title page as such, "Title Page" means
-\"  the text near the most prominent appearance of the work's title,
-\"  preceding the beginning of the body of the text.
-\"  .PP
-\"  2. VERBATIM COPYING
-\"  .PP
-\"  You may copy and distribute the Document in any medium, either
-\"  commercially or noncommercially, provided that this License, the
-\"  copyright notices, and the license notice saying this License applies
-\"  to the Document are reproduced in all copies, and that you add no other
-\"  conditions whatsoever to those of this License.  You may not use
-\"  technical measures to obstruct or control the reading or further
-\"  copying of the copies you make or distribute.  However, you may accept
-\"  compensation in exchange for copies.  If you distribute a large enough
-\"  number of copies you must also follow the conditions in section 3.
-\"  .PP
-\"  You may also lend copies, under the same conditions stated above, and
-\"  you may publicly display copies.
-\"  .PP
-\"  3. COPYING IN QUANTITY
-\"  .PP
-\"  If you publish printed copies of the Document numbering more than 100,
-\"  and the Document's license notice requires Cover Texts, you must enclose
-\"  the copies in covers that carry, clearly and legibly, all these Cover
-\"  Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-\"  the back cover.  Both covers must also clearly and legibly identify
-\"  you as the publisher of these copies.  The front cover must present
-\"  the full title with all words of the title equally prominent and
-\"  visible.  You may add other material on the covers in addition.
-\"  Copying with changes limited to the covers, as long as they preserve
-\"  the title of the Document and satisfy these conditions, can be treated
-\"  as verbatim copying in other respects.
-\"  .PP
-\"  If the required texts for either cover are too voluminous to fit
-\"  legibly, you should put the first ones listed (as many as fit
-\"  reasonably) on the actual cover, and continue the rest onto adjacent
-\"  pages.
-\"  .PP
-\"  If you publish or distribute Opaque copies of the Document numbering
-\"  more than 100, you must either include a machine-readable Transparent
-\"  copy along with each Opaque copy, or state in or with each Opaque copy
-\"  a publicly-accessible computer-network location containing a complete
-\"  Transparent copy of the Document, free of added material, which the
-\"  general network-using public has access to download anonymously at no
-\"  charge using public-standard network protocols.  If you use the latter
-\"  option, you must take reasonably prudent steps, when you begin
-\"  distribution of Opaque copies in quantity, to ensure that this
-\"  Transparent copy will remain thus accessible at the stated location
-\"  until at least one year after the last time you distribute an Opaque
-\"  copy (directly or through your agents or retailers) of that edition to
-\"  the public.
-\"  .PP
-\"  It is requested, but not required, that you contact the authors of the
-\"  Document well before redistributing any large number of copies, to give
-\"  them a chance to provide you with an updated version of the Document.
-\"  .PP
-\"  4. MODIFICATIONS
-\"  .PP
-\"  You may copy and distribute a Modified Version of the Document under
-\"  the conditions of sections 2 and 3 above, provided that you release
-\"  the Modified Version under precisely this License, with the Modified
-\"  Version filling the role of the Document, thus licensing distribution
-\"  and modification of the Modified Version to whoever possesses a copy
-\"  of it.  In addition, you must do these things in the Modified Version:
-\"  .PP
-\"  A. Use in the Title Page (and on the covers, if any) a title distinct
-\"  from that of the Document, and from those of previous versions
-\"  (which should, if there were any, be listed in the History section
-\"  of the Document).  You may use the same title as a previous version
-\"  if the original publisher of that version gives permission.
-\"  .PP
-\"  B. List on the Title Page, as authors, one or more persons or entities
-\"  responsible for authorship of the modifications in the Modified
-\"  Version, together with at least five of the principal authors of the
-\"  Document (all of its principal authors, if it has less than five).
-\"  .PP
-\"  C. State on the Title page the name of the publisher of the
-\"  Modified Version, as the publisher.
-\"  .PP
-\"  D. Preserve all the copyright notices of the Document.
-\"  .PP
-\"  E. Add an appropriate copyright notice for your modifications
-\"  adjacent to the other copyright notices.
-\"  .PP
-\"  F. Include, immediately after the copyright notices, a license notice
-\"  giving the public permission to use the Modified Version under the
-\"  terms of this License, in the form shown in the Addendum below.
-\"  Preserve in that license notice the full lists of Invariant Sections
-\"  and required Cover Texts given in the Document's license notice.
-\"  .PP
-\"  H. Include an unaltered copy of this License.
-\"  .PP
-\"  I. Preserve the section entitled "History", and its title, and add to
-\"  it an item stating at least the title, year, new authors, and
-\"  publisher of the Modified Version as given on the Title Page.  If
-\"  there is no section entitled "History" in the Document, create one
-\"  stating the title, year, authors, and publisher of the Document as
-\"  given on its Title Page, then add an item describing the Modified
-\"  Version as stated in the previous sentence.
-\"  .PP
-\"  J. Preserve the network location, if any, given in the Document for
-\"  public access to a Transparent copy of the Document, and likewise
-\"  the network locations given in the Document for previous versions
-\"  it was based on.  These may be placed in the "History" section.
-\"  You may omit a network location for a work that was published at
-\"  least four years before the Document itself, or if the original
-\"  publisher of the version it refers to gives permission.
-\"  .PP
-\"  K. In any section entitled "Acknowledgements" or "Dedications",
-\"  preserve the section's title, and preserve in the section all the
-\"  substance and tone of each of the contributor acknowledgements
-\"  and/or dedications given therein.
-\"  .PP
-\"  L. Preserve all the Invariant Sections of the Document,
-\"  unaltered in their text and in their titles.  Section numbers
-\"  or the equivalent are not considered part of the section titles.
-\"  .PP
-\"  M. Delete any section entitled "Endorsements".  Such a section
-\"  may not be included in the Modified Version.
-\"  .PP
-\"  N. Do not retitle any existing section as "Endorsements"
-\"  or to conflict in title with any Invariant Section.
-\"  .PP
-\"  If the Modified Version includes new front-matter sections or
-\"  appendices that qualify as Secondary Sections and contain no material
-\"  copied from the Document, you may at your option designate some or all
-\"  of these sections as invariant.  To do this, add their titles to the
-\"  list of Invariant Sections in the Modified Version's license notice.
-\"  These titles must be distinct from any other section titles.
-\"  .PP
-\"  You may add a section entitled "Endorsements", provided it contains
-\"  nothing but endorsements of your Modified Version by various
-\"  parties--for example, statements of peer review or that the text has
-\"  been approved by an organization as the authoritative definition of a
-\"  standard.
-\"  .PP
-\"  You may add a passage of up to five words as a Front-Cover Text, and a
-\"  passage of up to 25 words as a Back-Cover Text, to the end of the list
-\"  of Cover Texts in the Modified Version.  Only one passage of
-\"  Front-Cover Text and one of Back-Cover Text may be added by (or
-\"  through arrangements made by) any one entity.  If the Document already
-\"  includes a cover text for the same cover, previously added by you or
-\"  by arrangement made by the same entity you are acting on behalf of,
-\"  you may not add another; but you may replace the old one, on explicit
-\"  permission from the previous publisher that added the old one.
-\"  .PP
-\"  The author(s) and publisher(s) of the Document do not by this License
-\"  give permission to use their names for publicity for or to assert or
-\"  imply endorsement of any Modified Version.
-\"  .PP
-
-\"  5. COMBINING DOCUMENTS
-\"  .PP
-\"  You may combine the Document with other documents released under this
-\"  License, under the terms defined in section 4 above for modified
-\"  versions, provided that you include in the combination all of the
-\"  Invariant Sections of all of the original documents, unmodified, and
-\"  list them all as Invariant Sections of your combined work in its
-\"  license notice.
-\"  .PP
-\"  The combined work need only contain one copy of this License, and
-\"  multiple identical Invariant Sections may be replaced with a single
-\"  copy.  If there are multiple Invariant Sections with the same name but
-\"  different contents, make the title of each such section unique by
-\"  adding at the end of it, in parentheses, the name of the original
-\"  author or publisher of that section if known, or else a unique number.
-\"  Make the same adjustment to the section titles in the list of
-\"  Invariant Sections in the license notice of the combined work.
-\"  .PP
-\"  In the combination, you must combine any sections entitled "History"
-\"  in the various original documents, forming one section entitled
-\"  "History"; likewise combine any sections entitled "Acknowledgements",
-\"  and any sections entitled "Dedications".  You must delete all sections
-\"  entitled "Endorsements."
-\"  .PP
-
-\"  6. COLLECTIONS OF DOCUMENTS
-\"  .PP
-\"  You may make a collection consisting of the Document and other documents
-\"  released under this License, and replace the individual copies of this
-\"  License in the various documents with a single copy that is included in
-\"  the collection, provided that you follow the rules of this License for
-\"  verbatim copying of each of the documents in all other respects.
-\"  .PP
-\"  You may extract a single document from such a collection, and distribute
-\"  it individually under this License, provided you insert a copy of this
-\"  License into the extracted document, and follow this License in all
-\"  other respects regarding verbatim copying of that document.
-\"  .PP
-
-\"  7. AGGREGATION WITH INDEPENDENT WORKS
-\"  .PP
-\"  A compilation of the Document or its derivatives with other separate
-\"  and independent documents or works, in or on a volume of a storage or
-\"  distribution medium, does not as a whole count as a Modified Version
-\"  of the Document, provided no compilation copyright is claimed for the
-\"  compilation.  Such a compilation is called an "aggregate", and this
-\"  License does not apply to the other self-contained works thus compiled
-\"  with the Document, on account of their being thus compiled, if they
-\"  are not themselves derivative works of the Document.
-\"  .PP
-\"  If the Cover Text requirement of section 3 is applicable to these
-\"  copies of the Document, then if the Document is less than one quarter
-\"  of the entire aggregate, the Document's Cover Texts may be placed on
-\"  covers that surround only the Document within the aggregate.
-\"  Otherwise they must appear on covers around the whole aggregate.
-\"  .PP
-
-\"  8. TRANSLATION
-\"  .PP
-\"  Translation is considered a kind of modification, so you may
-\"  distribute translations of the Document under the terms of section 4.
-\"  Replacing Invariant Sections with translations requires special
-\"  permission from their copyright holders, but you may include
-\"  translations of some or all Invariant Sections in addition to the
-\"  original versions of these Invariant Sections.  You may include a
-\"  translation of this License provided that you also include the
-\"  original English version of this License.  In case of a disagreement
-\"  between the translation and the original English version of this
-\"  License, the original English version will prevail.
-\"  .PP
-
-\"  9. TERMINATION
-\"  .PP
-\"  You may not copy, modify, sublicense, or distribute the Document except
-\"  as expressly provided for under this License.  Any other attempt to
-\"  copy, modify, sublicense or distribute the Document is void, and will
-\"  automatically terminate your rights under this License.  However,
-\"  parties who have received copies, or rights, from you under this
-\"  License will not have their licenses terminated so long as such
-\"  parties remain in full compliance.
-\"  .PP
-
-\"  10. FUTURE REVISIONS OF THIS LICENSE
-\"  .PP
-\"  The Free Software Foundation may publish new, revised versions
-\"  of the GNU Free Documentation License from time to time.  Such new
-\"  versions will be similar in spirit to the present version, but may
-\"  differ in detail to address new problems or concerns.  See
-\"  http://www.gnu.org/copyleft/.
-\"  .PP
-\"  Each version of the License is given a distinguishing version number.
-\"  If the Document specifies that a particular numbered version of this
-\"  License "or any later version" applies to it, you have the option of
-\"  following the terms and conditions either of that specified version or
-\"  of any later version that has been published (not as a draft) by the
-\"  Free Software Foundation.  If the Document does not specify a version
-\"  number of this License, you may choose any version ever published (not
-\"  as a draft) by the Free Software Foundation.
-\"  .PP
-
-\"  ADDENDUM: How to use this License for your documents
-\"  .PP
-\"  To use this License in a document you have written, include a copy of
-\"  the License in the document and put the following copyright and
-\"  license notices just after the title page:
-\"  .PP
-\"      Copyright (c)  YEAR  YOUR NAME.
-\"      Permission is granted to copy, distribute and/or
-\"      modify this document under the terms of the GNU
-\"      Free Documentation License, Version 1.1 or any later
-\"      version published by the Free Software Foundation;
-\"      with the Invariant Sections being LIST THEIR TITLES,
-\"      with the Front-Cover Texts being LIST, and with the
-\"      Back-Cover Texts being LIST.  A copy of the license
-\"      is included in the section entitled "GNU Free
-\"      Documentation License".
-\"  .PP
-\"  If you have no Invariant Sections, write "with no Invariant Sections"
-\"  instead of saying which ones are invariant.  If you have no
-\"  Front-Cover Texts, write "no Front-Cover Texts" instead of
-\"  "Front-Cover Texts being LIST"; likewise for Back-Cover Texts.
-\"  .PP
-\"  If your document contains nontrivial examples of program code, we
-\"  recommend releasing these examples in parallel under your choice of
-\"  free software license, such as the GNU General Public License,
-\"  to permit their use in free software.
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/binutils.texi binutils-2.11.2-m68hc1x/binutils/binutils.texi
--- binutils-2.11.2/binutils/binutils.texi	Fri Sep 21 20:58:39 2001
+++ binutils-2.11.2-m68hc1x/binutils/binutils.texi	Fri Sep 21 21:44:01 2001
@@ -26,15 +26,17 @@ END-INFO-DIR-ENTRY
 @end ifinfo
 
 @ifinfo
+@c man begin COPYRIGHT
 Copyright @copyright{} 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
 
-      Permission is granted to copy, distribute and/or modify this document
-      under the terms of the GNU Free Documentation License, Version 1.1
-      or any later version published by the Free Software Foundation;
-      with no Invariant Sections, with no Front-Cover Texts, and with no
-      Back-Cover Texts.  A copy of the license is included in the
-      section entitled "GNU Free Documentation License".
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled "GNU Free Documentation License".
 
+@c man end
 @ignore
 Permission is granted to process this file through TeX and print the
 results, provided the printed document carries a copying permission
@@ -171,12 +173,17 @@ section entitled "GNU Free Documentation
 @kindex ar
 @cindex archives
 @cindex collections of files
+
+@c man title ar create, modify, and extract from archives
+
 @smallexample
 ar [-]@var{p}[@var{mod} [@var{relpos}] [@var{count}]] @var{archive} [@var{member}@dots{}]
 ar -M [ <mri-script ]
 @end smallexample
 
-The @sc{gnu} @code{ar} program creates, modifies, and extracts from
+@c man begin DESCRIPTION ar
+
+The @sc{gnu} @command{ar} program creates, modifies, and extracts from
 archives.  An @dfn{archive} is a single file holding a collection of
 other files in a structure that makes it possible to retrieve
 the original individual files (called @dfn{members} of the archive).
@@ -186,55 +193,59 @@ group are preserved in the archive, and 
 extraction.  
 
 @cindex name length
-@sc{gnu} @code{ar} can maintain archives whose members have names of any
-length; however, depending on how @code{ar} is configured on your
+@sc{gnu} @command{ar} can maintain archives whose members have names of any
+length; however, depending on how @command{ar} is configured on your
 system, a limit on member-name length may be imposed for compatibility
 with archive formats maintained with other tools.  If it exists, the
 limit is often 15 characters (typical of formats related to a.out) or 16
 characters (typical of formats related to coff).
 
 @cindex libraries
-@code{ar} is considered a binary utility because archives of this sort
+@command{ar} is considered a binary utility because archives of this sort
 are most often used as @dfn{libraries} holding commonly needed
 subroutines.
 
 @cindex symbol index
-@code{ar} creates an index to the symbols defined in relocatable
+@command{ar} creates an index to the symbols defined in relocatable
 object modules in the archive when you specify the modifier @samp{s}.
-Once created, this index is updated in the archive whenever @code{ar}
+Once created, this index is updated in the archive whenever @command{ar}
 makes a change to its contents (save for the @samp{q} update operation).
 An archive with such an index speeds up linking to the library, and
 allows routines in the library to call each other without regard to
 their placement in the archive.
 
 You may use @samp{nm -s} or @samp{nm --print-armap} to list this index
-table.  If an archive lacks the table, another form of @code{ar} called
-@code{ranlib} can be used to add just the table.
+table.  If an archive lacks the table, another form of @command{ar} called
+@command{ranlib} can be used to add just the table.
 
-@cindex compatibility, @code{ar}
-@cindex @code{ar} compatibility
-@sc{gnu} @code{ar} is designed to be compatible with two different
+@cindex compatibility, @command{ar}
+@cindex @command{ar} compatibility
+@sc{gnu} @command{ar} is designed to be compatible with two different
 facilities.  You can control its activity using command-line options,
-like the different varieties of @code{ar} on Unix systems; or, if you
-specify the single command-line option @samp{-M}, you can control it
+like the different varieties of @command{ar} on Unix systems; or, if you
+specify the single command-line option @option{-M}, you can control it
 with a script supplied via standard input, like the MRI ``librarian''
 program.
 
+@c man end
+
 @menu
-* ar cmdline::                  Controlling @code{ar} on the command line
-* ar scripts::                  Controlling @code{ar} with a script
+* ar cmdline::                  Controlling @command{ar} on the command line
+* ar scripts::                  Controlling @command{ar} with a script
 @end menu
 
 @page
 @node ar cmdline
-@section Controlling @code{ar} on the command line
+@section Controlling @command{ar} on the command line
 
 @smallexample
-ar [-X32_64] [-]@var{p}[@var{mod} [@var{relpos}] [@var{count}]] @var{archive} [@var{member}@dots{}]
+@c man begin SYNOPSIS ar
+ar [@option{-X32_64}] [@option{-}]@var{p}[@var{mod} [@var{relpos}] [@var{count}]] @var{archive} [@var{member}@dots{}]
+@c man end
 @end smallexample
 
-@cindex Unix compatibility, @code{ar}
-When you use @code{ar} in the Unix style, @code{ar} insists on at least two
+@cindex Unix compatibility, @command{ar}
+When you use @command{ar} in the Unix style, @command{ar} insists on at least two
 arguments to execute: one keyletter specifying the @emph{operation}
 (optionally accompanied by other keyletters specifying
 @emph{modifiers}), and the archive name to act on.
@@ -242,7 +253,9 @@ arguments to execute: one keyletter spec
 Most operations can also accept further @var{member} arguments,
 specifying particular files to operate on.
 
-@sc{gnu} @code{ar} allows you to mix the operation code @var{p} and modifier
+@c man begin OPTIONS ar
+
+@sc{gnu} @command{ar} allows you to mix the operation code @var{p} and modifier
 flags @var{mod} in any order, within the first command-line argument.
 
 If you wish, you may begin the first command-line argument with a
@@ -252,14 +265,14 @@ dash.
 The @var{p} keyletter specifies what operation to execute; it may be
 any of the following, but you must specify only one of them:
 
-@table @code
+@table @samp
 @item d
 @cindex deleting from archive
 @emph{Delete} modules from the archive.  Specify the names of modules to
 be deleted as @var{member}@dots{}; the archive is untouched if you
 specify no files to delete.
 
-If you specify the @samp{v} modifier, @code{ar} lists each module
+If you specify the @samp{v} modifier, @command{ar} lists each module
 as it is deleted.
 
 @item m
@@ -292,11 +305,11 @@ printed.
 The modifiers @samp{a}, @samp{b}, and @samp{i} do @emph{not} affect this
 operation; new members are always placed at the end of the archive.
 
-The modifier @samp{v} makes @code{ar} list each file as it is appended.
+The modifier @samp{v} makes @command{ar} list each file as it is appended.
 
 Since the point of this operation is speed, the archive's symbol table
 index is not updated, even if it already existed; you can use @samp{ar s} or
-@code{ranlib} explicitly to update the symbol table index.
+@command{ranlib} explicitly to update the symbol table index.
 
 However, too many different systems assume quick append rebuilds the
 index, so GNU ar implements @code{q} as a synonym for @code{r}.
@@ -308,7 +321,7 @@ Insert the files @var{member}@dots{} int
 previously existing members are deleted if their names match those being
 added.
 
-If one of the files named in @var{member}@dots{} does not exist, @code{ar}
+If one of the files named in @var{member}@dots{} does not exist, @command{ar}
 displays an error message, and leaves undisturbed any existing members
 of the archive matching that name.
 
@@ -345,7 +358,7 @@ listing---in our example, @samp{ar t b.a
 @cindex extract from archive
 @emph{Extract} members (named @var{member}) from the archive.  You can
 use the @samp{v} modifier with this operation, to request that
-@code{ar} list each name as it extracts it.
+@command{ar} list each name as it extracts it.
 
 If you do not specify a @var{member}, all files in the archive
 are extracted.
@@ -355,7 +368,7 @@ are extracted.
 A number of modifiers (@var{mod}) may immediately follow the @var{p}
 keyletter, to specify variations on an operation's behavior:
 
-@table @code
+@table @samp
 @item a
 @cindex relative placement in archive
 Add new files @emph{after} an existing member of the
@@ -377,9 +390,9 @@ issued unless you specify in advance tha
 using this modifier.
 
 @item f
-Truncate names in the archive.  @sc{gnu} @code{ar} will normally permit file
+Truncate names in the archive.  @sc{gnu} @command{ar} will normally permit file
 names of any length.  This will cause it to create archives which are
-not compatible with the native @code{ar} program on some systems.  If
+not compatible with the native @command{ar} program on some systems.  If
 this is a concern, the @samp{f} modifier may be used to truncate file
 names when putting them in the archive.
 
@@ -407,9 +420,9 @@ are stamped with the time of extraction.
 
 @item P
 Use the full path name when matching names in the archive.  @sc{gnu}
-@code{ar} can not create an archive with a full path name (such archives
+@command{ar} can not create an archive with a full path name (such archives
 are not POSIX complaint), but other archive creators can.  This option
-will cause @sc{gnu} @code{ar} to match file names using a complete path
+will cause @sc{gnu} @command{ar} to match file names using a complete path
 name, which can be convenient when extracting a single file from an
 archive created by another tool.
 
@@ -444,40 +457,48 @@ operations display additional informatio
 when the modifier @samp{v} is appended.
 
 @item V
-This modifier shows the version number of @code{ar}.
+This modifier shows the version number of @command{ar}.
 @end table
 
-@code{ar} ignores an initial option spelt @code{-X32_64}, for
+@command{ar} ignores an initial option spelt @samp{-X32_64}, for
 compatibility with AIX.  The behaviour produced by this option is the
-default for GNU @code{ar}.  @code{ar} does not support any of the other
-@code{-X} options; in particular, it does not support @code{-X32}
-which is the default for AIX @code{ar}.
+default for GNU @command{ar}.  @command{ar} does not support any of the other
+@samp{-X} options; in particular, it does not support @option{-X32}
+which is the default for AIX @command{ar}.
+
+@c man end
+
+@ignore
+@c man begin SEEALSO ar
+nm(1), ranlib(1), and the Info entries for @file{binutils}.
+@c man end
+@end ignore
 
 @node ar scripts
-@section Controlling @code{ar} with a script
+@section Controlling @command{ar} with a script
 
 @smallexample
 ar -M [ <@var{script} ]
 @end smallexample
 
-@cindex MRI compatibility, @code{ar}
-@cindex scripts, @code{ar}
-If you use the single command-line option @samp{-M} with @code{ar}, you
+@cindex MRI compatibility, @command{ar}
+@cindex scripts, @command{ar}
+If you use the single command-line option @samp{-M} with @command{ar}, you
 can control its operation with a rudimentary command language.  This
-form of @code{ar} operates interactively if standard input is coming
-directly from a terminal.  During interactive use, @code{ar} prompts for
+form of @command{ar} operates interactively if standard input is coming
+directly from a terminal.  During interactive use, @command{ar} prompts for
 input (the prompt is @samp{AR >}), and continues executing even after
 errors.  If you redirect standard input to a script file, no prompts are
-issued, and @code{ar} abandons execution (with a nonzero exit code)
+issued, and @command{ar} abandons execution (with a nonzero exit code)
 on any error.
 
-The @code{ar} command language is @emph{not} designed to be equivalent
+The @command{ar} command language is @emph{not} designed to be equivalent
 to the command-line options; in fact, it provides somewhat less control
 over archives.  The only purpose of the command language is to ease the
-transition to @sc{gnu} @code{ar} for developers who already have scripts
+transition to @sc{gnu} @command{ar} for developers who already have scripts
 written for the MRI ``librarian'' program.
 
-The syntax for the @code{ar} command language is straightforward:
+The syntax for the @command{ar} command language is straightforward:
 @itemize @bullet
 @item
 commands are recognized in upper or lower case; for example, @code{LIST}
@@ -496,7 +517,7 @@ comments are allowed; text after either 
 or @samp{;} is ignored.
 
 @item
-Whenever you use a list of names as part of the argument to an @code{ar}
+Whenever you use a list of names as part of the argument to an @command{ar}
 command, you can separate the individual names with either commas or
 blanks.  Commas are shown in the explanations below, for clarity.
 
@@ -506,8 +527,8 @@ at the end of a line, the text on the fo
 of the current command.
 @end itemize
 
-Here are the commands you can use in @code{ar} scripts, or when using
-@code{ar} interactively.  Three of them have special significance:
+Here are the commands you can use in @command{ar} scripts, or when using
+@command{ar} interactively.  Three of them have special significance:
 
 @code{OPEN} or @code{CREATE} specify a @dfn{current archive}, which is
 a temporary file required for most of the other commands.
@@ -558,11 +579,11 @@ output is off, output is like that of @s
 @samp{ar -tv @var{archive} @var{module}@dots{}}.
 
 Output normally goes to the standard output stream; however, if you
-specify @var{outputfile} as a final argument, @code{ar} directs the
+specify @var{outputfile} as a final argument, @command{ar} directs the
 output to that file.
 
 @item END
-Exit from @code{ar}, with a @code{0} exit code to indicate successful
+Exit from @command{ar}, with a @code{0} exit code to indicate successful
 completion.  This command does not save the output file; if you have
 changed the current archive since the last @code{SAVE} command, those
 changes are lost.
@@ -584,7 +605,7 @@ Requires prior use of @code{OPEN} or @co
 @item LIST
 Display full contents of the current archive, in ``verbose'' style
 regardless of the state of @code{VERBOSE}.  The effect is like @samp{ar
-tv @var{archive}}.  (This single command is a @sc{gnu} @code{ar}
+tv @var{archive}}.  (This single command is a @sc{gnu} @command{ar}
 enhancement, rather than present for MRI compatibility.)
 
 Requires prior use of @code{OPEN} or @code{CREATE}.
@@ -621,7 +642,7 @@ Requires prior use of @code{OPEN} or @co
 @chapter ld
 @cindex linker
 @kindex ld
-The @sc{gnu} linker @code{ld} is now described in a separate manual.
+The @sc{gnu} linker @command{ld} is now described in a separate manual.
 @xref{Top,, Overview,, Using LD: the @sc{gnu} linker}.
 @end iftex
 
@@ -630,23 +651,28 @@ The @sc{gnu} linker @code{ld} is now des
 @cindex symbols
 @kindex nm
 
+@c man title nm list symbols from object files
+
 @smallexample
-nm [ -a | --debug-syms ]  [ -g | --extern-only ]
-   [ -B ]  [ -C | --demangle[=@var{style}] ] [ -D | --dynamic ]
-   [ -s | --print-armap ]  [ -A | -o | --print-file-name ]
-   [ -n | -v | --numeric-sort ]  [ -p | --no-sort ]
-   [ -r | --reverse-sort ]  [ --size-sort ] [ -u | --undefined-only ]
-   [ -t @var{radix} | --radix=@var{radix} ] [ -P | --portability ]
-   [ --target=@var{bfdname} ] [ -f @var{format} | --format=@var{format} ]
-   [ --defined-only ] [-l | --line-numbers ]  [ --no-demangle ]
-   [ -V | --version ]  [ -X 32_64 ]  [ --help ]  [ @var{objfile}@dots{} ]
+@c man begin SYNOPSIS nm
+nm [@option{-a}|@option{--debug-syms}] [@option{-g}|@option{--extern-only}]
+   [@option{-B}] [@option{-C}|@option{--demangle}[=@var{style}]] [@option{-D}|@option{--dynamic}]
+   [@option{-s}|@option{--print-armap}] [@option{-A}|@option{-o}|@option{--print-file-name}]
+   [@option{-n}|@option{-v}|@option{--numeric-sort}] [@option{-p}|@option{--no-sort}]
+   [@option{-r}|@option{--reverse-sort}] [@option{--size-sort}] [@option{-u}|@option{--undefined-only}]
+   [@option{-t} @var{radix}|@option{--radix=}@var{radix}] [@option{-P}|@option{--portability}]
+   [@option{--target=}@var{bfdname}] [@option{-f}@var{format}|@option{--format=}@var{format}]
+   [@option{--defined-only}] [@option{-l}|@option{--line-numbers}] [@option{--no-demangle}]
+   [@option{-V}|@option{--version}] [@option{-X 32_64}] [@option{--help}]  [@var{objfile}@dots{}]
+@c man end
 @end smallexample
 
-@sc{gnu} @code{nm} lists the symbols from object files @var{objfile}@dots{}.
-If no object files are listed as arguments, @code{nm} assumes the file
+@c man begin DESCRIPTION nm
+@sc{gnu} @command{nm} lists the symbols from object files @var{objfile}@dots{}.
+If no object files are listed as arguments, @command{nm} assumes the file
 @file{a.out}.
 
-For each symbol, @code{nm} shows:
+For each symbol, @command{nm} shows:
 
 @itemize @bullet
 @item
@@ -672,8 +698,11 @@ The symbol is in the uninitialized data 
 The symbol is common.  Common symbols are uninitialized data.  When
 linking, multiple common symbols may appear with the same name.  If the
 symbol is defined anywhere, the common symbols are treated as undefined
-references.  For more details on common symbols, see the discussion of
+references.
+@ifclear man
+For more details on common symbols, see the discussion of
 --warn-common in @ref{Options,,Linker options,ld.info,The GNU linker}.
+@end ifclear
 
 @item D
 The symbol is in the initialized data section.
@@ -718,11 +747,13 @@ the value of the weak symbol becomes zer
 @item -
 The symbol is a stabs symbol in an a.out object file.  In this case, the
 next values printed are the stabs other field, the stabs desc field, and
-the stab type.  Stabs symbols are used to hold debugging information;
-for more information, see @ref{Top,Stabs,Stabs Overview,stabs.info, The
+the stab type.  Stabs symbols are used to hold debugging information.
+@ifclear man
+For more information, see @ref{Top,Stabs,Stabs Overview,stabs.info, The
 ``stabs'' debug format}.
 
 @item ?
+@end ifclear
 The symbol type is unknown, or object file format specific.
 @end table
 
@@ -730,10 +761,13 @@ The symbol type is unknown, or object fi
 The symbol name.
 @end itemize
 
+@c man end
+
+@c man begin OPTIONS nm
 The long and short forms of options, shown here as alternatives, are
 equivalent.
 
-@table @code
+@table @env
 @item -A
 @itemx -o
 @itemx --print-file-name 
@@ -751,9 +785,9 @@ Display all symbols, even debugger-only 
 listed.
 
 @item -B
-@cindex @code{nm} format
-@cindex @code{nm} compatibility
-The same as @samp{--format=bsd} (for compatibility with the MIPS @code{nm}).
+@cindex @command{nm} format
+@cindex @command{nm} compatibility
+The same as @option{--format=bsd} (for compatibility with the MIPS @command{nm}).
 
 @item -C
 @itemx --demangle[=@var{style}]
@@ -777,8 +811,8 @@ libraries.
 
 @item -f @var{format}
 @itemx --format=@var{format}
-@cindex @code{nm} format
-@cindex @code{nm} compatibility
+@cindex @command{nm} format
+@cindex @command{nm} compatibility
 Use the output format @var{format}, which can be @code{bsd},
 @code{sysv}, or @code{posix}.  The default is @code{bsd}.
 Only the first character of @var{format} is significant; it can be
@@ -819,7 +853,7 @@ Equivalent to @samp{-f posix}.
 @itemx --print-armap
 @cindex symbol index, listing
 When listing symbols from archive members, include the index: a mapping
-(stored in the archive by @code{ar} or @code{ranlib}) of which modules
+(stored in the archive by @command{ar} or @command{ranlib}) of which modules
 contain definitions for which names.
 
 @item -r
@@ -855,102 +889,119 @@ Display only defined symbols for each ob
 
 @item -V
 @itemx --version
-Show the version number of @code{nm} and exit.
+Show the version number of @command{nm} and exit.
 
 @item -X
 This option is ignored for compatibility with the AIX version of
-@code{nm}.  It takes one parameter which must be the string
-@code{32_64}.  The default mode of AIX @code{nm} corresponds
-to @code{-X 32}, which is not supported by @sc{gnu} @code{nm}.
+@command{nm}.  It takes one parameter which must be the string
+@option{32_64}.  The default mode of AIX @command{nm} corresponds
+to @option{-X 32}, which is not supported by @sc{gnu} @command{nm}.
 
 @item --help
-Show a summary of the options to @code{nm} and exit.
+Show a summary of the options to @command{nm} and exit.
 @end table
 
+@c man end
+
+@ignore
+@c man begin SEEALSO nm
+ar(1), objdump(1), ranlib(1), and the Info entries for @file{binutils}.
+@c man end
+@end ignore
+
 @node objcopy
 @chapter objcopy
 
+@c man title objcopy copy and translate object files
+
 @smallexample
-objcopy [ -F @var{bfdname} | --target=@var{bfdname} ]
-        [ -I @var{bfdname} | --input-target=@var{bfdname} ]
-        [ -O @var{bfdname} | --output-target=@var{bfdname} ]
-        [ -S | --strip-all ]  [ -g | --strip-debug ]
-        [ -K @var{symbolname} | --keep-symbol=@var{symbolname} ]
-        [ -N @var{symbolname} | --strip-symbol=@var{symbolname} ]
-        [ -G @var{symbolname} | --keep-global-symbol=@var{symbolname}]
-        [ -L @var{symbolname} | --localize-symbol=@var{symbolname} ]
-        [ -W @var{symbolname} | --weaken-symbol=@var{symbolname} ]
-        [ -x | --discard-all ]  [ -X | --discard-locals ]
-        [ -b @var{byte} | --byte=@var{byte} ]
-        [ -i @var{interleave} | --interleave=@var{interleave} ]
-        [ -j @var{sectionname} | --only-section=@var{sectionname} ]
-        [ -R @var{sectionname} | --remove-section=@var{sectionname} ]
-        [ -p | --preserve-dates ] [ --debugging ]
-        [ --gap-fill=@var{val} ] [ --pad-to=@var{address} ]
-        [ --set-start=@var{val} ] [ --adjust-start=@var{incr} ]
-        [ --change-addresses=@var{incr} ]
-        [ --change-section-address @var{section}@{=,+,-@}@var{val} ]
-        [ --change-section-lma @var{section}@{=,+,-@}@var{val} ]
-        [ --change-section-vma @var{section}@{=,+,-@}@var{val} ]
-        [ --change-warnings ] [ --no-change-warnings ]
-        [ --set-section-flags @var{section}=@var{flags} ]
-        [ --add-section @var{sectionname}=@var{filename} ]
-        [ --change-leading-char ] [ --remove-leading-char ]
-        [ --srec-len=@var{ival} ] [ --srec-forceS3 ]
-        [ --redefine-sym @var{old}=@var{new} ] [ --weaken ]
-        [ --keep-symbols=@var{filename} ]
-        [ --strip-symbols=@var{filename} ]
-        [ --keep-global-symbols=@var{filename} ]
-        [ --localize-symbols=@var{filename} ]
-        [ --weaken-symbols=@var{filename} ]
-        [ -v | --verbose ] [ -V | --version ]  [ --help ]
+@c man begin SYNOPSIS objcopy
+objcopy [@option{-F} @var{bfdname}|@option{--target=}@var{bfdname}]
+        [@option{-I} @var{bfdname}|@option{--input-target=}@var{bfdname}]
+        [@option{-O} @var{bfdname}|@option{--output-target=}@var{bfdname}]
+        [@option{-S}|@option{--strip-all}] [@option{-g}|@option{--strip-debug}]
+        [@option{-K} @var{symbolname}|@option{--keep-symbol=}@var{symbolname}]
+        [@option{-N} @var{symbolname}|@option{--strip-symbol=}@var{symbolname}]
+        [@option{-G} @var{symbolname}|@option{--keep-global-symbol=}@var{symbolname}]
+        [@option{-L} @var{symbolname}|@option{--localize-symbol=}@var{symbolname}]
+        [@option{-W} @var{symbolname}|@option{--weaken-symbol=}@var{symbolname}]
+        [@option{-x}|@option{--discard-all}] [@option{-X}|@option{--discard-locals}]
+        [@option{-b} @var{byte}|@option{--byte=}@var{byte}]
+        [@option{-i} @var{interleave}|@option{--interleave=}@var{interleave}]
+        [@option{-j} @var{sectionname}|@option{--only-section=}@var{sectionname}]
+        [@option{-R} @var{sectionname}|@option{--remove-section=}@var{sectionname}]
+        [@option{-p}|@option{--preserve-dates}] [@option{--debugging}]
+        [@option{--gap-fill=}@var{val}] [@option{--pad-to=}@var{address}]
+        [@option{--set-start=}@var{val}] [@option{--adjust-start=}@var{incr}]
+        [@option{--change-addresses=}@var{incr}]
+        [@option{--change-section-address} @var{section}@{=,+,-@}@var{val}]
+        [@option{--change-section-lma} @var{section}@{=,+,-@}@var{val}]
+        [@option{--change-section-vma} @var{section}@{=,+,-@}@var{val}]
+        [@option{--change-warnings}] [@option{--no-change-warnings}]
+        [@option{--set-section-flags} @var{section}=@var{flags}]
+        [@option{--add-section} @var{sectionname}=@var{filename}]
+        [@option{--change-leading-char}] [@option{--remove-leading-char}]
+        [@option{--srec-len=}@var{ival} ] [@option{--srec-forceS3}]
+        [@option{--redefine-sym} @var{old}=@var{new} ] [@option{--weaken}]
+        [@option{--keep-symbols=}@var{filename}]
+        [@option{--strip-symbols=}@var{filename}]
+        [@option{--keep-global-symbols=}@var{filename}]
+        [@option{--localize-symbols=}@var{filename}]
+        [@option{--weaken-symbols=}@var{filename}]
+        [@option{-v}|@option{--verbose}] [@option{-V}|@option{--version}] [@option{--help}]
         @var{infile} [@var{outfile}]
+@c man end
 @end smallexample
 
-The @sc{gnu} @code{objcopy} utility copies the contents of an object
-file to another.  @code{objcopy} uses the @sc{gnu} @sc{bfd} Library to
+@c man begin DESCRIPTION objcopy
+The @sc{gnu} @command{objcopy} utility copies the contents of an object
+file to another.  @command{objcopy} uses the @sc{gnu} @sc{bfd} Library to
 read and write the object files.  It can write the destination object
 file in a format different from that of the source object file.  The
-exact behavior of @code{objcopy} is controlled by command-line options.
-Note that @code{objcopy} should be able to copy a fully linked file
+exact behavior of @command{objcopy} is controlled by command-line options.
+Note that @command{objcopy} should be able to copy a fully linked file
 between any two formats. However, copying a relocatable object file
 between any two formats may not work as expected.
 
-@code{objcopy} creates temporary files to do its translations and
-deletes them afterward.  @code{objcopy} uses @sc{bfd} to do all its
+@command{objcopy} creates temporary files to do its translations and
+deletes them afterward.  @command{objcopy} uses @sc{bfd} to do all its
 translation work; it has access to all the formats described in @sc{bfd}
 and thus is able to recognize most formats without being told
 explicitly.  @xref{BFD,,BFD,ld.info,Using LD}.
 
-@code{objcopy} can be used to generate S-records by using an output
+@command{objcopy} can be used to generate S-records by using an output
 target of @samp{srec} (e.g., use @samp{-O srec}).
 
-@code{objcopy} can be used to generate a raw binary file by using an
-output target of @samp{binary} (e.g., use @samp{-O binary}).  When
-@code{objcopy} generates a raw binary file, it will essentially produce
+@command{objcopy} can be used to generate a raw binary file by using an
+output target of @samp{binary} (e.g., use @option{-O binary}).  When
+@command{objcopy} generates a raw binary file, it will essentially produce
 a memory dump of the contents of the input object file.  All symbols and
 relocation information will be discarded.  The memory dump will start at
 the load address of the lowest section copied into the output file.
 
 When generating an S-record or a raw binary file, it may be helpful to
-use @samp{-S} to remove sections containing debugging information.  In
-some cases @samp{-R} will be useful to remove sections which contain
+use @option{-S} to remove sections containing debugging information.  In
+some cases @option{-R} will be useful to remove sections which contain
 information that is not needed by the binary file.
 
-Note - @code{objcopy} is not able to change the endianness of its input
+Note - @command{objcopy} is not able to change the endianness of its input
 files.  If the input format has an endianness, (some formats do not),
-@code{objcopy} can only copy the inputs into file formats that have the
+@command{objcopy} can only copy the inputs into file formats that have the
 same endianness or which have no endianness (eg @samp{srec}).
 
-@table @code
+@c man end
+
+@c man begin OPTIONS objcopy
+
+@table @env
 @item @var{infile}
 @itemx @var{outfile}
 The input and output files, respectively.
-If you do not specify @var{outfile}, @code{objcopy} creates a
+If you do not specify @var{outfile}, @command{objcopy} creates a
 temporary file and destructively renames the result with
 the name of @var{infile}.
 
-@item -I @var{bfdname}	
+@item -I @var{bfdname}
 @itemx --input-target=@var{bfdname}
 Consider the source file's object format to be @var{bfdname}, rather than
 attempting to deduce it.  @xref{Target Selection}, for more information.
@@ -1028,7 +1079,7 @@ Do not copy compiler-generated local sym
 @itemx --byte=@var{byte}
 Keep only every @var{byte}th byte of the input file (header data is not
 affected).  @var{byte} can be in the range from 0 to @var{interleave}-1,
-where @var{interleave} is given by the @samp{-i} or @samp{--interleave}
+where @var{interleave} is given by the @option{-i} or @option{--interleave}
 option, or the default of 4.  This option is useful for creating files
 to program @sc{rom}.  It is typically used with an @code{srec} output
 target.
@@ -1036,9 +1087,9 @@ target.
 @item -i @var{interleave}
 @itemx --interleave=@var{interleave}
 Only copy one out of every @var{interleave} bytes.  Select which byte to
-copy with the @var{-b} or @samp{--byte} option.  The default is 4.
-@code{objcopy} ignores this option if you do not specify either @samp{-b} or
-@samp{--byte}.
+copy with the @option{-b} or @option{--byte} option.  The default is 4.
+@command{objcopy} ignores this option if you do not specify either @option{-b} or
+@option{--byte}.
 
 @item -p
 @itemx --preserve-dates
@@ -1059,7 +1110,7 @@ space created with @var{val}.
 @item --pad-to @var{address}
 Pad the output file up to the load address @var{address}.  This is
 done by increasing the size of the last section.  The extra space is
-filled in with the value specified by @samp{--gap-fill} (default zero).
+filled in with the value specified by @option{--gap-fill} (default zero).
 
 @item --set-start @var{val}
 Set the start address of the new file to @var{val}.  Not all object file
@@ -1087,9 +1138,9 @@ that they are loaded at a different addr
 Set or change both the VMA address and the LMA address of the named
 @var{section}.  If @samp{=} is used, the section address is set to
 @var{val}.  Otherwise, @var{val} is added to or subtracted from the
-section address.  See the comments under @samp{--change-addresses},
+section address.  See the comments under @option{--change-addresses},
 above. If @var{section} does not exist in the input file, a warning will
-be issued, unless @samp{--no-change-warnings} is used.
+be issued, unless @option{--no-change-warnings} is used.
 
 @item --change-section-lma @var{section}@{=,+,-@}@var{val}
 @cindex changing section LMA
@@ -1100,9 +1151,9 @@ is the address of the section at program
 especially those where a program is held in ROM, the two can be
 different.  If @samp{=} is used, the section address is set to
 @var{val}.  Otherwise, @var{val} is added to or subtracted from the
-section address.  See the comments under @samp{--change-addresses},
+section address.  See the comments under @option{--change-addresses},
 above.  If @var{section} does not exist in the input file, a warning
-will be issued, unless @samp{--no-change-warnings} is used.  
+will be issued, unless @option{--no-change-warnings} is used.  
 
 @item --change-section-vma @var{section}@{=,+,-@}@var{val}
 @cindex changing section VMA
@@ -1114,20 +1165,20 @@ memory, but on some systems, especially 
 ROM, the two can be different.  If @samp{=} is used, the section address
 is set to @var{val}.  Otherwise, @var{val} is added to or subtracted
 from the section address.  See the comments under
-@samp{--change-addresses}, above.  If @var{section} does not exist in
+@option{--change-addresses}, above.  If @var{section} does not exist in
 the input file, a warning will be issued, unless
-@samp{--no-change-warnings} is used.   
+@option{--no-change-warnings} is used.   
 
 @item --change-warnings
 @itemx --adjust-warnings
-If @samp{--change-section-address} or @samp{--change-section-lma} or
-@samp{--change-section-vma} is used, and the named section does not
+If @option{--change-section-address} or @option{--change-section-lma} or
+@option{--change-section-vma} is used, and the named section does not
 exist, issue a warning.  This is the default. 
 
 @item --no-change-warnings
 @itemx --no-adjust-warnings
-Do not issue a warning if @samp{--change-section-address} or
-@samp{--adjust-section-lma} or @samp{--adjust-section-vma} is used, even
+Do not issue a warning if @option{--change-section-address} or
+@option{--adjust-section-lma} or @option{--adjust-section-vma} is used, even
 if the named section does not exist. 
 
 @item --set-section-flags @var{section}=@var{flags}
@@ -1150,7 +1201,7 @@ works on file formats which can support 
 @item --change-leading-char
 Some object file formats use special characters at the start of
 symbols.  The most common such character is underscore, which compilers
-often add before every symbol.  This option tells @code{objcopy} to
+often add before every symbol.  This option tells @command{objcopy} to
 change the leading character of every symbol when it converts between
 object file formats.  If the object file formats use the same leading
 character, this option has no effect.  Otherwise, it will add a
@@ -1164,7 +1215,7 @@ most common symbol leading character is 
 remove a leading underscore from all global symbols.  This can be useful
 if you want to link together objects of different file formats with
 different conventions for symbol names.  This is different from
-@code{--change-leading-char} because it always changes the symbol name
+@option{--change-leading-char} because it always changes the symbol name
 when appropriate, regardless of the object file format of the output
 file.
 
@@ -1185,42 +1236,42 @@ source, and there are name collisions.
 @item --weaken
 Change all global symbols in the file to be weak.  This can be useful
 when building an object which will be linked against other objects using
-the @code{-R} option to the linker.  This option is only effective when
+the @option{-R} option to the linker.  This option is only effective when
 using an object file format which supports weak symbols.
 
 @item --keep-symbols=@var{filename}
-Apply @samp{--keep-symbol} option to each symbol listed in the file
+Apply @option{--keep-symbol} option to each symbol listed in the file
 @var{filename}.  @var{filename} is simply a flat file, with one symbol
 name per line.  Line comments may be introduced by the hash character.
 This option may be given more than once.
 
 @item --strip-symbols=@var{filename}
-Apply @samp{--strip-symbol} option to each symbol listed in the file
+Apply @option{--strip-symbol} option to each symbol listed in the file
 @var{filename}.  @var{filename} is simply a flat file, with one symbol
 name per line.  Line comments may be introduced by the hash character.
 This option may be given more than once.
 
 @item --keep-global-symbols=@var{filename}
-Apply @samp{--keep-global-symbol} option to each symbol listed in the
+Apply @option{--keep-global-symbol} option to each symbol listed in the
 file @var{filename}.  @var{filename} is simply a flat file, with one
 symbol name per line.  Line comments may be introduced by the hash
 character.  This option may be given more than once.
 
 @item --localize-symbols=@var{filename}
-Apply @samp{--localize-symbol} option to each symbol listed in the file
+Apply @option{--localize-symbol} option to each symbol listed in the file
 @var{filename}.  @var{filename} is simply a flat file, with one symbol
 name per line.  Line comments may be introduced by the hash character.
 This option may be given more than once.
 
 @item --weaken-symbols=@var{filename}
-Apply @samp{--weaken-symbol} option to each symbol listed in the file
+Apply @option{--weaken-symbol} option to each symbol listed in the file
 @var{filename}.  @var{filename} is simply a flat file, with one symbol
 name per line.  Line comments may be introduced by the hash character.
 This option may be given more than once.
 
 @item -V
 @itemx --version
-Show the version number of @code{objcopy}.
+Show the version number of @command{objcopy}.
 
 @item -v
 @itemx --verbose
@@ -1228,67 +1279,85 @@ Verbose output: list all object files mo
 archives, @samp{objcopy -V} lists all members of the archive.
 
 @item --help
-Show a summary of the options to @code{objcopy}.
+Show a summary of the options to @command{objcopy}.
 @end table
 
+@c man end
+
+@ignore
+@c man begin SEEALSO objcopy
+ld(1), objdump(1), and the Info entries for @file{binutils}.
+@c man end
+@end ignore
+
 @node objdump
 @chapter objdump
 
 @cindex object file information
 @kindex objdump
 
+@c man title objdump display information from object files.
+
 @smallexample
-objdump [ -a | --archive-headers ] 
-        [ -b @var{bfdname} | --target=@var{bfdname} ] 
-        [ -C | --demangle[=@var{style}] ]
-        [ -d | --disassemble ]
-        [ -D | --disassemble-all ]
-        [ -z | --disassemble-zeroes ]
-        [ -EB | -EL | --endian=@{big | little @} ]
-        [ -f | --file-headers ]
-        [ --file-start-context ]
-        [ -g | --debugging ]
-        [ -h | --section-headers | --headers ]
-        [ -i | --info ]
-        [ -j @var{section} | --section=@var{section} ]
-        [ -l | --line-numbers ]
-        [ -S | --source ]
-        [ -m @var{machine} | --architecture=@var{machine} ]
-        [ -M @var{options} | --disassembler-options=@var{options}]
-        [ -p | --private-headers ]
-        [ -r | --reloc ]
-        [ -R | --dynamic-reloc ]
-        [ -s | --full-contents ]
-        [ -G | --stabs ]
-        [ -t | --syms ]
-        [ -T | --dynamic-syms ]
-        [ -x | --all-headers ]
-        [ -w | --wide ]
-        [ --start-address=@var{address} ]
-        [ --stop-address=@var{address} ]
-        [ --prefix-addresses]
-        [ --[no-]show-raw-insn ]
-        [ --adjust-vma=@var{offset} ]
-        [ -V | --version ]
-        [ -H | --help ]
+@c man begin SYNOPSIS objdump
+objdump [@option{-a}|@option{--archive-headers}]
+        [@option{-b} @var{bfdname}|@option{--target=@var{bfdname}}]
+        [@option{-C}|@option{--demangle}[=@var{style}] ]
+        [@option{-d}|@option{--disassemble}]
+        [@option{-D}|@option{--disassemble-all}]
+        [@option{-z}|@option{--disassemble-zeroes}]
+        [@option{-EB}|@option{-EL}|@option{--endian=}@{big | little @}]
+        [@option{-f}|@option{--file-headers}]
+        [@option{--file-start-context}]
+        [@option{-g}|@option{--debugging}]
+        [@option{-h}|@option{--section-headers}|@option{--headers}]
+        [@option{-i}|@option{--info}]
+        [@option{-j} @var{section}|@option{--section=}@var{section}]
+        [@option{-l}|@option{--line-numbers}]
+        [@option{-S}|@option{--source}]
+        [@option{-m} @var{machine}|@option{--architecture=}@var{machine}]
+        [@option{-M} @var{options}|@option{--disassembler-options=}@var{options}]
+        [@option{-p}|@option{--private-headers}]
+        [@option{-r}|@option{--reloc}]
+        [@option{-R}|@option{--dynamic-reloc}]
+        [@option{-s}|@option{--full-contents}]
+        [@option{-G}|@option{--stabs}]
+        [@option{-t}|@option{--syms}]
+        [@option{-T}|@option{--dynamic-syms}]
+        [@option{-x}|@option{--all-headers}]
+        [@option{-w}|@option{--wide}]
+        [@option{--start-address=}@var{address}]
+        [@option{--stop-address=}@var{address}]
+        [@option{--prefix-addresses}]
+        [@option{--[no-]show-raw-insn}]
+        [@option{--adjust-vma=}@var{offset}]
+        [@option{-V}|@option{--version}]
+        [@option{-H}|@option{--help}]
         @var{objfile}@dots{}
+@c man end
 @end smallexample
 
-@code{objdump} displays information about one or more object files.
+@c man begin DESCRIPTION objdump
+
+@command{objdump} displays information about one or more object files.
 The options control what particular information to display.  This
 information is mostly useful to programmers who are working on the
 compilation tools, as opposed to programmers who just want their
 program to compile and work.
 
 @var{objfile}@dots{} are the object files to be examined.  When you
-specify archives, @code{objdump} shows information on each of the member
+specify archives, @command{objdump} shows information on each of the member
 object files.
 
+@c man end
+
+@c man begin OPTIONS objdump
+
 The long and short forms of options, shown here as alternatives, are
 equivalent.  At least one option from the list
-@samp{-a,-d,-D,-f,-g,-G,-h,-H,-p,-r,-R,-S,-t,-T,-V,-x} must be given. 
+@option{-a,-d,-D,-f,-g,-G,-h,-H,-p,-r,-R,-S,-t,-T,-V,-x} must be given. 
 
-@table @code
+@table @env
 @item -a
 @itemx --archive-header
 @cindex archive headers
@@ -1318,10 +1387,10 @@ For example,
 objdump -b oasys -m vax -h fu.o
 @end example
 @noindent
-displays summary information from the section headers (@samp{-h}) of
-@file{fu.o}, which is explicitly identified (@samp{-m}) as a VAX object
+displays summary information from the section headers (@option{-h}) of
+@file{fu.o}, which is explicitly identified (@option{-m}) as a VAX object
 file in the format produced by Oasys compilers.  You can list the
-formats available with the @samp{-i} option.
+formats available with the @option{-i} option.
 @xref{Target Selection}, for more information.
 
 @item -C
@@ -1350,7 +1419,7 @@ expected to contain instructions.
 
 @item -D
 @itemx --disassemble-all
-Like @samp{-d}, but disassemble the contents of all sections, not just
+Like @option{-d}, but disassemble the contents of all sections, not just
 those expected to contain instructions.
 
 @item --prefix-addresses
@@ -1380,7 +1449,7 @@ each of the @var{objfile} files.
 @item --file-start-context
 @cindex source code context
 Specify that when displaying interlisted source code/disassembly
-(assumes '-S') from a file that has not yet been displayed, extend the
+(assumes @option{-S}) from a file that has not yet been displayed, extend the
 context to the start of the file.
 
 @item -h
@@ -1391,23 +1460,23 @@ Display summary information from the sec
 object file.
 
 File segments may be relocated to nonstandard addresses, for example by
-using the @samp{-Ttext}, @samp{-Tdata}, or @samp{-Tbss} options to
-@code{ld}.  However, some object file formats, such as a.out, do not
+using the @option{-Ttext}, @option{-Tdata}, or @option{-Tbss} options to
+@command{ld}.  However, some object file formats, such as a.out, do not
 store the starting address of the file segments.  In those situations,
-although @code{ld} relocates the sections correctly, using @samp{objdump
+although @command{ld} relocates the sections correctly, using @samp{objdump
 -h} to list the file section headers cannot show the correct addresses.
 Instead, it shows the usual addresses, which are implicit for the
 target.
 
 @item --help
-Print a summary of the options to @code{objdump} and exit.
+Print a summary of the options to @command{objdump} and exit.
 
 @item -i
 @itemx --info
 @cindex architectures available
 @cindex object formats available
 Display a list showing all architectures and object formats available
-for specification with @samp{-b} or @samp{-m}.
+for specification with @option{-b} or @option{-m}.
 
 @item -j @var{name}
 @itemx --section=@var{name}
@@ -1419,7 +1488,7 @@ Display information only for section @va
 @cindex source filenames for object files
 Label the display (using debugging information) with the filename and
 source line numbers corresponding to the object code or relocs shown.
-Only useful with @samp{-d}, @samp{-D}, or @samp{-r}.
+Only useful with @option{-d}, @option{-D}, or @option{-r}.
 
 @item -m @var{machine}
 @itemx --architecture=@var{machine}
@@ -1428,7 +1497,7 @@ Only useful with @samp{-d}, @samp{-D}, o
 Specify the architecture to use when disassembling object files.  This
 can be useful when disassembling object files which do not describe
 architecture information, such as S-records.  You can list the available
-architectures with the @samp{-i} option.
+architectures with the @option{-i} option.
 
 @item -M @var{options}
 @itemx --disassembler-options=@var{options}
@@ -1437,21 +1506,21 @@ some targets.
 
 If the target is an ARM architecture then this switch can be used to
 select which register name set is used during disassembler.  Specifying
-@samp{-M reg-name-std} (the default) will select the register names as
+@option{-M reg-name-std} (the default) will select the register names as
 used in ARM's instruction set documentation, but with register 13 called
 'sp', register 14 called 'lr' and register 15 called 'pc'.  Specifying
-@samp{-M reg-names-apcs} will select the name set used by the ARM
-Procedure Call Standard, whilst specifying @samp{-M reg-names-raw} will
+@option{-M reg-names-apcs} will select the name set used by the ARM
+Procedure Call Standard, whilst specifying @option{-M reg-names-raw} will
 just use @samp{r} followed by the register number.
 
 There are also two variants on the APCS register naming scheme enabled
-by @samp{-M reg-names-atpcs} and @samp{-M reg-names-special-atpcs} which
-use the ARM/Thumb Procedure Call Standard naming conventions.  (Eiuther
-with the normal register name sor the special register names).
+by @option{-M reg-names-atpcs} and @option{-M reg-names-special-atpcs} which
+use the ARM/Thumb Procedure Call Standard naming conventions.  (Either
+with the normal register name or the special register names).
 
 This option can also be used for ARM architectures to force the
 disassembler to interpret all instructions as THUMB instructions by
-using the switch @samp{--disassembler-options=force-thumb}.  This can be
+using the switch @option{--disassembler-options=force-thumb}.  This can be
 useful when attempting to disassemble thumb code produced by other
 compilers.
 
@@ -1464,8 +1533,8 @@ object file formats, no additional infor
 @item -r
 @itemx --reloc
 @cindex relocation entries, in object file
-Print the relocation entries of the file.  If used with @samp{-d} or
-@samp{-D}, the relocations are printed interspersed with the
+Print the relocation entries of the file.  If used with @option{-d} or
+@option{-D}, the relocations are printed interspersed with the
 disassembly.
 
 @item -R
@@ -1486,16 +1555,16 @@ Display the full contents of any section
 @cindex source disassembly
 @cindex disassembly, with source
 Display source code intermixed with disassembly, if possible.  Implies
-@samp{-d}.
+@option{-d}.
 
 @item --show-raw-insn
 When disassembling instructions, print the instruction in hex as well as
 in symbolic form.  This is the default except when
-@code{--prefix-addresses} is used.
+@option{--prefix-addresses} is used.
 
 @item --no-show-raw-insn
 When disassembling instructions, do not print the instruction bytes.
-This is the default when @code{--prefix-addresses} is used.
+This is the default when @option{--prefix-addresses} is used.
 
 @item -G
 @item --stabs
@@ -1508,19 +1577,22 @@ contents of the .stab and .stab.index an
 ELF file.  This is only useful on systems (such as Solaris 2.0) in which
 @code{.stab} debugging symbol-table entries are carried in an ELF
 section.  In most other file formats, debugging symbol-table entries are
-interleaved with linkage symbols, and are visible in the @samp{--syms}
-output.  For more information on stabs symbols, see @ref{Top,Stabs,Stabs
+interleaved with linkage symbols, and are visible in the @option{--syms}
+output.
+@ifclear man
+For more information on stabs symbols, see @ref{Top,Stabs,Stabs
 Overview,stabs.info, The ``stabs'' debug format}.
+@end ifclear
 
 @item --start-address=@var{address}
 @cindex start-address
 Start displaying data at the specified address.  This affects the output
-of the @code{-d}, @code{-r} and @code{-s} options.
+of the @option{-d}, @option{-r} and @option{-s} options.
 
 @item --stop-address=@var{address}
 @cindex stop-address
 Stop displaying data at the specified address.  This affects the output
-of the @code{-d}, @code{-r} and @code{-s} options.
+of the @option{-d}, @option{-r} and @option{-s} options.
 
 @item -t
 @itemx --syms
@@ -1534,18 +1606,18 @@ This is similar to the information provi
 Print the dynamic symbol table entries of the file.  This is only
 meaningful for dynamic objects, such as certain types of shared
 libraries.  This is similar to the information provided by the @samp{nm}
-program when given the @samp{-D} (@samp{--dynamic}) option.
+program when given the @option{-D} (@option{--dynamic}) option.
 
 @item --version
-Print the version number of @code{objdump} and exit.
+Print the version number of @command{objdump} and exit.
 
 @item -x
 @itemx --all-header
 @cindex all header information, object file
 @cindex header information, all
 Display all available header information, including the symbol table and
-relocation entries.  Using @samp{-x} is equivalent to specifying all of
-@samp{-a -f -h -r -t}.
+relocation entries.  Using @option{-x} is equivalent to specifying all of
+@option{-a -f -h -r -t}.
 
 @item -w
 @itemx --wide
@@ -1553,6 +1625,14 @@ relocation entries.  Using @samp{-x} is 
 Format some lines for output devices that have more than 80 columns.
 @end table
 
+@c man end
+
+@ignore
+@c man begin SEEALSO objdump
+nm(1), readelf(1), and the Info entries for @file{binutils}.
+@c man end
+@end ignore
+
 @node ranlib
 @chapter ranlib
 
@@ -1560,11 +1640,17 @@ Format some lines for output devices tha
 @cindex archive contents
 @cindex symbol index
 
+@c man title ranlib generate index to archive.
+
 @smallexample
-ranlib [-vV] @var{archive}
+@c man begin SYNOPSIS ranlib
+ranlib [@option{-vV}] @var{archive}
+@c man end
 @end smallexample
 
-@code{ranlib} generates an index to the contents of an archive and
+@c man begin DESCRIPTION ranlib
+
+@command{ranlib} generates an index to the contents of an archive and
 stores it in the archive.  The index lists each symbol defined by a
 member of an archive that is a relocatable object file.  
 
@@ -1574,31 +1660,49 @@ An archive with such an index speeds up 
 allows routines in the library to call each other without regard to
 their placement in the archive.
 
-The @sc{gnu} @code{ranlib} program is another form of @sc{gnu} @code{ar}; running
-@code{ranlib} is completely equivalent to executing @samp{ar -s}.
+The @sc{gnu} @command{ranlib} program is another form of @sc{gnu} @command{ar}; running
+@command{ranlib} is completely equivalent to executing @samp{ar -s}.
 @xref{ar}.
 
-@table @code
+@c man end
+
+@c man begin OPTIONS ranlib
+
+@table @env
 @item -v
 @itemx -V
 @itemx --version
-Show the version number of @code{ranlib}.
+Show the version number of @command{ranlib}.
 @end table
 
+@c man end
+
+@ignore
+@c man begin SEEALSO ranlib
+ar(1), nm(1), and the Info entries for @file{binutils}.
+@c man end
+@end ignore
+
 @node size
 @chapter size
 
 @kindex size
 @cindex section sizes
 
+@c man title size list section sizes and total size.
+
 @smallexample
-size [ -A | -B | --format=@var{compatibility} ]
-     [ --help ]  [ -d | -o | -x | --radix=@var{number} ]
-     [ --target=@var{bfdname} ]  [ -V | --version ]  
-     [ @var{objfile}@dots{} ]
+@c man begin SYNOPSIS size
+size [@option{-A}|@option{-B}|@option{--format=}@var{compatibility}]
+     [@option{--help}] [@option{-d}|@option{-o}|@option{-x}|@option{--radix=}@var{number}]
+     [@option{--target=}@var{bfdname}] [@option{-V}|@option{--version}]  
+     [@var{objfile}@dots{}]
+@c man end
 @end smallexample
 
-The @sc{gnu} @code{size} utility lists the section sizes---and the total
+@c man begin DESCRIPTION size
+
+The @sc{gnu} @command{size} utility lists the section sizes---and the total
 size---for each of the object or archive files @var{objfile} in its
 argument list.  By default, one line of output is generated for each
 object file or each module in an archive.
@@ -1606,24 +1710,28 @@ object file or each module in an archive
 @var{objfile}@dots{} are the object files to be examined.
 If none are specified, the file @code{a.out} will be used.
 
+@c man end
+
+@c man begin OPTIONS size
+
 The command line options have the following meanings:
 
-@table @code
+@table @env
 @item -A
 @itemx -B
 @itemx --format=@var{compatibility}
-@cindex @code{size} display format
+@cindex @command{size} display format
 Using one of these options, you can choose whether the output from @sc{gnu}
-@code{size} resembles output from System V @code{size} (using @samp{-A},
-or @samp{--format=sysv}), or Berkeley @code{size} (using @samp{-B}, or
-@samp{--format=berkeley}).  The default is the one-line format similar to
+@command{size} resembles output from System V @command{size} (using @option{-A},
+or @option{--format=sysv}), or Berkeley @command{size} (using @option{-B}, or
+@option{--format=berkeley}).  The default is the one-line format similar to
 Berkeley's.  
 @c Bonus for doc-source readers: you can also say --format=strange (or
 @c anything else that starts with 's') for sysv, and --format=boring (or
 @c anything else that starts with 'b') for Berkeley.
 
 Here is an example of the Berkeley (default) format of output from
-@code{size}: 
+@command{size}: 
 @smallexample
 $ size --format=Berkeley ranlib size
 text    data    bss     dec     hex     filename
@@ -1659,28 +1767,36 @@ Show a summary of acceptable arguments a
 @itemx -o
 @itemx -x
 @itemx --radix=@var{number}
-@cindex @code{size} number format
+@cindex @command{size} number format
 @cindex radix for section sizes
 Using one of these options, you can control whether the size of each
-section is given in decimal (@samp{-d}, or @samp{--radix=10}); octal
-(@samp{-o}, or @samp{--radix=8}); or hexadecimal (@samp{-x}, or
-@samp{--radix=16}).  In @samp{--radix=@var{number}}, only the three
+section is given in decimal (@option{-d}, or @option{--radix=10}); octal
+(@option{-o}, or @option{--radix=8}); or hexadecimal (@option{-x}, or
+@option{--radix=16}).  In @option{--radix=@var{number}}, only the three
 values (8, 10, 16) are supported.  The total size is always given in two
-radices; decimal and hexadecimal for @samp{-d} or @samp{-x} output, or
-octal and hexadecimal if you're using @samp{-o}.
+radices; decimal and hexadecimal for @option{-d} or @option{-x} output, or
+octal and hexadecimal if you're using @option{-o}.
 
 @item --target=@var{bfdname}
 @cindex object code format
 Specify that the object-code format for @var{objfile} is
-@var{bfdname}.  This option may not be necessary; @code{size} can
+@var{bfdname}.  This option may not be necessary; @command{size} can
 automatically recognize many formats.
 @xref{Target Selection}, for more information.
 
 @item -V
 @itemx --version
-Display the version number of @code{size}.
+Display the version number of @command{size}.
 @end table
 
+@c man end
+
+@ignore
+@c man begin SEEALSO size
+ar(1), objdump(1), readelf(1), and the Info entries for @file{binutils}.
+@c man end
+@end ignore
+
 @node strings
 @chapter strings
 @kindex strings
@@ -1688,24 +1804,34 @@ Display the version number of @code{size
 @cindex printing strings
 @cindex strings, printing
 
+@c man title strings print the strings of printable characters in files.
+
 @smallexample
-strings [-afov] [-@var{min-len}] [-n @var{min-len}] [-t @var{radix}] [-]
-        [--all] [--print-file-name] [--bytes=@var{min-len}]
-        [--radix=@var{radix}] [--target=@var{bfdname}]
-        [--help] [--version] @var{file}@dots{}
+@c man begin SYNOPSIS strings
+strings [@option{-afov}] [@option{-}@var{min-len}] [@option{-n} @var{min-len}] [@option{-t} @var{radix}] [@option{-}]
+        [@option{--all}] [@option{--print-file-name}] [@option{--bytes=}@var{min-len}]
+        [@option{--radix=}@var{radix}] [@option{--target=}@var{bfdname}]
+        [@option{--help}] [@option{--version}] @var{file}@dots{}
+@c man end
 @end smallexample
 
-For each @var{file} given, @sc{gnu} @code{strings} prints the printable
+@c man begin DESCRIPTION strings
+
+For each @var{file} given, @sc{gnu} @command{strings} prints the printable
 character sequences that are at least 4 characters long (or the number
 given with the options below) and are followed by an unprintable
 character.  By default, it only prints the strings from the initialized
 and loaded sections of object files; for other types of files, it prints
 the strings from the whole file.
 
-@code{strings} is mainly useful for determining the contents of non-text
+@command{strings} is mainly useful for determining the contents of non-text
 files.
 
-@table @code
+@c man end
+
+@c man begin OPTIONS strings
+
+@table @env
 @item -a
 @itemx --all
 @itemx -
@@ -1726,7 +1852,7 @@ Print sequences of characters that are a
 long, instead of the default 4.
 
 @item -o
-Like @samp{-t o}.  Some other versions of @code{strings} have @samp{-o}
+Like @samp{-t o}.  Some other versions of @command{strings} have @option{-o}
 act like @samp{-t d} instead.  Since we can not be compatible with both
 ways, we simply chose one.
 
@@ -1746,6 +1872,15 @@ Specify an object code format other than
 Print the program version number on the standard output and exit.
 @end table
 
+@c man end
+
+@ignore
+@c man begin SEEALSO strings
+ar(1), nm(1), objdump(1), ranlib(1), readelf(1)
+and the Info entries for @file{binutils}.
+@c man end
+@end ignore
+
 @node strip
 @chapter strip
 
@@ -1754,28 +1889,38 @@ Print the program version number on the 
 @cindex discarding symbols
 @cindex symbols, discarding
 
+@c man title strip Discard symbols from object files.
+
 @smallexample
-strip [ -F @var{bfdname} | --target=@var{bfdname} ]
-      [ -I @var{bfdname} | --input-target=@var{bfdname} ]
-      [ -O @var{bfdname} | --output-target=@var{bfdname} ]
-      [ -s | --strip-all ] [ -S | -g | --strip-debug ]
-      [ -K @var{symbolname} | --keep-symbol=@var{symbolname} ]
-      [ -N @var{symbolname} | --strip-symbol=@var{symbolname} ]
-      [ -x | --discard-all ] [ -X | --discard-locals ]
-      [ -R @var{sectionname} | --remove-section=@var{sectionname} ]
-      [ -o @var{file} ] [ -p | --preserve-dates ]
-      [ -v | --verbose ]  [ -V | --version ]  [ --help ]
+@c man begin SYNOPSIS strip
+strip [@option{-F} @var{bfdname} |@option{--target=}@var{bfdname} ]
+      [@option{-I} @var{bfdname} |@option{--input-target=}@var{bfdname} ]
+      [@option{-O} @var{bfdname} |@option{--output-target=}@var{bfdname} ]
+      [@option{-s}|@option{--strip-all}] [@option{-S}|@option{-g}|@option{--strip-debug}]
+      [@option{-K} @var{symbolname} |@option{--keep-symbol=}@var{symbolname} ]
+      [@option{-N} @var{symbolname} |@option{--strip-symbol=}@var{symbolname} ]
+      [@option{-x}|@option{--discard-all} ] [@option{-X} |@option{--discard-locals}]
+      [@option{-R} @var{sectionname} |@option{--remove-section=}@var{sectionname} ]
+      [@option{-o} @var{file} ] [@option{-p}|@option{--preserve-dates}]
+      [@option{-v} |@option{--verbose}]  [@option{-V}|@option{--version}] [@option{--help}]
       @var{objfile}@dots{}
+@c man end
 @end smallexample
 
-@sc{gnu} @code{strip} discards all symbols from object files
+@c man begin DESCRIPTION strip
+
+@sc{gnu} @command{strip} discards all symbols from object files
 @var{objfile}.  The list of object files may include archives.
 At least one object file must be given.
 
-@code{strip} modifies the files named in its argument,
+@command{strip} modifies the files named in its argument,
 rather than writing modified copies under different names.
 
-@table @code
+@c man end
+
+@c man begin OPTIONS strip
+
+@table @env
 @item -F @var{bfdname}
 @itemx --target=@var{bfdname}
 Treat the original @var{objfile} as a file with the object
@@ -1783,7 +1928,7 @@ code format @var{bfdname}, and rewrite i
 @xref{Target Selection}, for more information.
 
 @item --help
-Show a summary of the options to @code{strip} and exit.
+Show a summary of the options to @command{strip} and exit.
 
 @item -I @var{bfdname}	
 @itemx --input-target=@var{bfdname}
@@ -1823,7 +1968,7 @@ be given more than once.
 @itemx --strip-symbol=@var{symbolname}
 Remove symbol @var{symbolname} from the source file. This option may be
 given more than once, and may be combined with strip options other than
-@code{-K}.
+@option{-K}.
 
 @item -o @var{file}
 Put the stripped output in @var{file}, rather than replacing the
@@ -1845,7 +1990,7 @@ Remove compiler-generated local symbols.
 
 @item -V
 @itemx --version
-Show the version number for @code{strip}.
+Show the version number for @command{strip}.
 
 @item -v
 @itemx --verbose
@@ -1853,28 +1998,42 @@ Verbose output: list all object files mo
 archives, @samp{strip -v} lists all members of the archive.
 @end table
 
+@c man end
+
+@ignore
+@c man begin SEEALSO strip
+the Info entries for @file{binutils}.
+@c man end
+@end ignore
+
 @node c++filt, addr2line, strip, Top
 @chapter c++filt
 
 @kindex c++filt
 @cindex demangling C++ symbols
 
+@c man title cxxfilt Demangle C++ and Java symbols.
+
 @smallexample
-c++filt [ -_ | --strip-underscores ]
-        [ -j | --java ]
-	[ -n | --no-strip-underscores ]
-        [ -s @var{format} | --format=@var{format} ]
-        [ --help ]  [ --version ]  [ @var{symbol}@dots{} ]
+@c man begin SYNOPSIS cxxfilt
+c++filt [@option{-_}|@option{--strip-underscores}]
+        [@option{-j}|@option{--java}]
+        [@option{-n}|@option{--no-strip-underscores}]
+        [@option{-s} @var{format}|@option{--format=}@var{format}]
+        [@option{--help}]  [@option{--version}]  [@var{symbol}@dots{}]
+@c man end
 @end smallexample
 
+@c man begin DESCRIPTION cxxfilt
+
 @kindex cxxfilt
 The C++ and Java languages provides function overloading, which means
 that you can write many functions with the same name (providing each
 takes parameters of different types).  All C++ and Java function names
 are encoded into a low-level assembly label (this process is known as
-@dfn{mangling}). The @code{c++filt}
+@dfn{mangling}). The @command{c++filt}
 @footnote{MS-DOS does not allow @kbd{+} characters in file names, so on
-MS-DOS this program is named @code{cxxfilt}.}
+MS-DOS this program is named @command{cxxfilt}.}
 program does the inverse mapping: it decodes (@dfn{demangles}) low-level
 names into user-level names so that the linker can keep these overloaded
 functions from clashing.
@@ -1884,23 +2043,27 @@ dollars, or periods) seen in the input i
 label decodes into a C++ name, the C++ name replaces the low-level
 name in the output.
 
-You can use @code{c++filt} to decipher individual symbols:
+You can use @command{c++filt} to decipher individual symbols:
 
 @example
 c++filt @var{symbol}
 @end example
 
-If no @var{symbol} arguments are given, @code{c++filt} reads symbol
+If no @var{symbol} arguments are given, @command{c++filt} reads symbol
 names from the standard input and writes the demangled names to the
 standard output.  All results are printed on the standard output.
 
-@table @code
+@c man end
+
+@c man begin OPTIONS cxxfilt
+
+@table @env
 @item -_
 @itemx --strip-underscores
 On some systems, both the C and C++ compilers put an underscore in front
 of every name.  For example, the C name @code{foo} gets the low-level
 name @code{_foo}.  This option removes the initial underscore.  Whether
-@code{c++filt} removes the underscore by default is target dependent.
+@command{c++filt} removes the underscore by default is target dependent.
 
 @item -j
 @itemx --java
@@ -1913,7 +2076,7 @@ Do not remove the initial underscore.
 
 @item -s @var{format}
 @itemx --format=@var{format}
-@sc{gnu} @code{nm} can decode three different methods of mangling, used by
+@sc{gnu} @command{nm} can decode three different methods of mangling, used by
 different C++ compilers.  The argument to this option selects which
 method it uses:
 
@@ -1933,14 +2096,22 @@ the one used by the @sc{gnu} compiler wi
 @end table
 
 @item --help
-Print a summary of the options to @code{c++filt} and exit.
+Print a summary of the options to @command{c++filt} and exit.
 
 @item --version
-Print the version number of @code{c++filt} and exit.
+Print the version number of @command{c++filt} and exit.
 @end table
 
+@c man end
+
+@ignore
+@c man begin SEEALSO cxxfilt
+the Info entries for @file{binutils}.
+@c man end
+@end ignore
+
 @quotation
-@emph{Warning:} @code{c++filt} is a new utility, and the details of its
+@emph{Warning:} @command{c++filt} is a new utility, and the details of its
 user interface are subject to change in future releases.  In particular,
 a command-line option may be required in the the future to decode a name
 passed as an argument on the command line; in other words, 
@@ -1963,48 +2134,58 @@ c++filt @var{option} @var{symbol}
 @kindex addr2line
 @cindex address to file name and line number
 
+@c man title addr2line convert addresses into file names and line numbers.
+
 @smallexample
-addr2line [ -b @var{bfdname} | --target=@var{bfdname} ]
-          [ -C | --demangle[=@var{style} ]
-          [ -e @var{filename} | --exe=@var{filename} ]
-          [ -f | --functions ] [ -s | --basename ]
-          [ -H | --help ] [ -V | --version ]
-          [ addr addr ... ]
+@c man begin SYNOPSIS addr2line
+addr2line [@option{-b} @var{bfdname}|@option{--target=}@var{bfdname}]
+          [@option{-C}|@option{--demangle}[=@var{style}]
+          [@option{-e} @var{filename}|@option{--exe=}@var{filename}]
+          [@option{-f}|@option{--functions}] [@option{-s}|@option{--basename}]
+          [@option{-H}|@option{--help}] [@option{-V}|@option{--version}]
+          [addr addr @dots{}]
+@c man end
 @end smallexample
 
-@code{addr2line} translates program addresses into file names and line
+@c man begin DESCRIPTION addr2line
+
+@command{addr2line} translates program addresses into file names and line
 numbers.  Given an address and an executable, it uses the debugging
 information in the executable to figure out which file name and line
 number are associated with a given address.
 
-The executable to use is specified with the @code{-e} option.  The
+The executable to use is specified with the @option{-e} option.  The
 default is the file @file{a.out}.
 
-@code{addr2line} has two modes of operation.
+@command{addr2line} has two modes of operation.
 
 In the first, hexadecimal addresses are specified on the command line,
-and @code{addr2line} displays the file name and line number for each
+and @command{addr2line} displays the file name and line number for each
 address.
 
-In the second, @code{addr2line} reads hexadecimal addresses from
+In the second, @command{addr2line} reads hexadecimal addresses from
 standard input, and prints the file name and line number for each
-address on standard output.  In this mode, @code{addr2line} may be used
+address on standard output.  In this mode, @command{addr2line} may be used
 in a pipe to convert dynamically chosen addresses.
 
 The format of the output is @samp{FILENAME:LINENO}.  The file name and
 line number for each address is printed on a separate line.  If the
-@code{-f} option is used, then each @samp{FILENAME:LINENO} line is
+@command{-f} option is used, then each @samp{FILENAME:LINENO} line is
 preceded by a @samp{FUNCTIONNAME} line which is the name of the function
 containing the address.
 
 If the file name or function name can not be determined,
-@code{addr2line} will print two question marks in their place.  If the
-line number can not be determined, @code{addr2line} will print 0.
+@command{addr2line} will print two question marks in their place.  If the
+line number can not be determined, @command{addr2line} will print 0.
+
+@c man end
+
+@c man begin OPTIONS addr2line
 
 The long and short forms of options, shown here as alternatives, are
 equivalent.
 
-@table @code
+@table @env
 @item -b @var{bfdname}
 @itemx --target=@var{bfdname}
 @cindex object code format
@@ -2035,61 +2216,81 @@ Display function names as well as file a
 Display only the base of each file name.
 @end table
 
+@c man end
+
+@ignore
+@c man begin SEEALSO addr2line
+Info entries for @file{binutils}.
+@c man end
+@end ignore
+
 @node nlmconv
 @chapter nlmconv
 
-@code{nlmconv} converts a relocatable object file into a NetWare
+@command{nlmconv} converts a relocatable object file into a NetWare
 Loadable Module.
 
 @ignore
-@code{nlmconv} currently works with @samp{i386} object
+@command{nlmconv} currently works with @samp{i386} object
 files in @code{coff}, @sc{elf}, or @code{a.out} format, and @sc{SPARC}
 object files in @sc{elf}, or @code{a.out} format@footnote{
-@code{nlmconv} should work with any @samp{i386} or @sc{sparc} object
+@command{nlmconv} should work with any @samp{i386} or @sc{sparc} object
 format in the Binary File Descriptor library.  It has only been tested
 with the above formats.}.
 @end ignore
 
 @quotation
-@emph{Warning:} @code{nlmconv} is not always built as part of the binary
+@emph{Warning:} @command{nlmconv} is not always built as part of the binary
 utilities, since it is only useful for NLM targets.
 @end quotation
 
+@c man title nlmconv converts object code into an NLM.
+
 @smallexample
-nlmconv [ -I @var{bfdname} | --input-target=@var{bfdname} ]
-        [ -O @var{bfdname} | --output-target=@var{bfdname} ]
-        [ -T @var{headerfile} | --header-file=@var{headerfile} ]
-        [ -d | --debug]  [ -l @var{linker} | --linker=@var{linker} ]
-        [ -h | --help ]  [ -V | --version ]
+@c man begin SYNOPSIS nlmconv
+nlmconv [@option{-I} @var{bfdname}|@option{--input-target=}@var{bfdname}]
+        [@option{-O} @var{bfdname}|@option{--output-target=}@var{bfdname}]
+        [@option{-T} @var{headerfile}|@option{--header-file=}@var{headerfile}]
+        [@option{-d}|@option{--debug}] [@option{-l} @var{linker}|@option{--linker=}@var{linker}]
+        [@option{-h}|@option{--help}] [@option{-V}|@option{--version}]
         @var{infile} @var{outfile}
+@c man end
 @end smallexample
 
-@code{nlmconv} converts the relocatable @samp{i386} object file
+@c man begin DESCRIPTION nlmconv
+
+@command{nlmconv} converts the relocatable @samp{i386} object file
 @var{infile} into the NetWare Loadable Module @var{outfile}, optionally
 reading @var{headerfile} for NLM header information.  For instructions
 on writing the NLM command file language used in header files, see the
 @samp{linkers} section, @samp{NLMLINK} in particular, of the @cite{NLM
 Development and Tools Overview}, which is part of the NLM Software
 Developer's Kit (``NLM SDK''), available from Novell, Inc.
-@code{nlmconv} uses the @sc{gnu} Binary File Descriptor library to read
-@var{infile}; see @ref{BFD,,BFD,ld.info,Using LD}, for
-more information.
+@command{nlmconv} uses the @sc{gnu} Binary File Descriptor library to read
+@var{infile};
+@ifclear man
+see @ref{BFD,,BFD,ld.info,Using LD}, for more information.
+@end ifclear
 
-@code{nlmconv} can perform a link step.  In other words, you can list
+@command{nlmconv} can perform a link step.  In other words, you can list
 more than one object file for input if you list them in the definitions
 file (rather than simply specifying one input file on the command line).
-In this case, @code{nlmconv} calls the linker for you.
+In this case, @command{nlmconv} calls the linker for you.
 
-@table @code
+@c man end
+
+@c man begin OPTIONS nlmconv
+
+@table @env
 @item -I @var{bfdname}
 @itemx --input-target=@var{bfdname}
-Object format of the input file.  @code{nlmconv} can usually determine
+Object format of the input file.  @command{nlmconv} can usually determine
 the format of a given file (so no default is necessary).
 @xref{Target Selection}, for more information.
 
 @item -O @var{bfdname}
 @itemx --output-target=@var{bfdname}
-Object format of the output file.  @code{nlmconv} infers the output
+Object format of the output file.  @command{nlmconv} infers the output
 format based on the input format, e.g. for a @samp{i386} input file the
 output format is @samp{nlm32-i386}.
 @xref{Target Selection}, for more information.
@@ -2104,7 +2305,7 @@ from Novell, Inc.
 
 @item -d
 @itemx --debug
-Displays (on standard error) the linker command line used by @code{nlmconv}.
+Displays (on standard error) the linker command line used by @command{nlmconv}.
 
 @item -l @var{linker}
 @itemx --linker=@var{linker}
@@ -2117,24 +2318,38 @@ Prints a usage summary.
 
 @item -V
 @itemx --version
-Prints the version number for @code{nlmconv}.
+Prints the version number for @command{nlmconv}.
 @end table
 
+@c man end
+
+@ignore
+@c man begin SEEALSO nlmconv
+the Info entries for @file{binutils}.
+@c man end
+@end ignore
+
 @node windres
 @chapter windres
 
-@code{windres} may be used to manipulate Windows resources.
+@command{windres} may be used to manipulate Windows resources.
 
 @quotation
-@emph{Warning:} @code{windres} is not always built as part of the binary
+@emph{Warning:} @command{windres} is not always built as part of the binary
 utilities, since it is only useful for Windows targets.
 @end quotation
 
+@c man title windres manipulate Windows resources.
+
 @smallexample
+@c man begin SYNOPSIS windres
 windres [options] [input-file] [output-file]
+@c man end
 @end smallexample
 
-@code{windres} reads resources from an input file and copies them into
+@c man begin DESCRIPTION windres
+
+@command{windres} reads resources from an input file and copies them into
 an output file.  Either file may be in one of three formats:
 
 @table @code
@@ -2151,83 +2366,89 @@ A COFF object or executable.
 The exact description of these different formats is available in
 documentation from Microsoft.
 
-When @code{windres} converts from the @code{rc} format to the @code{res}
+When @command{windres} converts from the @code{rc} format to the @code{res}
 format, it is acting like the Windows Resource Compiler.  When
-@code{windres} converts from the @code{res} format to the @code{coff}
+@command{windres} converts from the @code{res} format to the @code{coff}
 format, it is acting like the Windows @code{CVTRES} program.
 
-When @code{windres} generates an @code{rc} file, the output is similar
+When @command{windres} generates an @code{rc} file, the output is similar
 but not identical to the format expected for the input.  When an input
 @code{rc} file refers to an external filename, an output @code{rc} file
 will instead include the file contents.
 
-If the input or output format is not specified, @code{windres} will
+If the input or output format is not specified, @command{windres} will
 guess based on the file name, or, for the input file, the file contents.
 A file with an extension of @file{.rc} will be treated as an @code{rc}
 file, a file with an extension of @file{.res} will be treated as a
 @code{res} file, and a file with an extension of @file{.o} or
 @file{.exe} will be treated as a @code{coff} file.
 
-If no output file is specified, @code{windres} will print the resources
+If no output file is specified, @command{windres} will print the resources
 in @code{rc} format to standard output.
 
-The normal use is for you to write an @code{rc} file, use @code{windres}
+The normal use is for you to write an @code{rc} file, use @command{windres}
 to convert it to a COFF object file, and then link the COFF file into
 your application.  This will make the resources described in the
 @code{rc} file available to Windows.
 
-@table @code
+@c man end
+
+@c man begin OPTIONS windres
+
+@table @env
 @item -i @var{filename}
 @itemx --input @var{filename}
 The name of the input file.  If this option is not used, then
-@code{windres} will use the first non-option argument as the input file
-name.  If there are no non-option arguments, then @code{windres} will
-read from standard input.  @code{windres} can not read a COFF file from
+@command{windres} will use the first non-option argument as the input file
+name.  If there are no non-option arguments, then @command{windres} will
+read from standard input.  @command{windres} can not read a COFF file from
 standard input.
 
 @item -o @var{filename}
 @itemx --output @var{filename}
 The name of the output file.  If this option is not used, then
-@code{windres} will use the first non-option argument, after any used
+@command{windres} will use the first non-option argument, after any used
 for the input file name, as the output file name.  If there is no
-non-option argument, then @code{windres} will write to standard output.
-@code{windres} can not write a COFF file to standard output.
+non-option argument, then @command{windres} will write to standard output.
+@command{windres} can not write a COFF file to standard output.
 
 @item -I @var{format}
 @itemx --input-format @var{format}
 The input format to read.  @var{format} may be @samp{res}, @samp{rc}, or
-@samp{coff}.  If no input format is specified, @code{windres} will
+@samp{coff}.  If no input format is specified, @command{windres} will
 guess, as described above.
 
 @item -O @var{format}
 @itemx --output-format @var{format}
 The output format to generate.  @var{format} may be @samp{res},
 @samp{rc}, or @samp{coff}.  If no output format is specified,
-@code{windres} will guess, as described above.
+@command{windres} will guess, as described above.
 
 @item -F @var{target}
 @itemx --target @var{target}
 Specify the BFD format to use for a COFF file as input or output.  This
-is a BFD target name; you can use the @code{--help} option to see a list
-of supported targets.  Normally @code{windres} will use the default
-format, which is the first one listed by the @code{--help} option.
+is a BFD target name; you can use the @option{--help} option to see a list
+of supported targets.  Normally @command{windres} will use the default
+format, which is the first one listed by the @option{--help} option.
+@ifclear man
 @ref{Target Selection}.
 
+@end ifclear
 @item --preprocessor @var{program}
-When @code{windres} reads an @code{rc} file, it runs it through the C
+When @command{windres} reads an @code{rc} file, it runs it through the C
 preprocessor first.  This option may be used to specify the preprocessor
 to use, including any leading arguments.  The default preprocessor
 argument is @code{gcc -E -xc-header -DRC_INVOKED}.
 
 @item --include-dir @var{directory}
 Specify an include directory to use when reading an @code{rc} file.
-@code{windres} will pass this to the preprocessor as an @code{-I}
-option.  @code{windres} will also search this directory when looking for
+@command{windres} will pass this to the preprocessor as an @option{-I}
+option.  @command{windres} will also search this directory when looking for
 files named in the @code{rc} file.
 
 @item -D @var{target}
 @itemx --define @var{sym}[=@var{val}]
-Specify a @code{-D} option to pass to the preprocessor when reading an
+Specify a @option{-D} option to pass to the preprocessor when reading an
 @code{rc} file.
 
 @item -v
@@ -2254,67 +2475,82 @@ This is the default behaviour.
 Prints a usage summary.
 
 @item --version
-Prints the version number for @code{windres}.
+Prints the version number for @command{windres}.
 
 @item --yydebug
-If @code{windres} is compiled with @code{YYDEBUG} defined as @code{1},
+If @command{windres} is compiled with @code{YYDEBUG} defined as @code{1},
 this will turn on parser debugging.
 @end table
 
+@c man end
+
+@ignore
+@c man begin SEEALSO windres
+the Info entries for @file{binutils}.
+@c man end
+@end ignore
 
 @node dlltool
 @chapter Create files needed to build and use DLLs
 @cindex DLL
 @kindex dlltool
 
-@code{dlltool} may be used to create the files needed to build and use
+@command{dlltool} may be used to create the files needed to build and use
 dynamic link libraries (DLLs).
 
 @quotation
-@emph{Warning:} @code{dlltool} is not always built as part of the binary
+@emph{Warning:} @command{dlltool} is not always built as part of the binary
 utilities, since it is only useful for those targets which support DLLs.
 @end quotation
 
+@c man title dlltool Create files needed to build and use DLLs.
+
 @smallexample
-dlltool [-d|--input-def @var{def-file-name}]
-        [-b|--base-file @var{base-file-name}]
-        [-e|--output-exp @var{exports-file-name}]
-        [-z|--output-def @var{def-file-name}]
-        [-l|--output-lib @var{library-file-name}]        
-        [--export-all-symbols] [--no-export-all-symbols]
-        [--exclude-symbols @var{list}]
-        [--no-default-excludes]
-        [-S|--as @var{path-to-assembler}] [-f|--as-flags @var{options}]
-        [-D|--dllname @var{name}] [-m|--machine @var{machine}]
-        [-a|--add-indirect] [-U|--add-underscore] [-k|--kill-at]
-        [-A|--add-stdcall-alias]
-        [-x|--no-idata4] [-c|--no-idata5] [-i|--interwork]
-        [-n|--nodelete] [-v|--verbose] [-h|--help] [-V|--version]
+@c man begin SYNOPSIS dlltool
+dlltool [@option{-d}|@option{--input-def} @var{def-file-name}]
+        [@option{-b}|@option{--base-file} @var{base-file-name}]
+        [@option{-e}|@option{--output-exp} @var{exports-file-name}]
+        [@option{-z}|@option{--output-def} @var{def-file-name}]
+        [@option{-l}|@option{--output-lib} @var{library-file-name}]        
+        [@option{--export-all-symbols}] [@option{--no-export-all-symbols}]
+        [@option{--exclude-symbols} @var{list}]
+        [@option{--no-default-excludes}]
+        [@option{-S}|@option{--as} @var{path-to-assembler}] [@option{-f}|@option{--as-flags} @var{options}]
+        [@option{-D}|@option{--dllname} @var{name}] [@option{-m}|@option{--machine} @var{machine}]
+        [@option{-a}|@option{--add-indirect}] [@option{-U}|@option{--add-underscore}] [@option{-k}|@option{--kill-at}]
+        [@option{-A}|@option{--add-stdcall-alias}]
+        [@option{-x}|@option{--no-idata4}] [@option{-c}|@option{--no-idata5}] [@option{-i}|@option{--interwork}]
+        [@option{-n}|@option{--nodelete}] [@option{-v}|@option{--verbose}] 
+        [@option{-h}|@option{--help}] [@option{-V}|@option{--version}]
         [object-file @dots{}]
+@c man end
 @end smallexample
 
-@code{dlltool} reads its inputs, which can come from the @samp{-d} and
-@samp{-b} options as well as object files specified on the command
-line.  It then processes these inputs and if the @samp{-e} option has
-been specified it creates a exports file.  If the @samp{-l} option
-has been specified it creates a library file and if the @samp{-z} option
-has been specified it creates a def file.  Any or all of the -e, -l
-and -z options can be present in one invocation of dlltool.
+@c man begin DESCRIPTION dlltool
+
+@command{dlltool} reads its inputs, which can come from the @option{-d} and
+@option{-b} options as well as object files specified on the command
+line.  It then processes these inputs and if the @option{-e} option has
+been specified it creates a exports file.  If the @option{-l} option
+has been specified it creates a library file and if the @option{-z} option
+has been specified it creates a def file.  Any or all of the @option{-e}, 
+@option{-l} and @option{-z} options can be present in one invocation of 
+dlltool.
 
 When creating a DLL, along with the source for the DLL, it is necessary
-to have three other files.  @code{dlltool} can help with the creation of
+to have three other files.  @command{dlltool} can help with the creation of
 these files.
 
 The first file is a @samp{.def} file which specifies which functions are
 exported from the DLL, which functions the DLL imports, and so on.  This
-is a text file and can be created by hand, or @code{dlltool} can be used
-to create it using the @samp{-z} option.  In this case @code{dlltool}
+is a text file and can be created by hand, or @command{dlltool} can be used
+to create it using the @option{-z} option.  In this case @command{dlltool}
 will scan the object files specified on its command line looking for
 those functions which have been specially marked as being exported and
 put entries for them in the .def file it creates.
 
 In order to mark a function as being exported from a DLL, it needs to
-have an @samp{-export:<name_of_function>} entry in the @samp{.drectve}
+have an @option{-export:<name_of_function>} entry in the @samp{.drectve}
 section of the object file.  This can be done in C by using the
 asm() operator:
 
@@ -2328,21 +2564,21 @@ asm() operator:
 The second file needed for DLL creation is an exports file.  This file
 is linked with the object files that make up the body of the DLL and it
 handles the interface between the DLL and the outside world.  This is a
-binary file and it can be created by giving the @samp{-e} option to
-@code{dlltool} when it is creating or reading in a .def file. 
+binary file and it can be created by giving the @option{-e} option to
+@command{dlltool} when it is creating or reading in a .def file. 
 
 The third file needed for DLL creation is the library file that programs
 will link with in order to access the functions in the DLL.  This file
-can be created by giving the @samp{-l} option to dlltool when it
+can be created by giving the @option{-l} option to dlltool when it
 is creating or reading in a .def file.
 
-@code{dlltool} builds the library file by hand, but it builds the
+@command{dlltool} builds the library file by hand, but it builds the
 exports file by creating temporary files containing assembler statements
-and then assembling these.  The @samp{-S} command line option can be
+and then assembling these.  The @option{-S} command line option can be
 used to specify the path to the assembler that dlltool will use,
-and the @samp{-f} option can be used to pass specific flags to that
-assembler.  The @samp{-n} can be used to prevent dlltool from deleting
-these temporary assembler files when it is done, and if @samp{-n} is
+and the @option{-f} option can be used to pass specific flags to that
+assembler.  The @option{-n} can be used to prevent dlltool from deleting
+these temporary assembler files when it is done, and if @option{-n} is
 specified twice then this will prevent dlltool from deleting the
 temporary object files it used to build the library.
 
@@ -2357,9 +2593,13 @@ that uses that DLL:
   gcc program.o dll.lib -o program
 @end smallexample
 
+@c man end
+
+@c man begin OPTIONS dlltool
+
 The command line options have the following meanings:
 
-@table @code
+@table @env
 
 @item -d @var{filename}
 @itemx --input-def @var{filename}
@@ -2388,9 +2628,9 @@ Specifies the name of the library file t
 @item --export-all-symbols
 Treat all global and weak defined symbols found in the input object
 files as symbols to be exported.  There is a small list of symbols which
-are not exported by default; see the @code{--no-default-excludes}
+are not exported by default; see the @option{--no-default-excludes}
 option.  You may add to the list of symbols to not export by using the
-@code{--exclude-symbols} option.
+@option{--exclude-symbols} option.
 
 @item --no-export-all-symbols
 Only export symbols explicitly listed in an input .def file or in
@@ -2402,15 +2642,15 @@ attributes in the source code.
 Do not export the symbols in @var{list}.  This is a list of symbol names
 separated by comma or colon characters.  The symbol names should not
 contain a leading underscore.  This is only meaningful when
-@code{--export-all-symbols} is used.
+@option{--export-all-symbols} is used.
 
 @item --no-default-excludes
-When @code{--export-all-symbols} is used, it will by default avoid
+When @option{--export-all-symbols} is used, it will by default avoid
 exporting certain special symbols.  The current list of symbols to avoid
 exporting is @samp{DllMain@@12}, @samp{DllEntryPoint@@0},
-@samp{impure_ptr}.  You may use the @code{--no-default-excludes} option
+@samp{impure_ptr}.  You may use the @option{--no-default-excludes} option
 to go ahead and export these special symbols.  This is only meaningful
-when @code{--export-all-symbols} is used.
+when @option{--export-all-symbols} is used.
 
 @item -S @var{path}
 @itemx --as @var{path}
@@ -2421,7 +2661,7 @@ to create the exports file.
 @itemx --as-flags @var{switches}
 Specifies any specific command line switches to be passed to the
 assembler when building the exports file.  This option will work even if
-the @samp{-S} option is not used.  This option only takes one argument,
+the @option{-S} option is not used.  This option only takes one argument,
 and if it occurs more than once on the command line, then later
 occurrences will override earlier occurrences.  So if it is necessary to
 pass multiple switches to the assembler they should be enclosed in
@@ -2430,64 +2670,64 @@ double quotes.
 @item -D @var{name}
 @itemx --dll-name @var{name}
 Specifies the name to be stored in the .def file as the name of the DLL
-when the @samp{-e} option is used.  If this option is not present, then
-the filename given to the @samp{-e} option will be used as the name of
+when the @option{-e} option is used.  If this option is not present, then
+the filename given to the @option{-e} option will be used as the name of
 the DLL.
 
 @item -m @var{machine}
 @itemx -machine @var{machine}
 Specifies the type of machine for which the library file should be
-built.  @code{dlltool} has a built in default type, depending upon how
+built.  @command{dlltool} has a built in default type, depending upon how
 it was created, but this option can be used to override that.  This is
 normally only useful when creating DLLs for an ARM processor, when the
 contents of the DLL are actually encode using THUMB instructions.
 
 @item -a
 @itemx --add-indirect
-Specifies that when @code{dlltool} is creating the exports file it
+Specifies that when @command{dlltool} is creating the exports file it
 should add a section which allows the exported functions to be
 referenced without using the import library.  Whatever the hell that
 means! 
 
 @item -U
 @itemx --add-underscore
-Specifies that when @code{dlltool} is creating the exports file it
+Specifies that when @command{dlltool} is creating the exports file it
 should prepend an underscore to the names of the exported functions. 
 
 @item -k
 @itemx --kill-at
-Specifies that when @code{dlltool} is creating the exports file it
+Specifies that when @command{dlltool} is creating the exports file it
 should not append the string @samp{@@ <number>}.  These numbers are
 called ordinal numbers and they represent another way of accessing the
 function in a DLL, other than by name.
 
 @item -A
 @itemx --add-stdcall-alias
-Specifies that when @code{dlltool} is creating the exports file it
+Specifies that when @command{dlltool} is creating the exports file it
 should add aliases for stdcall symbols without @samp{@@ <number>}
 in addition to the symbols with @samp{@@ <number>}.
 
 @item -x
 @itemx --no-idata4
-Specifies that when @code{dlltool} is creating the exports and library
-files it should omit the .idata4 section.  This is for compatibility
+Specifies that when @command{dlltool} is creating the exports and library
+files it should omit the @code{.idata4} section.  This is for compatibility
 with certain operating systems.
 
 @item -c
 @itemx --no-idata5
-Specifies that when @code{dlltool} is creating the exports and library
-files it should omit the .idata5 section.  This is for compatibility
+Specifies that when @command{dlltool} is creating the exports and library
+files it should omit the @code{.idata5} section.  This is for compatibility
 with certain operating systems.
 
 @item -i
 @itemx --interwork
-Specifies that @code{dlltool} should mark the objects in the library
+Specifies that @command{dlltool} should mark the objects in the library
 file and exports file that it produces as supporting interworking
 between ARM and THUMB code.
 
 @item -n
 @itemx --nodelete
-Makes @code{dlltool} preserve the temporary assembler files it used to
+Makes @command{dlltool} preserve the temporary assembler files it used to
 create the exports file.  If this option is repeated then dlltool will
 also preserve the temporary object files it uses to create the library
 file. 
@@ -2506,50 +2746,68 @@ Displays dlltool's version number and th
 
 @end table
 
+@c man end
+
+@ignore
+@c man begin SEEALSO dlltool
+the Info entries for @file{binutils}.
+@c man end
+@end ignore
+
 @node readelf
 @chapter readelf
 
 @cindex ELF file information
 @kindex readelf
 
+@c man title readelf Displays information about ELF files.
+
 @smallexample
-readelf [ -a | --all ] 
-        [ -h | --file-header]
-        [ -l | --program-headers | --segments]
-        [ -S | --section-headers | --sections]
-        [ -e | --headers]
-        [ -s | --syms | --symbols]
-        [ -n | --notes]
-        [ -r | --relocs]
-        [ -d | --dynamic]
-        [ -V | --version-info]
-        [ -D | --use-dynamic]
-        [ -x <number> | --hex-dump=<number>]
-        [ -w[liaprf] | --debug-dump[=info,=line,=abbrev,=pubnames,=ranges,=frames]]
-        [      --histogram]
-        [ -v | --version]
-        [ -H | --help]
+@c man begin SYNOPSIS readelf
+readelf [@option{-a}|@option{--all}]
+        [@option{-h}|@option{--file-header}]
+        [@option{-l}|@option{--program-headers}|@option{--segments}]
+        [@option{-S}|@option{--section-headers}|@option{--sections}]
+        [@option{-e}|@option{--headers}]
+        [@option{-s}|@option{--syms}|@option{--symbols}]
+        [@option{-n}|@option{--notes}]
+        [@option{-r}|@option{--relocs}]
+        [@option{-d}|@option{--dynamic}]
+        [@option{-V}|@option{--version-info}]
+        [@option{-D}|@option{--use-dynamic}]
+        [@option{-x} <number>|@option{--hex-dump=}<number>]
+        [@option{-w[liaprf]}|@option{--debug-dump}[=info,=line,=abbrev,=pubnames,=ranges,=frames]]
+        [@option{--histogram}]
+        [@option{-v}|@option{--version}]
+        [@option{-H}|@option{--help}]
         @var{elffile}@dots{}
+@c man end
 @end smallexample
 
-@code{readelf} displays information about one or more ELF format object
+@c man begin DESCRIPTION readelf
+
+@command{readelf} displays information about one or more ELF format object
 files.  The options control what particular information to display.
 
 @var{elffile}@dots{} are the object files to be examined.  At the
-moment, @code{readelf} does not support examining archives, nor does it
+moment, @command{readelf} does not support examining archives, nor does it
 support examing 64 bit ELF files.
 
+@c man end
+
+@c man begin OPTIONS readelf
+
 The long and short forms of options, shown here as alternatives, are
 equivalent.  At least one option besides @samp{-v} or @samp{-H} must be
 given. 
 
-@table @code
+@table @env
 @item -a
 @itemx --all
-Equivalent to specifiying @samp{--file-header},
-@samp{--program-headers}, @samp{--sections}, @samp{--symbols},
-@samp{--relocs}, @samp{--dynamic}, @samp{--notes} and
-@samp{--version-info}. 
+Equivalent to specifiying @option{--file-header},
+@option{--program-headers}, @option{--sections}, @option{--symbols},
+@option{--relocs}, @option{--dynamic}, @option{--notes} and
+@option{--version-info}. 
 
 @item -h
 @itemx --file-header
@@ -2580,7 +2838,7 @@ Displays the entries in symbol table sec
 
 @item -e
 @itemx --headers
-Display all the headers in the file.  Equivalent to @samp{-h -l -S}.
+Display all the headers in the file.  Equivalent to @option{-h -l -S}.
 
 @item -n
 @itemx --notes
@@ -2590,7 +2848,7 @@ Displays the contents of the NOTE segmen
 @item -r
 @itemx --relocs
 @cindex ELF reloc information
-Displays the contents of the file's relocation section, if it ha one.
+Displays the contents of the file's relocation section, if it has one.
 
 @item -d
 @itemx --dynamic
@@ -2605,7 +2863,7 @@ exist.
 
 @item -D
 @itemx --use-dynamic
-When displaying symbols, this option makes @code{readelf} use the
+When displaying symbols, this option makes @command{readelf} use the
 symbol table in the file's dynamic section, rather than the one in the
 symbols section.
 
@@ -2629,10 +2887,17 @@ Display the version number of readelf.
 
 @item -H
 @itemx --help
-Display the command line options understood by @code{readelf}.
+Display the command line options understood by @command{readelf}.
 
 @end table
 
+@c man end
+
+@ignore
+@c man begin SEEALSO readelf
+objdump(1), and the Info entries for @file{binutils}.
+@c man end
+@end ignore
 
 @node Selecting The Target System
 @chapter Selecting the target system
@@ -2657,7 +2922,7 @@ listed later.
 
 The commands to list valid values only list the values for which the
 programs you are running were configured.  If they were configured with
-@samp{--enable-targets=all}, the commands list most of the available
+@option{--enable-targets=all}, the commands list most of the available
 values, but a few are left out; not all targets can be configured in at
 once because some of them can only be configured @dfn{native} (on hosts
 with the same type as the target system).
@@ -2692,13 +2957,13 @@ sources.
 Some sample configuration triplets are: @samp{m68k-hp-bsd},
 @samp{mips-dec-ultrix}, @samp{sparc-sun-sunos}.
 
-@subheading @code{objdump} Target
+@subheading @command{objdump} Target
 
 Ways to specify:
 
 @enumerate
 @item
-command line option: @samp{-b} or @samp{--target}
+command line option: @option{-b} or @option{--target}
 
 @item
 environment variable @code{GNUTARGET}
@@ -2707,13 +2972,13 @@ environment variable @code{GNUTARGET}
 deduced from the input file
 @end enumerate
 
-@subheading @code{objcopy} and @code{strip} Input Target
+@subheading @command{objcopy} and @command{strip} Input Target
 
 Ways to specify:
 
 @enumerate
 @item
-command line options: @samp{-I} or @samp{--input-target}, or @samp{-F} or @samp{--target}
+command line options: @option{-I} or @option{--input-target}, or @option{-F} or @option{--target}
 
 @item
 environment variable @code{GNUTARGET}
@@ -2722,16 +2987,16 @@ environment variable @code{GNUTARGET}
 deduced from the input file
 @end enumerate
 
-@subheading @code{objcopy} and @code{strip} Output Target
+@subheading @command{objcopy} and @command{strip} Output Target
 
 Ways to specify:
 
 @enumerate
 @item
-command line options: @samp{-O} or @samp{--output-target}, or @samp{-F} or @samp{--target}
+command line options: @option{-O} or @option{--output-target}, or @option{-F} or @option{--target}
 
 @item
-the input target (see ``@code{objcopy} and @code{strip} Input Target'' above)
+the input target (see ``@command{objcopy} and @command{strip} Input Target'' above)
 
 @item
 environment variable @code{GNUTARGET}
@@ -2740,13 +3005,13 @@ environment variable @code{GNUTARGET}
 deduced from the input file
 @end enumerate
 
-@subheading @code{nm}, @code{size}, and @code{strings} Target
+@subheading @command{nm}, @command{size}, and @command{strings} Target
 
 Ways to specify:
 
 @enumerate
 @item
-command line option: @samp{--target}
+command line option: @option{--target}
 
 @item
 environment variable @code{GNUTARGET}
@@ -2761,7 +3026,7 @@ Ways to specify:
 
 @enumerate
 @item
-command line option: @samp{-b} or @samp{--format}
+command line option: @option{-b} or @option{--format}
 (@pxref{Options,,Options,ld.info,Using LD})
 
 @item
@@ -2783,7 +3048,7 @@ Ways to specify:
 
 @enumerate
 @item
-command line option: @samp{-oformat}
+command line option: @option{-oformat}
 (@pxref{Options,,Options,ld.info,Using LD})
 
 @item
@@ -2806,19 +3071,19 @@ second column contains the relevant info
 
 Sample values: @samp{m68k:68020}, @samp{mips:3000}, @samp{sparc}.
 
-@subheading @code{objdump} Architecture
+@subheading @command{objdump} Architecture
 
 Ways to specify:
 
 @enumerate
 @item
-command line option: @samp{-m} or @samp{--architecture}
+command line option: @option{-m} or @option{--architecture}
 
 @item
 deduced from the input file
 @end enumerate
 
-@subheading @code{objcopy}, @code{nm}, @code{size}, @code{strings} Architecture
+@subheading @command{objcopy}, @command{nm}, @command{size}, @command{strings} Architecture
 
 Ways to specify:
 
@@ -2877,7 +3142,7 @@ Ways to specify:
 
 @enumerate
 @item
-command line option: @samp{-m}
+command line option: @option{-m}
 (@pxref{Options,,Options,ld.info,Using LD})
 
 @item
@@ -2978,7 +3243,7 @@ To enable us to fix the bug, you should 
 @itemize @bullet
 @item
 The version of the utility.  Each utility announces it if you start it
-with the @samp{--version} argument.
+with the @option{--version} argument.
 
 Without this, we will not know whether there is any point in looking for
 the bug in the current version of the binary utilities.
@@ -3013,11 +3278,11 @@ sending very large files to it.  Making 
 anonymous FTP is OK.
 
 If the source files were produced exclusively using @sc{gnu} programs
-(e.g., @code{gcc}, @code{gas}, and/or the @sc{gnu} @code{ld}), then it
+(e.g., @command{gcc}, @command{gas}, and/or the @sc{gnu} @command{ld}), then it
 may be OK to send the source files rather than the object files.  In
-this case, be sure to say exactly what version of @code{gcc}, or
+this case, be sure to say exactly what version of @command{gcc}, or
 whatever, was used to produce the object files.  Also say how
-@code{gcc}, or whatever, was configured.
+@command{gcc}, or whatever, was configured.
 
 @item
 A description of what behavior you observe that you believe is
@@ -3039,9 +3304,9 @@ to draw any conclusion from our observat
 
 @item
 If you wish to suggest changes to the source, send us context diffs, as
-generated by @code{diff} with the @samp{-u}, @samp{-c}, or @samp{-p}
+generated by @command{diff} with the @option{-u}, @option{-c}, or @option{-p}
 option.  Always send diffs from the old file to the new file.  If you
-wish to discuss something in the @code{ld} source, refer to it by
+wish to discuss something in the @command{ld} source, refer to it by
 context, not by line number.
 
 The line numbers in our development sources will not match those in your
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/dlltool.1 binutils-2.11.2-m68hc1x/binutils/dlltool.1
--- binutils-2.11.2/binutils/dlltool.1	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/binutils/dlltool.1	Fri Sep 21 22:11:27 2001
@@ -0,0 +1,437 @@
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:09:39 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
+..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.hy 0
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "DLLTOOL 1"
+.TH DLLTOOL 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
+.UC
+.SH "NAME"
+dlltool \- Create files needed to build and use DLLs.
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+dlltool [\fB\-d\fR|\fB\*(--input-def\fR \fIdef-file-name\fR]
+        [\fB\-b\fR|\fB\*(--base-file\fR \fIbase-file-name\fR]
+        [\fB\-e\fR|\fB\*(--output-exp\fR \fIexports-file-name\fR]
+        [\fB\-z\fR|\fB\*(--output-def\fR \fIdef-file-name\fR]
+        [\fB\-l\fR|\fB\*(--output-lib\fR \fIlibrary-file-name\fR]        
+        [\fB\*(--export-all-symbols\fR] [\fB\*(--no-export-all-symbols\fR]
+        [\fB\*(--exclude-symbols\fR \fIlist\fR]
+        [\fB\*(--no-default-excludes\fR]
+        [\fB\-S\fR|\fB\*(--as\fR \fIpath-to-assembler\fR] [\fB\-f\fR|\fB\*(--as-flags\fR \fIoptions\fR]
+        [\fB\-D\fR|\fB\*(--dllname\fR \fIname\fR] [\fB\-m\fR|\fB\*(--machine\fR \fImachine\fR]
+        [\fB\-a\fR|\fB\*(--add-indirect\fR] [\fB\-U\fR|\fB\*(--add-underscore\fR] [\fB\-k\fR|\fB\*(--kill-at\fR]
+        [\fB\-A\fR|\fB\*(--add-stdcall-alias\fR]
+        [\fB\-x\fR|\fB\*(--no-idata4\fR] [\fB\-c\fR|\fB\*(--no-idata5\fR] [\fB\-i\fR|\fB\*(--interwork\fR]
+        [\fB\-n\fR|\fB\*(--nodelete\fR] [\fB\-v\fR|\fB\*(--verbose\fR] 
+        [\fB\-h\fR|\fB\*(--help\fR] [\fB\-V\fR|\fB\*(--version\fR]
+        [object-file ...]
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fBdlltool\fR reads its inputs, which can come from the \fB\-d\fR and
+\&\fB\-b\fR options as well as object files specified on the command
+line.  It then processes these inputs and if the \fB\-e\fR option has
+been specified it creates a exports file.  If the \fB\-l\fR option
+has been specified it creates a library file and if the \fB\-z\fR option
+has been specified it creates a def file.  Any or all of the \fB\-e\fR, 
+\&\fB\-l\fR and \fB\-z\fR options can be present in one invocation of 
+dlltool.
+.PP
+When creating a \s-1DLL\s0, along with the source for the \s-1DLL\s0, it is necessary
+to have three other files.  \fBdlltool\fR can help with the creation of
+these files.
+.PP
+The first file is a \fB.def\fR file which specifies which functions are
+exported from the \s-1DLL\s0, which functions the \s-1DLL\s0 imports, and so on.  This
+is a text file and can be created by hand, or \fBdlltool\fR can be used
+to create it using the \fB\-z\fR option.  In this case \fBdlltool\fR
+will scan the object files specified on its command line looking for
+those functions which have been specially marked as being exported and
+put entries for them in the .def file it creates.
+.PP
+In order to mark a function as being exported from a \s-1DLL\s0, it needs to
+have an \fB\-export:<name_of_function>\fR entry in the \fB.drectve\fR
+section of the object file.  This can be done in C by using the
+\&\fIasm()\fR operator:
+.PP
+.Vb 2
+\&          asm (".section .drectve");  
+\&          asm (".ascii \e"-export:my_func\e"");
+.Ve
+.Vb 1
+\&          int my_func (void) { ... }
+.Ve
+The second file needed for \s-1DLL\s0 creation is an exports file.  This file
+is linked with the object files that make up the body of the \s-1DLL\s0 and it
+handles the interface between the \s-1DLL\s0 and the outside world.  This is a
+binary file and it can be created by giving the \fB\-e\fR option to
+\&\fBdlltool\fR when it is creating or reading in a .def file. 
+.PP
+The third file needed for \s-1DLL\s0 creation is the library file that programs
+will link with in order to access the functions in the \s-1DLL\s0.  This file
+can be created by giving the \fB\-l\fR option to dlltool when it
+is creating or reading in a .def file.
+.PP
+\&\fBdlltool\fR builds the library file by hand, but it builds the
+exports file by creating temporary files containing assembler statements
+and then assembling these.  The \fB\-S\fR command line option can be
+used to specify the path to the assembler that dlltool will use,
+and the \fB\-f\fR option can be used to pass specific flags to that
+assembler.  The \fB\-n\fR can be used to prevent dlltool from deleting
+these temporary assembler files when it is done, and if \fB\-n\fR is
+specified twice then this will prevent dlltool from deleting the
+temporary object files it used to build the library.
+.PP
+Here is an example of creating a \s-1DLL\s0 from a source file \fBdll.c\fR and
+also creating a program (from an object file called \fBprogram.o\fR)
+that uses that \s-1DLL:\s0
+.PP
+.Vb 4
+\&          gcc -c dll.c
+\&          dlltool -e exports.o -l dll.lib dll.o
+\&          gcc dll.o exports.o -o dll.dll
+\&          gcc program.o dll.lib -o program
+.Ve
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+The command line options have the following meanings:
+.IP "\fB\-d\fR \fIfilename\fR" 4
+.IX Item "-d filename"
+.PD 0
+.IP "\fB\*(--input-def\fR \fIfilename\fR" 4
+.IX Item "input-def filename"
+.PD
+Specifies the name of a .def file to be read in and processed.
+.IP "\fB\-b\fR \fIfilename\fR" 4
+.IX Item "-b filename"
+.PD 0
+.IP "\fB\*(--base-file\fR \fIfilename\fR" 4
+.IX Item "base-file filename"
+.PD
+Specifies the name of a base file to be read in and processed.  The
+contents of this file will be added to the relocation section in the
+exports file generated by dlltool.
+.IP "\fB\-e\fR \fIfilename\fR" 4
+.IX Item "-e filename"
+.PD 0
+.IP "\fB\*(--output-exp\fR \fIfilename\fR" 4
+.IX Item "output-exp filename"
+.PD
+Specifies the name of the export file to be created by dlltool.
+.IP "\fB\-z\fR \fIfilename\fR" 4
+.IX Item "-z filename"
+.PD 0
+.IP "\fB\*(--output-def\fR \fIfilename\fR" 4
+.IX Item "output-def filename"
+.PD
+Specifies the name of the .def file to be created by dlltool.
+.IP "\fB\-l\fR \fIfilename\fR" 4
+.IX Item "-l filename"
+.PD 0
+.IP "\fB\*(--output-lib\fR \fIfilename\fR" 4
+.IX Item "output-lib filename"
+.PD
+Specifies the name of the library file to be created by dlltool.
+.IP "\fB\*(--export-all-symbols\fR" 4
+.IX Item "export-all-symbols"
+Treat all global and weak defined symbols found in the input object
+files as symbols to be exported.  There is a small list of symbols which
+are not exported by default; see the \fB\*(--no-default-excludes\fR
+option.  You may add to the list of symbols to not export by using the
+\&\fB\*(--exclude-symbols\fR option.
+.IP "\fB\*(--no-export-all-symbols\fR" 4
+.IX Item "no-export-all-symbols"
+Only export symbols explicitly listed in an input .def file or in
+\&\fB.drectve\fR sections in the input object files.  This is the default
+behaviour.  The \fB.drectve\fR sections are created by \fBdllexport\fR
+attributes in the source code.
+.IP "\fB\*(--exclude-symbols\fR \fIlist\fR" 4
+.IX Item "exclude-symbols list"
+Do not export the symbols in \fIlist\fR.  This is a list of symbol names
+separated by comma or colon characters.  The symbol names should not
+contain a leading underscore.  This is only meaningful when
+\&\fB\*(--export-all-symbols\fR is used.
+.IP "\fB\*(--no-default-excludes\fR" 4
+.IX Item "no-default-excludes"
+When \fB\*(--export-all-symbols\fR is used, it will by default avoid
+exporting certain special symbols.  The current list of symbols to avoid
+exporting is \fBDllMain@12\fR, \fBDllEntryPoint@0\fR,
+\&\fBimpure_ptr\fR.  You may use the \fB\*(--no-default-excludes\fR option
+to go ahead and export these special symbols.  This is only meaningful
+when \fB\*(--export-all-symbols\fR is used.
+.IP "\fB\-S\fR \fIpath\fR" 4
+.IX Item "-S path"
+.PD 0
+.IP "\fB\*(--as\fR \fIpath\fR" 4
+.IX Item "as path"
+.PD
+Specifies the path, including the filename, of the assembler to be used
+to create the exports file.
+.IP "\fB\-f\fR \fIswitches\fR" 4
+.IX Item "-f switches"
+.PD 0
+.IP "\fB\*(--as-flags\fR \fIswitches\fR" 4
+.IX Item "as-flags switches"
+.PD
+Specifies any specific command line switches to be passed to the
+assembler when building the exports file.  This option will work even if
+the \fB\-S\fR option is not used.  This option only takes one argument,
+and if it occurs more than once on the command line, then later
+occurrences will override earlier occurrences.  So if it is necessary to
+pass multiple switches to the assembler they should be enclosed in
+double quotes.
+.IP "\fB\-D\fR \fIname\fR" 4
+.IX Item "-D name"
+.PD 0
+.IP "\fB\*(--dll-name\fR \fIname\fR" 4
+.IX Item "dll-name name"
+.PD
+Specifies the name to be stored in the .def file as the name of the \s-1DLL\s0
+when the \fB\-e\fR option is used.  If this option is not present, then
+the filename given to the \fB\-e\fR option will be used as the name of
+the \s-1DLL\s0.
+.IP "\fB\-m\fR \fImachine\fR" 4
+.IX Item "-m machine"
+.PD 0
+.IP "\fB\-machine\fR \fImachine\fR" 4
+.IX Item "-machine machine"
+.PD
+Specifies the type of machine for which the library file should be
+built.  \fBdlltool\fR has a built in default type, depending upon how
+it was created, but this option can be used to override that.  This is
+normally only useful when creating DLLs for an \s-1ARM\s0 processor, when the
+contents of the \s-1DLL\s0 are actually encode using \s-1THUMB\s0 instructions.
+.IP "\fB\-a\fR" 4
+.IX Item "-a"
+.PD 0
+.IP "\fB\*(--add-indirect\fR" 4
+.IX Item "add-indirect"
+.PD
+Specifies that when \fBdlltool\fR is creating the exports file it
+should add a section which allows the exported functions to be
+referenced without using the import library.  Whatever the hell that
+means! 
+.IP "\fB\-U\fR" 4
+.IX Item "-U"
+.PD 0
+.IP "\fB\*(--add-underscore\fR" 4
+.IX Item "add-underscore"
+.PD
+Specifies that when \fBdlltool\fR is creating the exports file it
+should prepend an underscore to the names of the exported functions. 
+.IP "\fB\-k\fR" 4
+.IX Item "-k"
+.PD 0
+.IP "\fB\*(--kill-at\fR" 4
+.IX Item "kill-at"
+.PD
+Specifies that when \fBdlltool\fR is creating the exports file it
+should not append the string \fB@ <number>\fR.  These numbers are
+called ordinal numbers and they represent another way of accessing the
+function in a \s-1DLL\s0, other than by name.
+.IP "\fB\-A\fR" 4
+.IX Item "-A"
+.PD 0
+.IP "\fB\*(--add-stdcall-alias\fR" 4
+.IX Item "add-stdcall-alias"
+.PD
+Specifies that when \fBdlltool\fR is creating the exports file it
+should add aliases for stdcall symbols without \fB@ <number>\fR
+in addition to the symbols with \fB@ <number>\fR.
+.IP "\fB\-x\fR" 4
+.IX Item "-x"
+.PD 0
+.IP "\fB\*(--no-idata4\fR" 4
+.IX Item "no-idata4"
+.PD
+Specifies that when \fBdlltool\fR is creating the exports and library
+files it should omit the \f(CW\*(C`.idata4\*(C'\fR section.  This is for compatibility
+with certain operating systems.
+.IP "\fB\-c\fR" 4
+.IX Item "-c"
+.PD 0
+.IP "\fB\*(--no-idata5\fR" 4
+.IX Item "no-idata5"
+.PD
+Specifies that when \fBdlltool\fR is creating the exports and library
+files it should omit the \f(CW\*(C`.idata5\*(C'\fR section.  This is for compatibility
+with certain operating systems.
+.IP "\fB\-i\fR" 4
+.IX Item "-i"
+.PD 0
+.IP "\fB\*(--interwork\fR" 4
+.IX Item "interwork"
+.PD
+Specifies that \fBdlltool\fR should mark the objects in the library
+file and exports file that it produces as supporting interworking
+between \s-1ARM\s0 and \s-1THUMB\s0 code.
+.IP "\fB\-n\fR" 4
+.IX Item "-n"
+.PD 0
+.IP "\fB\*(--nodelete\fR" 4
+.IX Item "nodelete"
+.PD
+Makes \fBdlltool\fR preserve the temporary assembler files it used to
+create the exports file.  If this option is repeated then dlltool will
+also preserve the temporary object files it uses to create the library
+file. 
+.IP "\fB\-v\fR" 4
+.IX Item "-v"
+.PD 0
+.IP "\fB\*(--verbose\fR" 4
+.IX Item "verbose"
+.PD
+Make dlltool describe what it is doing.
+.IP "\fB\-h\fR" 4
+.IX Item "-h"
+.PD 0
+.IP "\fB\*(--help\fR" 4
+.IX Item "help"
+.PD
+Displays a list of command line options and then exits.
+.IP "\fB\-V\fR" 4
+.IX Item "-V"
+.PD 0
+.IP "\fB\*(--version\fR" 4
+.IX Item "version"
+.PD
+Displays dlltool's version number and then exits.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+the Info entries for \fIbinutils\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
+.PP
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/nlmconv.1 binutils-2.11.2-m68hc1x/binutils/nlmconv.1
--- binutils-2.11.2/binutils/nlmconv.1	Tue Nov 28 21:40:34 2000
+++ binutils-2.11.2-m68hc1x/binutils/nlmconv.1	Fri Sep 21 22:11:27 2001
@@ -1,472 +1,232 @@
-.\" Copyright (c) 1991, 1996, 2000  Free Software Foundation
-.\" See section COPYING for conditions for redistribution
-.TH nlmconv 1 "March 1996" "Free Software Foundation" "GNU Development Tools"
-.de BP
-.sp
-.ti \-.2i
-\(**
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:09:40 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
 ..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
 
-.SH NAME
-nlmconv \- converts object code into an NLM
-
-.SH SYNOPSIS
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
 .hy 0
-.na
-.TP
-.B nlmconv
-.RB "[\|" \-I\ \fIbfdname\fB\ |\ \-\-input\-target=\fIbfdname\fR "\|]" 
-.RB "[\|" \-O\ \fIbfdname\fB\ |\ \-\-output\-target=\fIbfdname\fR "\|]" 
-.RB "[\|" \-T\ \fIheaderfile\fB\ |\ \-\-header\-file=\fIheaderfile\fR "\|]" 
-.RB "[\|" \-V\ |\ \-\-version\fR "\|]" 
-.RB "[\|" \-\-help\fR "\|]" 
-.B infile
-.B outfile
-.SH DESCRIPTION
-.B nlmconv
-converts the relocatable object file 
-.B infile
-into the NetWare Loadable Module 
-.BR outfile ,
-optionally reading 
-.I headerfile
-for NLM header information.  For instructions on writing the NLM
-command file language used in header files, see 
-.IR "The NetWare Tool Maker Specification Manual" ,
-available from Novell, Inc.
-.B nlmconv
-currently works with i386 object files in 
-.BR COFF ,
-.BR ELF ,
-or
-.B a.out
-format, and with SPARC object files in
-.B ELF
-or
-.B a.out
-format.
-.br
-.B nlmconv
-uses the GNU Binary File Descriptor library to read 
-.IR infile .
-.SH OPTIONS
-.TP
-.B \-I \fIbfdname\fR, \fB\-\-input\-target=\fIbfdname
-Consider the source file's object format to be 
-.IR bfdname ,
-rather than attempting to deduce it.
-.TP
-.B \-O \fIbfdname\fR, \fB\-\-output\-target=\fIbfdname
-Write the output file using the object format 
-.IR bfdname .
-.B nlmconv
-infers the output format based on the input format, e.g. for an i386
-input file the output format is
-.IR nlm32\-i386 .
-.TP
-.B \-T \fIheaderfile\fR, \fB\-\-header\-file=\fIheaderfile
-Reads 
-.I headerfile
-for NLM header information.  For instructions on writing the NLM
-command file language used in header files, see 
-.IR "The NetWare Tool Maker Specification Manual" ,
-available from Novell, Inc.
-.TP
-.B \-V\fR, \fB\-\-version
-Show the version number of
-.B nlmconv
-and exit.
-.TP
-.B \-h\fR, \fB\-\-help
-Show a summary of the options to
-.B nlmconv
-and exit.
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "NLMCONV 1"
+.TH NLMCONV 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
+.UC
+.SH "NAME"
+nlmconv \- converts object code into an \s-1NLM\s0.
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+nlmconv [\fB\-I\fR \fIbfdname\fR|\fB\*(--input-target=\fR\fIbfdname\fR]
+        [\fB\-O\fR \fIbfdname\fR|\fB\*(--output-target=\fR\fIbfdname\fR]
+        [\fB\-T\fR \fIheaderfile\fR|\fB\*(--header-file=\fR\fIheaderfile\fR]
+        [\fB\-d\fR|\fB\*(--debug\fR] [\fB\-l\fR \fIlinker\fR|\fB\*(--linker=\fR\fIlinker\fR]
+        [\fB\-h\fR|\fB\*(--help\fR] [\fB\-V\fR|\fB\*(--version\fR]
+        \fIinfile\fR \fIoutfile\fR
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fBnlmconv\fR converts the relocatable \fBi386\fR object file
+\&\fIinfile\fR into the NetWare Loadable Module \fIoutfile\fR, optionally
+reading \fIheaderfile\fR for \s-1NLM\s0 header information.  For instructions
+on writing the \s-1NLM\s0 command file language used in header files, see the
+\&\fBlinkers\fR section, \fB\s-1NLMLINK\s0\fR in particular, of the \fI\s-1NLM\s0
+Development and Tools Overview\fR, which is part of the \s-1NLM\s0 Software
+Developer's Kit (``\s-1NLM\s0 \s-1SDK\s0''), available from Novell, Inc.
+\&\fBnlmconv\fR uses the \s-1GNU\s0 Binary File Descriptor library to read
+\&\fIinfile\fR;
+.PP
+\&\fBnlmconv\fR can perform a link step.  In other words, you can list
+more than one object file for input if you list them in the definitions
+file (rather than simply specifying one input file on the command line).
+In this case, \fBnlmconv\fR calls the linker for you.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+.IP "\fB\-I\fR \fIbfdname\fR" 4
+.IX Item "-I bfdname"
+.PD 0
+.IP "\fB\*(--input-target=\fR\fIbfdname\fR" 4
+.IX Item "input-target=bfdname"
+.PD
+Object format of the input file.  \fBnlmconv\fR can usually determine
+the format of a given file (so no default is necessary).
+.IP "\fB\-O\fR \fIbfdname\fR" 4
+.IX Item "-O bfdname"
+.PD 0
+.IP "\fB\*(--output-target=\fR\fIbfdname\fR" 4
+.IX Item "output-target=bfdname"
+.PD
+Object format of the output file.  \fBnlmconv\fR infers the output
+format based on the input format, e.g. for a \fBi386\fR input file the
+output format is \fBnlm32\-i386\fR.
+.IP "\fB\-T\fR \fIheaderfile\fR" 4
+.IX Item "-T headerfile"
+.PD 0
+.IP "\fB\*(--header-file=\fR\fIheaderfile\fR" 4
+.IX Item "header-file=headerfile"
+.PD
+Reads \fIheaderfile\fR for \s-1NLM\s0 header information.  For instructions on
+writing the \s-1NLM\s0 command file language used in header files, see see the
+\&\fBlinkers\fR section, of the \fI\s-1NLM\s0 Development and Tools
+Overview\fR, which is part of the \s-1NLM\s0 Software Developer's Kit, available
+from Novell, Inc.
+.IP "\fB\-d\fR" 4
+.IX Item "-d"
+.PD 0
+.IP "\fB\*(--debug\fR" 4
+.IX Item "debug"
+.PD
+Displays (on standard error) the linker command line used by \fBnlmconv\fR.
+.IP "\fB\-l\fR \fIlinker\fR" 4
+.IX Item "-l linker"
+.PD 0
+.IP "\fB\*(--linker=\fR\fIlinker\fR" 4
+.IX Item "linker=linker"
+.PD
+Use \fIlinker\fR for any linking.  \fIlinker\fR can be an absolute or a
+relative pathname.
+.IP "\fB\-h\fR" 4
+.IX Item "-h"
+.PD 0
+.IP "\fB\*(--help\fR" 4
+.IX Item "help"
+.PD
+Prints a usage summary.
+.IP "\fB\-V\fR" 4
+.IX Item "-V"
+.PD 0
+.IP "\fB\*(--version\fR" 4
+.IX Item "version"
+.PD
+Prints the version number for \fBnlmconv\fR.
 .SH "SEE ALSO"
-.RB "`\|" binutils "\|'" 
-entry in 
-.B
-info\c
-\&; 
-.I
-The GNU Binary Utilities\c
-\&, Roland H. Pesch (June 1993).
-
-.SH COPYING
-Copyright (c) 1993, 2000 Free Software Foundation, Inc.
+.IX Header "SEE ALSO"
+the Info entries for \fIbinutils\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
 .PP
-This document is distributed under the terms of the GNU Free
-Documenation License.  That license is described in the GNU Free
-Documentation License section.
-
-This document is distributed under the terms of the GNU Free
-Documentation License, version 1.1.  That license is described in the
-sources for this manual page, but it is not displayed here in order to
-make this manual more consise.  Copies of this license can also be
-obtained from: http://www.gnu.org/copyleft/.
-
-\"  .SH GNU Free Documentation License
-\"    Version 1.1, March 2000
-
-\"    Copyright (C) 2000  Free Software Foundation, Inc.
-\"    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-     
-\"    Everyone is permitted to copy and distribute verbatim
-\"    copies of this license document, but changing it is
-\"    not allowed.
-\"  .PP
-\"  0. PREAMBLE
-\"  .PP
-\"  The purpose of this License is to make a manual, textbook, or other
-\"  written document "free" in the sense of freedom: to assure everyone
-\"  the effective freedom to copy and redistribute it, with or without
-\"  modifying it, either commercially or noncommercially.  Secondarily,
-\"  this License preserves for the author and publisher a way to get
-\"  credit for their work, while not being considered responsible for
-\"  modifications made by others.
-\"  .PP
-\"  This License is a kind of "copyleft", which means that derivative
-\"  works of the document must themselves be free in the same sense.  It
-\"  complements the GNU General Public License, which is a copyleft
-\"  license designed for free software.
-\"  .PP
-\"  We have designed this License in order to use it for manuals for free
-\"  software, because free software needs free documentation: a free
-\"  program should come with manuals providing the same freedoms that the
-\"  software does.  But this License is not limited to software manuals;
-\"  it can be used for any textual work, regardless of subject matter or
-\"  whether it is published as a printed book.  We recommend this License
-\"  principally for works whose purpose is instruction or reference.
-\"  .PP
-\"  1. APPLICABILITY AND DEFINITIONS
-\"  .PP
-\"  This License applies to any manual or other work that contains a
-\"  notice placed by the copyright holder saying it can be distributed
-\"  under the terms of this License.  The "Document", below, refers to any
-\"  such manual or work.  Any member of the public is a licensee, and is
-\"  addressed as "you".
-\"  .PP
-\"  A "Modified Version" of the Document means any work containing the
-\"  Document or a portion of it, either copied verbatim, or with
-\"  modifications and/or translated into another language.
-\"  .PP
-\"  A "Secondary Section" is a named appendix or a front-matter section of
-\"  the Document that deals exclusively with the relationship of the
-\"  publishers or authors of the Document to the Document's overall subject
-\"  (or to related matters) and contains nothing that could fall directly
-\"  within that overall subject.  (For example, if the Document is in part a
-\"  textbook of mathematics, a Secondary Section may not explain any
-\"  mathematics.)  The relationship could be a matter of historical
-\"  connection with the subject or with related matters, or of legal,
-\"  commercial, philosophical, ethical or political position regarding
-\"  them.
-\"  .PP
-\"  The "Invariant Sections" are certain Secondary Sections whose titles
-\"  are designated, as being those of Invariant Sections, in the notice
-\"  that says that the Document is released under this License.
-\"  .PP
-\"  The "Cover Texts" are certain short passages of text that are listed,
-\"  as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-\"  the Document is released under this License.
-\"  .PP
-\"  A "Transparent" copy of the Document means a machine-readable copy,
-\"  represented in a format whose specification is available to the
-\"  general public, whose contents can be viewed and edited directly and
-\"  straightforwardly with generic text editors or (for images composed of
-\"  pixels) generic paint programs or (for drawings) some widely available
-\"  drawing editor, and that is suitable for input to text formatters or
-\"  for automatic translation to a variety of formats suitable for input
-\"  to text formatters.  A copy made in an otherwise Transparent file
-\"  format whose markup has been designed to thwart or discourage
-\"  subsequent modification by readers is not Transparent.  A copy that is
-\"  not "Transparent" is called "Opaque".
-\"  .PP
-\"  Examples of suitable formats for Transparent copies include plain
-\"  ASCII without markup, Texinfo input format, LaTeX input format, SGML
-\"  or XML using a publicly available DTD, and standard-conforming simple
-\"  HTML designed for human modification.  Opaque formats include
-\"  PostScript, PDF, proprietary formats that can be read and edited only
-\"  by proprietary word processors, SGML or XML for which the DTD and/or
-\"  processing tools are not generally available, and the
-\"  machine-generated HTML produced by some word processors for output
-\"  purposes only.
-\"  .PP
-\"  The "Title Page" means, for a printed book, the title page itself,
-\"  plus such following pages as are needed to hold, legibly, the material
-\"  this License requires to appear in the title page.  For works in
-\"  formats which do not have any title page as such, "Title Page" means
-\"  the text near the most prominent appearance of the work's title,
-\"  preceding the beginning of the body of the text.
-\"  .PP
-\"  2. VERBATIM COPYING
-\"  .PP
-\"  You may copy and distribute the Document in any medium, either
-\"  commercially or noncommercially, provided that this License, the
-\"  copyright notices, and the license notice saying this License applies
-\"  to the Document are reproduced in all copies, and that you add no other
-\"  conditions whatsoever to those of this License.  You may not use
-\"  technical measures to obstruct or control the reading or further
-\"  copying of the copies you make or distribute.  However, you may accept
-\"  compensation in exchange for copies.  If you distribute a large enough
-\"  number of copies you must also follow the conditions in section 3.
-\"  .PP
-\"  You may also lend copies, under the same conditions stated above, and
-\"  you may publicly display copies.
-\"  .PP
-\"  3. COPYING IN QUANTITY
-\"  .PP
-\"  If you publish printed copies of the Document numbering more than 100,
-\"  and the Document's license notice requires Cover Texts, you must enclose
-\"  the copies in covers that carry, clearly and legibly, all these Cover
-\"  Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-\"  the back cover.  Both covers must also clearly and legibly identify
-\"  you as the publisher of these copies.  The front cover must present
-\"  the full title with all words of the title equally prominent and
-\"  visible.  You may add other material on the covers in addition.
-\"  Copying with changes limited to the covers, as long as they preserve
-\"  the title of the Document and satisfy these conditions, can be treated
-\"  as verbatim copying in other respects.
-\"  .PP
-\"  If the required texts for either cover are too voluminous to fit
-\"  legibly, you should put the first ones listed (as many as fit
-\"  reasonably) on the actual cover, and continue the rest onto adjacent
-\"  pages.
-\"  .PP
-\"  If you publish or distribute Opaque copies of the Document numbering
-\"  more than 100, you must either include a machine-readable Transparent
-\"  copy along with each Opaque copy, or state in or with each Opaque copy
-\"  a publicly-accessible computer-network location containing a complete
-\"  Transparent copy of the Document, free of added material, which the
-\"  general network-using public has access to download anonymously at no
-\"  charge using public-standard network protocols.  If you use the latter
-\"  option, you must take reasonably prudent steps, when you begin
-\"  distribution of Opaque copies in quantity, to ensure that this
-\"  Transparent copy will remain thus accessible at the stated location
-\"  until at least one year after the last time you distribute an Opaque
-\"  copy (directly or through your agents or retailers) of that edition to
-\"  the public.
-\"  .PP
-\"  It is requested, but not required, that you contact the authors of the
-\"  Document well before redistributing any large number of copies, to give
-\"  them a chance to provide you with an updated version of the Document.
-\"  .PP
-\"  4. MODIFICATIONS
-\"  .PP
-\"  You may copy and distribute a Modified Version of the Document under
-\"  the conditions of sections 2 and 3 above, provided that you release
-\"  the Modified Version under precisely this License, with the Modified
-\"  Version filling the role of the Document, thus licensing distribution
-\"  and modification of the Modified Version to whoever possesses a copy
-\"  of it.  In addition, you must do these things in the Modified Version:
-\"  .PP
-\"  A. Use in the Title Page (and on the covers, if any) a title distinct
-\"  from that of the Document, and from those of previous versions
-\"  (which should, if there were any, be listed in the History section
-\"  of the Document).  You may use the same title as a previous version
-\"  if the original publisher of that version gives permission.
-\"  .PP
-\"  B. List on the Title Page, as authors, one or more persons or entities
-\"  responsible for authorship of the modifications in the Modified
-\"  Version, together with at least five of the principal authors of the
-\"  Document (all of its principal authors, if it has less than five).
-\"  .PP
-\"  C. State on the Title page the name of the publisher of the
-\"  Modified Version, as the publisher.
-\"  .PP
-\"  D. Preserve all the copyright notices of the Document.
-\"  .PP
-\"  E. Add an appropriate copyright notice for your modifications
-\"  adjacent to the other copyright notices.
-\"  .PP
-\"  F. Include, immediately after the copyright notices, a license notice
-\"  giving the public permission to use the Modified Version under the
-\"  terms of this License, in the form shown in the Addendum below.
-\"  Preserve in that license notice the full lists of Invariant Sections
-\"  and required Cover Texts given in the Document's license notice.
-\"  .PP
-\"  H. Include an unaltered copy of this License.
-\"  .PP
-\"  I. Preserve the section entitled "History", and its title, and add to
-\"  it an item stating at least the title, year, new authors, and
-\"  publisher of the Modified Version as given on the Title Page.  If
-\"  there is no section entitled "History" in the Document, create one
-\"  stating the title, year, authors, and publisher of the Document as
-\"  given on its Title Page, then add an item describing the Modified
-\"  Version as stated in the previous sentence.
-\"  .PP
-\"  J. Preserve the network location, if any, given in the Document for
-\"  public access to a Transparent copy of the Document, and likewise
-\"  the network locations given in the Document for previous versions
-\"  it was based on.  These may be placed in the "History" section.
-\"  You may omit a network location for a work that was published at
-\"  least four years before the Document itself, or if the original
-\"  publisher of the version it refers to gives permission.
-\"  .PP
-\"  K. In any section entitled "Acknowledgements" or "Dedications",
-\"  preserve the section's title, and preserve in the section all the
-\"  substance and tone of each of the contributor acknowledgements
-\"  and/or dedications given therein.
-\"  .PP
-\"  L. Preserve all the Invariant Sections of the Document,
-\"  unaltered in their text and in their titles.  Section numbers
-\"  or the equivalent are not considered part of the section titles.
-\"  .PP
-\"  M. Delete any section entitled "Endorsements".  Such a section
-\"  may not be included in the Modified Version.
-\"  .PP
-\"  N. Do not retitle any existing section as "Endorsements"
-\"  or to conflict in title with any Invariant Section.
-\"  .PP
-\"  If the Modified Version includes new front-matter sections or
-\"  appendices that qualify as Secondary Sections and contain no material
-\"  copied from the Document, you may at your option designate some or all
-\"  of these sections as invariant.  To do this, add their titles to the
-\"  list of Invariant Sections in the Modified Version's license notice.
-\"  These titles must be distinct from any other section titles.
-\"  .PP
-\"  You may add a section entitled "Endorsements", provided it contains
-\"  nothing but endorsements of your Modified Version by various
-\"  parties--for example, statements of peer review or that the text has
-\"  been approved by an organization as the authoritative definition of a
-\"  standard.
-\"  .PP
-\"  You may add a passage of up to five words as a Front-Cover Text, and a
-\"  passage of up to 25 words as a Back-Cover Text, to the end of the list
-\"  of Cover Texts in the Modified Version.  Only one passage of
-\"  Front-Cover Text and one of Back-Cover Text may be added by (or
-\"  through arrangements made by) any one entity.  If the Document already
-\"  includes a cover text for the same cover, previously added by you or
-\"  by arrangement made by the same entity you are acting on behalf of,
-\"  you may not add another; but you may replace the old one, on explicit
-\"  permission from the previous publisher that added the old one.
-\"  .PP
-\"  The author(s) and publisher(s) of the Document do not by this License
-\"  give permission to use their names for publicity for or to assert or
-\"  imply endorsement of any Modified Version.
-\"  .PP
-
-\"  5. COMBINING DOCUMENTS
-\"  .PP
-\"  You may combine the Document with other documents released under this
-\"  License, under the terms defined in section 4 above for modified
-\"  versions, provided that you include in the combination all of the
-\"  Invariant Sections of all of the original documents, unmodified, and
-\"  list them all as Invariant Sections of your combined work in its
-\"  license notice.
-\"  .PP
-\"  The combined work need only contain one copy of this License, and
-\"  multiple identical Invariant Sections may be replaced with a single
-\"  copy.  If there are multiple Invariant Sections with the same name but
-\"  different contents, make the title of each such section unique by
-\"  adding at the end of it, in parentheses, the name of the original
-\"  author or publisher of that section if known, or else a unique number.
-\"  Make the same adjustment to the section titles in the list of
-\"  Invariant Sections in the license notice of the combined work.
-\"  .PP
-\"  In the combination, you must combine any sections entitled "History"
-\"  in the various original documents, forming one section entitled
-\"  "History"; likewise combine any sections entitled "Acknowledgements",
-\"  and any sections entitled "Dedications".  You must delete all sections
-\"  entitled "Endorsements."
-\"  .PP
-
-\"  6. COLLECTIONS OF DOCUMENTS
-\"  .PP
-\"  You may make a collection consisting of the Document and other documents
-\"  released under this License, and replace the individual copies of this
-\"  License in the various documents with a single copy that is included in
-\"  the collection, provided that you follow the rules of this License for
-\"  verbatim copying of each of the documents in all other respects.
-\"  .PP
-\"  You may extract a single document from such a collection, and distribute
-\"  it individually under this License, provided you insert a copy of this
-\"  License into the extracted document, and follow this License in all
-\"  other respects regarding verbatim copying of that document.
-\"  .PP
-
-\"  7. AGGREGATION WITH INDEPENDENT WORKS
-\"  .PP
-\"  A compilation of the Document or its derivatives with other separate
-\"  and independent documents or works, in or on a volume of a storage or
-\"  distribution medium, does not as a whole count as a Modified Version
-\"  of the Document, provided no compilation copyright is claimed for the
-\"  compilation.  Such a compilation is called an "aggregate", and this
-\"  License does not apply to the other self-contained works thus compiled
-\"  with the Document, on account of their being thus compiled, if they
-\"  are not themselves derivative works of the Document.
-\"  .PP
-\"  If the Cover Text requirement of section 3 is applicable to these
-\"  copies of the Document, then if the Document is less than one quarter
-\"  of the entire aggregate, the Document's Cover Texts may be placed on
-\"  covers that surround only the Document within the aggregate.
-\"  Otherwise they must appear on covers around the whole aggregate.
-\"  .PP
-
-\"  8. TRANSLATION
-\"  .PP
-\"  Translation is considered a kind of modification, so you may
-\"  distribute translations of the Document under the terms of section 4.
-\"  Replacing Invariant Sections with translations requires special
-\"  permission from their copyright holders, but you may include
-\"  translations of some or all Invariant Sections in addition to the
-\"  original versions of these Invariant Sections.  You may include a
-\"  translation of this License provided that you also include the
-\"  original English version of this License.  In case of a disagreement
-\"  between the translation and the original English version of this
-\"  License, the original English version will prevail.
-\"  .PP
-
-\"  9. TERMINATION
-\"  .PP
-\"  You may not copy, modify, sublicense, or distribute the Document except
-\"  as expressly provided for under this License.  Any other attempt to
-\"  copy, modify, sublicense or distribute the Document is void, and will
-\"  automatically terminate your rights under this License.  However,
-\"  parties who have received copies, or rights, from you under this
-\"  License will not have their licenses terminated so long as such
-\"  parties remain in full compliance.
-\"  .PP
-
-\"  10. FUTURE REVISIONS OF THIS LICENSE
-\"  .PP
-\"  The Free Software Foundation may publish new, revised versions
-\"  of the GNU Free Documentation License from time to time.  Such new
-\"  versions will be similar in spirit to the present version, but may
-\"  differ in detail to address new problems or concerns.  See
-\"  http://www.gnu.org/copyleft/.
-\"  .PP
-\"  Each version of the License is given a distinguishing version number.
-\"  If the Document specifies that a particular numbered version of this
-\"  License "or any later version" applies to it, you have the option of
-\"  following the terms and conditions either of that specified version or
-\"  of any later version that has been published (not as a draft) by the
-\"  Free Software Foundation.  If the Document does not specify a version
-\"  number of this License, you may choose any version ever published (not
-\"  as a draft) by the Free Software Foundation.
-\"  .PP
-
-\"  ADDENDUM: How to use this License for your documents
-\"  .PP
-\"  To use this License in a document you have written, include a copy of
-\"  the License in the document and put the following copyright and
-\"  license notices just after the title page:
-\"  .PP
-\"      Copyright (c)  YEAR  YOUR NAME.
-\"      Permission is granted to copy, distribute and/or
-\"      modify this document under the terms of the GNU
-\"      Free Documentation License, Version 1.1 or any later
-\"      version published by the Free Software Foundation;
-\"      with the Invariant Sections being LIST THEIR TITLES,
-\"      with the Front-Cover Texts being LIST, and with the
-\"      Back-Cover Texts being LIST.  A copy of the license
-\"      is included in the section entitled "GNU Free
-\"      Documentation License".
-\"  .PP
-\"  If you have no Invariant Sections, write "with no Invariant Sections"
-\"  instead of saying which ones are invariant.  If you have no
-\"  Front-Cover Texts, write "no Front-Cover Texts" instead of
-\"  "Front-Cover Texts being LIST"; likewise for Back-Cover Texts.
-\"  .PP
-\"  If your document contains nontrivial examples of program code, we
-\"  recommend releasing these examples in parallel under your choice of
-\"  free software license, such as the GNU General Public License,
-\"  to permit their use in free software.
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/nm.1 binutils-2.11.2-m68hc1x/binutils/nm.1
--- binutils-2.11.2/binutils/nm.1	Tue Nov 28 21:40:34 2000
+++ binutils-2.11.2-m68hc1x/binutils/nm.1	Fri Sep 21 22:11:27 2001
@@ -1,588 +1,415 @@
-.\" Copyright (c) 1991, 2000 Free Software Foundation
-.\" See section COPYING for conditions for redistribution
-.TH nm 1 "5 November 1991" "Free Software Foundation" "GNU Development Tools"
-.de BP
-.sp
-.ti \-.2i
-\(**
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:09:40 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
 ..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
 
-.SH NAME
-nm \- list symbols from object files.
-
-.SH SYNOPSIS
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
 .hy 0
-.na
-.TP
-.B nm
-.RB "[\|" \-a | \-\-debug\-syms "\|]" 
-.RB "[\|" \-g | \-\-extern\-only "\|]"
-.RB "[\|" \-B "\|]"  
-.RB "[\|" \-C | \-\-demangle "\|]" 
-.RB "[\|" \-D | \-\-dynamic "\|]" 
-.RB "[\|" \-s | \-\-print\-armap "\|]" 
-.RB "[\|" \-o | \-\-print\-file\-name "\|]"  
-.RB "[\|" \-n | \-\-numeric\-sort "\|]" 
-.RB "[\|" \-p | \-\-no\-sort "\|]"
-.RB "[\|" \-r | \-\-reverse\-sort "\|]" 
-.RB "[\|" \-\-size\-sort "\|]" 
-.RB "[\|" \-u | \-\-undefined\-only "\|]"  
-.RB "[\|" \-l | \-\-line\-numbers "\|]"
-.RB "[\|" \-\-help "\|]"  
-.RB "[\|" \-\-version "\|]"  
-.RB "[\|" "\-t \fIradix" | \-\-radix=\fIradix "\|]"
-.RB "[\|" \-P | --portability "\|]"
-.RB "[\|" "\-f \fIformat" | \-\-format=\fIformat "\|]"
-.RB "[\|" "\-\-target=\fIbfdname" "\|]"
-.RB "[\|" \c
-.I objfile\c
-\&.\|.\|.\|]
-.ad b
-.hy 1
-.SH DESCRIPTION
-GNU \c
-.B nm\c
-\& lists the symbols from object files \c
-.I objfile\c
-\&.  If no object files are given as arguments, \c
-.B nm\c
-\& assumes `\|\c
-.B a.out\c
-\|'.
-
-.SH OPTIONS
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "NM 1"
+.TH NM 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
+.UC
+.SH "NAME"
+nm \- list symbols from object files
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+nm [\fB\-a\fR|\fB\*(--debug-syms\fR] [\fB\-g\fR|\fB\*(--extern-only\fR]
+   [\fB\-B\fR] [\fB\-C\fR|\fB\*(--demangle\fR[=\fIstyle\fR]] [\fB\-D\fR|\fB\*(--dynamic\fR]
+   [\fB\-s\fR|\fB\*(--print-armap\fR] [\fB\-A\fR|\fB\-o\fR|\fB\*(--print-file-name\fR]
+   [\fB\-n\fR|\fB\-v\fR|\fB\*(--numeric-sort\fR] [\fB\-p\fR|\fB\*(--no-sort\fR]
+   [\fB\-r\fR|\fB\*(--reverse-sort\fR] [\fB\*(--size-sort\fR] [\fB\-u\fR|\fB\*(--undefined-only\fR]
+   [\fB\-t\fR \fIradix\fR|\fB\*(--radix=\fR\fIradix\fR] [\fB\-P\fR|\fB\*(--portability\fR]
+   [\fB\*(--target=\fR\fIbfdname\fR] [\fB\-f\fR\fIformat\fR|\fB\*(--format=\fR\fIformat\fR]
+   [\fB\*(--defined-only\fR] [\fB\-l\fR|\fB\*(--line-numbers\fR] [\fB\*(--no-demangle\fR]
+   [\fB\-V\fR|\fB\*(--version\fR] [\fB\-X 32_64\fR] [\fB\*(--help\fR]  [\fIobjfile\fR...]
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\s-1GNU\s0 \fBnm\fR lists the symbols from object files \fIobjfile\fR....
+If no object files are listed as arguments, \fBnm\fR assumes the file
+\&\fIa.out\fR.
+.PP
+For each symbol, \fBnm\fR shows:
+.IP "\(bu" 4
+The symbol value, in the radix selected by options (see below), or
+hexadecimal by default.
+.IP "\(bu" 4
+The symbol type.  At least the following types are used; others are, as
+well, depending on the object file format.  If lowercase, the symbol is
+local; if uppercase, the symbol is global (external).
+.RS 4
+.if n .IP """A""" 4
+.el .IP "\f(CWA\fR" 4
+.IX Item "A"
+The symbol's value is absolute, and will not be changed by further
+linking.
+.if n .IP """B""" 4
+.el .IP "\f(CWB\fR" 4
+.IX Item "B"
+The symbol is in the uninitialized data section (known as \s-1BSS\s0).
+.if n .IP """C""" 4
+.el .IP "\f(CWC\fR" 4
+.IX Item "C"
+The symbol is common.  Common symbols are uninitialized data.  When
+linking, multiple common symbols may appear with the same name.  If the
+symbol is defined anywhere, the common symbols are treated as undefined
+references.
+.if n .IP """D""" 4
+.el .IP "\f(CWD\fR" 4
+.IX Item "D"
+The symbol is in the initialized data section.
+.if n .IP """G""" 4
+.el .IP "\f(CWG\fR" 4
+.IX Item "G"
+The symbol is in an initialized data section for small objects.  Some
+object file formats permit more efficient access to small data objects,
+such as a global int variable as opposed to a large global array.
+.if n .IP """I""" 4
+.el .IP "\f(CWI\fR" 4
+.IX Item "I"
+The symbol is an indirect reference to another symbol.  This is a \s-1GNU\s0
+extension to the a.out object file format which is rarely used.
+.if n .IP """N""" 4
+.el .IP "\f(CWN\fR" 4
+.IX Item "N"
+The symbol is a debugging symbol.
+.if n .IP """R""" 4
+.el .IP "\f(CWR\fR" 4
+.IX Item "R"
+The symbol is in a read only data section.
+.if n .IP """S""" 4
+.el .IP "\f(CWS\fR" 4
+.IX Item "S"
+The symbol is in an uninitialized data section for small objects.
+.if n .IP """T""" 4
+.el .IP "\f(CWT\fR" 4
+.IX Item "T"
+The symbol is in the text (code) section.
+.if n .IP """U""" 4
+.el .IP "\f(CWU\fR" 4
+.IX Item "U"
+The symbol is undefined.
+.if n .IP """V""" 4
+.el .IP "\f(CWV\fR" 4
+.IX Item "V"
+The symbol is a weak object.  When a weak defined symbol is linked with
+a normal defined symbol, the normal defined symbol is used with no error.
+When a weak undefined symbol is linked and the symbol is not defined,
+the value of the weak symbol becomes zero with no error.
+.if n .IP """W""" 4
+.el .IP "\f(CWW\fR" 4
+.IX Item "W"
+The symbol is a weak symbol that has not been specifically tagged as a
+weak object symbol.  When a weak defined symbol is linked with a normal
+defined symbol, the normal defined symbol is used with no error.
+When a weak undefined symbol is linked and the symbol is not defined,
+the value of the weak symbol becomes zero with no error.
+.if n .IP """\-""" 4
+.el .IP "\f(CW\-\fR" 4
+.IX Item "-"
+The symbol is a stabs symbol in an a.out object file.  In this case, the
+next values printed are the stabs other field, the stabs desc field, and
+the stab type.  Stabs symbols are used to hold debugging information.
+The symbol type is unknown, or object file format specific.
+.RE
+.RS 4
+.RE
+.IP "\(bu" 4
+The symbol name.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
 The long and short forms of options, shown here as alternatives, are
 equivalent.
-
-.TP
-.B \-A
-.TP
-.B \-o
-.TP
-.B \-\-print\-file\-name 
-Precede each symbol by the name of the input file where it was found,
-rather than identifying the input file once only before all of its
-symbols. 
-
-.TP
-.B \-a
-.TP
-.B \-\-debug\-syms 
-Display debugger-only symbols; normally these are not listed.
-
-.TP
-.B \-B
-The same as
-.B \-\-format=bsd
-(for compatibility with the MIPS \fBnm\fP).
-
-.TP
-.B \-C
-.TP
-.B \-\-demangle
-Decode (\fIdemangle\fP) low-level symbol names into user-level names.
+.IP "\fB\-A\fR" 4
+.IX Item "-A"
+.PD 0
+.IP "\fB\-o\fR" 4
+.IX Item "-o"
+.IP "\fB\*(--print-file-name\fR" 4
+.IX Item "print-file-name"
+.PD
+Precede each symbol by the name of the input file (or archive member)
+in which it was found, rather than identifying the input file once only,
+before all of its symbols.
+.IP "\fB\-a\fR" 4
+.IX Item "-a"
+.PD 0
+.IP "\fB\*(--debug-syms\fR" 4
+.IX Item "debug-syms"
+.PD
+Display all symbols, even debugger-only symbols; normally these are not
+listed.
+.IP "\fB\-B\fR" 4
+.IX Item "-B"
+The same as \fB\*(--format=bsd\fR (for compatibility with the \s-1MIPS\s0 \fBnm\fR).
+.IP "\fB\-C\fR" 4
+.IX Item "-C"
+.PD 0
+.IP "\fB\*(--demangle[=\fR\fIstyle\fR\fB]\fR" 4
+.IX Item "demangle[=style]"
+.PD
+Decode (\fIdemangle\fR) low-level symbol names into user-level names.
 Besides removing any initial underscore prepended by the system, this
-makes C++ function names readable.
-
-.TP
-.B \-D
-.TP
-.B \-\-dynamic
+makes \*(C+ function names readable. Different compilers have different
+mangling styles. The optional demangling style argument can be used to 
+choose an appropriate demangling style for your compiler. 
+.IP "\fB\*(--no-demangle\fR" 4
+.IX Item "no-demangle"
+Do not demangle low-level symbol names.  This is the default.
+.IP "\fB\-D\fR" 4
+.IX Item "-D"
+.PD 0
+.IP "\fB\*(--dynamic\fR" 4
+.IX Item "dynamic"
+.PD
 Display the dynamic symbols rather than the normal symbols.  This is
 only meaningful for dynamic objects, such as certain types of shared
 libraries.
-
-.TP
-.B "\-f \fIformat"
-Use the output format \fIformat\fP, which can be ``bsd'',
-``sysv'', or ``posix''.  The default is ``bsd''.
-Only the first character of \fIformat\fP is significant; it can be
+.IP "\fB\-f\fR \fIformat\fR" 4
+.IX Item "-f format"
+.PD 0
+.IP "\fB\*(--format=\fR\fIformat\fR" 4
+.IX Item "format=format"
+.PD
+Use the output format \fIformat\fR, which can be \f(CW\*(C`bsd\*(C'\fR,
+\&\f(CW\*(C`sysv\*(C'\fR, or \f(CW\*(C`posix\*(C'\fR.  The default is \f(CW\*(C`bsd\*(C'\fR.
+Only the first character of \fIformat\fR is significant; it can be
 either upper or lower case.
-
-.TP
-.B \-g
-.TP
-.B \-\-extern\-only 
+.IP "\fB\-g\fR" 4
+.IX Item "-g"
+.PD 0
+.IP "\fB\*(--extern-only\fR" 4
+.IX Item "extern-only"
+.PD
 Display only external symbols.
-
-.TP
-.B \-n
-.TP
-.B \-v
-.TP
-.B \-\-numeric\-sort 
-Sort symbols numerically by their addresses, not alphabetically by their
-names. 
-
-.TP
-.B \-p
-.TP
-.B \-\-no\-sort 
-Don't bother to sort the symbols in any order; just print them in the
-order encountered.
-
-.TP
-.B \-P
-.TP
-.B \-\-portability
-Use the POSIX.2 standard output format instead of the default format.
-Equivalent to ``\-f posix''.
-
-.TP
-.B \-s
-.TP
-.B \-\-print\-armap
+.IP "\fB\-l\fR" 4
+.IX Item "-l"
+.PD 0
+.IP "\fB\*(--line-numbers\fR" 4
+.IX Item "line-numbers"
+.PD
+For each symbol, use debugging information to try to find a filename and
+line number.  For a defined symbol, look for the line number of the
+address of the symbol.  For an undefined symbol, look for the line
+number of a relocation entry which refers to the symbol.  If line number
+information can be found, print it after the other symbol information.
+.IP "\fB\-n\fR" 4
+.IX Item "-n"
+.PD 0
+.IP "\fB\-v\fR" 4
+.IX Item "-v"
+.IP "\fB\*(--numeric-sort\fR" 4
+.IX Item "numeric-sort"
+.PD
+Sort symbols numerically by their addresses, rather than alphabetically
+by their names. 
+.IP "\fB\-p\fR" 4
+.IX Item "-p"
+.PD 0
+.IP "\fB\*(--no-sort\fR" 4
+.IX Item "no-sort"
+.PD
+Do not bother to sort the symbols in any order; print them in the order
+encountered.
+.IP "\fB\-P\fR" 4
+.IX Item "-P"
+.PD 0
+.IP "\fB\*(--portability\fR" 4
+.IX Item "portability"
+.PD
+Use the \s-1POSIX\s0.2 standard output format instead of the default format.
+Equivalent to \fB\-f posix\fR.
+.IP "\fB\-s\fR" 4
+.IX Item "-s"
+.PD 0
+.IP "\fB\*(--print-armap\fR" 4
+.IX Item "print-armap"
+.PD
 When listing symbols from archive members, include the index: a mapping
-(stored in the archive by \c
-.B ar\c
-\& or \c
-.B ranlib\c
-\&) of what modules
-contain definitions for what names.
-
-.TP
-.B \-r
-.TP
-.B \-\-reverse\-sort 
-Reverse the sense of the sort (whether numeric or alphabetic); let the
+(stored in the archive by \fBar\fR or \fBranlib\fR) of which modules
+contain definitions for which names.
+.IP "\fB\-r\fR" 4
+.IX Item "-r"
+.PD 0
+.IP "\fB\*(--reverse-sort\fR" 4
+.IX Item "reverse-sort"
+.PD
+Reverse the order of the sort (whether numeric or alphabetic); let the
 last come first.
-
-.TP
-.B \-\-size\-sort 
+.IP "\fB\*(--size-sort\fR" 4
+.IX Item "size-sort"
 Sort symbols by size.  The size is computed as the difference between
 the value of the symbol and the value of the symbol with the next higher
 value.  The size of the symbol is printed, rather than the value.
-
-.TP
-.B "\-t \fIradix"
-.TP
-.B "\-\-radix=\fIradix"
-Use \fIradix\fP as the radix for printing the symbol values.  It must be
-``d'' for decimal, ``o'' for octal, or ``x'' for hexadecimal.
-
-.TP
-.BI "\-\-target=" "bfdname"
+.IP "\fB\-t\fR \fIradix\fR" 4
+.IX Item "-t radix"
+.PD 0
+.IP "\fB\*(--radix=\fR\fIradix\fR" 4
+.IX Item "radix=radix"
+.PD
+Use \fIradix\fR as the radix for printing the symbol values.  It must be
+\&\fBd\fR for decimal, \fBo\fR for octal, or \fBx\fR for hexadecimal.
+.IP "\fB\*(--target=\fR\fIbfdname\fR" 4
+.IX Item "target=bfdname"
 Specify an object code format other than your system's default format.
-See 
-.BR objdump ( 1 ),
-for information on listing available formats.
-
-.TP
-.B \-u
-.TP
-.B \-\-undefined\-only 
+.IP "\fB\-u\fR" 4
+.IX Item "-u"
+.PD 0
+.IP "\fB\*(--undefined-only\fR" 4
+.IX Item "undefined-only"
+.PD
 Display only undefined symbols (those external to each object file).
-
-.TP
-.B \-l
-.TP
-.B \-\-line\-numbers
-For each symbol, use debugging information to try to find a filename and
-line number.  For a defined symbol, look for the line number of the
-address of the symbol.  For an undefined symbol, look for the line
-number of a relocation entry which refers to the symbol.  If line number
-information can be found, print it after the other symbol information.
-
-.TP
-.B \-V
-.TP
-.B \-\-version
-Show the version number of
-.B nm
-and exit.
-
-.TP
-.B \-\-help
-Show a summary of the options to
-.B nm
-and exit.
-
+.IP "\fB\*(--defined-only\fR" 4
+.IX Item "defined-only"
+Display only defined symbols for each object file.
+.IP "\fB\-V\fR" 4
+.IX Item "-V"
+.PD 0
+.IP "\fB\*(--version\fR" 4
+.IX Item "version"
+.PD
+Show the version number of \fBnm\fR and exit.
+.IP "\fB\-X\fR" 4
+.IX Item "-X"
+This option is ignored for compatibility with the \s-1AIX\s0 version of
+\&\fBnm\fR.  It takes one parameter which must be the string
+\&\fB32_64\fR.  The default mode of \s-1AIX\s0 \fBnm\fR corresponds
+to \fB\-X 32\fR, which is not supported by \s-1GNU\s0 \fBnm\fR.
+.IP "\fB\*(--help\fR" 4
+.IX Item "help"
+Show a summary of the options to \fBnm\fR and exit.
 .SH "SEE ALSO"
-.RB "`\|" binutils "\|'"
-entry in 
-.B
-info\c
-\&; 
-.I
-The GNU Binary Utilities\c
-\&, Roland H. Pesch (October 1991);
-.BR ar "(" 1 "),"
-.BR objdump ( 1 ),
-.BR ranlib "(" 1 ")."
-
-
-.SH COPYING
-Copyright (c) 1991, 2000 Free Software Foundation, Inc.
+.IX Header "SEE ALSO"
+\&\fIar\fR\|(1), \fIobjdump\fR\|(1), \fIranlib\fR\|(1), and the Info entries for \fIbinutils\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
 .PP
-This document is distributed under the terms of the GNU Free
-Documentation License, version 1.1.  That license is described in the
-sources for this manual page, but it is not displayed here in order to
-make this manual more consise.  Copies of this license can also be
-obtained from: http://www.gnu.org/copyleft/.
-
-\"  .SH GNU Free Documentation License
-\"    Version 1.1, March 2000
-
-\"    Copyright (C) 2000  Free Software Foundation, Inc.
-\"    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-     
-\"    Everyone is permitted to copy and distribute verbatim
-\"    copies of this license document, but changing it is
-\"    not allowed.
-\"  .PP
-\"  0. PREAMBLE
-\"  .PP
-\"  The purpose of this License is to make a manual, textbook, or other
-\"  written document "free" in the sense of freedom: to assure everyone
-\"  the effective freedom to copy and redistribute it, with or without
-\"  modifying it, either commercially or noncommercially.  Secondarily,
-\"  this License preserves for the author and publisher a way to get
-\"  credit for their work, while not being considered responsible for
-\"  modifications made by others.
-\"  .PP
-\"  This License is a kind of "copyleft", which means that derivative
-\"  works of the document must themselves be free in the same sense.  It
-\"  complements the GNU General Public License, which is a copyleft
-\"  license designed for free software.
-\"  .PP
-\"  We have designed this License in order to use it for manuals for free
-\"  software, because free software needs free documentation: a free
-\"  program should come with manuals providing the same freedoms that the
-\"  software does.  But this License is not limited to software manuals;
-\"  it can be used for any textual work, regardless of subject matter or
-\"  whether it is published as a printed book.  We recommend this License
-\"  principally for works whose purpose is instruction or reference.
-\"  .PP
-\"  1. APPLICABILITY AND DEFINITIONS
-\"  .PP
-\"  This License applies to any manual or other work that contains a
-\"  notice placed by the copyright holder saying it can be distributed
-\"  under the terms of this License.  The "Document", below, refers to any
-\"  such manual or work.  Any member of the public is a licensee, and is
-\"  addressed as "you".
-\"  .PP
-\"  A "Modified Version" of the Document means any work containing the
-\"  Document or a portion of it, either copied verbatim, or with
-\"  modifications and/or translated into another language.
-\"  .PP
-\"  A "Secondary Section" is a named appendix or a front-matter section of
-\"  the Document that deals exclusively with the relationship of the
-\"  publishers or authors of the Document to the Document's overall subject
-\"  (or to related matters) and contains nothing that could fall directly
-\"  within that overall subject.  (For example, if the Document is in part a
-\"  textbook of mathematics, a Secondary Section may not explain any
-\"  mathematics.)  The relationship could be a matter of historical
-\"  connection with the subject or with related matters, or of legal,
-\"  commercial, philosophical, ethical or political position regarding
-\"  them.
-\"  .PP
-\"  The "Invariant Sections" are certain Secondary Sections whose titles
-\"  are designated, as being those of Invariant Sections, in the notice
-\"  that says that the Document is released under this License.
-\"  .PP
-\"  The "Cover Texts" are certain short passages of text that are listed,
-\"  as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-\"  the Document is released under this License.
-\"  .PP
-\"  A "Transparent" copy of the Document means a machine-readable copy,
-\"  represented in a format whose specification is available to the
-\"  general public, whose contents can be viewed and edited directly and
-\"  straightforwardly with generic text editors or (for images composed of
-\"  pixels) generic paint programs or (for drawings) some widely available
-\"  drawing editor, and that is suitable for input to text formatters or
-\"  for automatic translation to a variety of formats suitable for input
-\"  to text formatters.  A copy made in an otherwise Transparent file
-\"  format whose markup has been designed to thwart or discourage
-\"  subsequent modification by readers is not Transparent.  A copy that is
-\"  not "Transparent" is called "Opaque".
-\"  .PP
-\"  Examples of suitable formats for Transparent copies include plain
-\"  ASCII without markup, Texinfo input format, LaTeX input format, SGML
-\"  or XML using a publicly available DTD, and standard-conforming simple
-\"  HTML designed for human modification.  Opaque formats include
-\"  PostScript, PDF, proprietary formats that can be read and edited only
-\"  by proprietary word processors, SGML or XML for which the DTD and/or
-\"  processing tools are not generally available, and the
-\"  machine-generated HTML produced by some word processors for output
-\"  purposes only.
-\"  .PP
-\"  The "Title Page" means, for a printed book, the title page itself,
-\"  plus such following pages as are needed to hold, legibly, the material
-\"  this License requires to appear in the title page.  For works in
-\"  formats which do not have any title page as such, "Title Page" means
-\"  the text near the most prominent appearance of the work's title,
-\"  preceding the beginning of the body of the text.
-\"  .PP
-\"  2. VERBATIM COPYING
-\"  .PP
-\"  You may copy and distribute the Document in any medium, either
-\"  commercially or noncommercially, provided that this License, the
-\"  copyright notices, and the license notice saying this License applies
-\"  to the Document are reproduced in all copies, and that you add no other
-\"  conditions whatsoever to those of this License.  You may not use
-\"  technical measures to obstruct or control the reading or further
-\"  copying of the copies you make or distribute.  However, you may accept
-\"  compensation in exchange for copies.  If you distribute a large enough
-\"  number of copies you must also follow the conditions in section 3.
-\"  .PP
-\"  You may also lend copies, under the same conditions stated above, and
-\"  you may publicly display copies.
-\"  .PP
-\"  3. COPYING IN QUANTITY
-\"  .PP
-\"  If you publish printed copies of the Document numbering more than 100,
-\"  and the Document's license notice requires Cover Texts, you must enclose
-\"  the copies in covers that carry, clearly and legibly, all these Cover
-\"  Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-\"  the back cover.  Both covers must also clearly and legibly identify
-\"  you as the publisher of these copies.  The front cover must present
-\"  the full title with all words of the title equally prominent and
-\"  visible.  You may add other material on the covers in addition.
-\"  Copying with changes limited to the covers, as long as they preserve
-\"  the title of the Document and satisfy these conditions, can be treated
-\"  as verbatim copying in other respects.
-\"  .PP
-\"  If the required texts for either cover are too voluminous to fit
-\"  legibly, you should put the first ones listed (as many as fit
-\"  reasonably) on the actual cover, and continue the rest onto adjacent
-\"  pages.
-\"  .PP
-\"  If you publish or distribute Opaque copies of the Document numbering
-\"  more than 100, you must either include a machine-readable Transparent
-\"  copy along with each Opaque copy, or state in or with each Opaque copy
-\"  a publicly-accessible computer-network location containing a complete
-\"  Transparent copy of the Document, free of added material, which the
-\"  general network-using public has access to download anonymously at no
-\"  charge using public-standard network protocols.  If you use the latter
-\"  option, you must take reasonably prudent steps, when you begin
-\"  distribution of Opaque copies in quantity, to ensure that this
-\"  Transparent copy will remain thus accessible at the stated location
-\"  until at least one year after the last time you distribute an Opaque
-\"  copy (directly or through your agents or retailers) of that edition to
-\"  the public.
-\"  .PP
-\"  It is requested, but not required, that you contact the authors of the
-\"  Document well before redistributing any large number of copies, to give
-\"  them a chance to provide you with an updated version of the Document.
-\"  .PP
-\"  4. MODIFICATIONS
-\"  .PP
-\"  You may copy and distribute a Modified Version of the Document under
-\"  the conditions of sections 2 and 3 above, provided that you release
-\"  the Modified Version under precisely this License, with the Modified
-\"  Version filling the role of the Document, thus licensing distribution
-\"  and modification of the Modified Version to whoever possesses a copy
-\"  of it.  In addition, you must do these things in the Modified Version:
-\"  .PP
-\"  A. Use in the Title Page (and on the covers, if any) a title distinct
-\"  from that of the Document, and from those of previous versions
-\"  (which should, if there were any, be listed in the History section
-\"  of the Document).  You may use the same title as a previous version
-\"  if the original publisher of that version gives permission.
-\"  .PP
-\"  B. List on the Title Page, as authors, one or more persons or entities
-\"  responsible for authorship of the modifications in the Modified
-\"  Version, together with at least five of the principal authors of the
-\"  Document (all of its principal authors, if it has less than five).
-\"  .PP
-\"  C. State on the Title page the name of the publisher of the
-\"  Modified Version, as the publisher.
-\"  .PP
-\"  D. Preserve all the copyright notices of the Document.
-\"  .PP
-\"  E. Add an appropriate copyright notice for your modifications
-\"  adjacent to the other copyright notices.
-\"  .PP
-\"  F. Include, immediately after the copyright notices, a license notice
-\"  giving the public permission to use the Modified Version under the
-\"  terms of this License, in the form shown in the Addendum below.
-\"  Preserve in that license notice the full lists of Invariant Sections
-\"  and required Cover Texts given in the Document's license notice.
-\"  .PP
-\"  H. Include an unaltered copy of this License.
-\"  .PP
-\"  I. Preserve the section entitled "History", and its title, and add to
-\"  it an item stating at least the title, year, new authors, and
-\"  publisher of the Modified Version as given on the Title Page.  If
-\"  there is no section entitled "History" in the Document, create one
-\"  stating the title, year, authors, and publisher of the Document as
-\"  given on its Title Page, then add an item describing the Modified
-\"  Version as stated in the previous sentence.
-\"  .PP
-\"  J. Preserve the network location, if any, given in the Document for
-\"  public access to a Transparent copy of the Document, and likewise
-\"  the network locations given in the Document for previous versions
-\"  it was based on.  These may be placed in the "History" section.
-\"  You may omit a network location for a work that was published at
-\"  least four years before the Document itself, or if the original
-\"  publisher of the version it refers to gives permission.
-\"  .PP
-\"  K. In any section entitled "Acknowledgements" or "Dedications",
-\"  preserve the section's title, and preserve in the section all the
-\"  substance and tone of each of the contributor acknowledgements
-\"  and/or dedications given therein.
-\"  .PP
-\"  L. Preserve all the Invariant Sections of the Document,
-\"  unaltered in their text and in their titles.  Section numbers
-\"  or the equivalent are not considered part of the section titles.
-\"  .PP
-\"  M. Delete any section entitled "Endorsements".  Such a section
-\"  may not be included in the Modified Version.
-\"  .PP
-\"  N. Do not retitle any existing section as "Endorsements"
-\"  or to conflict in title with any Invariant Section.
-\"  .PP
-\"  If the Modified Version includes new front-matter sections or
-\"  appendices that qualify as Secondary Sections and contain no material
-\"  copied from the Document, you may at your option designate some or all
-\"  of these sections as invariant.  To do this, add their titles to the
-\"  list of Invariant Sections in the Modified Version's license notice.
-\"  These titles must be distinct from any other section titles.
-\"  .PP
-\"  You may add a section entitled "Endorsements", provided it contains
-\"  nothing but endorsements of your Modified Version by various
-\"  parties--for example, statements of peer review or that the text has
-\"  been approved by an organization as the authoritative definition of a
-\"  standard.
-\"  .PP
-\"  You may add a passage of up to five words as a Front-Cover Text, and a
-\"  passage of up to 25 words as a Back-Cover Text, to the end of the list
-\"  of Cover Texts in the Modified Version.  Only one passage of
-\"  Front-Cover Text and one of Back-Cover Text may be added by (or
-\"  through arrangements made by) any one entity.  If the Document already
-\"  includes a cover text for the same cover, previously added by you or
-\"  by arrangement made by the same entity you are acting on behalf of,
-\"  you may not add another; but you may replace the old one, on explicit
-\"  permission from the previous publisher that added the old one.
-\"  .PP
-\"  The author(s) and publisher(s) of the Document do not by this License
-\"  give permission to use their names for publicity for or to assert or
-\"  imply endorsement of any Modified Version.
-\"  .PP
-
-\"  5. COMBINING DOCUMENTS
-\"  .PP
-\"  You may combine the Document with other documents released under this
-\"  License, under the terms defined in section 4 above for modified
-\"  versions, provided that you include in the combination all of the
-\"  Invariant Sections of all of the original documents, unmodified, and
-\"  list them all as Invariant Sections of your combined work in its
-\"  license notice.
-\"  .PP
-\"  The combined work need only contain one copy of this License, and
-\"  multiple identical Invariant Sections may be replaced with a single
-\"  copy.  If there are multiple Invariant Sections with the same name but
-\"  different contents, make the title of each such section unique by
-\"  adding at the end of it, in parentheses, the name of the original
-\"  author or publisher of that section if known, or else a unique number.
-\"  Make the same adjustment to the section titles in the list of
-\"  Invariant Sections in the license notice of the combined work.
-\"  .PP
-\"  In the combination, you must combine any sections entitled "History"
-\"  in the various original documents, forming one section entitled
-\"  "History"; likewise combine any sections entitled "Acknowledgements",
-\"  and any sections entitled "Dedications".  You must delete all sections
-\"  entitled "Endorsements."
-\"  .PP
-
-\"  6. COLLECTIONS OF DOCUMENTS
-\"  .PP
-\"  You may make a collection consisting of the Document and other documents
-\"  released under this License, and replace the individual copies of this
-\"  License in the various documents with a single copy that is included in
-\"  the collection, provided that you follow the rules of this License for
-\"  verbatim copying of each of the documents in all other respects.
-\"  .PP
-\"  You may extract a single document from such a collection, and distribute
-\"  it individually under this License, provided you insert a copy of this
-\"  License into the extracted document, and follow this License in all
-\"  other respects regarding verbatim copying of that document.
-\"  .PP
-
-\"  7. AGGREGATION WITH INDEPENDENT WORKS
-\"  .PP
-\"  A compilation of the Document or its derivatives with other separate
-\"  and independent documents or works, in or on a volume of a storage or
-\"  distribution medium, does not as a whole count as a Modified Version
-\"  of the Document, provided no compilation copyright is claimed for the
-\"  compilation.  Such a compilation is called an "aggregate", and this
-\"  License does not apply to the other self-contained works thus compiled
-\"  with the Document, on account of their being thus compiled, if they
-\"  are not themselves derivative works of the Document.
-\"  .PP
-\"  If the Cover Text requirement of section 3 is applicable to these
-\"  copies of the Document, then if the Document is less than one quarter
-\"  of the entire aggregate, the Document's Cover Texts may be placed on
-\"  covers that surround only the Document within the aggregate.
-\"  Otherwise they must appear on covers around the whole aggregate.
-\"  .PP
-
-\"  8. TRANSLATION
-\"  .PP
-\"  Translation is considered a kind of modification, so you may
-\"  distribute translations of the Document under the terms of section 4.
-\"  Replacing Invariant Sections with translations requires special
-\"  permission from their copyright holders, but you may include
-\"  translations of some or all Invariant Sections in addition to the
-\"  original versions of these Invariant Sections.  You may include a
-\"  translation of this License provided that you also include the
-\"  original English version of this License.  In case of a disagreement
-\"  between the translation and the original English version of this
-\"  License, the original English version will prevail.
-\"  .PP
-
-\"  9. TERMINATION
-\"  .PP
-\"  You may not copy, modify, sublicense, or distribute the Document except
-\"  as expressly provided for under this License.  Any other attempt to
-\"  copy, modify, sublicense or distribute the Document is void, and will
-\"  automatically terminate your rights under this License.  However,
-\"  parties who have received copies, or rights, from you under this
-\"  License will not have their licenses terminated so long as such
-\"  parties remain in full compliance.
-\"  .PP
-
-\"  10. FUTURE REVISIONS OF THIS LICENSE
-\"  .PP
-\"  The Free Software Foundation may publish new, revised versions
-\"  of the GNU Free Documentation License from time to time.  Such new
-\"  versions will be similar in spirit to the present version, but may
-\"  differ in detail to address new problems or concerns.  See
-\"  http://www.gnu.org/copyleft/.
-\"  .PP
-\"  Each version of the License is given a distinguishing version number.
-\"  If the Document specifies that a particular numbered version of this
-\"  License "or any later version" applies to it, you have the option of
-\"  following the terms and conditions either of that specified version or
-\"  of any later version that has been published (not as a draft) by the
-\"  Free Software Foundation.  If the Document does not specify a version
-\"  number of this License, you may choose any version ever published (not
-\"  as a draft) by the Free Software Foundation.
-\"  .PP
-
-\"  ADDENDUM: How to use this License for your documents
-\"  .PP
-\"  To use this License in a document you have written, include a copy of
-\"  the License in the document and put the following copyright and
-\"  license notices just after the title page:
-\"  .PP
-\"      Copyright (c)  YEAR  YOUR NAME.
-\"      Permission is granted to copy, distribute and/or
-\"      modify this document under the terms of the GNU
-\"      Free Documentation License, Version 1.1 or any later
-\"      version published by the Free Software Foundation;
-\"      with the Invariant Sections being LIST THEIR TITLES,
-\"      with the Front-Cover Texts being LIST, and with the
-\"      Back-Cover Texts being LIST.  A copy of the license
-\"      is included in the section entitled "GNU Free
-\"      Documentation License".
-\"  .PP
-\"  If you have no Invariant Sections, write "with no Invariant Sections"
-\"  instead of saying which ones are invariant.  If you have no
-\"  Front-Cover Texts, write "no Front-Cover Texts" instead of
-\"  "Front-Cover Texts being LIST"; likewise for Back-Cover Texts.
-\"  .PP
-\"  If your document contains nontrivial examples of program code, we
-\"  recommend releasing these examples in parallel under your choice of
-\"  free software license, such as the GNU General Public License,
-\"  to permit their use in free software.
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/objcopy.1 binutils-2.11.2-m68hc1x/binutils/objcopy.1
--- binutils-2.11.2/binutils/objcopy.1	Fri Sep 21 20:58:39 2001
+++ binutils-2.11.2-m68hc1x/binutils/objcopy.1	Fri Sep 21 22:11:27 2001
@@ -1,8 +1,8 @@
-.\" Automatically generated by Pod::Man version 1.02
-.\" Wed May 30 12:24:28 2001
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:09:40 2001
 .\"
 .\" Standard preamble:
-.\" ======================================================================
+.\" ========================================================================
 .de Sh \" Subsection heading
 .br
 .if t .Sp
@@ -15,12 +15,6 @@
 .if t .sp .5v
 .if n .sp
 ..
-.de Ip \" List item
-.br
-.ie \\n(.$>=3 .ne \\$3
-.el .ne 3
-.IP "\\$1" \\$2
-..
 .de Vb \" Begin verbatim text
 .ft CW
 .nf
@@ -34,9 +28,9 @@
 .\" Set up some character translations and predefined strings.  \*(-- will
 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
 .\" double quote, and \*(R" will give a right double quote.  | will give a
-.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used
-.\" to do unbreakable dashes and therefore won't be available.  \*(C` and
-.\" \*(C' expand to `' in nroff, nothing in troff, for use with C<>
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
 .tr \(*W-|\(bv\*(Tr
 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
 .ie n \{\
@@ -46,8 +40,8 @@
 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
 .    ds L" ""
 .    ds R" ""
-.    ds C` `
-.    ds C' '
+.    ds C` ""
+.    ds C' ""
 'br\}
 .el\{\
 .    ds -- \|\(em\|
@@ -56,25 +50,24 @@
 .    ds R" ''
 'br\}
 .\"
-.\" If the F register is turned on, we'll generate index entries on stderr
-.\" for titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and
-.\" index entries marked with X<> in POD.  Of course, you'll have to process
-.\" the output yourself in some meaningful fashion.
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
 .if \nF \{\
 .    de IX
 .    tm Index:\\$1\t\\n%\t"\\$2"
-.    .
+..
 .    nr % 0
 .    rr F
 .\}
 .\"
-.\" For nroff, turn off justification.  Always turn off hyphenation; it
-.\" makes way too many mistakes in technical documents.
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
 .hy 0
 .\"
 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
-.bd B 3
 .    \" fudge factors for nroff and troff
 .if n \{\
 .    ds #H 0
@@ -134,73 +127,72 @@
 .    ds Ae AE
 .\}
 .rm #[ #] #H #V #F C
-.\" ======================================================================
+.\" ========================================================================
 .\"
-.IX Title "OBJCOPY.1 1"
-.TH OBJCOPY.1 1 "binutils-2.11.90" "2001-05-30" "GNU"
+.IX Title "OBJCOPY 1"
+.TH OBJCOPY 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
 .UC
 .SH "NAME"
 objcopy \- copy and translate object files
 .SH "SYNOPSIS"
 .IX Header "SYNOPSIS"
-objcopy [ \-F \fIbfdname\fR | \-\-target=\fIbfdname\fR ]
-        [ \-I \fIbfdname\fR | \-\-input-target=\fIbfdname\fR ]
-        [ \-O \fIbfdname\fR | \-\-output-target=\fIbfdname\fR ]
-        [ \-B \fIbfdarch\fR | \-\-binary-architecture=\fIbfdarch\fR ]
-        [ \-S | \-\-strip-all ]  [ \-g | \-\-strip-debug ]
-        [ \-K \fIsymbolname\fR | \-\-keep-symbol=\fIsymbolname\fR ]
-        [ \-N \fIsymbolname\fR | \-\-strip-symbol=\fIsymbolname\fR ]
-        [ \-G \fIsymbolname\fR | \-\-keep-global-symbol=\fIsymbolname\fR]
-        [ \-L \fIsymbolname\fR | \-\-localize-symbol=\fIsymbolname\fR ]
-        [ \-W \fIsymbolname\fR | \-\-weaken-symbol=\fIsymbolname\fR ]
-        [ \-x | \-\-discard-all ]  [ \-X | \-\-discard-locals ]
-        [ \-b \fIbyte\fR | \-\-byte=\fIbyte\fR ]
-        [ \-i \fIinterleave\fR | \-\-interleave=\fIinterleave\fR ]
-        [ \-j \fIsectionname\fR | \-\-only-section=\fIsectionname\fR ]
-        [ \-R \fIsectionname\fR | \-\-remove-section=\fIsectionname\fR ]
-        [ \-p | \-\-preserve-dates ] [ \-\-debugging ]
-        [ \-\-gap-fill=\fIval\fR ] [ \-\-pad-to=\fIaddress\fR ]
-        [ \-\-set-start=\fIval\fR ] [ \-\-adjust-start=\fIincr\fR ]
-        [ \-\-change-addresses=\fIincr\fR ]
-        [ \-\-change-section-address \fIsection\fR{=,+,\-}\fIval\fR ]
-        [ \-\-change-section-lma \fIsection\fR{=,+,\-}\fIval\fR ]
-        [ \-\-change-section-vma \fIsection\fR{=,+,\-}\fIval\fR ]
-        [ \-\-change-warnings ] [ \-\-no-change-warnings ]
-        [ \-\-set-section-flags \fIsection\fR=\fIflags\fR ]
-        [ \-\-add-section \fIsectionname\fR=\fIfilename\fR ]
-        [ \-\-change-leading-char ] [ \-\-remove-leading-char ]
-        [ \-\-srec-len=\fIival\fR ] [ \-\-srec-forceS3 ]
-        [ \-\-redefine-sym \fIold\fR=\fInew\fR ] [ \-\-weaken ]
-        [ \-\-keep-symbols=\fIfilename\fR ]
-        [ \-\-strip-symbols=\fIfilename\fR ]
-        [ \-\-keep-global-symbols=\fIfilename\fR ]
-        [ \-\-localize-symbols=\fIfilename\fR ]
-        [ \-\-weaken-symbols=\fIfilename\fR ]
-        [ \-v | \-\-verbose ] [ \-V | \-\-version ]  [ \-\-help ]
+objcopy [\fB\-F\fR \fIbfdname\fR|\fB\*(--target=\fR\fIbfdname\fR]
+        [\fB\-I\fR \fIbfdname\fR|\fB\*(--input-target=\fR\fIbfdname\fR]
+        [\fB\-O\fR \fIbfdname\fR|\fB\*(--output-target=\fR\fIbfdname\fR]
+        [\fB\-S\fR|\fB\*(--strip-all\fR] [\fB\-g\fR|\fB\*(--strip-debug\fR]
+        [\fB\-K\fR \fIsymbolname\fR|\fB\*(--keep-symbol=\fR\fIsymbolname\fR]
+        [\fB\-N\fR \fIsymbolname\fR|\fB\*(--strip-symbol=\fR\fIsymbolname\fR]
+        [\fB\-G\fR \fIsymbolname\fR|\fB\*(--keep-global-symbol=\fR\fIsymbolname\fR]
+        [\fB\-L\fR \fIsymbolname\fR|\fB\*(--localize-symbol=\fR\fIsymbolname\fR]
+        [\fB\-W\fR \fIsymbolname\fR|\fB\*(--weaken-symbol=\fR\fIsymbolname\fR]
+        [\fB\-x\fR|\fB\*(--discard-all\fR] [\fB\-X\fR|\fB\*(--discard-locals\fR]
+        [\fB\-b\fR \fIbyte\fR|\fB\*(--byte=\fR\fIbyte\fR]
+        [\fB\-i\fR \fIinterleave\fR|\fB\*(--interleave=\fR\fIinterleave\fR]
+        [\fB\-j\fR \fIsectionname\fR|\fB\*(--only-section=\fR\fIsectionname\fR]
+        [\fB\-R\fR \fIsectionname\fR|\fB\*(--remove-section=\fR\fIsectionname\fR]
+        [\fB\-p\fR|\fB\*(--preserve-dates\fR] [\fB\*(--debugging\fR]
+        [\fB\*(--gap-fill=\fR\fIval\fR] [\fB\*(--pad-to=\fR\fIaddress\fR]
+        [\fB\*(--set-start=\fR\fIval\fR] [\fB\*(--adjust-start=\fR\fIincr\fR]
+        [\fB\*(--change-addresses=\fR\fIincr\fR]
+        [\fB\*(--change-section-address\fR \fIsection\fR{=,+,\-}\fIval\fR]
+        [\fB\*(--change-section-lma\fR \fIsection\fR{=,+,\-}\fIval\fR]
+        [\fB\*(--change-section-vma\fR \fIsection\fR{=,+,\-}\fIval\fR]
+        [\fB\*(--change-warnings\fR] [\fB\*(--no-change-warnings\fR]
+        [\fB\*(--set-section-flags\fR \fIsection\fR=\fIflags\fR]
+        [\fB\*(--add-section\fR \fIsectionname\fR=\fIfilename\fR]
+        [\fB\*(--change-leading-char\fR] [\fB\*(--remove-leading-char\fR]
+        [\fB\*(--srec-len=\fR\fIival\fR ] [\fB\*(--srec-forceS3\fR]
+        [\fB\*(--redefine-sym\fR \fIold\fR=\fInew\fR ] [\fB\*(--weaken\fR]
+        [\fB\*(--keep-symbols=\fR\fIfilename\fR]
+        [\fB\*(--strip-symbols=\fR\fIfilename\fR]
+        [\fB\*(--keep-global-symbols=\fR\fIfilename\fR]
+        [\fB\*(--localize-symbols=\fR\fIfilename\fR]
+        [\fB\*(--weaken-symbols=\fR\fIfilename\fR]
+        [\fB\-v\fR|\fB\*(--verbose\fR] [\fB\-V\fR|\fB\*(--version\fR] [\fB\*(--help\fR]
         \fIinfile\fR [\fIoutfile\fR]
 .SH "DESCRIPTION"
 .IX Header "DESCRIPTION"
-The \s-1GNU\s0 \f(CW\*(C`objcopy\*(C'\fR utility copies the contents of an object
-file to another.  \f(CW\*(C`objcopy\*(C'\fR uses the \s-1GNU\s0 \s-1BFD\s0 Library to
+The \s-1GNU\s0 \fBobjcopy\fR utility copies the contents of an object
+file to another.  \fBobjcopy\fR uses the \s-1GNU\s0 \s-1BFD\s0 Library to
 read and write the object files.  It can write the destination object
 file in a format different from that of the source object file.  The
-exact behavior of \f(CW\*(C`objcopy\*(C'\fR is controlled by command-line options.
-Note that \f(CW\*(C`objcopy\*(C'\fR should be able to copy a fully linked file
+exact behavior of \fBobjcopy\fR is controlled by command-line options.
+Note that \fBobjcopy\fR should be able to copy a fully linked file
 between any two formats. However, copying a relocatable object file
 between any two formats may not work as expected.
 .PP
-\&\f(CW\*(C`objcopy\*(C'\fR creates temporary files to do its translations and
-deletes them afterward.  \f(CW\*(C`objcopy\*(C'\fR uses \s-1BFD\s0 to do all its
+\&\fBobjcopy\fR creates temporary files to do its translations and
+deletes them afterward.  \fBobjcopy\fR uses \s-1BFD\s0 to do all its
 translation work; it has access to all the formats described in \s-1BFD\s0
 and thus is able to recognize most formats without being told
 explicitly.  
 .PP
-\&\f(CW\*(C`objcopy\*(C'\fR can be used to generate S-records by using an output
+\&\fBobjcopy\fR can be used to generate S-records by using an output
 target of \fBsrec\fR (e.g., use \fB\-O srec\fR).
 .PP
-\&\f(CW\*(C`objcopy\*(C'\fR can be used to generate a raw binary file by using an
+\&\fBobjcopy\fR can be used to generate a raw binary file by using an
 output target of \fBbinary\fR (e.g., use \fB\-O binary\fR).  When
-\&\f(CW\*(C`objcopy\*(C'\fR generates a raw binary file, it will essentially produce
+\&\fBobjcopy\fR generates a raw binary file, it will essentially produce
 a memory dump of the contents of the input object file.  All symbols and
 relocation information will be discarded.  The memory dump will start at
 the load address of the lowest section copied into the output file.
@@ -210,190 +202,220 @@ use \fB\-S\fR to remove sections contain
 some cases \fB\-R\fR will be useful to remove sections which contain
 information that is not needed by the binary file.
 .PP
-Note \- \f(CW\*(C`objcopy\*(C'\fR is not able to change the endianness of its input
+Note \- \fBobjcopy\fR is not able to change the endianness of its input
 files.  If the input format has an endianness, (some formats do not),
-\&\f(CW\*(C`objcopy\*(C'\fR can only copy the inputs into file formats that have the
+\&\fBobjcopy\fR can only copy the inputs into file formats that have the
 same endianness or which have no endianness (eg \fBsrec\fR).
 .SH "OPTIONS"
 .IX Header "OPTIONS"
-.Ip "\f(CW\*(C`\f(CIinfile\f(CW\*(C'\fR" 4
+.IP "\fIinfile\fR" 4
 .IX Item "infile"
-.Ip "\f(CW\*(C`\f(CIoutfile\f(CW\*(C'\fR" 4
+.PD 0
+.IP "\fIoutfile\fR" 4
 .IX Item "outfile"
+.PD
 The input and output files, respectively.
-If you do not specify \fIoutfile\fR, \f(CW\*(C`objcopy\*(C'\fR creates a
+If you do not specify \fIoutfile\fR, \fBobjcopy\fR creates a
 temporary file and destructively renames the result with
 the name of \fIinfile\fR.
-.Ip "\f(CW\*(C`\-I \f(CIbfdname\f(CW	\*(C'\fR" 4
-.IX Item "-I bfdname	"
-.Ip "\f(CW\*(C`\-\-input\-target=\f(CIbfdname\f(CW\*(C'\fR" 4
-.IX Item "--input-target=bfdname"
+.IP "\fB\-I\fR \fIbfdname\fR" 4
+.IX Item "-I bfdname"
+.PD 0
+.IP "\fB\*(--input-target=\fR\fIbfdname\fR" 4
+.IX Item "input-target=bfdname"
+.PD
 Consider the source file's object format to be \fIbfdname\fR, rather than
 attempting to deduce it.  
-.Ip "\f(CW\*(C`\-O \f(CIbfdname\f(CW\*(C'\fR" 4
+.IP "\fB\-O\fR \fIbfdname\fR" 4
 .IX Item "-O bfdname"
-.Ip "\f(CW\*(C`\-\-output\-target=\f(CIbfdname\f(CW\*(C'\fR" 4
-.IX Item "--output-target=bfdname"
+.PD 0
+.IP "\fB\*(--output-target=\fR\fIbfdname\fR" 4
+.IX Item "output-target=bfdname"
+.PD
 Write the output file using the object format \fIbfdname\fR.
-.Ip "\f(CW\*(C`\-F \f(CIbfdname\f(CW\*(C'\fR" 4
+.IP "\fB\-F\fR \fIbfdname\fR" 4
 .IX Item "-F bfdname"
-.Ip "\f(CW\*(C`\-\-target=\f(CIbfdname\f(CW\*(C'\fR" 4
-.IX Item "--target=bfdname"
+.PD 0
+.IP "\fB\*(--target=\fR\fIbfdname\fR" 4
+.IX Item "target=bfdname"
+.PD
 Use \fIbfdname\fR as the object format for both the input and the output
 file; i.e., simply transfer data from source to destination with no
 translation.  
-.Ip "\f(CW\*(C`\-B \f(CIbfdarch\f(CW\*(C'\fR" 4
-.IX Item "-B bfdarch"
-.Ip "\f(CW\*(C`\-\-binary\-architecture=\f(CIbfdarch\f(CW\*(C'\fR" 4
-.IX Item "--binary-architecture=bfdarch"
-Useful when transforming a raw binary input file into an object file.
-In this case the output architecture can be set to \fIbfdarch\fR. This
-option will be ignored if the input file has a known \fIbfdarch\fR. You
-can access this binary data inside a program by referencing the special
-symbols that are created by the conversion process.  These symbols are
-called _binary_\fIobjfile\fR_start, _binary_\fIobjfile\fR_end and
-_binary_\fIobjfile\fR_size.  e.g. you can transform a picture file into
-an object file and then access it in your code using these symbols. 
-.Ip "\f(CW\*(C`\-j \f(CIsectionname\f(CW\*(C'\fR" 4
+.IP "\fB\-j\fR \fIsectionname\fR" 4
 .IX Item "-j sectionname"
-.Ip "\f(CW\*(C`\-\-only\-section=\f(CIsectionname\f(CW\*(C'\fR" 4
-.IX Item "--only-section=sectionname"
+.PD 0
+.IP "\fB\*(--only-section=\fR\fIsectionname\fR" 4
+.IX Item "only-section=sectionname"
+.PD
 Copy only the named section from the input file to the output file.
 This option may be given more than once.  Note that using this option
 inappropriately may make the output file unusable.
-.Ip "\f(CW\*(C`\-R \f(CIsectionname\f(CW\*(C'\fR" 4
+.IP "\fB\-R\fR \fIsectionname\fR" 4
 .IX Item "-R sectionname"
-.Ip "\f(CW\*(C`\-\-remove\-section=\f(CIsectionname\f(CW\*(C'\fR" 4
-.IX Item "--remove-section=sectionname"
+.PD 0
+.IP "\fB\*(--remove-section=\fR\fIsectionname\fR" 4
+.IX Item "remove-section=sectionname"
+.PD
 Remove any section named \fIsectionname\fR from the output file.  This
 option may be given more than once.  Note that using this option
 inappropriately may make the output file unusable.
-.Ip "\f(CW\*(C`\-S\*(C'\fR" 4
+.IP "\fB\-S\fR" 4
 .IX Item "-S"
-.Ip "\f(CW\*(C`\-\-strip\-all\*(C'\fR" 4
-.IX Item "--strip-all"
+.PD 0
+.IP "\fB\*(--strip-all\fR" 4
+.IX Item "strip-all"
+.PD
 Do not copy relocation and symbol information from the source file.
-.Ip "\f(CW\*(C`\-g\*(C'\fR" 4
+.IP "\fB\-g\fR" 4
 .IX Item "-g"
-.Ip "\f(CW\*(C`\-\-strip\-debug\*(C'\fR" 4
-.IX Item "--strip-debug"
+.PD 0
+.IP "\fB\*(--strip-debug\fR" 4
+.IX Item "strip-debug"
+.PD
 Do not copy debugging symbols from the source file.
-.Ip "\f(CW\*(C`\-\-strip\-unneeded\*(C'\fR" 4
-.IX Item "--strip-unneeded"
+.IP "\fB\*(--strip-unneeded\fR" 4
+.IX Item "strip-unneeded"
 Strip all symbols that are not needed for relocation processing.
-.Ip "\f(CW\*(C`\-K \f(CIsymbolname\f(CW\*(C'\fR" 4
+.IP "\fB\-K\fR \fIsymbolname\fR" 4
 .IX Item "-K symbolname"
-.Ip "\f(CW\*(C`\-\-keep\-symbol=\f(CIsymbolname\f(CW\*(C'\fR" 4
-.IX Item "--keep-symbol=symbolname"
+.PD 0
+.IP "\fB\*(--keep-symbol=\fR\fIsymbolname\fR" 4
+.IX Item "keep-symbol=symbolname"
+.PD
 Copy only symbol \fIsymbolname\fR from the source file.  This option may
 be given more than once.
-.Ip "\f(CW\*(C`\-N \f(CIsymbolname\f(CW\*(C'\fR" 4
+.IP "\fB\-N\fR \fIsymbolname\fR" 4
 .IX Item "-N symbolname"
-.Ip "\f(CW\*(C`\-\-strip\-symbol=\f(CIsymbolname\f(CW\*(C'\fR" 4
-.IX Item "--strip-symbol=symbolname"
+.PD 0
+.IP "\fB\*(--strip-symbol=\fR\fIsymbolname\fR" 4
+.IX Item "strip-symbol=symbolname"
+.PD
 Do not copy symbol \fIsymbolname\fR from the source file.  This option
 may be given more than once.
-.Ip "\f(CW\*(C`\-G \f(CIsymbolname\f(CW\*(C'\fR" 4
+.IP "\fB\-G\fR \fIsymbolname\fR" 4
 .IX Item "-G symbolname"
-.Ip "\f(CW\*(C`\-\-keep\-global\-symbol=\f(CIsymbolname\f(CW\*(C'\fR" 4
-.IX Item "--keep-global-symbol=symbolname"
+.PD 0
+.IP "\fB\*(--keep-global-symbol=\fR\fIsymbolname\fR" 4
+.IX Item "keep-global-symbol=symbolname"
+.PD
 Keep only symbol \fIsymbolname\fR global.  Make all other symbols local
 to the file, so that they are not visible externally.  This option may
 be given more than once.
-.Ip "\f(CW\*(C`\-L \f(CIsymbolname\f(CW\*(C'\fR" 4
+.IP "\fB\-L\fR \fIsymbolname\fR" 4
 .IX Item "-L symbolname"
-.Ip "\f(CW\*(C`\-\-localize\-symbol=\f(CIsymbolname\f(CW\*(C'\fR" 4
-.IX Item "--localize-symbol=symbolname"
+.PD 0
+.IP "\fB\*(--localize-symbol=\fR\fIsymbolname\fR" 4
+.IX Item "localize-symbol=symbolname"
+.PD
 Make symbol \fIsymbolname\fR local to the file, so that it is not
 visible externally.  This option may be given more than once.
-.Ip "\f(CW\*(C`\-W \f(CIsymbolname\f(CW\*(C'\fR" 4
+.IP "\fB\-W\fR \fIsymbolname\fR" 4
 .IX Item "-W symbolname"
-.Ip "\f(CW\*(C`\-\-weaken\-symbol=\f(CIsymbolname\f(CW\*(C'\fR" 4
-.IX Item "--weaken-symbol=symbolname"
+.PD 0
+.IP "\fB\*(--weaken-symbol=\fR\fIsymbolname\fR" 4
+.IX Item "weaken-symbol=symbolname"
+.PD
 Make symbol \fIsymbolname\fR weak. This option may be given more than once.
-.Ip "\f(CW\*(C`\-x\*(C'\fR" 4
+.IP "\fB\-x\fR" 4
 .IX Item "-x"
-.Ip "\f(CW\*(C`\-\-discard\-all\*(C'\fR" 4
-.IX Item "--discard-all"
+.PD 0
+.IP "\fB\*(--discard-all\fR" 4
+.IX Item "discard-all"
+.PD
 Do not copy non-global symbols from the source file.
-.Ip "\f(CW\*(C`\-X\*(C'\fR" 4
+.IP "\fB\-X\fR" 4
 .IX Item "-X"
-.Ip "\f(CW\*(C`\-\-discard\-locals\*(C'\fR" 4
-.IX Item "--discard-locals"
+.PD 0
+.IP "\fB\*(--discard-locals\fR" 4
+.IX Item "discard-locals"
+.PD
 Do not copy compiler-generated local symbols.
 (These usually start with \fBL\fR or \fB.\fR.)
-.Ip "\f(CW\*(C`\-b \f(CIbyte\f(CW\*(C'\fR" 4
+.IP "\fB\-b\fR \fIbyte\fR" 4
 .IX Item "-b byte"
-.Ip "\f(CW\*(C`\-\-byte=\f(CIbyte\f(CW\*(C'\fR" 4
-.IX Item "--byte=byte"
+.PD 0
+.IP "\fB\*(--byte=\fR\fIbyte\fR" 4
+.IX Item "byte=byte"
+.PD
 Keep only every \fIbyte\fRth byte of the input file (header data is not
 affected).  \fIbyte\fR can be in the range from 0 to \fIinterleave\fR\-1,
 where \fIinterleave\fR is given by the \fB\-i\fR or \fB\*(--interleave\fR
 option, or the default of 4.  This option is useful for creating files
 to program \s-1ROM\s0.  It is typically used with an \f(CW\*(C`srec\*(C'\fR output
 target.
-.Ip "\f(CW\*(C`\-i \f(CIinterleave\f(CW\*(C'\fR" 4
+.IP "\fB\-i\fR \fIinterleave\fR" 4
 .IX Item "-i interleave"
-.Ip "\f(CW\*(C`\-\-interleave=\f(CIinterleave\f(CW\*(C'\fR" 4
-.IX Item "--interleave=interleave"
+.PD 0
+.IP "\fB\*(--interleave=\fR\fIinterleave\fR" 4
+.IX Item "interleave=interleave"
+.PD
 Only copy one out of every \fIinterleave\fR bytes.  Select which byte to
-copy with the \fI\-b\fR or \fB\*(--byte\fR option.  The default is 4.
-\&\f(CW\*(C`objcopy\*(C'\fR ignores this option if you do not specify either \fB\-b\fR or
+copy with the \fB\-b\fR or \fB\*(--byte\fR option.  The default is 4.
+\&\fBobjcopy\fR ignores this option if you do not specify either \fB\-b\fR or
 \&\fB\*(--byte\fR.
-.Ip "\f(CW\*(C`\-p\*(C'\fR" 4
+.IP "\fB\-p\fR" 4
 .IX Item "-p"
-.Ip "\f(CW\*(C`\-\-preserve\-dates\*(C'\fR" 4
-.IX Item "--preserve-dates"
+.PD 0
+.IP "\fB\*(--preserve-dates\fR" 4
+.IX Item "preserve-dates"
+.PD
 Set the access and modification dates of the output file to be the same
 as those of the input file.
-.Ip "\f(CW\*(C`\-\-debugging\*(C'\fR" 4
-.IX Item "--debugging"
+.IP "\fB\*(--debugging\fR" 4
+.IX Item "debugging"
 Convert debugging information, if possible.  This is not the default
 because only certain debugging formats are supported, and the
 conversion process can be time consuming.
-.Ip "\f(CW\*(C`\-\-gap\-fill \f(CIval\f(CW\*(C'\fR" 4
-.IX Item "--gap-fill val"
+.IP "\fB\*(--gap-fill\fR \fIval\fR" 4
+.IX Item "gap-fill val"
 Fill gaps between sections with \fIval\fR.  This operation applies to
 the \fIload address\fR (\s-1LMA\s0) of the sections.  It is done by increasing
 the size of the section with the lower address, and filling in the extra
 space created with \fIval\fR.
-.Ip "\f(CW\*(C`\-\-pad\-to \f(CIaddress\f(CW\*(C'\fR" 4
-.IX Item "--pad-to address"
+.IP "\fB\*(--pad-to\fR \fIaddress\fR" 4
+.IX Item "pad-to address"
 Pad the output file up to the load address \fIaddress\fR.  This is
 done by increasing the size of the last section.  The extra space is
 filled in with the value specified by \fB\*(--gap-fill\fR (default zero).
-.Ip "\f(CW\*(C`\-\-set\-start \f(CIval\f(CW\*(C'\fR" 4
-.IX Item "--set-start val"
+.IP "\fB\*(--set-start\fR \fIval\fR" 4
+.IX Item "set-start val"
 Set the start address of the new file to \fIval\fR.  Not all object file
 formats support setting the start address.
-.Ip "\f(CW\*(C`\-\-change\-start \f(CIincr\f(CW\*(C'\fR" 4
-.IX Item "--change-start incr"
-.Ip "\f(CW\*(C`\-\-adjust\-start \f(CIincr\f(CW\*(C'\fR" 4
-.IX Item "--adjust-start incr"
+.IP "\fB\*(--change-start\fR \fIincr\fR" 4
+.IX Item "change-start incr"
+.PD 0
+.IP "\fB\*(--adjust-start\fR \fIincr\fR" 4
+.IX Item "adjust-start incr"
+.PD
 Change the start address by adding \fIincr\fR.  Not all object file
 formats support setting the start address.
-.Ip "\f(CW\*(C`\-\-change\-addresses \f(CIincr\f(CW\*(C'\fR" 4
-.IX Item "--change-addresses incr"
-.Ip "\f(CW\*(C`\-\-adjust\-vma \f(CIincr\f(CW\*(C'\fR" 4
-.IX Item "--adjust-vma incr"
+.IP "\fB\*(--change-addresses\fR \fIincr\fR" 4
+.IX Item "change-addresses incr"
+.PD 0
+.IP "\fB\*(--adjust-vma\fR \fIincr\fR" 4
+.IX Item "adjust-vma incr"
+.PD
 Change the \s-1VMA\s0 and \s-1LMA\s0 addresses of all sections, as well as the start
 address, by adding \fIincr\fR.  Some object file formats do not permit
 section addresses to be changed arbitrarily.  Note that this does not
 relocate the sections; if the program expects sections to be loaded at a
 certain address, and this option is used to change the sections such
 that they are loaded at a different address, the program may fail. 
-.Ip "\f(CW\*(C`\-\-change\-section\-address \f(CIsection\f(CW{=,+,\-}\f(CIval\f(CW\*(C'\fR" 4
-.IX Item "--change-section-address section{=,+,-}val"
-.Ip "\f(CW\*(C`\-\-adjust\-section\-vma \f(CIsection\f(CW{=,+,\-}\f(CIval\f(CW\*(C'\fR" 4
-.IX Item "--adjust-section-vma section{=,+,-}val"
+.IP "\fB\*(--change-section-address\fR \fIsection\fR\fB{=,+,\-}\fR\fIval\fR" 4
+.IX Item "change-section-address section{=,+,-}val"
+.PD 0
+.IP "\fB\*(--adjust-section-vma\fR \fIsection\fR\fB{=,+,\-}\fR\fIval\fR" 4
+.IX Item "adjust-section-vma section{=,+,-}val"
+.PD
 Set or change both the \s-1VMA\s0 address and the \s-1LMA\s0 address of the named
 \&\fIsection\fR.  If \fB=\fR is used, the section address is set to
 \&\fIval\fR.  Otherwise, \fIval\fR is added to or subtracted from the
 section address.  See the comments under \fB\*(--change-addresses\fR,
 above. If \fIsection\fR does not exist in the input file, a warning will
 be issued, unless \fB\*(--no-change-warnings\fR is used.
-.Ip "\f(CW\*(C`\-\-change\-section\-lma \f(CIsection\f(CW{=,+,\-}\f(CIval\f(CW\*(C'\fR" 4
-.IX Item "--change-section-lma section{=,+,-}val"
+.IP "\fB\*(--change-section-lma\fR \fIsection\fR\fB{=,+,\-}\fR\fIval\fR" 4
+.IX Item "change-section-lma section{=,+,-}val"
 Set or change the \s-1LMA\s0 address of the named \fIsection\fR.  The \s-1LMA\s0
 address is the address where the section will be loaded into memory at
 program load time.  Normally this is the same as the \s-1VMA\s0 address, which
@@ -404,8 +426,8 @@ different.  If \fB=\fR is used, the sect
 section address.  See the comments under \fB\*(--change-addresses\fR,
 above.  If \fIsection\fR does not exist in the input file, a warning
 will be issued, unless \fB\*(--no-change-warnings\fR is used.  
-.Ip "\f(CW\*(C`\-\-change\-section\-vma \f(CIsection\f(CW{=,+,\-}\f(CIval\f(CW\*(C'\fR" 4
-.IX Item "--change-section-vma section{=,+,-}val"
+.IP "\fB\*(--change-section-vma\fR \fIsection\fR\fB{=,+,\-}\fR\fIval\fR" 4
+.IX Item "change-section-vma section{=,+,-}val"
 Set or change the \s-1VMA\s0 address of the named \fIsection\fR.  The \s-1VMA\s0
 address is the address where the section will be located once the
 program has started executing.  Normally this is the same as the \s-1LMA\s0
@@ -417,22 +439,26 @@ from the section address.  See the comme
 \&\fB\*(--change-addresses\fR, above.  If \fIsection\fR does not exist in
 the input file, a warning will be issued, unless
 \&\fB\*(--no-change-warnings\fR is used.   
-.Ip "\f(CW\*(C`\-\-change\-warnings\*(C'\fR" 4
-.IX Item "--change-warnings"
-.Ip "\f(CW\*(C`\-\-adjust\-warnings\*(C'\fR" 4
-.IX Item "--adjust-warnings"
+.IP "\fB\*(--change-warnings\fR" 4
+.IX Item "change-warnings"
+.PD 0
+.IP "\fB\*(--adjust-warnings\fR" 4
+.IX Item "adjust-warnings"
+.PD
 If \fB\*(--change-section-address\fR or \fB\*(--change-section-lma\fR or
 \&\fB\*(--change-section-vma\fR is used, and the named section does not
 exist, issue a warning.  This is the default. 
-.Ip "\f(CW\*(C`\-\-no\-change\-warnings\*(C'\fR" 4
-.IX Item "--no-change-warnings"
-.Ip "\f(CW\*(C`\-\-no\-adjust\-warnings\*(C'\fR" 4
-.IX Item "--no-adjust-warnings"
+.IP "\fB\*(--no-change-warnings\fR" 4
+.IX Item "no-change-warnings"
+.PD 0
+.IP "\fB\*(--no-adjust-warnings\fR" 4
+.IX Item "no-adjust-warnings"
+.PD
 Do not issue a warning if \fB\*(--change-section-address\fR or
 \&\fB\*(--adjust-section-lma\fR or \fB\*(--adjust-section-vma\fR is used, even
 if the named section does not exist. 
-.Ip "\f(CW\*(C`\-\-set\-section\-flags \f(CIsection\f(CW=\f(CIflags\f(CW\*(C'\fR" 4
-.IX Item "--set-section-flags section=flags"
+.IP "\fB\*(--set-section-flags\fR \fIsection\fR\fB=\fR\fIflags\fR" 4
+.IX Item "set-section-flags section=flags"
 Set the flags for the named section.  The \fIflags\fR argument is a
 comma separated string of flag names.  The recognized names are
 \&\fBalloc\fR, \fBcontents\fR, \fBload\fR, \fBnoload\fR,
@@ -442,97 +468,101 @@ does not have contents, but it is not me
 \&\fBcontents\fR flag of a section which does have contents\*(--just remove
 the section instead.  Not all flags are meaningful for all object file
 formats.
-.Ip "\f(CW\*(C`\-\-add\-section \f(CIsectionname\f(CW=\f(CIfilename\f(CW\*(C'\fR" 4
-.IX Item "--add-section sectionname=filename"
+.IP "\fB\*(--add-section\fR \fIsectionname\fR\fB=\fR\fIfilename\fR" 4
+.IX Item "add-section sectionname=filename"
 Add a new section named \fIsectionname\fR while copying the file.  The
 contents of the new section are taken from the file \fIfilename\fR.  The
 size of the section will be the size of the file.  This option only
 works on file formats which can support sections with arbitrary names.
-.Ip "\f(CW\*(C`\-\-change\-leading\-char\*(C'\fR" 4
-.IX Item "--change-leading-char"
+.IP "\fB\*(--change-leading-char\fR" 4
+.IX Item "change-leading-char"
 Some object file formats use special characters at the start of
 symbols.  The most common such character is underscore, which compilers
-often add before every symbol.  This option tells \f(CW\*(C`objcopy\*(C'\fR to
+often add before every symbol.  This option tells \fBobjcopy\fR to
 change the leading character of every symbol when it converts between
 object file formats.  If the object file formats use the same leading
 character, this option has no effect.  Otherwise, it will add a
 character, or remove a character, or change a character, as
 appropriate.
-.Ip "\f(CW\*(C`\-\-remove\-leading\-char\*(C'\fR" 4
-.IX Item "--remove-leading-char"
+.IP "\fB\*(--remove-leading-char\fR" 4
+.IX Item "remove-leading-char"
 If the first character of a global symbol is a special symbol leading
 character used by the object file format, remove the character.  The
 most common symbol leading character is underscore.  This option will
 remove a leading underscore from all global symbols.  This can be useful
 if you want to link together objects of different file formats with
 different conventions for symbol names.  This is different from
-\&\f(CW\*(C`\-\-change\-leading\-char\*(C'\fR because it always changes the symbol name
+\&\fB\*(--change-leading-char\fR because it always changes the symbol name
 when appropriate, regardless of the object file format of the output
 file.
-.Ip "\f(CW\*(C`\-\-srec\-len=\f(CIival\f(CW\*(C'\fR" 4
-.IX Item "--srec-len=ival"
+.IP "\fB\*(--srec-len=\fR\fIival\fR" 4
+.IX Item "srec-len=ival"
 Meaningful only for srec output.  Set the maximum length of the Srecords
 being produced to \fIival\fR.  This length covers both address, data and
 crc fields.
-.Ip "\f(CW\*(C`\-\-srec\-forceS3\*(C'\fR" 4
-.IX Item "--srec-forceS3"
+.IP "\fB\*(--srec-forceS3\fR" 4
+.IX Item "srec-forceS3"
 Meaningful only for srec output.  Avoid generation of S1/S2 records, 
 creating S3\-only record format.
-.Ip "\f(CW\*(C`\-\-redefine\-sym \f(CIold\f(CW=\f(CInew\f(CW\*(C'\fR" 4
-.IX Item "--redefine-sym old=new"
+.IP "\fB\*(--redefine-sym\fR \fIold\fR\fB=\fR\fInew\fR" 4
+.IX Item "redefine-sym old=new"
 Change the name of a symbol \fIold\fR, to \fInew\fR.  This can be useful
 when one is trying link two things together for which you have no
 source, and there are name collisions.
-.Ip "\f(CW\*(C`\-\-weaken\*(C'\fR" 4
-.IX Item "--weaken"
+.IP "\fB\*(--weaken\fR" 4
+.IX Item "weaken"
 Change all global symbols in the file to be weak.  This can be useful
 when building an object which will be linked against other objects using
-the \f(CW\*(C`\-R\*(C'\fR option to the linker.  This option is only effective when
+the \fB\-R\fR option to the linker.  This option is only effective when
 using an object file format which supports weak symbols.
-.Ip "\f(CW\*(C`\-\-keep\-symbols=\f(CIfilename\f(CW\*(C'\fR" 4
-.IX Item "--keep-symbols=filename"
+.IP "\fB\*(--keep-symbols=\fR\fIfilename\fR" 4
+.IX Item "keep-symbols=filename"
 Apply \fB\*(--keep-symbol\fR option to each symbol listed in the file
 \&\fIfilename\fR.  \fIfilename\fR is simply a flat file, with one symbol
 name per line.  Line comments may be introduced by the hash character.
 This option may be given more than once.
-.Ip "\f(CW\*(C`\-\-strip\-symbols=\f(CIfilename\f(CW\*(C'\fR" 4
-.IX Item "--strip-symbols=filename"
+.IP "\fB\*(--strip-symbols=\fR\fIfilename\fR" 4
+.IX Item "strip-symbols=filename"
 Apply \fB\*(--strip-symbol\fR option to each symbol listed in the file
 \&\fIfilename\fR.  \fIfilename\fR is simply a flat file, with one symbol
 name per line.  Line comments may be introduced by the hash character.
 This option may be given more than once.
-.Ip "\f(CW\*(C`\-\-keep\-global\-symbols=\f(CIfilename\f(CW\*(C'\fR" 4
-.IX Item "--keep-global-symbols=filename"
+.IP "\fB\*(--keep-global-symbols=\fR\fIfilename\fR" 4
+.IX Item "keep-global-symbols=filename"
 Apply \fB\*(--keep-global-symbol\fR option to each symbol listed in the
 file \fIfilename\fR.  \fIfilename\fR is simply a flat file, with one
 symbol name per line.  Line comments may be introduced by the hash
 character.  This option may be given more than once.
-.Ip "\f(CW\*(C`\-\-localize\-symbols=\f(CIfilename\f(CW\*(C'\fR" 4
-.IX Item "--localize-symbols=filename"
+.IP "\fB\*(--localize-symbols=\fR\fIfilename\fR" 4
+.IX Item "localize-symbols=filename"
 Apply \fB\*(--localize-symbol\fR option to each symbol listed in the file
 \&\fIfilename\fR.  \fIfilename\fR is simply a flat file, with one symbol
 name per line.  Line comments may be introduced by the hash character.
 This option may be given more than once.
-.Ip "\f(CW\*(C`\-\-weaken\-symbols=\f(CIfilename\f(CW\*(C'\fR" 4
-.IX Item "--weaken-symbols=filename"
+.IP "\fB\*(--weaken-symbols=\fR\fIfilename\fR" 4
+.IX Item "weaken-symbols=filename"
 Apply \fB\*(--weaken-symbol\fR option to each symbol listed in the file
 \&\fIfilename\fR.  \fIfilename\fR is simply a flat file, with one symbol
 name per line.  Line comments may be introduced by the hash character.
 This option may be given more than once.
-.Ip "\f(CW\*(C`\-V\*(C'\fR" 4
+.IP "\fB\-V\fR" 4
 .IX Item "-V"
-.Ip "\f(CW\*(C`\-\-version\*(C'\fR" 4
-.IX Item "--version"
-Show the version number of \f(CW\*(C`objcopy\*(C'\fR.
-.Ip "\f(CW\*(C`\-v\*(C'\fR" 4
+.PD 0
+.IP "\fB\*(--version\fR" 4
+.IX Item "version"
+.PD
+Show the version number of \fBobjcopy\fR.
+.IP "\fB\-v\fR" 4
 .IX Item "-v"
-.Ip "\f(CW\*(C`\-\-verbose\*(C'\fR" 4
-.IX Item "--verbose"
+.PD 0
+.IP "\fB\*(--verbose\fR" 4
+.IX Item "verbose"
+.PD
 Verbose output: list all object files modified.  In the case of
 archives, \fBobjcopy \-V\fR lists all members of the archive.
-.Ip "\f(CW\*(C`\-\-help\*(C'\fR" 4
-.IX Item "--help"
-Show a summary of the options to \f(CW\*(C`objcopy\*(C'\fR.
+.IP "\fB\*(--help\fR" 4
+.IX Item "help"
+Show a summary of the options to \fBobjcopy\fR.
 .SH "SEE ALSO"
 .IX Header "SEE ALSO"
 \&\fIld\fR\|(1), \fIobjdump\fR\|(1), and the Info entries for \fIbinutils\fR.
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/objdump.1 binutils-2.11.2-m68hc1x/binutils/objdump.1
--- binutils-2.11.2/binutils/objdump.1	Tue Nov 28 21:40:34 2000
+++ binutils-2.11.2-m68hc1x/binutils/objdump.1	Fri Sep 21 22:11:27 2001
@@ -1,771 +1,500 @@
-.\" Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 1998, 2000 Free Software Foundation
-.\" See section COPYING for conditions for redistribution
-.TH objdump 1 "5 November 1991" "Free Software Foundation" "GNU Development Tools"
-.de BP
-.sp
-.ti \-.2i
-\(**
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:09:41 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
 ..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
 
-.SH NAME
-objdump \- display information from object files.
-
-.SH SYNOPSIS
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
 .hy 0
-.na
-.TP
-.B objdump
-.RB "[\|" \-a | \-\-archive\-headers "\|]" 
-.RB "[\|" "\-b\ "\c
-.I bfdname\c
-.RB " | " "\-\-target="\c
-.I bfdname\c
-\&\|] 
-.RB "[\|" \-C | \-\-demangle "\|]" 
-.RB "[\|" \-\-debugging "\|]" 
-.RB "[\|" \-d | \-\-disassemble "\|]" 
-.RB "[\|" \-D | \-\-disassemble-all "\|]" 
-.RB "[\|" \-\-disassemble\-zeroes "\|]" 
-.RB "[\|" \-EB | \-EL | \-\-endian=\c
-.I {big|little}\c
-\&\|]
-.RB "[\|" \-f | \-\-file\-headers "\|]"
-.RB "[\|" \-h | \-\-section\-headers
-.RB "| " \-\-headers "\|]" 
-.RB "[\|" \-i | \-\-info "\|]" 
-.RB "[\|" "\-j\ "\c
-.I section\c
-.RB " | " "\-\-section="\c
-.I section\c
-\&\|] 
-.RB "[\|" \-l | \-\-line\-numbers "\|]"
-.RB "[\|" "\-m\ "\c
-.I machine\c
-.RB " | " "\-\-architecture="\c
-.I machine\c
-\&\|] 
-.RB "[\|" \-p | \-\-private\-headers "\|]" 
-.RB "[\|" \-\-prefix\-addresses "\|]" 
-.RB "[\|" \-r | \-\-reloc "\|]" 
-.RB "[\|" \-R | \-\-dynamic\-reloc "\|]" 
-.RB "[\|" \-s | \-\-full\-contents "\|]"
-.RB "[\|" \-S | \-\-source "\|]"
-.RB "[\|" \-\-[no\-]show\-raw\-insn "\|]" 
-.RB "[\|" \-\-stabs "\|]"
-.RB "[\|" \-t | \-\-syms "\|]" 
-.RB "[\|" \-T | \-\-dynamic\-syms "\|]" 
-.RB "[\|" \-x | \-\-all\-headers "\|]"
-.RB "[\|" "\-\-start\-address="\c
-.I address\c
-\&\|]
-.RB "[\|" "\-\-stop\-address="\c
-.I address\c
-\&\|]
-.RB "[\|" "\-\-adjust\-vma="\c
-.I offset\c
-\&\|]
-.RB "[\|" \-\-version "\|]"
-.RB "[\|" \-\-help "\|]"
-.I objfile\c
-\&.\|.\|.
-.ad b
-.hy 1
-.SH DESCRIPTION
-\c
-.B objdump\c
-\& displays information about one or more object files.
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "OBJDUMP 1"
+.TH OBJDUMP 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
+.UC
+.SH "NAME"
+objdump \- display information from object files.
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+objdump [\fB\-a\fR|\fB\*(--archive-headers\fR]
+        [\fB\-b\fR \fIbfdname\fR|\fB\*(--target=\fR\fIbfdname\fR]
+        [\fB\-C\fR|\fB\*(--demangle\fR[=\fIstyle\fR] ]
+        [\fB\-d\fR|\fB\*(--disassemble\fR]
+        [\fB\-D\fR|\fB\*(--disassemble-all\fR]
+        [\fB\-z\fR|\fB\*(--disassemble-zeroes\fR]
+        [\fB\-EB\fR|\fB\-EL\fR|\fB\*(--endian=\fR{big | little }]
+        [\fB\-f\fR|\fB\*(--file-headers\fR]
+        [\fB\*(--file-start-context\fR]
+        [\fB\-g\fR|\fB\*(--debugging\fR]
+        [\fB\-h\fR|\fB\*(--section-headers\fR|\fB\*(--headers\fR]
+        [\fB\-i\fR|\fB\*(--info\fR]
+        [\fB\-j\fR \fIsection\fR|\fB\*(--section=\fR\fIsection\fR]
+        [\fB\-l\fR|\fB\*(--line-numbers\fR]
+        [\fB\-S\fR|\fB\*(--source\fR]
+        [\fB\-m\fR \fImachine\fR|\fB\*(--architecture=\fR\fImachine\fR]
+        [\fB\-M\fR \fIoptions\fR|\fB\*(--disassembler-options=\fR\fIoptions\fR]
+        [\fB\-p\fR|\fB\*(--private-headers\fR]
+        [\fB\-r\fR|\fB\*(--reloc\fR]
+        [\fB\-R\fR|\fB\*(--dynamic-reloc\fR]
+        [\fB\-s\fR|\fB\*(--full-contents\fR]
+        [\fB\-G\fR|\fB\*(--stabs\fR]
+        [\fB\-t\fR|\fB\*(--syms\fR]
+        [\fB\-T\fR|\fB\*(--dynamic-syms\fR]
+        [\fB\-x\fR|\fB\*(--all-headers\fR]
+        [\fB\-w\fR|\fB\*(--wide\fR]
+        [\fB\*(--start-address=\fR\fIaddress\fR]
+        [\fB\*(--stop-address=\fR\fIaddress\fR]
+        [\fB\*(--prefix-addresses\fR]
+        [\fB\-\-[no-]show-raw-insn\fR]
+        [\fB\*(--adjust-vma=\fR\fIoffset\fR]
+        [\fB\-V\fR|\fB\*(--version\fR]
+        [\fB\-H\fR|\fB\*(--help\fR]
+        \fIobjfile\fR...
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fBobjdump\fR displays information about one or more object files.
 The options control what particular information to display.  This
 information is mostly useful to programmers who are working on the
 compilation tools, as opposed to programmers who just want their
 program to compile and work.
 .PP
-.IR  "objfile" .\|.\|.
-are the object files to be examined.  When you specify archives,
-\c
-.B objdump\c
-\& shows information on each of the member object files.
-
-.SH OPTIONS
-Where long and short forms of an option are shown together, they are
-equivalent.  At least one option besides
-.B \-l
-(\fB\-\-line\-numbers\fP) must be given.
-
-.TP
-.B \-a
-.TP
-.B \-\-archive\-headers
-If any files from \c
-.I objfile\c
-\& are archives, display the archive
-header information (in a format similar to `\|\c
-.B ls \-l\c
-\|').  Besides the
-information you could list with `\|\c
-.B ar tv\c
-\|', `\|\c
-.B objdump \-a\c
-\|' shows
+\&\fIobjfile\fR... are the object files to be examined.  When you
+specify archives, \fBobjdump\fR shows information on each of the member
+object files.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+The long and short forms of options, shown here as alternatives, are
+equivalent.  At least one option from the list
+\&\fB\-a,\-d,\-D,\-f,\-g,\-G,\-h,\-H,\-p,\-r,\-R,\-S,\-t,\-T,\-V,\-x\fR must be given. 
+.IP "\fB\-a\fR" 4
+.IX Item "-a"
+.PD 0
+.IP "\fB\*(--archive-header\fR" 4
+.IX Item "archive-header"
+.PD
+If any of the \fIobjfile\fR files are archives, display the archive
+header information (in a format similar to \fBls \-l\fR).  Besides the
+information you could list with \fBar tv\fR, \fBobjdump \-a\fR shows
 the object file format of each archive member.
-
-.TP
-.BI "\-\-adjust\-vma=" "offset"
-When dumping information, first add
-.I offset
-to all the section addresses.  This is useful if the section addresses
-do not correspond to the symbol table, which can happen when putting
-sections at particular addresses when using a format which can not
-represent section addresses, such as a.out.
-
-.TP
-.BI "\-b " "bfdname"\c
-.TP
-.BI "\-\-target=" "bfdname"
-Specify the object-code format for the object files to be
-\c
-.I bfdname\c
-\&.  This may not be necessary; \c
-.I objdump\c
-\& can
-automatically recognize many formats.  For example,
-.sp
-.br
-objdump\ \-b\ oasys\ \-m\ vax\ \-h\ fu.o
-.br
-.sp
-display summary information from the section headers (`\|\c
-.B \-h\c
-\|') of
-`\|\c
-.B fu.o\c
-\|', which is explicitly identified (`\|\c
-.B \-m\c
-\|') as a Vax object
+.IP "\fB\*(--adjust-vma=\fR\fIoffset\fR" 4
+.IX Item "adjust-vma=offset"
+When dumping information, first add \fIoffset\fR to all the section
+addresses.  This is useful if the section addresses do not correspond to
+the symbol table, which can happen when putting sections at particular
+addresses when using a format which can not represent section addresses,
+such as a.out.
+.IP "\fB\-b\fR \fIbfdname\fR" 4
+.IX Item "-b bfdname"
+.PD 0
+.IP "\fB\*(--target=\fR\fIbfdname\fR" 4
+.IX Item "target=bfdname"
+.PD
+Specify that the object-code format for the object files is
+\&\fIbfdname\fR.  This option may not be necessary; \fIobjdump\fR can
+automatically recognize many formats.
+.Sp
+For example,
+.Sp
+.Vb 1
+\&        objdump -b oasys -m vax -h fu.o
+.Ve
+displays summary information from the section headers (\fB\-h\fR) of
+\&\fIfu.o\fR, which is explicitly identified (\fB\-m\fR) as a \s-1VAX\s0 object
 file in the format produced by Oasys compilers.  You can list the
-formats available with the `\|\c
-.B \-i\c
-\|' option.
-
-.TP
-.B \-C
-.TP
-.B \-\-demangle
-Decode (\fIdemangle\fP) low-level symbol names into user-level names.
+formats available with the \fB\-i\fR option.
+.IP "\fB\-C\fR" 4
+.IX Item "-C"
+.PD 0
+.IP "\fB\*(--demangle[=\fR\fIstyle\fR\fB]\fR" 4
+.IX Item "demangle[=style]"
+.PD
+Decode (\fIdemangle\fR) low-level symbol names into user-level names.
 Besides removing any initial underscore prepended by the system, this
-makes C++ function names readable.
-
-.TP
-.B \-\-debugging
+makes \*(C+ function names readable.  Different compilers have different
+mangling styles. The optional demangling style argument can be used to 
+choose an appropriate demangling style for your compiler. 
+.IP "\fB\-G\fR" 4
+.IX Item "-G"
+.PD 0
+.IP "\fB\*(--debugging\fR" 4
+.IX Item "debugging"
+.PD
 Display debugging information.  This attempts to parse debugging
 information stored in the file and print it out using a C like syntax.
 Only certain types of debugging information have been implemented.
-
-.TP
-.B \-d
-.TP
-.B \-\-disassemble
-Display the assembler mnemonics for the machine
-instructions from \c
-.I objfile\c
-\&.
-This option only disassembles those sections which are
+.IP "\fB\-d\fR" 4
+.IX Item "-d"
+.PD 0
+.IP "\fB\*(--disassemble\fR" 4
+.IX Item "disassemble"
+.PD
+Display the assembler mnemonics for the machine instructions from
+\&\fIobjfile\fR.  This option only disassembles those sections which are
 expected to contain instructions.
-
-.TP
-.B \-D
-.TP
-.B \-\-disassemble-all
-Like \fB\-d\fP, but disassemble the contents of all sections, not just
+.IP "\fB\-D\fR" 4
+.IX Item "-D"
+.PD 0
+.IP "\fB\*(--disassemble-all\fR" 4
+.IX Item "disassemble-all"
+.PD
+Like \fB\-d\fR, but disassemble the contents of all sections, not just
 those expected to contain instructions.
-
-.TP
-.B \-\-prefix\-addresses
+.IP "\fB\*(--prefix-addresses\fR" 4
+.IX Item "prefix-addresses"
 When disassembling, print the complete address on each line.  This is
 the older disassembly format.
-
-.TP
-.B \-\-disassemble\-zeroes
+.IP "\fB\*(--disassemble-zeroes\fR" 4
+.IX Item "disassemble-zeroes"
 Normally the disassembly output will skip blocks of zeroes.  This
 option directs the disassembler to disassemble those blocks, just like
 any other data.
-
-.TP
-.B \-EB
-.TP
-.B \-EL
-.TP
-.BI "\-\-endian=" "{big|little}"
+.IP "\fB\-EB\fR" 4
+.IX Item "-EB"
+.PD 0
+.IP "\fB\-EL\fR" 4
+.IX Item "-EL"
+.IP "\fB\*(--endian={big|little}\fR" 4
+.IX Item "endian={big|little}"
+.PD
 Specify the endianness of the object files.  This only affects
 disassembly.  This can be useful when disassembling a file format which
 does not describe endianness information, such as S-records.
-
-.TP
-.B \-f
-.TP
-.B \-\-file\-headers
+.IP "\fB\-f\fR" 4
+.IX Item "-f"
+.PD 0
+.IP "\fB\*(--file-header\fR" 4
+.IX Item "file-header"
+.PD
 Display summary information from the overall header of
-each file in \c
-.I objfile\c
-\&.
-
-.TP
-.B \-h
-.TP
-.B \-\-section\-headers
-.TP
-.B \-\-headers
+each of the \fIobjfile\fR files.
+.IP "\fB\*(--file-start-context\fR" 4
+.IX Item "file-start-context"
+Specify that when displaying interlisted source code/disassembly
+(assumes \fB\-S\fR) from a file that has not yet been displayed, extend the
+context to the start of the file.
+.IP "\fB\-h\fR" 4
+.IX Item "-h"
+.PD 0
+.IP "\fB\*(--section-header\fR" 4
+.IX Item "section-header"
+.IP "\fB\*(--header\fR" 4
+.IX Item "header"
+.PD
 Display summary information from the section headers of the
 object file.
-
-.TP
-.B \-\-help
-Print a summary of the options to
-.B objdump
-and exit.
-
-.TP
-.B \-i
-.TP
-.B \-\-info
+.Sp
+File segments may be relocated to nonstandard addresses, for example by
+using the \fB\-Ttext\fR, \fB\-Tdata\fR, or \fB\-Tbss\fR options to
+\&\fBld\fR.  However, some object file formats, such as a.out, do not
+store the starting address of the file segments.  In those situations,
+although \fBld\fR relocates the sections correctly, using \fBobjdump
+\&\-h\fR to list the file section headers cannot show the correct addresses.
+Instead, it shows the usual addresses, which are implicit for the
+target.
+.IP "\fB\*(--help\fR" 4
+.IX Item "help"
+Print a summary of the options to \fBobjdump\fR and exit.
+.IP "\fB\-i\fR" 4
+.IX Item "-i"
+.PD 0
+.IP "\fB\*(--info\fR" 4
+.IX Item "info"
+.PD
 Display a list showing all architectures and object formats available
-for specification with \c
-.B \-b\c
-\& or \c
-.B \-m\c
-\&.
-
-.TP
-.BI "\-j " "name"\c
-.TP
-.BI "\-\-section=" "name"
-Display information only for section \c
-.I name\c
-\&.
-
-.TP
-.B \-l
-.TP
-.B \-\-line\-numbers
-Label the display (using debugging information) with the filename
-and source line numbers corresponding to the object code shown.
-Only useful with \fB\-d\fP, \fB\-D\fP, or \fB\-r\fP.
-
-.TP
-.BI "\-m " "machine"\c
-.TP
-.BI "\-\-architecture=" "machine"
+for specification with \fB\-b\fR or \fB\-m\fR.
+.IP "\fB\-j\fR \fIname\fR" 4
+.IX Item "-j name"
+.PD 0
+.IP "\fB\*(--section=\fR\fIname\fR" 4
+.IX Item "section=name"
+.PD
+Display information only for section \fIname\fR.
+.IP "\fB\-l\fR" 4
+.IX Item "-l"
+.PD 0
+.IP "\fB\*(--line-numbers\fR" 4
+.IX Item "line-numbers"
+.PD
+Label the display (using debugging information) with the filename and
+source line numbers corresponding to the object code or relocs shown.
+Only useful with \fB\-d\fR, \fB\-D\fR, or \fB\-r\fR.
+.IP "\fB\-m\fR \fImachine\fR" 4
+.IX Item "-m machine"
+.PD 0
+.IP "\fB\*(--architecture=\fR\fImachine\fR" 4
+.IX Item "architecture=machine"
+.PD
 Specify the architecture to use when disassembling object files.  This
 can be useful when disassembling object files which do not describe
 architecture information, such as S-records.  You can list the available
-architectures with the \fB\-i\fP option. 
-
-.TP
-.B \-p
-.TP
-.B \-\-private\-headers
-Print information that is specific to the object file format.  The
-exact information printed depends upon the object file format.  For
-some object file formats, no additional information is printed.
-
-.TP
-.B \-r
-.TP
-.B \-\-reloc
-Print the relocation entries of the file.  If used with \fB\-d\fP or
-\fB\-D\fP, the relocations are printed interspersed with the
+architectures with the \fB\-i\fR option.
+.IP "\fB\-M\fR \fIoptions\fR" 4
+.IX Item "-M options"
+.PD 0
+.IP "\fB\*(--disassembler-options=\fR\fIoptions\fR" 4
+.IX Item "disassembler-options=options"
+.PD
+Pass target specific information to the disassembler.  Only supported on
+some targets.
+.Sp
+If the target is an \s-1ARM\s0 architecture then this switch can be used to
+select which register name set is used during disassembler.  Specifying
+\&\fB\-M reg-name-std\fR (the default) will select the register names as
+used in \s-1ARM\s0's instruction set documentation, but with register 13 called
+\&'sp', register 14 called 'lr' and register 15 called 'pc'.  Specifying
+\&\fB\-M reg-names-apcs\fR will select the name set used by the \s-1ARM\s0
+Procedure Call Standard, whilst specifying \fB\-M reg-names-raw\fR will
+just use \fBr\fR followed by the register number.
+.Sp
+There are also two variants on the \s-1APCS\s0 register naming scheme enabled
+by \fB\-M reg-names-atpcs\fR and \fB\-M reg-names-special-atpcs\fR which
+use the ARM/Thumb Procedure Call Standard naming conventions.  (Either
+with the normal register name or the special register names).
+.Sp
+This option can also be used for \s-1ARM\s0 architectures to force the
+disassembler to interpret all instructions as \s-1THUMB\s0 instructions by
+using the switch \fB\*(--disassembler-options=force-thumb\fR.  This can be
+useful when attempting to disassemble thumb code produced by other
+compilers.
+.IP "\fB\-p\fR" 4
+.IX Item "-p"
+.PD 0
+.IP "\fB\*(--private-headers\fR" 4
+.IX Item "private-headers"
+.PD
+Print information that is specific to the object file format.  The exact
+information printed depends upon the object file format.  For some
+object file formats, no additional information is printed.
+.IP "\fB\-r\fR" 4
+.IX Item "-r"
+.PD 0
+.IP "\fB\*(--reloc\fR" 4
+.IX Item "reloc"
+.PD
+Print the relocation entries of the file.  If used with \fB\-d\fR or
+\&\fB\-D\fR, the relocations are printed interspersed with the
 disassembly.
-
-.TP
-.B \-R
-.TP
-.B \-\-dynamic\-reloc
+.IP "\fB\-R\fR" 4
+.IX Item "-R"
+.PD 0
+.IP "\fB\*(--dynamic-reloc\fR" 4
+.IX Item "dynamic-reloc"
+.PD
 Print the dynamic relocation entries of the file.  This is only
 meaningful for dynamic objects, such as certain types of shared
 libraries.
-
-.TP
-.B \-s
-.TP
-.B \-\-full\-contents
+.IP "\fB\-s\fR" 4
+.IX Item "-s"
+.PD 0
+.IP "\fB\*(--full-contents\fR" 4
+.IX Item "full-contents"
+.PD
 Display the full contents of any sections requested.
-
-.TP
-.B \-S
-.TP
-.B \-\-source
+.IP "\fB\-S\fR" 4
+.IX Item "-S"
+.PD 0
+.IP "\fB\*(--source\fR" 4
+.IX Item "source"
+.PD
 Display source code intermixed with disassembly, if possible.  Implies
-\fB-d\fP.
-
-.TP
-.B \-\-show\-raw\-insn
+\&\fB\-d\fR.
+.IP "\fB\*(--show-raw-insn\fR" 4
+.IX Item "show-raw-insn"
 When disassembling instructions, print the instruction in hex as well as
 in symbolic form.  This is the default except when
-.B \-\-prefix\-addresses
-is used.
-
-.TP
-.B \-\-no\-show\-raw\-insn
+\&\fB\*(--prefix-addresses\fR is used.
+.IP "\fB\*(--no-show-raw-insn\fR" 4
+.IX Item "no-show-raw-insn"
 When disassembling instructions, do not print the instruction bytes.
-This is the default when
-.B \-\-prefix\-addresses
-is used.
-
-.TP
-.B \-\-stabs
-Display the contents of the .stab, .stab.index, and .stab.excl
-sections from an ELF file.  This is only useful on systems (such as
-Solaris 2.0) in which .stab debugging symbol-table entries are carried
-in an ELF section.  In most other file formats, debugging symbol-table
-entries are interleaved with linkage symbols, and are visible in the
-.B \-\-syms
+This is the default when \fB\*(--prefix-addresses\fR is used.
+.IP "\fB\-G\fR" 4
+.IX Item "-G"
+.PD 0
+.IP "\fB\*(--stabs\fR" 4
+.IX Item "stabs"
+.PD
+Display the full contents of any sections requested.  Display the
+contents of the .stab and .stab.index and .stab.excl sections from an
+\&\s-1ELF\s0 file.  This is only useful on systems (such as Solaris 2.0) in which
+\&\f(CW\*(C`.stab\*(C'\fR debugging symbol-table entries are carried in an \s-1ELF\s0
+section.  In most other file formats, debugging symbol-table entries are
+interleaved with linkage symbols, and are visible in the \fB\*(--syms\fR
 output.
-
-.TP
-.BI "\-\-start\-address=" "address"
+.IP "\fB\*(--start-address=\fR\fIaddress\fR" 4
+.IX Item "start-address=address"
 Start displaying data at the specified address.  This affects the output
-of the
-.B \-d\c
-,
-.B \-r
-and
-.B \-s
-options.
-
-.TP
-.BI "\-\-stop\-address=" "address"
+of the \fB\-d\fR, \fB\-r\fR and \fB\-s\fR options.
+.IP "\fB\*(--stop-address=\fR\fIaddress\fR" 4
+.IX Item "stop-address=address"
 Stop displaying data at the specified address.  This affects the output
-of the
-.B \-d\c
-,
-.B \-r
-and
-.B \-s
-options.
-
-.TP
-.B \-t
-.TP
-.B \-\-syms
-Symbol Table.  Print the symbol table entries of the file.
-This is similar to the information provided by the `\|\c
-.B nm\c
-\|' program.
-
-.TP
-.B \-T
-.TP
-.B \-\-dynamic\-syms
-Dynamic Symbol Table.  Print the dynamic symbol table entries of the
-file.  This is only meaningful for dynamic objects, such as certain
-types of shared libraries.  This is similar to the information
-provided by the `\|\c
-.B nm\c
-\|' program when given the
-.B \-D (\-\-dynamic)
-option.
-
-.TP
-.B \-\-version
-Print the version number of
-.B objdump
-and exit.
-
-.TP
-.B \-x
-.TP
-.B \-\-all\-headers
+of the \fB\-d\fR, \fB\-r\fR and \fB\-s\fR options.
+.IP "\fB\-t\fR" 4
+.IX Item "-t"
+.PD 0
+.IP "\fB\*(--syms\fR" 4
+.IX Item "syms"
+.PD
+Print the symbol table entries of the file.
+This is similar to the information provided by the \fBnm\fR program.
+.IP "\fB\-T\fR" 4
+.IX Item "-T"
+.PD 0
+.IP "\fB\*(--dynamic-syms\fR" 4
+.IX Item "dynamic-syms"
+.PD
+Print the dynamic symbol table entries of the file.  This is only
+meaningful for dynamic objects, such as certain types of shared
+libraries.  This is similar to the information provided by the \fBnm\fR
+program when given the \fB\-D\fR (\fB\*(--dynamic\fR) option.
+.IP "\fB\*(--version\fR" 4
+.IX Item "version"
+Print the version number of \fBobjdump\fR and exit.
+.IP "\fB\-x\fR" 4
+.IX Item "-x"
+.PD 0
+.IP "\fB\*(--all-header\fR" 4
+.IX Item "all-header"
+.PD
 Display all available header information, including the symbol table and
-relocation entries.  Using `\|\c
-.B \-x\c
-\|' is equivalent to specifying all of
-`\|\c
-.B \-a \-f \-h \-r \-t\c
-\|'.
-
+relocation entries.  Using \fB\-x\fR is equivalent to specifying all of
+\&\fB\-a \-f \-h \-r \-t\fR.
+.IP "\fB\-w\fR" 4
+.IX Item "-w"
+.PD 0
+.IP "\fB\*(--wide\fR" 4
+.IX Item "wide"
+.PD
+Format some lines for output devices that have more than 80 columns.
 .SH "SEE ALSO"
-.RB "`\|" binutils "\|'"
-entry in 
-.B
-info\c
-\&; 
-.I
-The GNU Binary Utilities\c
-\&, Roland H. Pesch (October 1991); 
-.BR nm "(" 1 ")."
-
-.SH COPYING
-Copyright (c) 1991, 92, 93, 94, 95, 1996 Free Software Foundation, Inc.
+.IX Header "SEE ALSO"
+\&\fInm\fR\|(1), \fIreadelf\fR\|(1), and the Info entries for \fIbinutils\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
 .PP
-.PP
-This document is distributed under the terms of the GNU Free
-Documentation License, version 1.1.  That license is described in the
-sources for this manual page, but it is not displayed here in order to
-make this manual more consise.  Copies of this license can also be
-obtained from: http://www.gnu.org/copyleft/.
-
-\"  .SH GNU Free Documentation License
-\"    Version 1.1, March 2000
-
-\"    Copyright (C) 2000  Free Software Foundation, Inc.
-\"    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-     
-\"    Everyone is permitted to copy and distribute verbatim
-\"    copies of this license document, but changing it is
-\"    not allowed.
-\"  .PP
-\"  0. PREAMBLE
-\"  .PP
-\"  The purpose of this License is to make a manual, textbook, or other
-\"  written document "free" in the sense of freedom: to assure everyone
-\"  the effective freedom to copy and redistribute it, with or without
-\"  modifying it, either commercially or noncommercially.  Secondarily,
-\"  this License preserves for the author and publisher a way to get
-\"  credit for their work, while not being considered responsible for
-\"  modifications made by others.
-\"  .PP
-\"  This License is a kind of "copyleft", which means that derivative
-\"  works of the document must themselves be free in the same sense.  It
-\"  complements the GNU General Public License, which is a copyleft
-\"  license designed for free software.
-\"  .PP
-\"  We have designed this License in order to use it for manuals for free
-\"  software, because free software needs free documentation: a free
-\"  program should come with manuals providing the same freedoms that the
-\"  software does.  But this License is not limited to software manuals;
-\"  it can be used for any textual work, regardless of subject matter or
-\"  whether it is published as a printed book.  We recommend this License
-\"  principally for works whose purpose is instruction or reference.
-\"  .PP
-\"  1. APPLICABILITY AND DEFINITIONS
-\"  .PP
-\"  This License applies to any manual or other work that contains a
-\"  notice placed by the copyright holder saying it can be distributed
-\"  under the terms of this License.  The "Document", below, refers to any
-\"  such manual or work.  Any member of the public is a licensee, and is
-\"  addressed as "you".
-\"  .PP
-\"  A "Modified Version" of the Document means any work containing the
-\"  Document or a portion of it, either copied verbatim, or with
-\"  modifications and/or translated into another language.
-\"  .PP
-\"  A "Secondary Section" is a named appendix or a front-matter section of
-\"  the Document that deals exclusively with the relationship of the
-\"  publishers or authors of the Document to the Document's overall subject
-\"  (or to related matters) and contains nothing that could fall directly
-\"  within that overall subject.  (For example, if the Document is in part a
-\"  textbook of mathematics, a Secondary Section may not explain any
-\"  mathematics.)  The relationship could be a matter of historical
-\"  connection with the subject or with related matters, or of legal,
-\"  commercial, philosophical, ethical or political position regarding
-\"  them.
-\"  .PP
-\"  The "Invariant Sections" are certain Secondary Sections whose titles
-\"  are designated, as being those of Invariant Sections, in the notice
-\"  that says that the Document is released under this License.
-\"  .PP
-\"  The "Cover Texts" are certain short passages of text that are listed,
-\"  as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-\"  the Document is released under this License.
-\"  .PP
-\"  A "Transparent" copy of the Document means a machine-readable copy,
-\"  represented in a format whose specification is available to the
-\"  general public, whose contents can be viewed and edited directly and
-\"  straightforwardly with generic text editors or (for images composed of
-\"  pixels) generic paint programs or (for drawings) some widely available
-\"  drawing editor, and that is suitable for input to text formatters or
-\"  for automatic translation to a variety of formats suitable for input
-\"  to text formatters.  A copy made in an otherwise Transparent file
-\"  format whose markup has been designed to thwart or discourage
-\"  subsequent modification by readers is not Transparent.  A copy that is
-\"  not "Transparent" is called "Opaque".
-\"  .PP
-\"  Examples of suitable formats for Transparent copies include plain
-\"  ASCII without markup, Texinfo input format, LaTeX input format, SGML
-\"  or XML using a publicly available DTD, and standard-conforming simple
-\"  HTML designed for human modification.  Opaque formats include
-\"  PostScript, PDF, proprietary formats that can be read and edited only
-\"  by proprietary word processors, SGML or XML for which the DTD and/or
-\"  processing tools are not generally available, and the
-\"  machine-generated HTML produced by some word processors for output
-\"  purposes only.
-\"  .PP
-\"  The "Title Page" means, for a printed book, the title page itself,
-\"  plus such following pages as are needed to hold, legibly, the material
-\"  this License requires to appear in the title page.  For works in
-\"  formats which do not have any title page as such, "Title Page" means
-\"  the text near the most prominent appearance of the work's title,
-\"  preceding the beginning of the body of the text.
-\"  .PP
-\"  2. VERBATIM COPYING
-\"  .PP
-\"  You may copy and distribute the Document in any medium, either
-\"  commercially or noncommercially, provided that this License, the
-\"  copyright notices, and the license notice saying this License applies
-\"  to the Document are reproduced in all copies, and that you add no other
-\"  conditions whatsoever to those of this License.  You may not use
-\"  technical measures to obstruct or control the reading or further
-\"  copying of the copies you make or distribute.  However, you may accept
-\"  compensation in exchange for copies.  If you distribute a large enough
-\"  number of copies you must also follow the conditions in section 3.
-\"  .PP
-\"  You may also lend copies, under the same conditions stated above, and
-\"  you may publicly display copies.
-\"  .PP
-\"  3. COPYING IN QUANTITY
-\"  .PP
-\"  If you publish printed copies of the Document numbering more than 100,
-\"  and the Document's license notice requires Cover Texts, you must enclose
-\"  the copies in covers that carry, clearly and legibly, all these Cover
-\"  Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-\"  the back cover.  Both covers must also clearly and legibly identify
-\"  you as the publisher of these copies.  The front cover must present
-\"  the full title with all words of the title equally prominent and
-\"  visible.  You may add other material on the covers in addition.
-\"  Copying with changes limited to the covers, as long as they preserve
-\"  the title of the Document and satisfy these conditions, can be treated
-\"  as verbatim copying in other respects.
-\"  .PP
-\"  If the required texts for either cover are too voluminous to fit
-\"  legibly, you should put the first ones listed (as many as fit
-\"  reasonably) on the actual cover, and continue the rest onto adjacent
-\"  pages.
-\"  .PP
-\"  If you publish or distribute Opaque copies of the Document numbering
-\"  more than 100, you must either include a machine-readable Transparent
-\"  copy along with each Opaque copy, or state in or with each Opaque copy
-\"  a publicly-accessible computer-network location containing a complete
-\"  Transparent copy of the Document, free of added material, which the
-\"  general network-using public has access to download anonymously at no
-\"  charge using public-standard network protocols.  If you use the latter
-\"  option, you must take reasonably prudent steps, when you begin
-\"  distribution of Opaque copies in quantity, to ensure that this
-\"  Transparent copy will remain thus accessible at the stated location
-\"  until at least one year after the last time you distribute an Opaque
-\"  copy (directly or through your agents or retailers) of that edition to
-\"  the public.
-\"  .PP
-\"  It is requested, but not required, that you contact the authors of the
-\"  Document well before redistributing any large number of copies, to give
-\"  them a chance to provide you with an updated version of the Document.
-\"  .PP
-\"  4. MODIFICATIONS
-\"  .PP
-\"  You may copy and distribute a Modified Version of the Document under
-\"  the conditions of sections 2 and 3 above, provided that you release
-\"  the Modified Version under precisely this License, with the Modified
-\"  Version filling the role of the Document, thus licensing distribution
-\"  and modification of the Modified Version to whoever possesses a copy
-\"  of it.  In addition, you must do these things in the Modified Version:
-\"  .PP
-\"  A. Use in the Title Page (and on the covers, if any) a title distinct
-\"  from that of the Document, and from those of previous versions
-\"  (which should, if there were any, be listed in the History section
-\"  of the Document).  You may use the same title as a previous version
-\"  if the original publisher of that version gives permission.
-\"  .PP
-\"  B. List on the Title Page, as authors, one or more persons or entities
-\"  responsible for authorship of the modifications in the Modified
-\"  Version, together with at least five of the principal authors of the
-\"  Document (all of its principal authors, if it has less than five).
-\"  .PP
-\"  C. State on the Title page the name of the publisher of the
-\"  Modified Version, as the publisher.
-\"  .PP
-\"  D. Preserve all the copyright notices of the Document.
-\"  .PP
-\"  E. Add an appropriate copyright notice for your modifications
-\"  adjacent to the other copyright notices.
-\"  .PP
-\"  F. Include, immediately after the copyright notices, a license notice
-\"  giving the public permission to use the Modified Version under the
-\"  terms of this License, in the form shown in the Addendum below.
-\"  Preserve in that license notice the full lists of Invariant Sections
-\"  and required Cover Texts given in the Document's license notice.
-\"  .PP
-\"  H. Include an unaltered copy of this License.
-\"  .PP
-\"  I. Preserve the section entitled "History", and its title, and add to
-\"  it an item stating at least the title, year, new authors, and
-\"  publisher of the Modified Version as given on the Title Page.  If
-\"  there is no section entitled "History" in the Document, create one
-\"  stating the title, year, authors, and publisher of the Document as
-\"  given on its Title Page, then add an item describing the Modified
-\"  Version as stated in the previous sentence.
-\"  .PP
-\"  J. Preserve the network location, if any, given in the Document for
-\"  public access to a Transparent copy of the Document, and likewise
-\"  the network locations given in the Document for previous versions
-\"  it was based on.  These may be placed in the "History" section.
-\"  You may omit a network location for a work that was published at
-\"  least four years before the Document itself, or if the original
-\"  publisher of the version it refers to gives permission.
-\"  .PP
-\"  K. In any section entitled "Acknowledgements" or "Dedications",
-\"  preserve the section's title, and preserve in the section all the
-\"  substance and tone of each of the contributor acknowledgements
-\"  and/or dedications given therein.
-\"  .PP
-\"  L. Preserve all the Invariant Sections of the Document,
-\"  unaltered in their text and in their titles.  Section numbers
-\"  or the equivalent are not considered part of the section titles.
-\"  .PP
-\"  M. Delete any section entitled "Endorsements".  Such a section
-\"  may not be included in the Modified Version.
-\"  .PP
-\"  N. Do not retitle any existing section as "Endorsements"
-\"  or to conflict in title with any Invariant Section.
-\"  .PP
-\"  If the Modified Version includes new front-matter sections or
-\"  appendices that qualify as Secondary Sections and contain no material
-\"  copied from the Document, you may at your option designate some or all
-\"  of these sections as invariant.  To do this, add their titles to the
-\"  list of Invariant Sections in the Modified Version's license notice.
-\"  These titles must be distinct from any other section titles.
-\"  .PP
-\"  You may add a section entitled "Endorsements", provided it contains
-\"  nothing but endorsements of your Modified Version by various
-\"  parties--for example, statements of peer review or that the text has
-\"  been approved by an organization as the authoritative definition of a
-\"  standard.
-\"  .PP
-\"  You may add a passage of up to five words as a Front-Cover Text, and a
-\"  passage of up to 25 words as a Back-Cover Text, to the end of the list
-\"  of Cover Texts in the Modified Version.  Only one passage of
-\"  Front-Cover Text and one of Back-Cover Text may be added by (or
-\"  through arrangements made by) any one entity.  If the Document already
-\"  includes a cover text for the same cover, previously added by you or
-\"  by arrangement made by the same entity you are acting on behalf of,
-\"  you may not add another; but you may replace the old one, on explicit
-\"  permission from the previous publisher that added the old one.
-\"  .PP
-\"  The author(s) and publisher(s) of the Document do not by this License
-\"  give permission to use their names for publicity for or to assert or
-\"  imply endorsement of any Modified Version.
-\"  .PP
-
-\"  5. COMBINING DOCUMENTS
-\"  .PP
-\"  You may combine the Document with other documents released under this
-\"  License, under the terms defined in section 4 above for modified
-\"  versions, provided that you include in the combination all of the
-\"  Invariant Sections of all of the original documents, unmodified, and
-\"  list them all as Invariant Sections of your combined work in its
-\"  license notice.
-\"  .PP
-\"  The combined work need only contain one copy of this License, and
-\"  multiple identical Invariant Sections may be replaced with a single
-\"  copy.  If there are multiple Invariant Sections with the same name but
-\"  different contents, make the title of each such section unique by
-\"  adding at the end of it, in parentheses, the name of the original
-\"  author or publisher of that section if known, or else a unique number.
-\"  Make the same adjustment to the section titles in the list of
-\"  Invariant Sections in the license notice of the combined work.
-\"  .PP
-\"  In the combination, you must combine any sections entitled "History"
-\"  in the various original documents, forming one section entitled
-\"  "History"; likewise combine any sections entitled "Acknowledgements",
-\"  and any sections entitled "Dedications".  You must delete all sections
-\"  entitled "Endorsements."
-\"  .PP
-
-\"  6. COLLECTIONS OF DOCUMENTS
-\"  .PP
-\"  You may make a collection consisting of the Document and other documents
-\"  released under this License, and replace the individual copies of this
-\"  License in the various documents with a single copy that is included in
-\"  the collection, provided that you follow the rules of this License for
-\"  verbatim copying of each of the documents in all other respects.
-\"  .PP
-\"  You may extract a single document from such a collection, and distribute
-\"  it individually under this License, provided you insert a copy of this
-\"  License into the extracted document, and follow this License in all
-\"  other respects regarding verbatim copying of that document.
-\"  .PP
-
-\"  7. AGGREGATION WITH INDEPENDENT WORKS
-\"  .PP
-\"  A compilation of the Document or its derivatives with other separate
-\"  and independent documents or works, in or on a volume of a storage or
-\"  distribution medium, does not as a whole count as a Modified Version
-\"  of the Document, provided no compilation copyright is claimed for the
-\"  compilation.  Such a compilation is called an "aggregate", and this
-\"  License does not apply to the other self-contained works thus compiled
-\"  with the Document, on account of their being thus compiled, if they
-\"  are not themselves derivative works of the Document.
-\"  .PP
-\"  If the Cover Text requirement of section 3 is applicable to these
-\"  copies of the Document, then if the Document is less than one quarter
-\"  of the entire aggregate, the Document's Cover Texts may be placed on
-\"  covers that surround only the Document within the aggregate.
-\"  Otherwise they must appear on covers around the whole aggregate.
-\"  .PP
-
-\"  8. TRANSLATION
-\"  .PP
-\"  Translation is considered a kind of modification, so you may
-\"  distribute translations of the Document under the terms of section 4.
-\"  Replacing Invariant Sections with translations requires special
-\"  permission from their copyright holders, but you may include
-\"  translations of some or all Invariant Sections in addition to the
-\"  original versions of these Invariant Sections.  You may include a
-\"  translation of this License provided that you also include the
-\"  original English version of this License.  In case of a disagreement
-\"  between the translation and the original English version of this
-\"  License, the original English version will prevail.
-\"  .PP
-
-\"  9. TERMINATION
-\"  .PP
-\"  You may not copy, modify, sublicense, or distribute the Document except
-\"  as expressly provided for under this License.  Any other attempt to
-\"  copy, modify, sublicense or distribute the Document is void, and will
-\"  automatically terminate your rights under this License.  However,
-\"  parties who have received copies, or rights, from you under this
-\"  License will not have their licenses terminated so long as such
-\"  parties remain in full compliance.
-\"  .PP
-
-\"  10. FUTURE REVISIONS OF THIS LICENSE
-\"  .PP
-\"  The Free Software Foundation may publish new, revised versions
-\"  of the GNU Free Documentation License from time to time.  Such new
-\"  versions will be similar in spirit to the present version, but may
-\"  differ in detail to address new problems or concerns.  See
-\"  http://www.gnu.org/copyleft/.
-\"  .PP
-\"  Each version of the License is given a distinguishing version number.
-\"  If the Document specifies that a particular numbered version of this
-\"  License "or any later version" applies to it, you have the option of
-\"  following the terms and conditions either of that specified version or
-\"  of any later version that has been published (not as a draft) by the
-\"  Free Software Foundation.  If the Document does not specify a version
-\"  number of this License, you may choose any version ever published (not
-\"  as a draft) by the Free Software Foundation.
-\"  .PP
-
-\"  ADDENDUM: How to use this License for your documents
-\"  .PP
-\"  To use this License in a document you have written, include a copy of
-\"  the License in the document and put the following copyright and
-\"  license notices just after the title page:
-\"  .PP
-\"      Copyright (c)  YEAR  YOUR NAME.
-\"      Permission is granted to copy, distribute and/or
-\"      modify this document under the terms of the GNU
-\"      Free Documentation License, Version 1.1 or any later
-\"      version published by the Free Software Foundation;
-\"      with the Invariant Sections being LIST THEIR TITLES,
-\"      with the Front-Cover Texts being LIST, and with the
-\"      Back-Cover Texts being LIST.  A copy of the license
-\"      is included in the section entitled "GNU Free
-\"      Documentation License".
-\"  .PP
-\"  If you have no Invariant Sections, write "with no Invariant Sections"
-\"  instead of saying which ones are invariant.  If you have no
-\"  Front-Cover Texts, write "no Front-Cover Texts" instead of
-\"  "Front-Cover Texts being LIST"; likewise for Back-Cover Texts.
-\"  .PP
-\"  If your document contains nontrivial examples of program code, we
-\"  recommend releasing these examples in parallel under your choice of
-\"  free software license, such as the GNU General Public License,
-\"  to permit their use in free software.
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/ranlib.1 binutils-2.11.2-m68hc1x/binutils/ranlib.1
--- binutils-2.11.2/binutils/ranlib.1	Tue Nov 28 21:40:34 2000
+++ binutils-2.11.2-m68hc1x/binutils/ranlib.1	Fri Sep 21 22:11:27 2001
@@ -1,441 +1,177 @@
-.\" Copyright (c) 1991, 2000 Free Software Foundation
-.\" See section COPYING for conditions for redistribution
-.TH ranlib 1 "5 November 1991" "Free Software Foundation" "GNU Development Tools"
-.de BP
-.sp
-.ti \-.2i
-\(**
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:09:42 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
 ..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
 
-.SH NAME
-ranlib \- generate index to archive.
-
-.SH SYNOPSIS
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
 .hy 0
-.na
-.B ranlib \c
-.RB "[\|" \-v | \-V "\|]"
-.I archive\c
-\&
-.ad b
-.hy 1
-.SH DESCRIPTION
-.B ranlib
-generates an index to the contents of an archive, and
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "RANLIB 1"
+.TH RANLIB 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
+.UC
+.SH "NAME"
+ranlib \- generate index to archive.
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+ranlib [\fB\-vV\fR] \fIarchive\fR
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fBranlib\fR generates an index to the contents of an archive and
 stores it in the archive.  The index lists each symbol defined by a
 member of an archive that is a relocatable object file.  
 .PP
-You may use
-.RB ` "nm \-s" '
-or
-.RB ` "nm \-\-print-armap" '
-to list this index.
+You may use \fBnm \-s\fR or \fBnm \-\-print-armap\fR to list this index.
 .PP
-An archive with such an index speeds up linking to the library, and
+An archive with such an index speeds up linking to the library and
 allows routines in the library to call each other without regard to
 their placement in the archive.
 .PP
-The GNU
-.B ranlib
-program is another form of GNU
-.BR ar ;
-running
-.B ranlib
-is completely equivalent to executing
-.RB ` "ar \-s" '.
-
-.SH OPTIONS
-.TP
-.B \-v
-Print the version number of
-.B ranlib
-and exit.
-
+The \s-1GNU\s0 \fBranlib\fR program is another form of \s-1GNU\s0 \fBar\fR; running
+\&\fBranlib\fR is completely equivalent to executing \fBar \-s\fR.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+.IP "\fB\-v\fR" 4
+.IX Item "-v"
+.PD 0
+.IP "\fB\-V\fR" 4
+.IX Item "-V"
+.IP "\fB\*(--version\fR" 4
+.IX Item "version"
+.PD
+Show the version number of \fBranlib\fR.
 .SH "SEE ALSO"
-.RB "`\|" binutils "\|'"
-entry in 
-.B
-info\c
-\&; 
-.I
-The GNU Binary Utilities\c
-\&, Roland H. Pesch (October 1991); 
-.BR ar "(" 1 "),"
-.BR nm "(" 1 ")."
-
-
-.SH COPYING
-Copyright (c) 1991, 2000 Free Software Foundation, Inc.
+.IX Header "SEE ALSO"
+\&\fIar\fR\|(1), \fInm\fR\|(1), and the Info entries for \fIbinutils\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
 .PP
-This document is distributed under the terms of the GNU Free
-Documentation License, version 1.1.  That license is described in the
-sources for this manual page, but it is not displayed here in order to
-make this manual more consise.  Copies of this license can also be
-obtained from: http://www.gnu.org/copyleft/.
-
-\"  .SH GNU Free Documentation License
-\"    Version 1.1, March 2000
-
-\"    Copyright (C) 2000  Free Software Foundation, Inc.
-\"    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-     
-\"    Everyone is permitted to copy and distribute verbatim
-\"    copies of this license document, but changing it is
-\"    not allowed.
-\"  .PP
-\"  0. PREAMBLE
-\"  .PP
-\"  The purpose of this License is to make a manual, textbook, or other
-\"  written document "free" in the sense of freedom: to assure everyone
-\"  the effective freedom to copy and redistribute it, with or without
-\"  modifying it, either commercially or noncommercially.  Secondarily,
-\"  this License preserves for the author and publisher a way to get
-\"  credit for their work, while not being considered responsible for
-\"  modifications made by others.
-\"  .PP
-\"  This License is a kind of "copyleft", which means that derivative
-\"  works of the document must themselves be free in the same sense.  It
-\"  complements the GNU General Public License, which is a copyleft
-\"  license designed for free software.
-\"  .PP
-\"  We have designed this License in order to use it for manuals for free
-\"  software, because free software needs free documentation: a free
-\"  program should come with manuals providing the same freedoms that the
-\"  software does.  But this License is not limited to software manuals;
-\"  it can be used for any textual work, regardless of subject matter or
-\"  whether it is published as a printed book.  We recommend this License
-\"  principally for works whose purpose is instruction or reference.
-\"  .PP
-\"  1. APPLICABILITY AND DEFINITIONS
-\"  .PP
-\"  This License applies to any manual or other work that contains a
-\"  notice placed by the copyright holder saying it can be distributed
-\"  under the terms of this License.  The "Document", below, refers to any
-\"  such manual or work.  Any member of the public is a licensee, and is
-\"  addressed as "you".
-\"  .PP
-\"  A "Modified Version" of the Document means any work containing the
-\"  Document or a portion of it, either copied verbatim, or with
-\"  modifications and/or translated into another language.
-\"  .PP
-\"  A "Secondary Section" is a named appendix or a front-matter section of
-\"  the Document that deals exclusively with the relationship of the
-\"  publishers or authors of the Document to the Document's overall subject
-\"  (or to related matters) and contains nothing that could fall directly
-\"  within that overall subject.  (For example, if the Document is in part a
-\"  textbook of mathematics, a Secondary Section may not explain any
-\"  mathematics.)  The relationship could be a matter of historical
-\"  connection with the subject or with related matters, or of legal,
-\"  commercial, philosophical, ethical or political position regarding
-\"  them.
-\"  .PP
-\"  The "Invariant Sections" are certain Secondary Sections whose titles
-\"  are designated, as being those of Invariant Sections, in the notice
-\"  that says that the Document is released under this License.
-\"  .PP
-\"  The "Cover Texts" are certain short passages of text that are listed,
-\"  as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-\"  the Document is released under this License.
-\"  .PP
-\"  A "Transparent" copy of the Document means a machine-readable copy,
-\"  represented in a format whose specification is available to the
-\"  general public, whose contents can be viewed and edited directly and
-\"  straightforwardly with generic text editors or (for images composed of
-\"  pixels) generic paint programs or (for drawings) some widely available
-\"  drawing editor, and that is suitable for input to text formatters or
-\"  for automatic translation to a variety of formats suitable for input
-\"  to text formatters.  A copy made in an otherwise Transparent file
-\"  format whose markup has been designed to thwart or discourage
-\"  subsequent modification by readers is not Transparent.  A copy that is
-\"  not "Transparent" is called "Opaque".
-\"  .PP
-\"  Examples of suitable formats for Transparent copies include plain
-\"  ASCII without markup, Texinfo input format, LaTeX input format, SGML
-\"  or XML using a publicly available DTD, and standard-conforming simple
-\"  HTML designed for human modification.  Opaque formats include
-\"  PostScript, PDF, proprietary formats that can be read and edited only
-\"  by proprietary word processors, SGML or XML for which the DTD and/or
-\"  processing tools are not generally available, and the
-\"  machine-generated HTML produced by some word processors for output
-\"  purposes only.
-\"  .PP
-\"  The "Title Page" means, for a printed book, the title page itself,
-\"  plus such following pages as are needed to hold, legibly, the material
-\"  this License requires to appear in the title page.  For works in
-\"  formats which do not have any title page as such, "Title Page" means
-\"  the text near the most prominent appearance of the work's title,
-\"  preceding the beginning of the body of the text.
-\"  .PP
-\"  2. VERBATIM COPYING
-\"  .PP
-\"  You may copy and distribute the Document in any medium, either
-\"  commercially or noncommercially, provided that this License, the
-\"  copyright notices, and the license notice saying this License applies
-\"  to the Document are reproduced in all copies, and that you add no other
-\"  conditions whatsoever to those of this License.  You may not use
-\"  technical measures to obstruct or control the reading or further
-\"  copying of the copies you make or distribute.  However, you may accept
-\"  compensation in exchange for copies.  If you distribute a large enough
-\"  number of copies you must also follow the conditions in section 3.
-\"  .PP
-\"  You may also lend copies, under the same conditions stated above, and
-\"  you may publicly display copies.
-\"  .PP
-\"  3. COPYING IN QUANTITY
-\"  .PP
-\"  If you publish printed copies of the Document numbering more than 100,
-\"  and the Document's license notice requires Cover Texts, you must enclose
-\"  the copies in covers that carry, clearly and legibly, all these Cover
-\"  Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-\"  the back cover.  Both covers must also clearly and legibly identify
-\"  you as the publisher of these copies.  The front cover must present
-\"  the full title with all words of the title equally prominent and
-\"  visible.  You may add other material on the covers in addition.
-\"  Copying with changes limited to the covers, as long as they preserve
-\"  the title of the Document and satisfy these conditions, can be treated
-\"  as verbatim copying in other respects.
-\"  .PP
-\"  If the required texts for either cover are too voluminous to fit
-\"  legibly, you should put the first ones listed (as many as fit
-\"  reasonably) on the actual cover, and continue the rest onto adjacent
-\"  pages.
-\"  .PP
-\"  If you publish or distribute Opaque copies of the Document numbering
-\"  more than 100, you must either include a machine-readable Transparent
-\"  copy along with each Opaque copy, or state in or with each Opaque copy
-\"  a publicly-accessible computer-network location containing a complete
-\"  Transparent copy of the Document, free of added material, which the
-\"  general network-using public has access to download anonymously at no
-\"  charge using public-standard network protocols.  If you use the latter
-\"  option, you must take reasonably prudent steps, when you begin
-\"  distribution of Opaque copies in quantity, to ensure that this
-\"  Transparent copy will remain thus accessible at the stated location
-\"  until at least one year after the last time you distribute an Opaque
-\"  copy (directly or through your agents or retailers) of that edition to
-\"  the public.
-\"  .PP
-\"  It is requested, but not required, that you contact the authors of the
-\"  Document well before redistributing any large number of copies, to give
-\"  them a chance to provide you with an updated version of the Document.
-\"  .PP
-\"  4. MODIFICATIONS
-\"  .PP
-\"  You may copy and distribute a Modified Version of the Document under
-\"  the conditions of sections 2 and 3 above, provided that you release
-\"  the Modified Version under precisely this License, with the Modified
-\"  Version filling the role of the Document, thus licensing distribution
-\"  and modification of the Modified Version to whoever possesses a copy
-\"  of it.  In addition, you must do these things in the Modified Version:
-\"  .PP
-\"  A. Use in the Title Page (and on the covers, if any) a title distinct
-\"  from that of the Document, and from those of previous versions
-\"  (which should, if there were any, be listed in the History section
-\"  of the Document).  You may use the same title as a previous version
-\"  if the original publisher of that version gives permission.
-\"  .PP
-\"  B. List on the Title Page, as authors, one or more persons or entities
-\"  responsible for authorship of the modifications in the Modified
-\"  Version, together with at least five of the principal authors of the
-\"  Document (all of its principal authors, if it has less than five).
-\"  .PP
-\"  C. State on the Title page the name of the publisher of the
-\"  Modified Version, as the publisher.
-\"  .PP
-\"  D. Preserve all the copyright notices of the Document.
-\"  .PP
-\"  E. Add an appropriate copyright notice for your modifications
-\"  adjacent to the other copyright notices.
-\"  .PP
-\"  F. Include, immediately after the copyright notices, a license notice
-\"  giving the public permission to use the Modified Version under the
-\"  terms of this License, in the form shown in the Addendum below.
-\"  Preserve in that license notice the full lists of Invariant Sections
-\"  and required Cover Texts given in the Document's license notice.
-\"  .PP
-\"  H. Include an unaltered copy of this License.
-\"  .PP
-\"  I. Preserve the section entitled "History", and its title, and add to
-\"  it an item stating at least the title, year, new authors, and
-\"  publisher of the Modified Version as given on the Title Page.  If
-\"  there is no section entitled "History" in the Document, create one
-\"  stating the title, year, authors, and publisher of the Document as
-\"  given on its Title Page, then add an item describing the Modified
-\"  Version as stated in the previous sentence.
-\"  .PP
-\"  J. Preserve the network location, if any, given in the Document for
-\"  public access to a Transparent copy of the Document, and likewise
-\"  the network locations given in the Document for previous versions
-\"  it was based on.  These may be placed in the "History" section.
-\"  You may omit a network location for a work that was published at
-\"  least four years before the Document itself, or if the original
-\"  publisher of the version it refers to gives permission.
-\"  .PP
-\"  K. In any section entitled "Acknowledgements" or "Dedications",
-\"  preserve the section's title, and preserve in the section all the
-\"  substance and tone of each of the contributor acknowledgements
-\"  and/or dedications given therein.
-\"  .PP
-\"  L. Preserve all the Invariant Sections of the Document,
-\"  unaltered in their text and in their titles.  Section numbers
-\"  or the equivalent are not considered part of the section titles.
-\"  .PP
-\"  M. Delete any section entitled "Endorsements".  Such a section
-\"  may not be included in the Modified Version.
-\"  .PP
-\"  N. Do not retitle any existing section as "Endorsements"
-\"  or to conflict in title with any Invariant Section.
-\"  .PP
-\"  If the Modified Version includes new front-matter sections or
-\"  appendices that qualify as Secondary Sections and contain no material
-\"  copied from the Document, you may at your option designate some or all
-\"  of these sections as invariant.  To do this, add their titles to the
-\"  list of Invariant Sections in the Modified Version's license notice.
-\"  These titles must be distinct from any other section titles.
-\"  .PP
-\"  You may add a section entitled "Endorsements", provided it contains
-\"  nothing but endorsements of your Modified Version by various
-\"  parties--for example, statements of peer review or that the text has
-\"  been approved by an organization as the authoritative definition of a
-\"  standard.
-\"  .PP
-\"  You may add a passage of up to five words as a Front-Cover Text, and a
-\"  passage of up to 25 words as a Back-Cover Text, to the end of the list
-\"  of Cover Texts in the Modified Version.  Only one passage of
-\"  Front-Cover Text and one of Back-Cover Text may be added by (or
-\"  through arrangements made by) any one entity.  If the Document already
-\"  includes a cover text for the same cover, previously added by you or
-\"  by arrangement made by the same entity you are acting on behalf of,
-\"  you may not add another; but you may replace the old one, on explicit
-\"  permission from the previous publisher that added the old one.
-\"  .PP
-\"  The author(s) and publisher(s) of the Document do not by this License
-\"  give permission to use their names for publicity for or to assert or
-\"  imply endorsement of any Modified Version.
-\"  .PP
-
-\"  5. COMBINING DOCUMENTS
-\"  .PP
-\"  You may combine the Document with other documents released under this
-\"  License, under the terms defined in section 4 above for modified
-\"  versions, provided that you include in the combination all of the
-\"  Invariant Sections of all of the original documents, unmodified, and
-\"  list them all as Invariant Sections of your combined work in its
-\"  license notice.
-\"  .PP
-\"  The combined work need only contain one copy of this License, and
-\"  multiple identical Invariant Sections may be replaced with a single
-\"  copy.  If there are multiple Invariant Sections with the same name but
-\"  different contents, make the title of each such section unique by
-\"  adding at the end of it, in parentheses, the name of the original
-\"  author or publisher of that section if known, or else a unique number.
-\"  Make the same adjustment to the section titles in the list of
-\"  Invariant Sections in the license notice of the combined work.
-\"  .PP
-\"  In the combination, you must combine any sections entitled "History"
-\"  in the various original documents, forming one section entitled
-\"  "History"; likewise combine any sections entitled "Acknowledgements",
-\"  and any sections entitled "Dedications".  You must delete all sections
-\"  entitled "Endorsements."
-\"  .PP
-
-\"  6. COLLECTIONS OF DOCUMENTS
-\"  .PP
-\"  You may make a collection consisting of the Document and other documents
-\"  released under this License, and replace the individual copies of this
-\"  License in the various documents with a single copy that is included in
-\"  the collection, provided that you follow the rules of this License for
-\"  verbatim copying of each of the documents in all other respects.
-\"  .PP
-\"  You may extract a single document from such a collection, and distribute
-\"  it individually under this License, provided you insert a copy of this
-\"  License into the extracted document, and follow this License in all
-\"  other respects regarding verbatim copying of that document.
-\"  .PP
-
-\"  7. AGGREGATION WITH INDEPENDENT WORKS
-\"  .PP
-\"  A compilation of the Document or its derivatives with other separate
-\"  and independent documents or works, in or on a volume of a storage or
-\"  distribution medium, does not as a whole count as a Modified Version
-\"  of the Document, provided no compilation copyright is claimed for the
-\"  compilation.  Such a compilation is called an "aggregate", and this
-\"  License does not apply to the other self-contained works thus compiled
-\"  with the Document, on account of their being thus compiled, if they
-\"  are not themselves derivative works of the Document.
-\"  .PP
-\"  If the Cover Text requirement of section 3 is applicable to these
-\"  copies of the Document, then if the Document is less than one quarter
-\"  of the entire aggregate, the Document's Cover Texts may be placed on
-\"  covers that surround only the Document within the aggregate.
-\"  Otherwise they must appear on covers around the whole aggregate.
-\"  .PP
-
-\"  8. TRANSLATION
-\"  .PP
-\"  Translation is considered a kind of modification, so you may
-\"  distribute translations of the Document under the terms of section 4.
-\"  Replacing Invariant Sections with translations requires special
-\"  permission from their copyright holders, but you may include
-\"  translations of some or all Invariant Sections in addition to the
-\"  original versions of these Invariant Sections.  You may include a
-\"  translation of this License provided that you also include the
-\"  original English version of this License.  In case of a disagreement
-\"  between the translation and the original English version of this
-\"  License, the original English version will prevail.
-\"  .PP
-
-\"  9. TERMINATION
-\"  .PP
-\"  You may not copy, modify, sublicense, or distribute the Document except
-\"  as expressly provided for under this License.  Any other attempt to
-\"  copy, modify, sublicense or distribute the Document is void, and will
-\"  automatically terminate your rights under this License.  However,
-\"  parties who have received copies, or rights, from you under this
-\"  License will not have their licenses terminated so long as such
-\"  parties remain in full compliance.
-\"  .PP
-
-\"  10. FUTURE REVISIONS OF THIS LICENSE
-\"  .PP
-\"  The Free Software Foundation may publish new, revised versions
-\"  of the GNU Free Documentation License from time to time.  Such new
-\"  versions will be similar in spirit to the present version, but may
-\"  differ in detail to address new problems or concerns.  See
-\"  http://www.gnu.org/copyleft/.
-\"  .PP
-\"  Each version of the License is given a distinguishing version number.
-\"  If the Document specifies that a particular numbered version of this
-\"  License "or any later version" applies to it, you have the option of
-\"  following the terms and conditions either of that specified version or
-\"  of any later version that has been published (not as a draft) by the
-\"  Free Software Foundation.  If the Document does not specify a version
-\"  number of this License, you may choose any version ever published (not
-\"  as a draft) by the Free Software Foundation.
-\"  .PP
-
-\"  ADDENDUM: How to use this License for your documents
-\"  .PP
-\"  To use this License in a document you have written, include a copy of
-\"  the License in the document and put the following copyright and
-\"  license notices just after the title page:
-\"  .PP
-\"      Copyright (c)  YEAR  YOUR NAME.
-\"      Permission is granted to copy, distribute and/or
-\"      modify this document under the terms of the GNU
-\"      Free Documentation License, Version 1.1 or any later
-\"      version published by the Free Software Foundation;
-\"      with the Invariant Sections being LIST THEIR TITLES,
-\"      with the Front-Cover Texts being LIST, and with the
-\"      Back-Cover Texts being LIST.  A copy of the license
-\"      is included in the section entitled "GNU Free
-\"      Documentation License".
-\"  .PP
-\"  If you have no Invariant Sections, write "with no Invariant Sections"
-\"  instead of saying which ones are invariant.  If you have no
-\"  Front-Cover Texts, write "no Front-Cover Texts" instead of
-\"  "Front-Cover Texts being LIST"; likewise for Back-Cover Texts.
-\"  .PP
-\"  If your document contains nontrivial examples of program code, we
-\"  recommend releasing these examples in parallel under your choice of
-\"  free software license, such as the GNU General Public License,
-\"  to permit their use in free software.
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/readelf.1 binutils-2.11.2-m68hc1x/binutils/readelf.1
--- binutils-2.11.2/binutils/readelf.1	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/binutils/readelf.1	Fri Sep 21 22:11:27 2001
@@ -0,0 +1,307 @@
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:09:42 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
+..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.hy 0
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "READELF 1"
+.TH READELF 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
+.UC
+.SH "NAME"
+readelf \- Displays information about \s-1ELF\s0 files.
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+readelf [\fB\-a\fR|\fB\*(--all\fR]
+        [\fB\-h\fR|\fB\*(--file-header\fR]
+        [\fB\-l\fR|\fB\*(--program-headers\fR|\fB\*(--segments\fR]
+        [\fB\-S\fR|\fB\*(--section-headers\fR|\fB\*(--sections\fR]
+        [\fB\-e\fR|\fB\*(--headers\fR]
+        [\fB\-s\fR|\fB\*(--syms\fR|\fB\*(--symbols\fR]
+        [\fB\-n\fR|\fB\*(--notes\fR]
+        [\fB\-r\fR|\fB\*(--relocs\fR]
+        [\fB\-d\fR|\fB\*(--dynamic\fR]
+        [\fB\-V\fR|\fB\*(--version-info\fR]
+        [\fB\-D\fR|\fB\*(--use-dynamic\fR]
+        [\fB\-x\fR <number>|\fB\*(--hex-dump=\fR<number>]
+        [\fB\-w[liaprf]\fR|\fB\*(--debug-dump\fR[=info,=line,=abbrev,=pubnames,=ranges,=frames]]
+        [\fB\*(--histogram\fR]
+        [\fB\-v\fR|\fB\*(--version\fR]
+        [\fB\-H\fR|\fB\*(--help\fR]
+        \fIelffile\fR...
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fBreadelf\fR displays information about one or more \s-1ELF\s0 format object
+files.  The options control what particular information to display.
+.PP
+\&\fIelffile\fR... are the object files to be examined.  At the
+moment, \fBreadelf\fR does not support examining archives, nor does it
+support examing 64 bit \s-1ELF\s0 files.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+The long and short forms of options, shown here as alternatives, are
+equivalent.  At least one option besides \fB\-v\fR or \fB\-H\fR must be
+given. 
+.IP "\fB\-a\fR" 4
+.IX Item "-a"
+.PD 0
+.IP "\fB\*(--all\fR" 4
+.IX Item "all"
+.PD
+Equivalent to specifiying \fB\*(--file-header\fR,
+\&\fB\*(--program-headers\fR, \fB\*(--sections\fR, \fB\*(--symbols\fR,
+\&\fB\*(--relocs\fR, \fB\*(--dynamic\fR, \fB\*(--notes\fR and
+\&\fB\*(--version-info\fR. 
+.IP "\fB\-h\fR" 4
+.IX Item "-h"
+.PD 0
+.IP "\fB\*(--file-header\fR" 4
+.IX Item "file-header"
+.PD
+Displays the information contained in the \s-1ELF\s0 header at the start of the
+file.
+.IP "\fB\-l\fR" 4
+.IX Item "-l"
+.PD 0
+.IP "\fB\*(--program-headers\fR" 4
+.IX Item "program-headers"
+.IP "\fB\*(--segments\fR" 4
+.IX Item "segments"
+.PD
+Displays the information contained in the file's segment headers, if it
+has any.
+.IP "\fB\-S\fR" 4
+.IX Item "-S"
+.PD 0
+.IP "\fB\*(--sections\fR" 4
+.IX Item "sections"
+.IP "\fB\*(--section-headers\fR" 4
+.IX Item "section-headers"
+.PD
+Displays the information contained in the file's section headers, if it
+has any.
+.IP "\fB\-s\fR" 4
+.IX Item "-s"
+.PD 0
+.IP "\fB\*(--symbols\fR" 4
+.IX Item "symbols"
+.IP "\fB\*(--syms\fR" 4
+.IX Item "syms"
+.PD
+Displays the entries in symbol table section of the file, if it has one.
+.IP "\fB\-e\fR" 4
+.IX Item "-e"
+.PD 0
+.IP "\fB\*(--headers\fR" 4
+.IX Item "headers"
+.PD
+Display all the headers in the file.  Equivalent to \fB\-h \-l \-S\fR.
+.IP "\fB\-n\fR" 4
+.IX Item "-n"
+.PD 0
+.IP "\fB\*(--notes\fR" 4
+.IX Item "notes"
+.PD
+Displays the contents of the \s-1NOTE\s0 segment, if it exists.
+.IP "\fB\-r\fR" 4
+.IX Item "-r"
+.PD 0
+.IP "\fB\*(--relocs\fR" 4
+.IX Item "relocs"
+.PD
+Displays the contents of the file's relocation section, if it has one.
+.IP "\fB\-d\fR" 4
+.IX Item "-d"
+.PD 0
+.IP "\fB\*(--dynamic\fR" 4
+.IX Item "dynamic"
+.PD
+Displays the contents of the file's dynamic section, if it has one.
+.IP "\fB\-V\fR" 4
+.IX Item "-V"
+.PD 0
+.IP "\fB\*(--version-info\fR" 4
+.IX Item "version-info"
+.PD
+Displays the contents of the version sections in the file, it they
+exist.
+.IP "\fB\-D\fR" 4
+.IX Item "-D"
+.PD 0
+.IP "\fB\*(--use-dynamic\fR" 4
+.IX Item "use-dynamic"
+.PD
+When displaying symbols, this option makes \fBreadelf\fR use the
+symbol table in the file's dynamic section, rather than the one in the
+symbols section.
+.IP "\fB\-x <number>\fR" 4
+.IX Item "-x <number>"
+.PD 0
+.IP "\fB\*(--hex-dump=<number>\fR" 4
+.IX Item "hex-dump=<number>"
+.PD
+Displays the contents of the indicated section as a hexadecimal dump.
+.IP "\fB\-w[liaprf]\fR" 4
+.IX Item "-w[liaprf]"
+.PD 0
+.IP "\fB\*(--debug-dump[=line,=info,=abbrev,=pubnames,=ranges,=frames]\fR" 4
+.IX Item "debug-dump[=line,=info,=abbrev,=pubnames,=ranges,=frames]"
+.PD
+Displays the contents of the debug sections in the file, if any are
+present.  If one of the optional letters or words follows the switch
+then only data found in those specific sections will be dumped.
+.IP "\fB\*(--histogram\fR" 4
+.IX Item "histogram"
+Display a histogram of bucket list lengths when displaying the contents
+of the symbol tables.
+.IP "\fB\-v\fR" 4
+.IX Item "-v"
+.PD 0
+.IP "\fB\*(--version\fR" 4
+.IX Item "version"
+.PD
+Display the version number of readelf.
+.IP "\fB\-H\fR" 4
+.IX Item "-H"
+.PD 0
+.IP "\fB\*(--help\fR" 4
+.IX Item "help"
+.PD
+Display the command line options understood by \fBreadelf\fR.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fIobjdump\fR\|(1), and the Info entries for \fIbinutils\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
+.PP
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/readelf.c binutils-2.11.2-m68hc1x/binutils/readelf.c
--- binutils-2.11.2/binutils/readelf.c	Fri Sep 21 20:58:39 2001
+++ binutils-2.11.2-m68hc1x/binutils/readelf.c	Sat Dec 15 23:02:11 2001
@@ -61,6 +61,7 @@
 #include "elf/d10v.h"
 #include "elf/d30v.h"
 #include "elf/sh.h"
+#include "elf/m68hc11.h"
 #include "elf/mn10200.h"
 #include "elf/mn10300.h"
 #include "elf/hppa.h"
@@ -894,6 +895,11 @@ dump_relocations (file, rel_offset, rel_
 	case EM_CYGNUS_FR30:
 	  rtype = elf_fr30_reloc_type (type);
 	  break;
+
+        case EM_68HC12:
+        case EM_68HC11:
+          rtype = elf_m68hc11_reloc_type (type);
+          break;
 
 	case EM_MCORE:
 	  rtype = elf_mcore_reloc_type (type);
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/size.1 binutils-2.11.2-m68hc1x/binutils/size.1
--- binutils-2.11.2/binutils/size.1	Tue Nov 28 21:40:34 2000
+++ binutils-2.11.2-m68hc1x/binutils/size.1	Fri Sep 21 22:11:27 2001
@@ -1,519 +1,241 @@
-.\" Copyright (c) 1991, 2000 Free Software Foundation
-.\" See section COPYING for conditions for redistribution
-.TH size 1 "5 November 1991" "Free Software Foundation" "GNU Development Tools"
-.de BP
-.sp
-.ti \-.2i
-\(**
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:09:42 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
 ..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
 
-.SH NAME
-size \- list section sizes and total size.
-
-.SH SYNOPSIS
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
 .hy 0
-.na
-.TP
-.B size
-.RB "[\|" \-A \||\| \-B \||\| \c
-.BI "\-\-format=" compatibility\c
-\&\|]
-.RB "[\|" \-\-help "\|]" 
-.RB "[\|" \-d \||\| \-o \||\| \-x\c
-\||\|\c
-.BI "\-\-radix=" number\c
-\&\|]
-.RB "[\|" \c
-.BI "\-\-target=" bfdname\c
-\&\|]
-.RB "[\|" \-V \||\| \-\-version "\|]"  
-.I objfile\c
-\&.\|.\|.
-.ad b
-.hy 1
-.SH DESCRIPTION
-The GNU \c
-.B size\c
-\& utility lists the section sizes\(em\&and the total
-size\(em\&for each of the object files
-.I objfile
-in its argument list.
-By default, one line of output is generated for each object file or each
-module in an archive.
-
-.SH OPTIONS
-.TP
-.B \-A
-.TP
-.B \-B
-.TP
-.BI "\-\-format " "compatibility"
-Using one of these options, you can choose whether the output from GNU
-\c
-.B size\c
-\& resembles output from System V \c
-.B size\c
-\& (using `\|\c
-.B \-A\c
-\|',
-or `\|\c
-.B \-\-format=sysv\c
-\|'), or Berkeley \c
-.B size\c
-\& (using `\|\c
-.B \-B\c
-\|', or
-`\|\c
-.B \-\-format=berkeley\c
-\|').  The default is the one-line format similar to
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "SIZE 1"
+.TH SIZE 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
+.UC
+.SH "NAME"
+size \- list section sizes and total size.
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+size [\fB\-A\fR|\fB\-B\fR|\fB\*(--format=\fR\fIcompatibility\fR]
+     [\fB\*(--help\fR] [\fB\-d\fR|\fB\-o\fR|\fB\-x\fR|\fB\*(--radix=\fR\fInumber\fR]
+     [\fB\*(--target=\fR\fIbfdname\fR] [\fB\-V\fR|\fB\*(--version\fR]  
+     [\fIobjfile\fR...]
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+The \s-1GNU\s0 \fBsize\fR utility lists the section sizes\-\-\-and the total
+size\-\-\-for each of the object or archive files \fIobjfile\fR in its
+argument list.  By default, one line of output is generated for each
+object file or each module in an archive.
+.PP
+\&\fIobjfile\fR... are the object files to be examined.
+If none are specified, the file \f(CW\*(C`a.out\*(C'\fR will be used.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+The command line options have the following meanings:
+.IP "\fB\-A\fR" 4
+.IX Item "-A"
+.PD 0
+.IP "\fB\-B\fR" 4
+.IX Item "-B"
+.IP "\fB\*(--format=\fR\fIcompatibility\fR" 4
+.IX Item "format=compatibility"
+.PD
+Using one of these options, you can choose whether the output from \s-1GNU\s0
+\&\fBsize\fR resembles output from System V \fBsize\fR (using \fB\-A\fR,
+or \fB\*(--format=sysv\fR), or Berkeley \fBsize\fR (using \fB\-B\fR, or
+\&\fB\*(--format=berkeley\fR).  The default is the one-line format similar to
 Berkeley's.  
-
-.TP
-.B \-\-help
+.Sp
+Here is an example of the Berkeley (default) format of output from
+\&\fBsize\fR: 
+.Sp
+.Vb 4
+\&        $ size --format=Berkeley ranlib size
+\&        text    data    bss     dec     hex     filename
+\&        294880  81920   11592   388392  5ed28   ranlib
+\&        294880  81920   11888   388688  5ee50   size
+.Ve
+This is the same data, but displayed closer to System V conventions:
+.Sp
+.Vb 7
+\&        $ size --format=SysV ranlib size
+\&        ranlib  :
+\&        section         size         addr
+\&        .text         294880         8192       
+\&        .data          81920       303104       
+\&        .bss           11592       385024       
+\&        Total         388392
+.Ve
+.Vb 6
+\&        size  :
+\&        section         size         addr
+\&        .text         294880         8192       
+\&        .data          81920       303104       
+\&        .bss           11888       385024       
+\&        Total         388688
+.Ve
+.IP "\fB\*(--help\fR" 4
+.IX Item "help"
 Show a summary of acceptable arguments and options.
-
-.TP
-.B \-d
-.TP
-.B \-o
-.TP
-.B \-x
-.TP
-.BI "\-\-radix " "number"
+.IP "\fB\-d\fR" 4
+.IX Item "-d"
+.PD 0
+.IP "\fB\-o\fR" 4
+.IX Item "-o"
+.IP "\fB\-x\fR" 4
+.IX Item "-x"
+.IP "\fB\*(--radix=\fR\fInumber\fR" 4
+.IX Item "radix=number"
+.PD
 Using one of these options, you can control whether the size of each
-section is given in decimal (`\|\c
-.B \-d\c
-\|', or `\|\c
-.B \-\-radix 10\c
-\|'); octal
-(`\|\c
-.B \-o\c
-\|', or `\|\c
-.B \-\-radix 8\c
-\|'); or hexadecimal (`\|\c
-.B \-x\c
-\|', or
-`\|\c
-.B \-\-radix 16\c
-\|').  In `\|\c
-.B \-\-radix \c
-.I number\c
-\&\c
-\|', only the three
+section is given in decimal (\fB\-d\fR, or \fB\*(--radix=10\fR); octal
+(\fB\-o\fR, or \fB\*(--radix=8\fR); or hexadecimal (\fB\-x\fR, or
+\&\fB\*(--radix=16\fR).  In \fB\*(--radix=\fR\fInumber\fR, only the three
 values (8, 10, 16) are supported.  The total size is always given in two
-radices; decimal and hexadecimal for `\|\c
-.B \-d\c
-\|' or `\|\c
-.B \-x\c
-\|' output, or
-octal and hexadecimal if you're using `\|\c
-.B \-o\c
-\|'.
-
-.TP
-.BI "\-\-target " "bfdname"
-You can specify a particular object-code format for \c
-.I objfile\c
-\& as
-\c
-.I bfdname\c
-\&.  This may not be necessary; \c
-.I size\c
-\& can
-automatically recognize many formats.   See 
-.BR objdump ( 1 ) 
-for information
-on listing available formats.
-
-.TP
-.B \-V
-.TP
-.B \-\-version
-Display version number information on \c
-.B size\c
-\& itself.
-
+radices; decimal and hexadecimal for \fB\-d\fR or \fB\-x\fR output, or
+octal and hexadecimal if you're using \fB\-o\fR.
+.IP "\fB\*(--target=\fR\fIbfdname\fR" 4
+.IX Item "target=bfdname"
+Specify that the object-code format for \fIobjfile\fR is
+\&\fIbfdname\fR.  This option may not be necessary; \fBsize\fR can
+automatically recognize many formats.
+.IP "\fB\-V\fR" 4
+.IX Item "-V"
+.PD 0
+.IP "\fB\*(--version\fR" 4
+.IX Item "version"
+.PD
+Display the version number of \fBsize\fR.
 .SH "SEE ALSO"
-.RB "`\|" binutils "\|'" 
-entry in 
-.BR info ;
-.IR "The GNU Binary Utilities" ,
- Roland H. Pesch (October 1991); 
-.BR ar "(" 1 "),"
-.BR objdump ( 1 ).
-
-.SH COPYING
-Copyright (c) 1991, 2000 Free Software Foundation, Inc.
+.IX Header "SEE ALSO"
+\&\fIar\fR\|(1), \fIobjdump\fR\|(1), \fIreadelf\fR\|(1), and the Info entries for \fIbinutils\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
 .PP
-This document is distributed under the terms of the GNU Free
-Documentation License, version 1.1.  That license is described in the
-sources for this manual page, but it is not displayed here in order to
-make this manual more consise.  Copies of this license can also be
-obtained from: http://www.gnu.org/copyleft/.
-
-\"  .SH GNU Free Documentation License
-\"    Version 1.1, March 2000
-
-\"    Copyright (C) 2000  Free Software Foundation, Inc.
-\"    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-     
-\"    Everyone is permitted to copy and distribute verbatim
-\"    copies of this license document, but changing it is
-\"    not allowed.
-\"  .PP
-\"  0. PREAMBLE
-\"  .PP
-\"  The purpose of this License is to make a manual, textbook, or other
-\"  written document "free" in the sense of freedom: to assure everyone
-\"  the effective freedom to copy and redistribute it, with or without
-\"  modifying it, either commercially or noncommercially.  Secondarily,
-\"  this License preserves for the author and publisher a way to get
-\"  credit for their work, while not being considered responsible for
-\"  modifications made by others.
-\"  .PP
-\"  This License is a kind of "copyleft", which means that derivative
-\"  works of the document must themselves be free in the same sense.  It
-\"  complements the GNU General Public License, which is a copyleft
-\"  license designed for free software.
-\"  .PP
-\"  We have designed this License in order to use it for manuals for free
-\"  software, because free software needs free documentation: a free
-\"  program should come with manuals providing the same freedoms that the
-\"  software does.  But this License is not limited to software manuals;
-\"  it can be used for any textual work, regardless of subject matter or
-\"  whether it is published as a printed book.  We recommend this License
-\"  principally for works whose purpose is instruction or reference.
-\"  .PP
-\"  1. APPLICABILITY AND DEFINITIONS
-\"  .PP
-\"  This License applies to any manual or other work that contains a
-\"  notice placed by the copyright holder saying it can be distributed
-\"  under the terms of this License.  The "Document", below, refers to any
-\"  such manual or work.  Any member of the public is a licensee, and is
-\"  addressed as "you".
-\"  .PP
-\"  A "Modified Version" of the Document means any work containing the
-\"  Document or a portion of it, either copied verbatim, or with
-\"  modifications and/or translated into another language.
-\"  .PP
-\"  A "Secondary Section" is a named appendix or a front-matter section of
-\"  the Document that deals exclusively with the relationship of the
-\"  publishers or authors of the Document to the Document's overall subject
-\"  (or to related matters) and contains nothing that could fall directly
-\"  within that overall subject.  (For example, if the Document is in part a
-\"  textbook of mathematics, a Secondary Section may not explain any
-\"  mathematics.)  The relationship could be a matter of historical
-\"  connection with the subject or with related matters, or of legal,
-\"  commercial, philosophical, ethical or political position regarding
-\"  them.
-\"  .PP
-\"  The "Invariant Sections" are certain Secondary Sections whose titles
-\"  are designated, as being those of Invariant Sections, in the notice
-\"  that says that the Document is released under this License.
-\"  .PP
-\"  The "Cover Texts" are certain short passages of text that are listed,
-\"  as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-\"  the Document is released under this License.
-\"  .PP
-\"  A "Transparent" copy of the Document means a machine-readable copy,
-\"  represented in a format whose specification is available to the
-\"  general public, whose contents can be viewed and edited directly and
-\"  straightforwardly with generic text editors or (for images composed of
-\"  pixels) generic paint programs or (for drawings) some widely available
-\"  drawing editor, and that is suitable for input to text formatters or
-\"  for automatic translation to a variety of formats suitable for input
-\"  to text formatters.  A copy made in an otherwise Transparent file
-\"  format whose markup has been designed to thwart or discourage
-\"  subsequent modification by readers is not Transparent.  A copy that is
-\"  not "Transparent" is called "Opaque".
-\"  .PP
-\"  Examples of suitable formats for Transparent copies include plain
-\"  ASCII without markup, Texinfo input format, LaTeX input format, SGML
-\"  or XML using a publicly available DTD, and standard-conforming simple
-\"  HTML designed for human modification.  Opaque formats include
-\"  PostScript, PDF, proprietary formats that can be read and edited only
-\"  by proprietary word processors, SGML or XML for which the DTD and/or
-\"  processing tools are not generally available, and the
-\"  machine-generated HTML produced by some word processors for output
-\"  purposes only.
-\"  .PP
-\"  The "Title Page" means, for a printed book, the title page itself,
-\"  plus such following pages as are needed to hold, legibly, the material
-\"  this License requires to appear in the title page.  For works in
-\"  formats which do not have any title page as such, "Title Page" means
-\"  the text near the most prominent appearance of the work's title,
-\"  preceding the beginning of the body of the text.
-\"  .PP
-\"  2. VERBATIM COPYING
-\"  .PP
-\"  You may copy and distribute the Document in any medium, either
-\"  commercially or noncommercially, provided that this License, the
-\"  copyright notices, and the license notice saying this License applies
-\"  to the Document are reproduced in all copies, and that you add no other
-\"  conditions whatsoever to those of this License.  You may not use
-\"  technical measures to obstruct or control the reading or further
-\"  copying of the copies you make or distribute.  However, you may accept
-\"  compensation in exchange for copies.  If you distribute a large enough
-\"  number of copies you must also follow the conditions in section 3.
-\"  .PP
-\"  You may also lend copies, under the same conditions stated above, and
-\"  you may publicly display copies.
-\"  .PP
-\"  3. COPYING IN QUANTITY
-\"  .PP
-\"  If you publish printed copies of the Document numbering more than 100,
-\"  and the Document's license notice requires Cover Texts, you must enclose
-\"  the copies in covers that carry, clearly and legibly, all these Cover
-\"  Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-\"  the back cover.  Both covers must also clearly and legibly identify
-\"  you as the publisher of these copies.  The front cover must present
-\"  the full title with all words of the title equally prominent and
-\"  visible.  You may add other material on the covers in addition.
-\"  Copying with changes limited to the covers, as long as they preserve
-\"  the title of the Document and satisfy these conditions, can be treated
-\"  as verbatim copying in other respects.
-\"  .PP
-\"  If the required texts for either cover are too voluminous to fit
-\"  legibly, you should put the first ones listed (as many as fit
-\"  reasonably) on the actual cover, and continue the rest onto adjacent
-\"  pages.
-\"  .PP
-\"  If you publish or distribute Opaque copies of the Document numbering
-\"  more than 100, you must either include a machine-readable Transparent
-\"  copy along with each Opaque copy, or state in or with each Opaque copy
-\"  a publicly-accessible computer-network location containing a complete
-\"  Transparent copy of the Document, free of added material, which the
-\"  general network-using public has access to download anonymously at no
-\"  charge using public-standard network protocols.  If you use the latter
-\"  option, you must take reasonably prudent steps, when you begin
-\"  distribution of Opaque copies in quantity, to ensure that this
-\"  Transparent copy will remain thus accessible at the stated location
-\"  until at least one year after the last time you distribute an Opaque
-\"  copy (directly or through your agents or retailers) of that edition to
-\"  the public.
-\"  .PP
-\"  It is requested, but not required, that you contact the authors of the
-\"  Document well before redistributing any large number of copies, to give
-\"  them a chance to provide you with an updated version of the Document.
-\"  .PP
-\"  4. MODIFICATIONS
-\"  .PP
-\"  You may copy and distribute a Modified Version of the Document under
-\"  the conditions of sections 2 and 3 above, provided that you release
-\"  the Modified Version under precisely this License, with the Modified
-\"  Version filling the role of the Document, thus licensing distribution
-\"  and modification of the Modified Version to whoever possesses a copy
-\"  of it.  In addition, you must do these things in the Modified Version:
-\"  .PP
-\"  A. Use in the Title Page (and on the covers, if any) a title distinct
-\"  from that of the Document, and from those of previous versions
-\"  (which should, if there were any, be listed in the History section
-\"  of the Document).  You may use the same title as a previous version
-\"  if the original publisher of that version gives permission.
-\"  .PP
-\"  B. List on the Title Page, as authors, one or more persons or entities
-\"  responsible for authorship of the modifications in the Modified
-\"  Version, together with at least five of the principal authors of the
-\"  Document (all of its principal authors, if it has less than five).
-\"  .PP
-\"  C. State on the Title page the name of the publisher of the
-\"  Modified Version, as the publisher.
-\"  .PP
-\"  D. Preserve all the copyright notices of the Document.
-\"  .PP
-\"  E. Add an appropriate copyright notice for your modifications
-\"  adjacent to the other copyright notices.
-\"  .PP
-\"  F. Include, immediately after the copyright notices, a license notice
-\"  giving the public permission to use the Modified Version under the
-\"  terms of this License, in the form shown in the Addendum below.
-\"  Preserve in that license notice the full lists of Invariant Sections
-\"  and required Cover Texts given in the Document's license notice.
-\"  .PP
-\"  H. Include an unaltered copy of this License.
-\"  .PP
-\"  I. Preserve the section entitled "History", and its title, and add to
-\"  it an item stating at least the title, year, new authors, and
-\"  publisher of the Modified Version as given on the Title Page.  If
-\"  there is no section entitled "History" in the Document, create one
-\"  stating the title, year, authors, and publisher of the Document as
-\"  given on its Title Page, then add an item describing the Modified
-\"  Version as stated in the previous sentence.
-\"  .PP
-\"  J. Preserve the network location, if any, given in the Document for
-\"  public access to a Transparent copy of the Document, and likewise
-\"  the network locations given in the Document for previous versions
-\"  it was based on.  These may be placed in the "History" section.
-\"  You may omit a network location for a work that was published at
-\"  least four years before the Document itself, or if the original
-\"  publisher of the version it refers to gives permission.
-\"  .PP
-\"  K. In any section entitled "Acknowledgements" or "Dedications",
-\"  preserve the section's title, and preserve in the section all the
-\"  substance and tone of each of the contributor acknowledgements
-\"  and/or dedications given therein.
-\"  .PP
-\"  L. Preserve all the Invariant Sections of the Document,
-\"  unaltered in their text and in their titles.  Section numbers
-\"  or the equivalent are not considered part of the section titles.
-\"  .PP
-\"  M. Delete any section entitled "Endorsements".  Such a section
-\"  may not be included in the Modified Version.
-\"  .PP
-\"  N. Do not retitle any existing section as "Endorsements"
-\"  or to conflict in title with any Invariant Section.
-\"  .PP
-\"  If the Modified Version includes new front-matter sections or
-\"  appendices that qualify as Secondary Sections and contain no material
-\"  copied from the Document, you may at your option designate some or all
-\"  of these sections as invariant.  To do this, add their titles to the
-\"  list of Invariant Sections in the Modified Version's license notice.
-\"  These titles must be distinct from any other section titles.
-\"  .PP
-\"  You may add a section entitled "Endorsements", provided it contains
-\"  nothing but endorsements of your Modified Version by various
-\"  parties--for example, statements of peer review or that the text has
-\"  been approved by an organization as the authoritative definition of a
-\"  standard.
-\"  .PP
-\"  You may add a passage of up to five words as a Front-Cover Text, and a
-\"  passage of up to 25 words as a Back-Cover Text, to the end of the list
-\"  of Cover Texts in the Modified Version.  Only one passage of
-\"  Front-Cover Text and one of Back-Cover Text may be added by (or
-\"  through arrangements made by) any one entity.  If the Document already
-\"  includes a cover text for the same cover, previously added by you or
-\"  by arrangement made by the same entity you are acting on behalf of,
-\"  you may not add another; but you may replace the old one, on explicit
-\"  permission from the previous publisher that added the old one.
-\"  .PP
-\"  The author(s) and publisher(s) of the Document do not by this License
-\"  give permission to use their names for publicity for or to assert or
-\"  imply endorsement of any Modified Version.
-\"  .PP
-
-\"  5. COMBINING DOCUMENTS
-\"  .PP
-\"  You may combine the Document with other documents released under this
-\"  License, under the terms defined in section 4 above for modified
-\"  versions, provided that you include in the combination all of the
-\"  Invariant Sections of all of the original documents, unmodified, and
-\"  list them all as Invariant Sections of your combined work in its
-\"  license notice.
-\"  .PP
-\"  The combined work need only contain one copy of this License, and
-\"  multiple identical Invariant Sections may be replaced with a single
-\"  copy.  If there are multiple Invariant Sections with the same name but
-\"  different contents, make the title of each such section unique by
-\"  adding at the end of it, in parentheses, the name of the original
-\"  author or publisher of that section if known, or else a unique number.
-\"  Make the same adjustment to the section titles in the list of
-\"  Invariant Sections in the license notice of the combined work.
-\"  .PP
-\"  In the combination, you must combine any sections entitled "History"
-\"  in the various original documents, forming one section entitled
-\"  "History"; likewise combine any sections entitled "Acknowledgements",
-\"  and any sections entitled "Dedications".  You must delete all sections
-\"  entitled "Endorsements."
-\"  .PP
-
-\"  6. COLLECTIONS OF DOCUMENTS
-\"  .PP
-\"  You may make a collection consisting of the Document and other documents
-\"  released under this License, and replace the individual copies of this
-\"  License in the various documents with a single copy that is included in
-\"  the collection, provided that you follow the rules of this License for
-\"  verbatim copying of each of the documents in all other respects.
-\"  .PP
-\"  You may extract a single document from such a collection, and distribute
-\"  it individually under this License, provided you insert a copy of this
-\"  License into the extracted document, and follow this License in all
-\"  other respects regarding verbatim copying of that document.
-\"  .PP
-
-\"  7. AGGREGATION WITH INDEPENDENT WORKS
-\"  .PP
-\"  A compilation of the Document or its derivatives with other separate
-\"  and independent documents or works, in or on a volume of a storage or
-\"  distribution medium, does not as a whole count as a Modified Version
-\"  of the Document, provided no compilation copyright is claimed for the
-\"  compilation.  Such a compilation is called an "aggregate", and this
-\"  License does not apply to the other self-contained works thus compiled
-\"  with the Document, on account of their being thus compiled, if they
-\"  are not themselves derivative works of the Document.
-\"  .PP
-\"  If the Cover Text requirement of section 3 is applicable to these
-\"  copies of the Document, then if the Document is less than one quarter
-\"  of the entire aggregate, the Document's Cover Texts may be placed on
-\"  covers that surround only the Document within the aggregate.
-\"  Otherwise they must appear on covers around the whole aggregate.
-\"  .PP
-
-\"  8. TRANSLATION
-\"  .PP
-\"  Translation is considered a kind of modification, so you may
-\"  distribute translations of the Document under the terms of section 4.
-\"  Replacing Invariant Sections with translations requires special
-\"  permission from their copyright holders, but you may include
-\"  translations of some or all Invariant Sections in addition to the
-\"  original versions of these Invariant Sections.  You may include a
-\"  translation of this License provided that you also include the
-\"  original English version of this License.  In case of a disagreement
-\"  between the translation and the original English version of this
-\"  License, the original English version will prevail.
-\"  .PP
-
-\"  9. TERMINATION
-\"  .PP
-\"  You may not copy, modify, sublicense, or distribute the Document except
-\"  as expressly provided for under this License.  Any other attempt to
-\"  copy, modify, sublicense or distribute the Document is void, and will
-\"  automatically terminate your rights under this License.  However,
-\"  parties who have received copies, or rights, from you under this
-\"  License will not have their licenses terminated so long as such
-\"  parties remain in full compliance.
-\"  .PP
-
-\"  10. FUTURE REVISIONS OF THIS LICENSE
-\"  .PP
-\"  The Free Software Foundation may publish new, revised versions
-\"  of the GNU Free Documentation License from time to time.  Such new
-\"  versions will be similar in spirit to the present version, but may
-\"  differ in detail to address new problems or concerns.  See
-\"  http://www.gnu.org/copyleft/.
-\"  .PP
-\"  Each version of the License is given a distinguishing version number.
-\"  If the Document specifies that a particular numbered version of this
-\"  License "or any later version" applies to it, you have the option of
-\"  following the terms and conditions either of that specified version or
-\"  of any later version that has been published (not as a draft) by the
-\"  Free Software Foundation.  If the Document does not specify a version
-\"  number of this License, you may choose any version ever published (not
-\"  as a draft) by the Free Software Foundation.
-\"  .PP
-
-\"  ADDENDUM: How to use this License for your documents
-\"  .PP
-\"  To use this License in a document you have written, include a copy of
-\"  the License in the document and put the following copyright and
-\"  license notices just after the title page:
-\"  .PP
-\"      Copyright (c)  YEAR  YOUR NAME.
-\"      Permission is granted to copy, distribute and/or
-\"      modify this document under the terms of the GNU
-\"      Free Documentation License, Version 1.1 or any later
-\"      version published by the Free Software Foundation;
-\"      with the Invariant Sections being LIST THEIR TITLES,
-\"      with the Front-Cover Texts being LIST, and with the
-\"      Back-Cover Texts being LIST.  A copy of the license
-\"      is included in the section entitled "GNU Free
-\"      Documentation License".
-\"  .PP
-\"  If you have no Invariant Sections, write "with no Invariant Sections"
-\"  instead of saying which ones are invariant.  If you have no
-\"  Front-Cover Texts, write "no Front-Cover Texts" instead of
-\"  "Front-Cover Texts being LIST"; likewise for Back-Cover Texts.
-\"  .PP
-\"  If your document contains nontrivial examples of program code, we
-\"  recommend releasing these examples in parallel under your choice of
-\"  free software license, such as the GNU General Public License,
-\"  to permit their use in free software.
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/strings.1 binutils-2.11.2-m68hc1x/binutils/strings.1
--- binutils-2.11.2/binutils/strings.1	Tue Nov 28 21:40:34 2000
+++ binutils-2.11.2-m68hc1x/binutils/strings.1	Fri Sep 21 22:11:27 2001
@@ -1,509 +1,223 @@
-.\" Copyright (c) 1993, 94, 95, 2000 Free Software Foundation
-.\" See section COPYING for conditions for redistribution
-.TH strings 1 "09 March 2000" "Free Software Foundation" "GNU Development Tools"
-.de BP
-.sp
-.ti \-.2i
-\(**
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:09:43 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
 ..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
 
-.SH NAME
-strings \- print the strings of printable characters in files
-
-.SH SYNOPSIS
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
 .hy 0
-.na
-.TP
-.B strings
-.RB "[\|" \-a | \-\c
-.RB | \-\-all "\|]" 
-.RB "[\|" \-f | \-\-print\-file\-name "\|]"
-.RB "[\|" \-o "\|]" 
-.RB "[\|" \-\-help "\|]" 
-.RB "[\|" \-v | \-\-version "\|]"  
-.RB "[\|" \-n
-.I min\-len\c
-.RI | \-min\-len\c
-.RB | "\-\-bytes="\c
-.I min\-len\c
-\&\|]
-.RB "[\|" \-t
-.I {o,x,d}\c
-.RB "[\|" "\-\-target=\fIbfdname" "\|]"
-.RB | "\-\-radix="\c
-.I {o,x,d}\c
-\&\|]
-.I file\c
-.ad b
-.hy 1
-.SH DESCRIPTION
-For each
-.I file
-given, GNU \c
-.B strings
-prints the printable character sequences that are at least 4
-characters long (or the number given with the options below) and are
-followed by an unprintable character.  By default, it only prints the
-strings from the initialized and loaded sections of object files; for
-other types of files, it prints the strings from the whole file.
-
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "STRINGS 1"
+.TH STRINGS 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
+.UC
+.SH "NAME"
+strings \- print the strings of printable characters in files.
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+strings [\fB\-afov\fR] [\fB-\fR\fImin-len\fR] [\fB\-n\fR \fImin-len\fR] [\fB\-t\fR \fIradix\fR] [\fB-\fR]
+        [\fB\*(--all\fR] [\fB\*(--print-file-name\fR] [\fB\*(--bytes=\fR\fImin-len\fR]
+        [\fB\*(--radix=\fR\fIradix\fR] [\fB\*(--target=\fR\fIbfdname\fR]
+        [\fB\*(--help\fR] [\fB\*(--version\fR] \fIfile\fR...
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+For each \fIfile\fR given, \s-1GNU\s0 \fBstrings\fR prints the printable
+character sequences that are at least 4 characters long (or the number
+given with the options below) and are followed by an unprintable
+character.  By default, it only prints the strings from the initialized
+and loaded sections of object files; for other types of files, it prints
+the strings from the whole file.
 .PP
-.B strings
-is mainly useful for determining the contents of non-text files.
-
-.SH OPTIONS
-The long and short forms of options, shown here as alternatives, are
-equivalent.
-
-.TP
-.B \-a
-.TP
-.B \-\-all
-.TP
-.B \-
+\&\fBstrings\fR is mainly useful for determining the contents of non-text
+files.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+.IP "\fB\-a\fR" 4
+.IX Item "-a"
+.PD 0
+.IP "\fB\*(--all\fR" 4
+.IX Item "all"
+.IP "\fB-\fR" 4
+.IX Item "-"
+.PD
 Do not scan only the initialized and loaded sections of object files;
 scan the whole files.
-
-.TP
-.B \-f
-.TP
-.B \-\-print\-file\-name
+.IP "\fB\-f\fR" 4
+.IX Item "-f"
+.PD 0
+.IP "\fB\*(--print-file-name\fR" 4
+.IX Item "print-file-name"
+.PD
 Print the name of the file before each string.
-
-.TP
-.B \-\-help
-Print a summary of the options to
-.B strings
-on the standard output and exit.
-
-.TP
-.B \-v
-.TP
-.B \-\-version
-Print the version number
-of
-.B strings
-on the standard output and exit.
-
-.TP
-.B "\-n \fImin\-len\fP"
-.TP
-.B "\-\fImin\-len\fP"
-.TP
-.B "\-\-bytes=\fImin\-len\fP"
-Print sequences of characters that are at least
-.I min\-len
-characters long, instead of the default 4.
-
-.TP
-.BR "\-t " {o,x,d}
-.TP
-.BR "\-\-radix=" {o,x,d}
+.IP "\fB\*(--help\fR" 4
+.IX Item "help"
+Print a summary of the program usage on the standard output and exit.
+.IP "\fB-\fR\fImin-len\fR" 4
+.IX Item "-min-len"
+.PD 0
+.IP "\fB\-n\fR \fImin-len\fR" 4
+.IX Item "-n min-len"
+.IP "\fB\*(--bytes=\fR\fImin-len\fR" 4
+.IX Item "bytes=min-len"
+.PD
+Print sequences of characters that are at least \fImin-len\fR characters
+long, instead of the default 4.
+.IP "\fB\-o\fR" 4
+.IX Item "-o"
+Like \fB\-t o\fR.  Some other versions of \fBstrings\fR have \fB\-o\fR
+act like \fB\-t d\fR instead.  Since we can not be compatible with both
+ways, we simply chose one.
+.IP "\fB\-t\fR \fIradix\fR" 4
+.IX Item "-t radix"
+.PD 0
+.IP "\fB\*(--radix=\fR\fIradix\fR" 4
+.IX Item "radix=radix"
+.PD
 Print the offset within the file before each string.  The single
-character argument specifies the radix of the offset\(emoctal,
-hexadecimal, or decimal.
-
-.TP
-.BI "\-\-target=" "bfdname"
+character argument specifies the radix of the offset\-\--\fBo\fR for
+octal, \fBx\fR for hexadecimal, or \fBd\fR for decimal.
+.IP "\fB\*(--target=\fR\fIbfdname\fR" 4
+.IX Item "target=bfdname"
 Specify an object code format other than your system's default format.
-See 
-.BR objdump ( 1 ),
-for information on listing available formats.
-
-.TP
-.B \-o
-Like
-.BR "\-t o" .
-
-.PP
-
+.IP "\fB\-v\fR" 4
+.IX Item "-v"
+.PD 0
+.IP "\fB\*(--version\fR" 4
+.IX Item "version"
+.PD
+Print the program version number on the standard output and exit.
 .SH "SEE ALSO"
-.RB "`\|" binutils "\|'"
-entry in 
-.B
-info\c
-\&; 
-.I
-The GNU Binary Utilities\c
-\&, Roland H. Pesch (October 1991);
-.BR ar ( 1 ),
-.BR nm ( 1 ),
-.BR objdump ( 1 ),
-.BR ranlib ( 1 ).
-
-
-.SH COPYING
-Copyright (c) 1993, 2000 Free Software Foundation, Inc.
+.IX Header "SEE ALSO"
+\&\fIar\fR\|(1), \fInm\fR\|(1), \fIobjdump\fR\|(1), \fIranlib\fR\|(1), \fIreadelf\fR\|(1)
+and the Info entries for \fIbinutils\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
 .PP
-This document is distributed under the terms of the GNU Free
-Documentation License, version 1.1.  That license is described in the
-sources for this manual page, but it is not displayed here in order to
-make this manual more consise.  Copies of this license can also be
-obtained from: http://www.gnu.org/copyleft/.
-
-\"  .SH GNU Free Documentation License
-\"    Version 1.1, March 2000
-
-\"    Copyright (C) 2000  Free Software Foundation, Inc.
-\"    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-     
-\"    Everyone is permitted to copy and distribute verbatim
-\"    copies of this license document, but changing it is
-\"    not allowed.
-\"  .PP
-\"  0. PREAMBLE
-\"  .PP
-\"  The purpose of this License is to make a manual, textbook, or other
-\"  written document "free" in the sense of freedom: to assure everyone
-\"  the effective freedom to copy and redistribute it, with or without
-\"  modifying it, either commercially or noncommercially.  Secondarily,
-\"  this License preserves for the author and publisher a way to get
-\"  credit for their work, while not being considered responsible for
-\"  modifications made by others.
-\"  .PP
-\"  This License is a kind of "copyleft", which means that derivative
-\"  works of the document must themselves be free in the same sense.  It
-\"  complements the GNU General Public License, which is a copyleft
-\"  license designed for free software.
-\"  .PP
-\"  We have designed this License in order to use it for manuals for free
-\"  software, because free software needs free documentation: a free
-\"  program should come with manuals providing the same freedoms that the
-\"  software does.  But this License is not limited to software manuals;
-\"  it can be used for any textual work, regardless of subject matter or
-\"  whether it is published as a printed book.  We recommend this License
-\"  principally for works whose purpose is instruction or reference.
-\"  .PP
-\"  1. APPLICABILITY AND DEFINITIONS
-\"  .PP
-\"  This License applies to any manual or other work that contains a
-\"  notice placed by the copyright holder saying it can be distributed
-\"  under the terms of this License.  The "Document", below, refers to any
-\"  such manual or work.  Any member of the public is a licensee, and is
-\"  addressed as "you".
-\"  .PP
-\"  A "Modified Version" of the Document means any work containing the
-\"  Document or a portion of it, either copied verbatim, or with
-\"  modifications and/or translated into another language.
-\"  .PP
-\"  A "Secondary Section" is a named appendix or a front-matter section of
-\"  the Document that deals exclusively with the relationship of the
-\"  publishers or authors of the Document to the Document's overall subject
-\"  (or to related matters) and contains nothing that could fall directly
-\"  within that overall subject.  (For example, if the Document is in part a
-\"  textbook of mathematics, a Secondary Section may not explain any
-\"  mathematics.)  The relationship could be a matter of historical
-\"  connection with the subject or with related matters, or of legal,
-\"  commercial, philosophical, ethical or political position regarding
-\"  them.
-\"  .PP
-\"  The "Invariant Sections" are certain Secondary Sections whose titles
-\"  are designated, as being those of Invariant Sections, in the notice
-\"  that says that the Document is released under this License.
-\"  .PP
-\"  The "Cover Texts" are certain short passages of text that are listed,
-\"  as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-\"  the Document is released under this License.
-\"  .PP
-\"  A "Transparent" copy of the Document means a machine-readable copy,
-\"  represented in a format whose specification is available to the
-\"  general public, whose contents can be viewed and edited directly and
-\"  straightforwardly with generic text editors or (for images composed of
-\"  pixels) generic paint programs or (for drawings) some widely available
-\"  drawing editor, and that is suitable for input to text formatters or
-\"  for automatic translation to a variety of formats suitable for input
-\"  to text formatters.  A copy made in an otherwise Transparent file
-\"  format whose markup has been designed to thwart or discourage
-\"  subsequent modification by readers is not Transparent.  A copy that is
-\"  not "Transparent" is called "Opaque".
-\"  .PP
-\"  Examples of suitable formats for Transparent copies include plain
-\"  ASCII without markup, Texinfo input format, LaTeX input format, SGML
-\"  or XML using a publicly available DTD, and standard-conforming simple
-\"  HTML designed for human modification.  Opaque formats include
-\"  PostScript, PDF, proprietary formats that can be read and edited only
-\"  by proprietary word processors, SGML or XML for which the DTD and/or
-\"  processing tools are not generally available, and the
-\"  machine-generated HTML produced by some word processors for output
-\"  purposes only.
-\"  .PP
-\"  The "Title Page" means, for a printed book, the title page itself,
-\"  plus such following pages as are needed to hold, legibly, the material
-\"  this License requires to appear in the title page.  For works in
-\"  formats which do not have any title page as such, "Title Page" means
-\"  the text near the most prominent appearance of the work's title,
-\"  preceding the beginning of the body of the text.
-\"  .PP
-\"  2. VERBATIM COPYING
-\"  .PP
-\"  You may copy and distribute the Document in any medium, either
-\"  commercially or noncommercially, provided that this License, the
-\"  copyright notices, and the license notice saying this License applies
-\"  to the Document are reproduced in all copies, and that you add no other
-\"  conditions whatsoever to those of this License.  You may not use
-\"  technical measures to obstruct or control the reading or further
-\"  copying of the copies you make or distribute.  However, you may accept
-\"  compensation in exchange for copies.  If you distribute a large enough
-\"  number of copies you must also follow the conditions in section 3.
-\"  .PP
-\"  You may also lend copies, under the same conditions stated above, and
-\"  you may publicly display copies.
-\"  .PP
-\"  3. COPYING IN QUANTITY
-\"  .PP
-\"  If you publish printed copies of the Document numbering more than 100,
-\"  and the Document's license notice requires Cover Texts, you must enclose
-\"  the copies in covers that carry, clearly and legibly, all these Cover
-\"  Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-\"  the back cover.  Both covers must also clearly and legibly identify
-\"  you as the publisher of these copies.  The front cover must present
-\"  the full title with all words of the title equally prominent and
-\"  visible.  You may add other material on the covers in addition.
-\"  Copying with changes limited to the covers, as long as they preserve
-\"  the title of the Document and satisfy these conditions, can be treated
-\"  as verbatim copying in other respects.
-\"  .PP
-\"  If the required texts for either cover are too voluminous to fit
-\"  legibly, you should put the first ones listed (as many as fit
-\"  reasonably) on the actual cover, and continue the rest onto adjacent
-\"  pages.
-\"  .PP
-\"  If you publish or distribute Opaque copies of the Document numbering
-\"  more than 100, you must either include a machine-readable Transparent
-\"  copy along with each Opaque copy, or state in or with each Opaque copy
-\"  a publicly-accessible computer-network location containing a complete
-\"  Transparent copy of the Document, free of added material, which the
-\"  general network-using public has access to download anonymously at no
-\"  charge using public-standard network protocols.  If you use the latter
-\"  option, you must take reasonably prudent steps, when you begin
-\"  distribution of Opaque copies in quantity, to ensure that this
-\"  Transparent copy will remain thus accessible at the stated location
-\"  until at least one year after the last time you distribute an Opaque
-\"  copy (directly or through your agents or retailers) of that edition to
-\"  the public.
-\"  .PP
-\"  It is requested, but not required, that you contact the authors of the
-\"  Document well before redistributing any large number of copies, to give
-\"  them a chance to provide you with an updated version of the Document.
-\"  .PP
-\"  4. MODIFICATIONS
-\"  .PP
-\"  You may copy and distribute a Modified Version of the Document under
-\"  the conditions of sections 2 and 3 above, provided that you release
-\"  the Modified Version under precisely this License, with the Modified
-\"  Version filling the role of the Document, thus licensing distribution
-\"  and modification of the Modified Version to whoever possesses a copy
-\"  of it.  In addition, you must do these things in the Modified Version:
-\"  .PP
-\"  A. Use in the Title Page (and on the covers, if any) a title distinct
-\"  from that of the Document, and from those of previous versions
-\"  (which should, if there were any, be listed in the History section
-\"  of the Document).  You may use the same title as a previous version
-\"  if the original publisher of that version gives permission.
-\"  .PP
-\"  B. List on the Title Page, as authors, one or more persons or entities
-\"  responsible for authorship of the modifications in the Modified
-\"  Version, together with at least five of the principal authors of the
-\"  Document (all of its principal authors, if it has less than five).
-\"  .PP
-\"  C. State on the Title page the name of the publisher of the
-\"  Modified Version, as the publisher.
-\"  .PP
-\"  D. Preserve all the copyright notices of the Document.
-\"  .PP
-\"  E. Add an appropriate copyright notice for your modifications
-\"  adjacent to the other copyright notices.
-\"  .PP
-\"  F. Include, immediately after the copyright notices, a license notice
-\"  giving the public permission to use the Modified Version under the
-\"  terms of this License, in the form shown in the Addendum below.
-\"  Preserve in that license notice the full lists of Invariant Sections
-\"  and required Cover Texts given in the Document's license notice.
-\"  .PP
-\"  H. Include an unaltered copy of this License.
-\"  .PP
-\"  I. Preserve the section entitled "History", and its title, and add to
-\"  it an item stating at least the title, year, new authors, and
-\"  publisher of the Modified Version as given on the Title Page.  If
-\"  there is no section entitled "History" in the Document, create one
-\"  stating the title, year, authors, and publisher of the Document as
-\"  given on its Title Page, then add an item describing the Modified
-\"  Version as stated in the previous sentence.
-\"  .PP
-\"  J. Preserve the network location, if any, given in the Document for
-\"  public access to a Transparent copy of the Document, and likewise
-\"  the network locations given in the Document for previous versions
-\"  it was based on.  These may be placed in the "History" section.
-\"  You may omit a network location for a work that was published at
-\"  least four years before the Document itself, or if the original
-\"  publisher of the version it refers to gives permission.
-\"  .PP
-\"  K. In any section entitled "Acknowledgements" or "Dedications",
-\"  preserve the section's title, and preserve in the section all the
-\"  substance and tone of each of the contributor acknowledgements
-\"  and/or dedications given therein.
-\"  .PP
-\"  L. Preserve all the Invariant Sections of the Document,
-\"  unaltered in their text and in their titles.  Section numbers
-\"  or the equivalent are not considered part of the section titles.
-\"  .PP
-\"  M. Delete any section entitled "Endorsements".  Such a section
-\"  may not be included in the Modified Version.
-\"  .PP
-\"  N. Do not retitle any existing section as "Endorsements"
-\"  or to conflict in title with any Invariant Section.
-\"  .PP
-\"  If the Modified Version includes new front-matter sections or
-\"  appendices that qualify as Secondary Sections and contain no material
-\"  copied from the Document, you may at your option designate some or all
-\"  of these sections as invariant.  To do this, add their titles to the
-\"  list of Invariant Sections in the Modified Version's license notice.
-\"  These titles must be distinct from any other section titles.
-\"  .PP
-\"  You may add a section entitled "Endorsements", provided it contains
-\"  nothing but endorsements of your Modified Version by various
-\"  parties--for example, statements of peer review or that the text has
-\"  been approved by an organization as the authoritative definition of a
-\"  standard.
-\"  .PP
-\"  You may add a passage of up to five words as a Front-Cover Text, and a
-\"  passage of up to 25 words as a Back-Cover Text, to the end of the list
-\"  of Cover Texts in the Modified Version.  Only one passage of
-\"  Front-Cover Text and one of Back-Cover Text may be added by (or
-\"  through arrangements made by) any one entity.  If the Document already
-\"  includes a cover text for the same cover, previously added by you or
-\"  by arrangement made by the same entity you are acting on behalf of,
-\"  you may not add another; but you may replace the old one, on explicit
-\"  permission from the previous publisher that added the old one.
-\"  .PP
-\"  The author(s) and publisher(s) of the Document do not by this License
-\"  give permission to use their names for publicity for or to assert or
-\"  imply endorsement of any Modified Version.
-\"  .PP
-
-\"  5. COMBINING DOCUMENTS
-\"  .PP
-\"  You may combine the Document with other documents released under this
-\"  License, under the terms defined in section 4 above for modified
-\"  versions, provided that you include in the combination all of the
-\"  Invariant Sections of all of the original documents, unmodified, and
-\"  list them all as Invariant Sections of your combined work in its
-\"  license notice.
-\"  .PP
-\"  The combined work need only contain one copy of this License, and
-\"  multiple identical Invariant Sections may be replaced with a single
-\"  copy.  If there are multiple Invariant Sections with the same name but
-\"  different contents, make the title of each such section unique by
-\"  adding at the end of it, in parentheses, the name of the original
-\"  author or publisher of that section if known, or else a unique number.
-\"  Make the same adjustment to the section titles in the list of
-\"  Invariant Sections in the license notice of the combined work.
-\"  .PP
-\"  In the combination, you must combine any sections entitled "History"
-\"  in the various original documents, forming one section entitled
-\"  "History"; likewise combine any sections entitled "Acknowledgements",
-\"  and any sections entitled "Dedications".  You must delete all sections
-\"  entitled "Endorsements."
-\"  .PP
-
-\"  6. COLLECTIONS OF DOCUMENTS
-\"  .PP
-\"  You may make a collection consisting of the Document and other documents
-\"  released under this License, and replace the individual copies of this
-\"  License in the various documents with a single copy that is included in
-\"  the collection, provided that you follow the rules of this License for
-\"  verbatim copying of each of the documents in all other respects.
-\"  .PP
-\"  You may extract a single document from such a collection, and distribute
-\"  it individually under this License, provided you insert a copy of this
-\"  License into the extracted document, and follow this License in all
-\"  other respects regarding verbatim copying of that document.
-\"  .PP
-
-\"  7. AGGREGATION WITH INDEPENDENT WORKS
-\"  .PP
-\"  A compilation of the Document or its derivatives with other separate
-\"  and independent documents or works, in or on a volume of a storage or
-\"  distribution medium, does not as a whole count as a Modified Version
-\"  of the Document, provided no compilation copyright is claimed for the
-\"  compilation.  Such a compilation is called an "aggregate", and this
-\"  License does not apply to the other self-contained works thus compiled
-\"  with the Document, on account of their being thus compiled, if they
-\"  are not themselves derivative works of the Document.
-\"  .PP
-\"  If the Cover Text requirement of section 3 is applicable to these
-\"  copies of the Document, then if the Document is less than one quarter
-\"  of the entire aggregate, the Document's Cover Texts may be placed on
-\"  covers that surround only the Document within the aggregate.
-\"  Otherwise they must appear on covers around the whole aggregate.
-\"  .PP
-
-\"  8. TRANSLATION
-\"  .PP
-\"  Translation is considered a kind of modification, so you may
-\"  distribute translations of the Document under the terms of section 4.
-\"  Replacing Invariant Sections with translations requires special
-\"  permission from their copyright holders, but you may include
-\"  translations of some or all Invariant Sections in addition to the
-\"  original versions of these Invariant Sections.  You may include a
-\"  translation of this License provided that you also include the
-\"  original English version of this License.  In case of a disagreement
-\"  between the translation and the original English version of this
-\"  License, the original English version will prevail.
-\"  .PP
-
-\"  9. TERMINATION
-\"  .PP
-\"  You may not copy, modify, sublicense, or distribute the Document except
-\"  as expressly provided for under this License.  Any other attempt to
-\"  copy, modify, sublicense or distribute the Document is void, and will
-\"  automatically terminate your rights under this License.  However,
-\"  parties who have received copies, or rights, from you under this
-\"  License will not have their licenses terminated so long as such
-\"  parties remain in full compliance.
-\"  .PP
-
-\"  10. FUTURE REVISIONS OF THIS LICENSE
-\"  .PP
-\"  The Free Software Foundation may publish new, revised versions
-\"  of the GNU Free Documentation License from time to time.  Such new
-\"  versions will be similar in spirit to the present version, but may
-\"  differ in detail to address new problems or concerns.  See
-\"  http://www.gnu.org/copyleft/.
-\"  .PP
-\"  Each version of the License is given a distinguishing version number.
-\"  If the Document specifies that a particular numbered version of this
-\"  License "or any later version" applies to it, you have the option of
-\"  following the terms and conditions either of that specified version or
-\"  of any later version that has been published (not as a draft) by the
-\"  Free Software Foundation.  If the Document does not specify a version
-\"  number of this License, you may choose any version ever published (not
-\"  as a draft) by the Free Software Foundation.
-\"  .PP
-
-\"  ADDENDUM: How to use this License for your documents
-\"  .PP
-\"  To use this License in a document you have written, include a copy of
-\"  the License in the document and put the following copyright and
-\"  license notices just after the title page:
-\"  .PP
-\"      Copyright (c)  YEAR  YOUR NAME.
-\"      Permission is granted to copy, distribute and/or
-\"      modify this document under the terms of the GNU
-\"      Free Documentation License, Version 1.1 or any later
-\"      version published by the Free Software Foundation;
-\"      with the Invariant Sections being LIST THEIR TITLES,
-\"      with the Front-Cover Texts being LIST, and with the
-\"      Back-Cover Texts being LIST.  A copy of the license
-\"      is included in the section entitled "GNU Free
-\"      Documentation License".
-\"  .PP
-\"  If you have no Invariant Sections, write "with no Invariant Sections"
-\"  instead of saying which ones are invariant.  If you have no
-\"  Front-Cover Texts, write "no Front-Cover Texts" instead of
-\"  "Front-Cover Texts being LIST"; likewise for Back-Cover Texts.
-\"  .PP
-\"  If your document contains nontrivial examples of program code, we
-\"  recommend releasing these examples in parallel under your choice of
-\"  free software license, such as the GNU General Public License,
-\"  to permit their use in free software.
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/strip.1 binutils-2.11.2-m68hc1x/binutils/strip.1
--- binutils-2.11.2/binutils/strip.1	Tue Nov 28 21:40:34 2000
+++ binutils-2.11.2-m68hc1x/binutils/strip.1	Fri Sep 21 22:11:27 2001
@@ -1,543 +1,285 @@
-.\" Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 1998, 2000 Free Software Foundation
-.\" See section COPYING for conditions for redistribution
-.TH strip 1 "5 November 1991" "Free Software Foundation" "GNU Development Tools"
-.de BP
-.sp
-.ti \-.2i
-\(**
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:09:43 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
 ..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
 
-.SH NAME
-strip \- Discard symbols from object files.
-
-.SH SYNOPSIS
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
 .hy 0
-.na
-.TP
-.B strip
-.RB "[\|" \-F\ \fIbfdname\fR\ |\ \fB\-\-target=\fIbfdname\fP "\|]"
-.RB "[\|" \-I\ \fIbfdname\fR\ |\ \fB\-\-input\-target=\fIbfdname\fP "\|]"
-.RB "[\|" \-O\ \fIbfdname\fR\ |\ \fB\-\-output\-target=\fIbfdname\fP "\|]"
-.RB "[\|" \-R\ \fIsectionname\fR\ |\ \fB\-\-remove\-section=\fIsectionname\fP "\|]"
-.RB "[\|" \-s\fR\ |\ \fB\-\-strip\-all "\|]"
-.RB "[\|" \-S\fR\ |\ \fB\-g\fR\ |\ \fB\-\-strip\-debug "\|]"
-.RB "[\|" \-\-strip\-unneeded\fR "\|]"
-.RB "[\|" \-x\fR\ |\ \fB\-\-discard\-all "\|]"
-.RB "[\|" \-X\fR\ |\ \fB\-\-discard\-locals "\|]"
-.RB "[\|" \-K\ \fIsymbolname\fR\ |\ \fB\-\-keep\-symbol=\fIsymbolname\fR "\|]" 
-.RB "[\|" \-N\ \fIsymbolname\fR\ |\ \fB\-\-strip\-symbol=\fIsymbolname\fR "\|]"
-.RB "[\|" \-o\ \fIfile\fR "\|]"
-.RB "[\|" \-p\fR\ |\ \fB\-\-preserve\-dates "\|]"
-.RB "[\|" \-v\fR\ |\ \fB\-\-verbose "\|]"
-.RB "[\|" \-V\fR\ |\ \fB\-\-version "\|]"
-.RB "[\|" \-V\fR\ |\ \fB\-\-help "\|]"
-.I objfile\c
-\&.\|.\|.
-
-.SH DESCRIPTION
-GNU
-.B strip
-discards all symbols from the object files
-.IR objfile .
-The list of object files may include archives.
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "STRIP 1"
+.TH STRIP 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
+.UC
+.SH "NAME"
+strip \- Discard symbols from object files.
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+strip [\fB\-F\fR \fIbfdname\fR |\fB\*(--target=\fR\fIbfdname\fR ]
+      [\fB\-I\fR \fIbfdname\fR |\fB\*(--input-target=\fR\fIbfdname\fR ]
+      [\fB\-O\fR \fIbfdname\fR |\fB\*(--output-target=\fR\fIbfdname\fR ]
+      [\fB\-s\fR|\fB\*(--strip-all\fR] [\fB\-S\fR|\fB\-g\fR|\fB\*(--strip-debug\fR]
+      [\fB\-K\fR \fIsymbolname\fR |\fB\*(--keep-symbol=\fR\fIsymbolname\fR ]
+      [\fB\-N\fR \fIsymbolname\fR |\fB\*(--strip-symbol=\fR\fIsymbolname\fR ]
+      [\fB\-x\fR|\fB\*(--discard-all\fR ] [\fB\-X\fR |\fB\*(--discard-locals\fR]
+      [\fB\-R\fR \fIsectionname\fR |\fB\*(--remove-section=\fR\fIsectionname\fR ]
+      [\fB\-o\fR \fIfile\fR ] [\fB\-p\fR|\fB\*(--preserve-dates\fR]
+      [\fB\-v\fR |\fB\*(--verbose\fR]  [\fB\-V\fR|\fB\*(--version\fR] [\fB\*(--help\fR]
+      \fIobjfile\fR...
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\s-1GNU\s0 \fBstrip\fR discards all symbols from object files
+\&\fIobjfile\fR.  The list of object files may include archives.
 At least one object file must be given.
-
-.P
-.B strip
-modifies the files named in its argument,
+.PP
+\&\fBstrip\fR modifies the files named in its argument,
 rather than writing modified copies under different names.
-
-.SH OPTIONS
-.TP
-.B "\-F \fIbfdname"
-.TP
-.B "\-\-target=\fIbfdname"
-Treat the original \fIobjfile\fP as a file with the object
-code format \fIbfdname\fP, and rewrite it in the same format.
-
-.TP
-.B \-\-help
-Show a summary of the options to
-.B strip
-and exit.
-
-.TP
-.B "\-I \fIbfdname
-.TP
-.B "\-\-input\-target=\fIbfdname"
-Treat the original \fIobjfile\fP as a file with the object
-code format \fIbfdname\fP.
-
-.TP
-.B "\-O \fIbfdname\fP"
-.TP
-.B "\-\-output\-target=\fIbfdname"
-Replace \fIobjfile\fP with a file in the output format \fIbfdname\fP.
-
-.TP
-.B "\-R \fIsectionname\fP"
-.TP
-.B "\-\-remove\-section=\fIsectionname"
-Remove the named section from the file.  This option may be given more
-than once.  Note that using this option inappropriately may make the
-object file unusable.
-
-.TP
-.B \-s
-.TP
-.B \-\-strip\-all
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+.IP "\fB\-F\fR \fIbfdname\fR" 4
+.IX Item "-F bfdname"
+.PD 0
+.IP "\fB\*(--target=\fR\fIbfdname\fR" 4
+.IX Item "target=bfdname"
+.PD
+Treat the original \fIobjfile\fR as a file with the object
+code format \fIbfdname\fR, and rewrite it in the same format.
+.IP "\fB\*(--help\fR" 4
+.IX Item "help"
+Show a summary of the options to \fBstrip\fR and exit.
+.IP "\fB\-I\fR \fIbfdname\fR\fB	\fR" 4
+.IX Item "-I bfdname	"
+.PD 0
+.IP "\fB\*(--input-target=\fR\fIbfdname\fR" 4
+.IX Item "input-target=bfdname"
+.PD
+Treat the original \fIobjfile\fR as a file with the object
+code format \fIbfdname\fR.
+.IP "\fB\-O\fR \fIbfdname\fR" 4
+.IX Item "-O bfdname"
+.PD 0
+.IP "\fB\*(--output-target=\fR\fIbfdname\fR" 4
+.IX Item "output-target=bfdname"
+.PD
+Replace \fIobjfile\fR with a file in the output format \fIbfdname\fR.
+.IP "\fB\-R\fR \fIsectionname\fR" 4
+.IX Item "-R sectionname"
+.PD 0
+.IP "\fB\*(--remove-section=\fR\fIsectionname\fR" 4
+.IX Item "remove-section=sectionname"
+.PD
+Remove any section named \fIsectionname\fR from the output file.  This
+option may be given more than once.  Note that using this option
+inappropriately may make the output file unusable.
+.IP "\fB\-s\fR" 4
+.IX Item "-s"
+.PD 0
+.IP "\fB\*(--strip-all\fR" 4
+.IX Item "strip-all"
+.PD
 Remove all symbols.
-
-.TP
-.B \-S
-.TP
-.B \-g
-.TP
-.B \-\-strip\-debug
+.IP "\fB\-g\fR" 4
+.IX Item "-g"
+.PD 0
+.IP "\fB\-S\fR" 4
+.IX Item "-S"
+.IP "\fB\*(--strip-debug\fR" 4
+.IX Item "strip-debug"
+.PD
 Remove debugging symbols only.
-
-.TP
-.B \-\-strip\-unneeded
-Strip all symbols that are not needed for relocation processing.
-
-.TP
-.B \-N \fIsymbolname\fR
-.TP
-.B \-\-strip\-symbol=\fIsymbolname
-Remove symbol \fIsymbolname\fP from the source file. This option
-may be given more than once, and may be combined with other strip
-options.
-
-.TP
-.B \-o \fIfile\fR
+.IP "\fB\*(--strip-unneeded\fR" 4
+.IX Item "strip-unneeded"
+Remove all symbols that are not needed for relocation processing.
+.IP "\fB\-K\fR \fIsymbolname\fR" 4
+.IX Item "-K symbolname"
+.PD 0
+.IP "\fB\*(--keep-symbol=\fR\fIsymbolname\fR" 4
+.IX Item "keep-symbol=symbolname"
+.PD
+Keep only symbol \fIsymbolname\fR from the source file.  This option may
+be given more than once.
+.IP "\fB\-N\fR \fIsymbolname\fR" 4
+.IX Item "-N symbolname"
+.PD 0
+.IP "\fB\*(--strip-symbol=\fR\fIsymbolname\fR" 4
+.IX Item "strip-symbol=symbolname"
+.PD
+Remove symbol \fIsymbolname\fR from the source file. This option may be
+given more than once, and may be combined with strip options other than
+\&\fB\-K\fR.
+.IP "\fB\-o\fR \fIfile\fR" 4
+.IX Item "-o file"
 Put the stripped output in \fIfile\fR, rather than replacing the
 existing file.  When this argument is used, only one \fIobjfile\fR
 argument may be specified.
-
-.TP
-.B \-p
-.TP
-.B \-\-preserve-dates
+.IP "\fB\-p\fR" 4
+.IX Item "-p"
+.PD 0
+.IP "\fB\*(--preserve-dates\fR" 4
+.IX Item "preserve-dates"
+.PD
 Preserve the access and modification dates of the file.
-
-.TP
-.B \-x
-.TP
-.B \-\-discard\-all
+.IP "\fB\-x\fR" 4
+.IX Item "-x"
+.PD 0
+.IP "\fB\*(--discard-all\fR" 4
+.IX Item "discard-all"
+.PD
 Remove non-global symbols.
-
-.TP
-.B \-X
-.TP
-.B \-\-discard\-locals
+.IP "\fB\-X\fR" 4
+.IX Item "-X"
+.PD 0
+.IP "\fB\*(--discard-locals\fR" 4
+.IX Item "discard-locals"
+.PD
 Remove compiler-generated local symbols.
-(These usually start with ``L'' or ``.''.)
-
-.TP
-.B \-K \fIsymbolname\fR, \fB\-\-keep\-symbol=\fIsymbolname
-Copy only symbol \fIsymbolname\fP from the source file. This option
-may be given more than once.
-
-.TP
-.B \-N \fIsymbolname\fR, \fB\-\-strip\-symbol=\fIsymbolname
-Do not copy symbol \fIsymbolname\fP from the source file. This option
-may be given more than once, and may be combined with strip options
-other than \fB\-K\fR.
-
-.TP
-.B \-v
-.TP
-.B \-\-verbose
+(These usually start with \fBL\fR or \fB.\fR.)
+.IP "\fB\-V\fR" 4
+.IX Item "-V"
+.PD 0
+.IP "\fB\*(--version\fR" 4
+.IX Item "version"
+.PD
+Show the version number for \fBstrip\fR.
+.IP "\fB\-v\fR" 4
+.IX Item "-v"
+.PD 0
+.IP "\fB\*(--verbose\fR" 4
+.IX Item "verbose"
+.PD
 Verbose output: list all object files modified.  In the case of
-archives,
-.B "strip \-v"
-lists all members of the archive.
-
-.TP
-.B \-V
-.TP
-.B \-\-version
-Show the version number for \fBstrip\fP and exit.
-
+archives, \fBstrip \-v\fR lists all members of the archive.
 .SH "SEE ALSO"
-.RB "`\|" binutils "\|'" 
-entry in 
-.BR info ;
-.IR "The GNU Binary Utilities" ,
-Roland H. Pesch (October 1991).
-
-.SH COPYING
-Copyright (c) 1991, 2000 Free Software Foundation, Inc.
+.IX Header "SEE ALSO"
+the Info entries for \fIbinutils\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
 .PP
-This document is distributed under the terms of the GNU Free
-Documentation License, version 1.1.  That license is described in the
-sources for this manual page, but it is not displayed here in order to
-make this manual more consise.  Copies of this license can also be
-obtained from: http://www.gnu.org/copyleft/.
-
-\"  .SH GNU Free Documentation License
-\"    Version 1.1, March 2000
-
-\"    Copyright (C) 2000  Free Software Foundation, Inc.
-\"    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-     
-\"    Everyone is permitted to copy and distribute verbatim
-\"    copies of this license document, but changing it is
-\"    not allowed.
-\"  .PP
-\"  0. PREAMBLE
-\"  .PP
-\"  The purpose of this License is to make a manual, textbook, or other
-\"  written document "free" in the sense of freedom: to assure everyone
-\"  the effective freedom to copy and redistribute it, with or without
-\"  modifying it, either commercially or noncommercially.  Secondarily,
-\"  this License preserves for the author and publisher a way to get
-\"  credit for their work, while not being considered responsible for
-\"  modifications made by others.
-\"  .PP
-\"  This License is a kind of "copyleft", which means that derivative
-\"  works of the document must themselves be free in the same sense.  It
-\"  complements the GNU General Public License, which is a copyleft
-\"  license designed for free software.
-\"  .PP
-\"  We have designed this License in order to use it for manuals for free
-\"  software, because free software needs free documentation: a free
-\"  program should come with manuals providing the same freedoms that the
-\"  software does.  But this License is not limited to software manuals;
-\"  it can be used for any textual work, regardless of subject matter or
-\"  whether it is published as a printed book.  We recommend this License
-\"  principally for works whose purpose is instruction or reference.
-\"  .PP
-\"  1. APPLICABILITY AND DEFINITIONS
-\"  .PP
-\"  This License applies to any manual or other work that contains a
-\"  notice placed by the copyright holder saying it can be distributed
-\"  under the terms of this License.  The "Document", below, refers to any
-\"  such manual or work.  Any member of the public is a licensee, and is
-\"  addressed as "you".
-\"  .PP
-\"  A "Modified Version" of the Document means any work containing the
-\"  Document or a portion of it, either copied verbatim, or with
-\"  modifications and/or translated into another language.
-\"  .PP
-\"  A "Secondary Section" is a named appendix or a front-matter section of
-\"  the Document that deals exclusively with the relationship of the
-\"  publishers or authors of the Document to the Document's overall subject
-\"  (or to related matters) and contains nothing that could fall directly
-\"  within that overall subject.  (For example, if the Document is in part a
-\"  textbook of mathematics, a Secondary Section may not explain any
-\"  mathematics.)  The relationship could be a matter of historical
-\"  connection with the subject or with related matters, or of legal,
-\"  commercial, philosophical, ethical or political position regarding
-\"  them.
-\"  .PP
-\"  The "Invariant Sections" are certain Secondary Sections whose titles
-\"  are designated, as being those of Invariant Sections, in the notice
-\"  that says that the Document is released under this License.
-\"  .PP
-\"  The "Cover Texts" are certain short passages of text that are listed,
-\"  as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-\"  the Document is released under this License.
-\"  .PP
-\"  A "Transparent" copy of the Document means a machine-readable copy,
-\"  represented in a format whose specification is available to the
-\"  general public, whose contents can be viewed and edited directly and
-\"  straightforwardly with generic text editors or (for images composed of
-\"  pixels) generic paint programs or (for drawings) some widely available
-\"  drawing editor, and that is suitable for input to text formatters or
-\"  for automatic translation to a variety of formats suitable for input
-\"  to text formatters.  A copy made in an otherwise Transparent file
-\"  format whose markup has been designed to thwart or discourage
-\"  subsequent modification by readers is not Transparent.  A copy that is
-\"  not "Transparent" is called "Opaque".
-\"  .PP
-\"  Examples of suitable formats for Transparent copies include plain
-\"  ASCII without markup, Texinfo input format, LaTeX input format, SGML
-\"  or XML using a publicly available DTD, and standard-conforming simple
-\"  HTML designed for human modification.  Opaque formats include
-\"  PostScript, PDF, proprietary formats that can be read and edited only
-\"  by proprietary word processors, SGML or XML for which the DTD and/or
-\"  processing tools are not generally available, and the
-\"  machine-generated HTML produced by some word processors for output
-\"  purposes only.
-\"  .PP
-\"  The "Title Page" means, for a printed book, the title page itself,
-\"  plus such following pages as are needed to hold, legibly, the material
-\"  this License requires to appear in the title page.  For works in
-\"  formats which do not have any title page as such, "Title Page" means
-\"  the text near the most prominent appearance of the work's title,
-\"  preceding the beginning of the body of the text.
-\"  .PP
-\"  2. VERBATIM COPYING
-\"  .PP
-\"  You may copy and distribute the Document in any medium, either
-\"  commercially or noncommercially, provided that this License, the
-\"  copyright notices, and the license notice saying this License applies
-\"  to the Document are reproduced in all copies, and that you add no other
-\"  conditions whatsoever to those of this License.  You may not use
-\"  technical measures to obstruct or control the reading or further
-\"  copying of the copies you make or distribute.  However, you may accept
-\"  compensation in exchange for copies.  If you distribute a large enough
-\"  number of copies you must also follow the conditions in section 3.
-\"  .PP
-\"  You may also lend copies, under the same conditions stated above, and
-\"  you may publicly display copies.
-\"  .PP
-\"  3. COPYING IN QUANTITY
-\"  .PP
-\"  If you publish printed copies of the Document numbering more than 100,
-\"  and the Document's license notice requires Cover Texts, you must enclose
-\"  the copies in covers that carry, clearly and legibly, all these Cover
-\"  Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-\"  the back cover.  Both covers must also clearly and legibly identify
-\"  you as the publisher of these copies.  The front cover must present
-\"  the full title with all words of the title equally prominent and
-\"  visible.  You may add other material on the covers in addition.
-\"  Copying with changes limited to the covers, as long as they preserve
-\"  the title of the Document and satisfy these conditions, can be treated
-\"  as verbatim copying in other respects.
-\"  .PP
-\"  If the required texts for either cover are too voluminous to fit
-\"  legibly, you should put the first ones listed (as many as fit
-\"  reasonably) on the actual cover, and continue the rest onto adjacent
-\"  pages.
-\"  .PP
-\"  If you publish or distribute Opaque copies of the Document numbering
-\"  more than 100, you must either include a machine-readable Transparent
-\"  copy along with each Opaque copy, or state in or with each Opaque copy
-\"  a publicly-accessible computer-network location containing a complete
-\"  Transparent copy of the Document, free of added material, which the
-\"  general network-using public has access to download anonymously at no
-\"  charge using public-standard network protocols.  If you use the latter
-\"  option, you must take reasonably prudent steps, when you begin
-\"  distribution of Opaque copies in quantity, to ensure that this
-\"  Transparent copy will remain thus accessible at the stated location
-\"  until at least one year after the last time you distribute an Opaque
-\"  copy (directly or through your agents or retailers) of that edition to
-\"  the public.
-\"  .PP
-\"  It is requested, but not required, that you contact the authors of the
-\"  Document well before redistributing any large number of copies, to give
-\"  them a chance to provide you with an updated version of the Document.
-\"  .PP
-\"  4. MODIFICATIONS
-\"  .PP
-\"  You may copy and distribute a Modified Version of the Document under
-\"  the conditions of sections 2 and 3 above, provided that you release
-\"  the Modified Version under precisely this License, with the Modified
-\"  Version filling the role of the Document, thus licensing distribution
-\"  and modification of the Modified Version to whoever possesses a copy
-\"  of it.  In addition, you must do these things in the Modified Version:
-\"  .PP
-\"  A. Use in the Title Page (and on the covers, if any) a title distinct
-\"  from that of the Document, and from those of previous versions
-\"  (which should, if there were any, be listed in the History section
-\"  of the Document).  You may use the same title as a previous version
-\"  if the original publisher of that version gives permission.
-\"  .PP
-\"  B. List on the Title Page, as authors, one or more persons or entities
-\"  responsible for authorship of the modifications in the Modified
-\"  Version, together with at least five of the principal authors of the
-\"  Document (all of its principal authors, if it has less than five).
-\"  .PP
-\"  C. State on the Title page the name of the publisher of the
-\"  Modified Version, as the publisher.
-\"  .PP
-\"  D. Preserve all the copyright notices of the Document.
-\"  .PP
-\"  E. Add an appropriate copyright notice for your modifications
-\"  adjacent to the other copyright notices.
-\"  .PP
-\"  F. Include, immediately after the copyright notices, a license notice
-\"  giving the public permission to use the Modified Version under the
-\"  terms of this License, in the form shown in the Addendum below.
-\"  Preserve in that license notice the full lists of Invariant Sections
-\"  and required Cover Texts given in the Document's license notice.
-\"  .PP
-\"  H. Include an unaltered copy of this License.
-\"  .PP
-\"  I. Preserve the section entitled "History", and its title, and add to
-\"  it an item stating at least the title, year, new authors, and
-\"  publisher of the Modified Version as given on the Title Page.  If
-\"  there is no section entitled "History" in the Document, create one
-\"  stating the title, year, authors, and publisher of the Document as
-\"  given on its Title Page, then add an item describing the Modified
-\"  Version as stated in the previous sentence.
-\"  .PP
-\"  J. Preserve the network location, if any, given in the Document for
-\"  public access to a Transparent copy of the Document, and likewise
-\"  the network locations given in the Document for previous versions
-\"  it was based on.  These may be placed in the "History" section.
-\"  You may omit a network location for a work that was published at
-\"  least four years before the Document itself, or if the original
-\"  publisher of the version it refers to gives permission.
-\"  .PP
-\"  K. In any section entitled "Acknowledgements" or "Dedications",
-\"  preserve the section's title, and preserve in the section all the
-\"  substance and tone of each of the contributor acknowledgements
-\"  and/or dedications given therein.
-\"  .PP
-\"  L. Preserve all the Invariant Sections of the Document,
-\"  unaltered in their text and in their titles.  Section numbers
-\"  or the equivalent are not considered part of the section titles.
-\"  .PP
-\"  M. Delete any section entitled "Endorsements".  Such a section
-\"  may not be included in the Modified Version.
-\"  .PP
-\"  N. Do not retitle any existing section as "Endorsements"
-\"  or to conflict in title with any Invariant Section.
-\"  .PP
-\"  If the Modified Version includes new front-matter sections or
-\"  appendices that qualify as Secondary Sections and contain no material
-\"  copied from the Document, you may at your option designate some or all
-\"  of these sections as invariant.  To do this, add their titles to the
-\"  list of Invariant Sections in the Modified Version's license notice.
-\"  These titles must be distinct from any other section titles.
-\"  .PP
-\"  You may add a section entitled "Endorsements", provided it contains
-\"  nothing but endorsements of your Modified Version by various
-\"  parties--for example, statements of peer review or that the text has
-\"  been approved by an organization as the authoritative definition of a
-\"  standard.
-\"  .PP
-\"  You may add a passage of up to five words as a Front-Cover Text, and a
-\"  passage of up to 25 words as a Back-Cover Text, to the end of the list
-\"  of Cover Texts in the Modified Version.  Only one passage of
-\"  Front-Cover Text and one of Back-Cover Text may be added by (or
-\"  through arrangements made by) any one entity.  If the Document already
-\"  includes a cover text for the same cover, previously added by you or
-\"  by arrangement made by the same entity you are acting on behalf of,
-\"  you may not add another; but you may replace the old one, on explicit
-\"  permission from the previous publisher that added the old one.
-\"  .PP
-\"  The author(s) and publisher(s) of the Document do not by this License
-\"  give permission to use their names for publicity for or to assert or
-\"  imply endorsement of any Modified Version.
-\"  .PP
-
-\"  5. COMBINING DOCUMENTS
-\"  .PP
-\"  You may combine the Document with other documents released under this
-\"  License, under the terms defined in section 4 above for modified
-\"  versions, provided that you include in the combination all of the
-\"  Invariant Sections of all of the original documents, unmodified, and
-\"  list them all as Invariant Sections of your combined work in its
-\"  license notice.
-\"  .PP
-\"  The combined work need only contain one copy of this License, and
-\"  multiple identical Invariant Sections may be replaced with a single
-\"  copy.  If there are multiple Invariant Sections with the same name but
-\"  different contents, make the title of each such section unique by
-\"  adding at the end of it, in parentheses, the name of the original
-\"  author or publisher of that section if known, or else a unique number.
-\"  Make the same adjustment to the section titles in the list of
-\"  Invariant Sections in the license notice of the combined work.
-\"  .PP
-\"  In the combination, you must combine any sections entitled "History"
-\"  in the various original documents, forming one section entitled
-\"  "History"; likewise combine any sections entitled "Acknowledgements",
-\"  and any sections entitled "Dedications".  You must delete all sections
-\"  entitled "Endorsements."
-\"  .PP
-
-\"  6. COLLECTIONS OF DOCUMENTS
-\"  .PP
-\"  You may make a collection consisting of the Document and other documents
-\"  released under this License, and replace the individual copies of this
-\"  License in the various documents with a single copy that is included in
-\"  the collection, provided that you follow the rules of this License for
-\"  verbatim copying of each of the documents in all other respects.
-\"  .PP
-\"  You may extract a single document from such a collection, and distribute
-\"  it individually under this License, provided you insert a copy of this
-\"  License into the extracted document, and follow this License in all
-\"  other respects regarding verbatim copying of that document.
-\"  .PP
-
-\"  7. AGGREGATION WITH INDEPENDENT WORKS
-\"  .PP
-\"  A compilation of the Document or its derivatives with other separate
-\"  and independent documents or works, in or on a volume of a storage or
-\"  distribution medium, does not as a whole count as a Modified Version
-\"  of the Document, provided no compilation copyright is claimed for the
-\"  compilation.  Such a compilation is called an "aggregate", and this
-\"  License does not apply to the other self-contained works thus compiled
-\"  with the Document, on account of their being thus compiled, if they
-\"  are not themselves derivative works of the Document.
-\"  .PP
-\"  If the Cover Text requirement of section 3 is applicable to these
-\"  copies of the Document, then if the Document is less than one quarter
-\"  of the entire aggregate, the Document's Cover Texts may be placed on
-\"  covers that surround only the Document within the aggregate.
-\"  Otherwise they must appear on covers around the whole aggregate.
-\"  .PP
-
-\"  8. TRANSLATION
-\"  .PP
-\"  Translation is considered a kind of modification, so you may
-\"  distribute translations of the Document under the terms of section 4.
-\"  Replacing Invariant Sections with translations requires special
-\"  permission from their copyright holders, but you may include
-\"  translations of some or all Invariant Sections in addition to the
-\"  original versions of these Invariant Sections.  You may include a
-\"  translation of this License provided that you also include the
-\"  original English version of this License.  In case of a disagreement
-\"  between the translation and the original English version of this
-\"  License, the original English version will prevail.
-\"  .PP
-
-\"  9. TERMINATION
-\"  .PP
-\"  You may not copy, modify, sublicense, or distribute the Document except
-\"  as expressly provided for under this License.  Any other attempt to
-\"  copy, modify, sublicense or distribute the Document is void, and will
-\"  automatically terminate your rights under this License.  However,
-\"  parties who have received copies, or rights, from you under this
-\"  License will not have their licenses terminated so long as such
-\"  parties remain in full compliance.
-\"  .PP
-
-\"  10. FUTURE REVISIONS OF THIS LICENSE
-\"  .PP
-\"  The Free Software Foundation may publish new, revised versions
-\"  of the GNU Free Documentation License from time to time.  Such new
-\"  versions will be similar in spirit to the present version, but may
-\"  differ in detail to address new problems or concerns.  See
-\"  http://www.gnu.org/copyleft/.
-\"  .PP
-\"  Each version of the License is given a distinguishing version number.
-\"  If the Document specifies that a particular numbered version of this
-\"  License "or any later version" applies to it, you have the option of
-\"  following the terms and conditions either of that specified version or
-\"  of any later version that has been published (not as a draft) by the
-\"  Free Software Foundation.  If the Document does not specify a version
-\"  number of this License, you may choose any version ever published (not
-\"  as a draft) by the Free Software Foundation.
-\"  .PP
-
-\"  ADDENDUM: How to use this License for your documents
-\"  .PP
-\"  To use this License in a document you have written, include a copy of
-\"  the License in the document and put the following copyright and
-\"  license notices just after the title page:
-\"  .PP
-\"      Copyright (c)  YEAR  YOUR NAME.
-\"      Permission is granted to copy, distribute and/or
-\"      modify this document under the terms of the GNU
-\"      Free Documentation License, Version 1.1 or any later
-\"      version published by the Free Software Foundation;
-\"      with the Invariant Sections being LIST THEIR TITLES,
-\"      with the Front-Cover Texts being LIST, and with the
-\"      Back-Cover Texts being LIST.  A copy of the license
-\"      is included in the section entitled "GNU Free
-\"      Documentation License".
-\"  .PP
-\"  If you have no Invariant Sections, write "with no Invariant Sections"
-\"  instead of saying which ones are invariant.  If you have no
-\"  Front-Cover Texts, write "no Front-Cover Texts" instead of
-\"  "Front-Cover Texts being LIST"; likewise for Back-Cover Texts.
-\"  .PP
-\"  If your document contains nontrivial examples of program code, we
-\"  recommend releasing these examples in parallel under your choice of
-\"  free software license, such as the GNU General Public License,
-\"  to permit their use in free software.
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/testsuite/ChangeLog.M68HC11 binutils-2.11.2-m68hc1x/binutils/testsuite/ChangeLog.M68HC11
--- binutils-2.11.2/binutils/testsuite/ChangeLog.M68HC11	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/binutils/testsuite/ChangeLog.M68HC11	Sun Dec 16 12:41:52 2001
@@ -0,0 +1,5 @@
+2001-12-16  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* readelf.exp: Mark -wi test as xfail for m6811-*-* because the
+	dwarf2 output is very different (but correct).
+
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/testsuite/binutils-all/readelf.exp binutils-2.11.2-m68hc1x/binutils/testsuite/binutils-all/readelf.exp
--- binutils-2.11.2/binutils/testsuite/binutils-all/readelf.exp	Fri Sep 21 20:58:39 2001
+++ binutils-2.11.2-m68hc1x/binutils/testsuite/binutils-all/readelf.exp	Sun Dec 16 12:40:56 2001
@@ -287,4 +287,4 @@ if [is_remote host] {
 # The xfail targets here do not default to DWARF2 format debug information
 # The symptom is that the output of 'readelf -wi' is empty.
 
-readelf_test -wi $tempfile readelf.wi {v850*-*-* cris-*-* *-*-linux*}
+readelf_test -wi $tempfile readelf.wi {v850*-*-* cris-*-* *-*-linux* m6811-*}
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/binutils/windres.1 binutils-2.11.2-m68hc1x/binutils/windres.1
--- binutils-2.11.2/binutils/windres.1	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/binutils/windres.1	Fri Sep 21 22:11:27 2001
@@ -0,0 +1,298 @@
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:09:44 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
+..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.hy 0
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "WINDRES 1"
+.TH WINDRES 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
+.UC
+.SH "NAME"
+windres \- manipulate Windows resources.
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+windres [options] [input-file] [output-file]
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fBwindres\fR reads resources from an input file and copies them into
+an output file.  Either file may be in one of three formats:
+.if n .IP """rc""" 4
+.el .IP "\f(CWrc\fR" 4
+.IX Item "rc"
+A text format read by the Resource Compiler.
+.if n .IP """res""" 4
+.el .IP "\f(CWres\fR" 4
+.IX Item "res"
+A binary format generated by the Resource Compiler.
+.if n .IP """coff""" 4
+.el .IP "\f(CWcoff\fR" 4
+.IX Item "coff"
+A \s-1COFF\s0 object or executable.
+.PP
+The exact description of these different formats is available in
+documentation from Microsoft.
+.PP
+When \fBwindres\fR converts from the \f(CW\*(C`rc\*(C'\fR format to the \f(CW\*(C`res\*(C'\fR
+format, it is acting like the Windows Resource Compiler.  When
+\&\fBwindres\fR converts from the \f(CW\*(C`res\*(C'\fR format to the \f(CW\*(C`coff\*(C'\fR
+format, it is acting like the Windows \f(CW\*(C`CVTRES\*(C'\fR program.
+.PP
+When \fBwindres\fR generates an \f(CW\*(C`rc\*(C'\fR file, the output is similar
+but not identical to the format expected for the input.  When an input
+\&\f(CW\*(C`rc\*(C'\fR file refers to an external filename, an output \f(CW\*(C`rc\*(C'\fR file
+will instead include the file contents.
+.PP
+If the input or output format is not specified, \fBwindres\fR will
+guess based on the file name, or, for the input file, the file contents.
+A file with an extension of \fI.rc\fR will be treated as an \f(CW\*(C`rc\*(C'\fR
+file, a file with an extension of \fI.res\fR will be treated as a
+\&\f(CW\*(C`res\*(C'\fR file, and a file with an extension of \fI.o\fR or
+\&\fI.exe\fR will be treated as a \f(CW\*(C`coff\*(C'\fR file.
+.PP
+If no output file is specified, \fBwindres\fR will print the resources
+in \f(CW\*(C`rc\*(C'\fR format to standard output.
+.PP
+The normal use is for you to write an \f(CW\*(C`rc\*(C'\fR file, use \fBwindres\fR
+to convert it to a \s-1COFF\s0 object file, and then link the \s-1COFF\s0 file into
+your application.  This will make the resources described in the
+\&\f(CW\*(C`rc\*(C'\fR file available to Windows.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+.IP "\fB\-i\fR \fIfilename\fR" 4
+.IX Item "-i filename"
+.PD 0
+.IP "\fB\*(--input\fR \fIfilename\fR" 4
+.IX Item "input filename"
+.PD
+The name of the input file.  If this option is not used, then
+\&\fBwindres\fR will use the first non-option argument as the input file
+name.  If there are no non-option arguments, then \fBwindres\fR will
+read from standard input.  \fBwindres\fR can not read a \s-1COFF\s0 file from
+standard input.
+.IP "\fB\-o\fR \fIfilename\fR" 4
+.IX Item "-o filename"
+.PD 0
+.IP "\fB\*(--output\fR \fIfilename\fR" 4
+.IX Item "output filename"
+.PD
+The name of the output file.  If this option is not used, then
+\&\fBwindres\fR will use the first non-option argument, after any used
+for the input file name, as the output file name.  If there is no
+non-option argument, then \fBwindres\fR will write to standard output.
+\&\fBwindres\fR can not write a \s-1COFF\s0 file to standard output.
+.IP "\fB\-I\fR \fIformat\fR" 4
+.IX Item "-I format"
+.PD 0
+.IP "\fB\*(--input-format\fR \fIformat\fR" 4
+.IX Item "input-format format"
+.PD
+The input format to read.  \fIformat\fR may be \fBres\fR, \fBrc\fR, or
+\&\fBcoff\fR.  If no input format is specified, \fBwindres\fR will
+guess, as described above.
+.IP "\fB\-O\fR \fIformat\fR" 4
+.IX Item "-O format"
+.PD 0
+.IP "\fB\*(--output-format\fR \fIformat\fR" 4
+.IX Item "output-format format"
+.PD
+The output format to generate.  \fIformat\fR may be \fBres\fR,
+\&\fBrc\fR, or \fBcoff\fR.  If no output format is specified,
+\&\fBwindres\fR will guess, as described above.
+.IP "\fB\-F\fR \fItarget\fR" 4
+.IX Item "-F target"
+.PD 0
+.IP "\fB\*(--target\fR \fItarget\fR" 4
+.IX Item "target target"
+.PD
+Specify the \s-1BFD\s0 format to use for a \s-1COFF\s0 file as input or output.  This
+is a \s-1BFD\s0 target name; you can use the \fB\*(--help\fR option to see a list
+of supported targets.  Normally \fBwindres\fR will use the default
+format, which is the first one listed by the \fB\*(--help\fR option.
+.IP "\fB\*(--preprocessor\fR \fIprogram\fR" 4
+.IX Item "preprocessor program"
+When \fBwindres\fR reads an \f(CW\*(C`rc\*(C'\fR file, it runs it through the C
+preprocessor first.  This option may be used to specify the preprocessor
+to use, including any leading arguments.  The default preprocessor
+argument is \f(CW\*(C`gcc \-E \-xc\-header \-DRC_INVOKED\*(C'\fR.
+.IP "\fB\*(--include-dir\fR \fIdirectory\fR" 4
+.IX Item "include-dir directory"
+Specify an include directory to use when reading an \f(CW\*(C`rc\*(C'\fR file.
+\&\fBwindres\fR will pass this to the preprocessor as an \fB\-I\fR
+option.  \fBwindres\fR will also search this directory when looking for
+files named in the \f(CW\*(C`rc\*(C'\fR file.
+.IP "\fB\-D\fR \fItarget\fR" 4
+.IX Item "-D target"
+.PD 0
+.IP "\fB\*(--define\fR \fIsym\fR\fB[=\fR\fIval\fR\fB]\fR" 4
+.IX Item "define sym[=val]"
+.PD
+Specify a \fB\-D\fR option to pass to the preprocessor when reading an
+\&\f(CW\*(C`rc\*(C'\fR file.
+.IP "\fB\-v\fR" 4
+.IX Item "-v"
+Enable verbose mode.  This tells you what the preprocessor is if you
+didn't specify one.
+.IP "\fB\*(--language\fR \fIval\fR" 4
+.IX Item "language val"
+Specify the default language to use when reading an \f(CW\*(C`rc\*(C'\fR file.
+\&\fIval\fR should be a hexadecimal language code.  The low eight bits are
+the language, and the high eight bits are the sublanguage.
+.IP "\fB\*(--use-temp-file\fR" 4
+.IX Item "use-temp-file"
+Use a temporary file to instead of using popen to read the output of
+the preprocessor. Use this option if the popen implementation is buggy 
+on the host (eg., certain non-English language versions of Windows 95 and 
+Windows 98 are known to have buggy popen where the output will instead
+go the console).
+.IP "\fB\*(--no-use-temp-file\fR" 4
+.IX Item "no-use-temp-file"
+Use popen, not a temporary file, to read the output of the preprocessor.
+This is the default behaviour.
+.IP "\fB\*(--help\fR" 4
+.IX Item "help"
+Prints a usage summary.
+.IP "\fB\*(--version\fR" 4
+.IX Item "version"
+Prints the version number for \fBwindres\fR.
+.IP "\fB\*(--yydebug\fR" 4
+.IX Item "yydebug"
+If \fBwindres\fR is compiled with \f(CW\*(C`YYDEBUG\*(C'\fR defined as \f(CW1\fR,
+this will turn on parser debugging.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+the Info entries for \fIbinutils\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
+.PP
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/config.sub binutils-2.11.2-m68hc1x/config.sub
--- binutils-2.11.2/config.sub	Thu Mar 22 12:12:23 2001
+++ binutils-2.11.2-m68hc1x/config.sub	Sun Dec 16 12:29:51 2001
@@ -3,7 +3,7 @@
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
 #   Free Software Foundation, Inc.
 
-timestamp='2001-03-19'
+timestamp='2001-12-16'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -239,7 +239,7 @@ case $basic_machine in
 	m6811 | m68hc11 | m6812 | m68hc12)
 		# Motorola 68HC11/12.
 		basic_machine=$basic_machine-unknown
-		os=-none
+		os=-elf
 		;;
 	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | w65)
 		;;
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/etc/texi2pod.pl binutils-2.11.2-m68hc1x/etc/texi2pod.pl
--- binutils-2.11.2/etc/texi2pod.pl	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/etc/texi2pod.pl	Fri Sep 21 22:09:30 2001
@@ -0,0 +1,375 @@
+#! /usr/bin/perl -w
+
+#   Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
+
+# This file is part of GNU CC.
+
+# GNU CC is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# GNU CC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with GNU CC; see the file COPYING.  If not, write to
+# the Free Software Foundation, 59 Temple Place - Suite 330,
+# Boston MA 02111-1307, USA.
+
+# This does trivial (and I mean _trivial_) conversion of Texinfo
+# markup to Perl POD format.  It's intended to be used to extract
+# something suitable for a manpage from a Texinfo document.
+
+$output = 0;
+$skipping = 0;
+%sects = ();
+$section = "";
+@icstack = ();
+@endwstack = ();
+@skstack = ();
+$shift = "";
+%defs = ();
+$fnno = 1;
+
+while ($_ = shift) {
+    if (/^-D(.*)$/) {
+	if ($1 ne "") {
+	    $flag = $1;
+	} else {
+	    $flag = shift;
+	}
+	$value=$flag;
+	$value =~ s,^[a-zA-Z0-9_]+,,;
+	$value =~ s,.*=,,;
+	$flag =~ s,=.*$,,;
+	die "no flag specified for -D\n"
+	    unless $flag ne "";
+	#print STDERR "FL = $flag, V = $value\n";
+	$defs{$flag} = $value;
+
+    } elsif (/^-/) {
+	usage();
+    } else {
+	$in = $_, next unless defined $in;
+	$out = $_, next unless defined $out;
+	usage();
+    }
+}
+
+if (defined $in) {
+    open(STDIN, $in) or die "opening \"$in\": $!\n";
+}
+if (defined $out) {
+    open(STDOUT, ">$out") or die "opening \"$out\": $!\n";
+}
+
+while(<STDIN>)
+{
+    # Certain commands are discarded without further processing.
+    /^\@(?:
+	 [a-z]+index		# @*index: useful only in complete manual
+	 |need			# @need: useful only in printed manual
+	 |(?:end\s+)?group	# @group .. @end group: ditto
+	 |page			# @page: ditto
+	 |node			# @node: useful only in .info file
+	)\b/x and next;
+    
+    chomp;
+
+    # Look for filename and title markers.
+    /^\@setfilename\s+([^.]+)/ and $fn = $1, next;
+    /^\@settitle\s+([^.]+)/ and $tl = postprocess($1), next;
+
+    # Identify a man title but keep only the one we are interested in.
+    /^\@c man title ([A-Za-z0-9]+) (.+)/ and do {
+	if (exists $defs{$1}) {
+	    $fn = $1;
+	    $tl = postprocess($2);
+	}
+	next;
+    };
+
+    # Look for blocks surrounded by @c man begin SECTION ... @c man end.
+    # This really oughta be @ifman ... @end ifman and the like, but such
+    # would require rev'ing all other Texinfo translators.
+    /^\@c man begin ([A-Z]+) ([A-Za-z0-9]+)/ and do {
+	$output = 1 if exists $defs{$2};
+        $sect = $1;
+	next;
+    };
+    /^\@c man begin ([A-Z]+)/ and $sect = $1, $output = 1, next;
+    /^\@c man end/ and do {
+	$sects{$sect} = "" unless exists $sects{$sect};
+	$sects{$sect} .= postprocess($section);
+	$section = "";
+	$output = 0;
+	next;
+    };
+    next unless $output;
+
+    # Discard comments.  (Can't do it above, because then we'd never see
+    # @c man lines.)
+    /^\@c\b/ and next;
+
+    # End-block handler goes up here because it needs to operate even
+    # if we are skipping.
+    /^\@end\s+([a-z]+)/ and do {
+	# Ignore @end foo, where foo is not an operation which may
+	# cause us to skip, if we are presently skipping.
+	my $ended = $1;
+	next if $skipping && $ended !~ /^(?:ifset|ifclear|ignore|menu)$/;
+
+	die "\@end $ended without \@$ended at line $.\n" unless defined $endw;
+	die "\@$endw ended by \@end $ended at line $.\n" unless $ended eq $endw;
+
+	$endw = pop @endwstack;
+
+	if ($ended =~ /^(?:ifset|ifclear|ignore|menu)$/) {
+	    $skipping = pop @skstack;
+	    next;
+	} elsif ($ended =~ /^(?:example|smallexample)$/) {
+	    $shift = "";
+	    $_ = "";	# need a paragraph break
+	} elsif ($ended =~ /^(?:itemize|enumerate|table)$/) {
+	    $_ = "\n=back\n";
+	    $ic = pop @icstack;
+	} else {
+	    die "unknown command \@end $ended at line $.\n";
+	}
+    };
+
+    # We must handle commands which can cause skipping even while we
+    # are skipping, otherwise we will not process nested conditionals
+    # correctly.
+    /^\@ifset\s+([a-zA-Z0-9_-]+)/ and do {
+	push @endwstack, $endw;
+	push @skstack, $skipping;
+	$endw = "ifset";
+	$skipping = 1 unless exists $defs{$1};
+	next;
+    };
+
+    /^\@ifclear\s+([a-zA-Z0-9_-]+)/ and do {
+	push @endwstack, $endw;
+	push @skstack, $skipping;
+	$endw = "ifclear";
+	$skipping = 1 if exists $defs{$1};
+	next;
+    };
+
+    /^\@(ignore|menu)\b/ and do {
+	push @endwstack, $endw;
+	push @skstack, $skipping;
+	$endw = $1;
+	$skipping = 1;
+	next;
+    };
+
+    next if $skipping;
+
+    # Character entities.  First the ones that can be replaced by raw text
+    # or discarded outright:
+    s/\@copyright\{\}/(c)/g;
+    s/\@dots\{\}/.../g;
+    s/\@enddots\{\}/..../g;
+    s/\@([.!? ])/$1/g;
+    s/\@[:-]//g;
+    s/\@bullet(?:\{\})?/*/g;
+    s/\@TeX\{\}/TeX/g;
+    s/\@pounds\{\}/\#/g;
+    s/\@minus(?:\{\})?/-/g;
+    s/\\,/,/g;
+
+    # Now the ones that have to be replaced by special escapes
+    # (which will be turned back into text by unmunge())
+    s/&/&amp;/g;
+    s/\@\{/&lbrace;/g;
+    s/\@\}/&rbrace;/g;
+    s/\@\@/&at;/g;
+    # POD doesn't interpret E<> inside a verbatim block.
+    if ($shift eq "") {
+	s/</&lt;/g;
+	s/>/&gt;/g;
+    } else {
+	s/</&LT;/g;
+	s/>/&GT;/g;
+    }
+
+    # Single line command handlers.
+    /^\@set\s+([a-zA-Z0-9_-]+)\s*(.*)$/ and $defs{$1} = $2, next;
+    /^\@clear\s+([a-zA-Z0-9_-]+)/ and delete $defs{$1}, next;
+
+    /^\@section\s+(.+)$/ and $_ = "\n=head2 $1\n";
+    /^\@subsection\s+(.+)$/ and $_ = "\n=head3 $1\n";
+
+    # Block command handlers:
+    /^\@itemize\s+(\@[a-z]+|\*|-)/ and do {
+	push @endwstack, $endw;
+	push @icstack, $ic;
+	$ic = $1;
+	$_ = "\n=over 4\n";
+	$endw = "itemize";
+    };
+
+    /^\@enumerate(?:\s+([A-Z0-9]+))?/ and do {
+	push @endwstack, $endw;
+	push @icstack, $ic;
+	if (defined $1) {
+	    $ic = $1 . ".";
+	} else {
+	    $ic = "1.";
+	}
+	$_ = "\n=over 4\n";
+	$endw = "enumerate";
+    };
+
+    /^\@table\s+(\@[a-z]+)/ and do {
+	push @endwstack, $endw;
+	push @icstack, $ic;
+	$ic = $1;
+	$ic =~ s/\@(?:samp|strong|key|gcctabopt|env)/B/;
+	$ic =~ s/\@(?:code|kbd)/C/;
+	$ic =~ s/\@(?:dfn|var|emph|cite|i)/I/;
+	$ic =~ s/\@(?:file)/F/;
+	$_ = "\n=over 4\n";
+	$endw = "table";
+    };
+
+    /^\@((?:small)?example)/ and do {
+	push @endwstack, $endw;
+	$endw = $1;
+	$shift = "\t";
+	$_ = "";	# need a paragraph break
+    };
+
+    /^\@itemx?\s*(.+)?$/ and do {
+	if (defined $1) {
+	    # Entity escapes prevent munging by the <> processing below.
+	    $_ = "\n=item $ic\&LT;$1\&GT;\n";
+	} else {
+	    $_ = "\n=item $ic\n";
+	    $ic =~ y/A-Ya-y1-8/B-Zb-z2-9/;
+	}
+    };
+
+    $section .= $shift.$_."\n";
+}
+
+die "No filename or title\n" unless defined $fn && defined $tl;
+
+$sects{NAME} = "$fn \- $tl\n";
+$sects{FOOTNOTES} .= "=back\n" if exists $sects{FOOTNOTES};
+
+for $sect (qw(NAME SYNOPSIS DESCRIPTION OPTIONS ENVIRONMENT FILES
+	      BUGS NOTES FOOTNOTES SEEALSO AUTHOR COPYRIGHT)) {
+    if(exists $sects{$sect}) {
+	$head = $sect;
+	$head =~ s/SEEALSO/SEE ALSO/;
+	print "=head1 $head\n\n";
+	print scalar unmunge ($sects{$sect});
+	print "\n";
+    }
+}
+
+sub usage
+{
+    die "usage: $0 [-D toggle...] [infile [outfile]]\n";
+}
+
+sub postprocess
+{
+    local $_ = $_[0];
+
+    # @value{foo} is replaced by whatever 'foo' is defined as.
+    if (/\@value\{([a-zA-Z0-9_-]+)\}/) {
+	if (! exists $defs{$1}) {
+	    print STDERR "Option $1 not define\n";
+	}
+
+    }
+    s/\@value\{([a-zA-Z0-9_-]+)\}/$defs{$1}/g;
+
+    # Formatting commands.
+    # Temporary escape for @r.
+    s/\@r\{([^\}]*)\}/R<$1>/g;
+    s/\@(?:dfn|var|emph|cite|i)\{([^\}]*)\}/I<$1>/g;
+    s/\@(?:code|kbd)\{([^\}]*)\}/C<$1>/g;
+    s/\@(?:gccoptlist|samp|strong|key|option|env|command|b)\{([^\}]*)\}/B<$1>/g;
+    s/\@sc\{([^\}]*)\}/\U$1/g;
+    s/\@file\{([^\}]*)\}/F<$1>/g;
+    s/\@w\{([^\}]*)\}/S<$1>/g;
+    s/\@(?:dmn|math)\{([^\}]*)\}/$1/g;
+
+    # Handle @r inside bold.
+    1 while s/B<((?:[^<>]|I<[^<>]*>)*)R<([^>]*)>/B<$1>${2}B</g;
+
+    # Cross references are thrown away, as are @noindent and @rill.
+    # (@noindent is impossible in .pod, and @refill is unnecessary.)
+    # @* is also impossible in .pod; we discard it and any newline that
+    # follows it.  Similarly, our macro @gol must be discarded.
+
+    s/\(?\@xref\{(?:[^\}]*)\}(?:[^.<]|(?:<[^<>]*>))*\.\)?//g;
+    s/\s+\(\@pxref\{(?:[^\}]*)\}\)//g;
+    s/;\s+\@pxref\{(?:[^\}]*)\}//g;
+    s/\@noindent\s*//g;
+    s/\@refill//g;
+    s/\@gol//g;
+    s/\@\*\s*\n?//g;
+
+    # @uref can take one, two, or three arguments, with different
+    # semantics each time.  @url and @email are just like @uref with
+    # one argument, for our purposes.
+    s/\@(?:uref|url|email)\{([^\},]*)\}/&lt;B<$1>&gt;/g;
+    s/\@uref\{([^\},]*),([^\},]*)\}/$2 (C<$1>)/g;
+    s/\@uref\{([^\},]*),([^\},]*),([^\},]*)\}/$3/g;
+
+    # Turn B<blah I<blah> blah> into B<blah> I<blah> B<blah> to
+    # match Texinfo semantics of @emph inside @samp.
+    s/&LT;/</g;
+    s/&GT;/>/g;
+    1 while (s/B<([^<>]*)I<([^>]+)>/B<$1>I<$2>B</g);
+    1 while (s/I<([^<>]*)B<([^>]+)>/I<$1>B<$2>I</g);
+    s/[BI]<>//g;
+    s/([BI])<(\s+)([^>]+)>/$2$1<$3>/g;
+    s/([BI])<([^>]+?)(\s+)>/$1<$2>$3/g;
+
+    # Extract footnotes.  This has to be done after all other
+    # processing because otherwise the regexp will choke on formatting
+    # inside @footnote.
+    while (/\@footnote/g) {
+	s/\@footnote\{([^\}]+)\}/[$fnno]/;
+	add_footnote($1, $fnno);
+	$fnno++;
+    }
+
+    return $_;
+}
+
+sub unmunge
+{
+    # Replace escaped symbols with their equivalents.
+    local $_ = $_[0];
+
+    s/&lt;/E<lt>/g;
+    s/&gt;/E<gt>/g;
+    s/&lbrace;/\{/g;
+    s/&rbrace;/\}/g;
+    s/&at;/\@/g;
+    s/&amp;/&/g;
+    return $_;
+}
+
+sub add_footnote
+{
+    unless (exists $sects{FOOTNOTES}) {
+	$sects{FOOTNOTES} = "\n=over 4\n\n";
+    }
+
+    $sects{FOOTNOTES} .= "=item $fnno.\n\n"; $fnno++;
+    $sects{FOOTNOTES} .= $_[0];
+    $sects{FOOTNOTES} .= "\n\n";
+}
+    
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/ChangeLog.M68HC11 binutils-2.11.2-m68hc1x/gas/ChangeLog.M68HC11
--- binutils-2.11.2/gas/ChangeLog.M68HC11	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/gas/ChangeLog.M68HC11	Sun Jan 20 20:11:46 2002
@@ -0,0 +1,69 @@
+2002-01-20  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* config/tc-m68hc11.c (m68hc11_relax_instruction): Relax instruction
+	has a argument which marks the end of the relax group.
+
+2002-01-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* config/tc-m68hc11.h (ELF_TC_SPECIAL_SECTIONS): New section .softregs.
+
+2001-12-23  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* config/tc-m68hc11.h (ELF_TC_SPECIAL_SECTIONS): Define .eeprom
+	section.
+	* config/tc-m68hc11.c (md_estimate_size_before_relax): Create the
+	BFD_RELOC_16_PCREL as PC-relative fixup.
+
+2001-12-23  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* config/tc-m68hc11.h (MD_PCREL_FROM_SECTION): Remove.
+	* config/tc-m68hc11.c (md_pcrel_from): Rename from 
+	md_pcrel_from_section and fix address computation.
+
+2001-12-16  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* config/tc-m68hc11.h (TC_FORCE_RELOCATION): Define.
+	(tc_m68hc11_force_relocation): Declare.
+	* config/tc-m68hc11.c (md_apply_fix3): Handle VTABLE_INHERIT and
+	VTABLE_ENTRY relocs.
+	(tc_m68hc11_force_relocation): New function, handle above relocs.
+
+2001-12-15  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* config/tc-m68hc11.h (TC_HANDLES_FX_DONE): Define to let md_apply_fix3
+	set fx_done flag according to the reloc.
+	(tc_fix_adjustable, tc_m68hc11_fix_adjustable): Define.
+	* config/tc-m68hc11.c (md_pseudo_table): New command relax.
+	(m68hc11_relax_instruction): New for relax command.
+	(build_jump_insn): Emit a M68HC11_RL_JUMP reloc at beginning of
+	jump instruction.
+	(build_insn): Likewise.
+	(tc_m68hc11_fix_adjustable): New to make sure there are enough
+	reloc for the linker relax pass.
+	(md_apply_fix3): Handle M68HC11_RL_JUMP and M68HC11_RL_GROUP relocs.
+
+2001-09-16  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* config/tc-m68hc11.c (build_jump_insn): Allocate worst case storage
+	for bra/bsr and use frag_variant(), this ensure that the possible
+	16-bit BFD_RELOC_16 will be in the same frag.
+
+2001-09-22  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* config/tc-m68hc11.c (cmp_opcode): Define prototype.
+	(print_opcode_format, skip_whites): Likewise.
+	(convert_branch, m68hc11_new_insn): Likewise.
+	(build_dbranch_insn, build_indexed_byte): Likewise.
+	(build_reg_mode, find, find_opcode): Likewise.
+	(print_insn_format): Fix call to print_opcode_format.
+	(md_assemble): Fix call to build_dbranch_insn.
+
+2001-03-23  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* doc/as.texinfo: Put @c man begin to generate the as man page.
+	When generating man, define all the variables. Re-organize some
+	options to obtain better indentation of man page.
+	* doc/Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variable.
+	(as.1): Build from as.texinfo.
+	* doc/Makefile.in: Regenerate.Index: binutils/Makefile.am
+
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/Makefile.in binutils-2.11.2-m68hc1x/gas/Makefile.in
--- binutils-2.11.2/gas/Makefile.in	Fri Sep 21 20:58:39 2001
+++ binutils-2.11.2-m68hc1x/gas/Makefile.in	Sat Sep 22 12:05:51 2001
@@ -147,60 +147,13 @@ IT_OBJS = itbl-parse.o itbl-lex.o itbl-o
 
 # CPU types.  This is only used for dependency information.
 
-CPU_TYPES = \
-	a29k \
-	alpha \
-	arc \
-	arm \
-	avr \
-	cris \
-	d10v \
-	d30v \
-	fr30 \
-	h8300 \
-	h8500 \
-	hppa \
-	ia64 \
-	i370 \
-	i386 \
-	i860 \
-	i960 \
-	m32r \
-	m68hc11 \
-	m68k \
-	m88k \
-	mcore \
-	mips \
-	mn10200 \
-	mn10300 \
-	ns32k \
-	pj \
-	ppc \
-	sh \
-	sparc \
-	tahoe \
-	tic30 \
-	tic54x \
-	tic80 \
-	vax \
-	w65 \
-	v850 \
-	z8k
+CPU_TYPES =  	a29k 	alpha 	arc 	arm 	avr 	cris 	d10v 	d30v 	fr30 	h8300 	h8500 	hppa 	ia64 	i370 	i386 	i860 	i960 	m32r 	m68hc11 	m68k 	m88k 	mcore 	mips 	mn10200 	mn10300 	ns32k 	pj 	ppc 	sh 	sparc 	tahoe 	tic30 	tic54x 	tic80 	vax 	w65 	v850 	z8k
 
 
 # Object format types.  This is only used for dependency information.
 # We deliberately omit SOM, since it does not work as a cross assembler.
 
-OBJ_FORMATS = \
-	aout \
-	bout \
-	coff \
-	ecoff \
-	elf \
-	evax \
-	hp300 \
-	ieee \
-	vms
+OBJ_FORMATS =  	aout 	bout 	coff 	ecoff 	elf 	evax 	hp300 	ieee 	vms
 
 
 # This is an sh case which sets valid according to whether the CPU
@@ -208,334 +161,61 @@ OBJ_FORMATS = \
 # are supported.  This helps cuts down on the amount of dependency
 # information.
 
-CPU_OBJ_VALID = \
-	valid= ; \
-	case $$o in \
-	aout) \
-	  case $$c in \
-	  a29k | arm | cris | i386 | m68k | mips | ns32k | sparc | tahoe | tic30 | vax) \
-	    valid=yes ;; \
-	  esac ;; \
-	bout) \
-	  case $$c in \
-	  i960) valid=yes ;; \
-	  esac ;; \
-	coff) valid=yes; \
-	  case $$c in \
-	  cris | i860) \
-	    valid= ;; \
-	  esac ;; \
-	ecoff) \
-	  case $$c in \
-	  mips | alpha) valid=yes ;; \
-	  esac ;; \
-	elf) valid=yes ;; \
-	evax) \
-	  case $$c in \
-	  alpha) valid=yes ;; \
-	  esac ;; \
-	hp300) \
-	  case $$c in \
-	  m68k) valid=yes ;; \
-	  esac ;; \
-	vms) \
-	  case $$c in \
-	  vax) valid=yes ;; \
-	  esac ;; \
-	esac;
+CPU_OBJ_VALID =  	valid= ; 	case $$o in 	aout) 	  case $$c in 	  a29k | arm | cris | i386 | m68k | mips | ns32k | sparc | tahoe | tic30 | vax) 	    valid=yes ;; 	  esac ;; 	bout) 	  case $$c in 	  i960) valid=yes ;; 	  esac ;; 	coff) valid=yes; 	  case $$c in 	  cris | i860) 	    valid= ;; 	  esac ;; 	ecoff) 	  case $$c in 	  mips | alpha) valid=yes ;; 	  esac ;; 	elf) valid=yes ;; 	evax) 	  case $$c in 	  alpha) valid=yes ;; 	  esac ;; 	hp300) 	  case $$c in 	  m68k) valid=yes ;; 	  esac ;; 	vms) 	  case $$c in 	  vax) valid=yes ;; 	  esac ;; 	esac;
 
 
 # These are like CPU_TYPES and CPU_OBJ_VALID, for the obj=multi case.
 
 MULTI_CPU_TYPES = i386 mips cris
 
-MULTI_CPU_OBJ_VALID = \
-	valid= ; \
-	case $$o in \
-	aout) \
-	  case $$c in \
-	  i386 | cris) valid=yes ;; \
-	  esac ;; \
-	coff) \
-	  case $$c in \
-	  i386 | mips) valid=yes ;; \
-	  esac ;; \
-	ecoff) \
-	  case $$c in \
-	  mips) valid=yes ;; \
-	  esac ;; \
-	elf) valid=yes ;; \
-	esac;
+MULTI_CPU_OBJ_VALID =  	valid= ; 	case $$o in 	aout) 	  case $$c in 	  i386 | cris) valid=yes ;; 	  esac ;; 	coff) 	  case $$c in 	  i386 | mips) valid=yes ;; 	  esac ;; 	ecoff) 	  case $$c in 	  mips) valid=yes ;; 	  esac ;; 	elf) valid=yes ;; 	esac;
 
 
 # Regular source files.
 
-GAS_CFILES = \
-	app.c \
-	as.c \
-	atof-generic.c \
-	bignum-copy.c \
-	cond.c \
-	depend.c \
-	dwarf2dbg.c \
-	ecoff.c \
-	ehopt.c \
-	expr.c \
-	flonum-copy.c \
-	flonum-konst.c \
-	flonum-mult.c \
-	frags.c \
-	hash.c \
-	input-file.c \
-	input-scrub.c \
-	listing.c \
-	literal.c \
-	macro.c \
-	messages.c \
-	output-file.c \
-	read.c \
-	sb.c \
-	stabs.c \
-	subsegs.c \
-	symbols.c \
-	write.c
+GAS_CFILES =  	app.c 	as.c 	atof-generic.c 	bignum-copy.c 	cond.c 	depend.c 	dwarf2dbg.c 	ecoff.c 	ehopt.c 	expr.c 	flonum-copy.c 	flonum-konst.c 	flonum-mult.c 	frags.c 	hash.c 	input-file.c 	input-scrub.c 	listing.c 	literal.c 	macro.c 	messages.c 	output-file.c 	read.c 	sb.c 	stabs.c 	subsegs.c 	symbols.c 	write.c
 
 
 CFILES = $(GAS_CFILES) gasp.c itbl-ops.c
 
-HFILES = \
-	as.h \
-	asintl.h \
-	bignum.h \
-	bit_fix.h \
-	cgen.h \
-	dwarf2dbg.h \
-	ecoff.h \
-	emul-target.h \
-	emul.h \
-	expr.h \
-	flonum.h \
-	frags.h \
-	hash.h \
-	input-file.h \
-	itbl-ops.h \
-	listing.h \
-	macro.h \
-	obj.h \
-	output-file.h \
-	read.h \
-	sb.h \
-	struc-symbol.h \
-	subsegs.h \
-	symbols.h \
-	tc.h \
-	write.h
+HFILES =  	as.h 	asintl.h 	bignum.h 	bit_fix.h 	cgen.h 	dwarf2dbg.h 	ecoff.h 	emul-target.h 	emul.h 	expr.h 	flonum.h 	frags.h 	hash.h 	input-file.h 	itbl-ops.h 	listing.h 	macro.h 	obj.h 	output-file.h 	read.h 	sb.h 	struc-symbol.h 	subsegs.h 	symbols.h 	tc.h 	write.h
 
 
 # CPU files in config.
 
-TARGET_CPU_CFILES = \
-	config/tc-a29k.c \
-	config/tc-alpha.c \
-	config/tc-arc.c \
-	config/tc-arm.c \
-	config/tc-avr.c \
-	config/tc-cris.c \
-	config/tc-d10v.c \
-	config/tc-d30v.c \
-	config/tc-fr30.c \
-	config/tc-h8300.c \
-	config/tc-h8500.c \
-	config/tc-hppa.c \
-	config/tc-ia64.c \
-	config/tc-i370.c \
-	config/tc-i386.c \
-	config/tc-i860.c \
-	config/tc-i960.c \
-	config/tc-m32r.c \
-	config/tc-m68hc11.c \
-	config/tc-m68k.c \
-	config/tc-m88k.c \
-	config/tc-mcore.c \
-	config/tc-mips.c \
-	config/tc-mn10200.c \
-	config/tc-mn10300.c \
-	config/tc-ns32k.c \
-	config/tc-pj.c \
-	config/tc-ppc.c \
-	config/tc-sh.c \
-	config/tc-sparc.c \
-	config/tc-tahoe.c \
-	config/tc-tic30.c \
-	config/tc-tic54x.c \
-	config/tc-tic80.c \
-	config/tc-vax.c \
-	config/tc-w65.c \
-	config/tc-v850.c \
-	config/tc-z8k.c
-
-
-TARGET_CPU_HFILES = \
-	config/tc-a29k.h \
-	config/tc-alpha.h \
-	config/tc-arc.h \
-	config/tc-arm.h \
-	config/tc-avr.h \
-	config/tc-cris.h \
-	config/tc-d10v.h \
-	config/tc-d30v.h \
-	config/tc-fr30.h \
-	config/tc-h8300.h \
-	config/tc-h8500.h \
-	config/tc-hppa.h \
-	config/tc-ia64.h \
-	config/tc-i370.h \
-	config/tc-i386.h \
-	config/tc-i860.h \
-	config/tc-i960.h \
-	config/tc-m32r.h \
-	config/tc-m68hc11.h \
-	config/tc-m68k.h \
-	config/tc-m88k.h \
-	config/tc-mcore.h \
-	config/tc-mips.h \
-	config/tc-mn10200.h \
-	config/tc-mn10300.h \
-	config/tc-ns32k.h \
-	config/tc-pj.h \
-	config/tc-ppc.h \
-	config/tc-sh.h \
-	config/tc-sparc.h \
-	config/tc-tahoe.h \
-	config/tc-tic30.h \
-	config/tc-tic54x.h \
-	config/tc-tic80.h \
-	config/tc-vax.h \
-	config/tc-w65.h \
-	config/tc-v850.h \
-	config/tc-z8k.h
+TARGET_CPU_CFILES =  	config/tc-a29k.c 	config/tc-alpha.c 	config/tc-arc.c 	config/tc-arm.c 	config/tc-avr.c 	config/tc-cris.c 	config/tc-d10v.c 	config/tc-d30v.c 	config/tc-fr30.c 	config/tc-h8300.c 	config/tc-h8500.c 	config/tc-hppa.c 	config/tc-ia64.c 	config/tc-i370.c 	config/tc-i386.c 	config/tc-i860.c 	config/tc-i960.c 	config/tc-m32r.c 	config/tc-m68hc11.c 	config/tc-m68k.c 	config/tc-m88k.c 	config/tc-mcore.c 	config/tc-mips.c 	config/tc-mn10200.c 	config/tc-mn10300.c 	config/tc-ns32k.c 	config/tc-pj.c 	config/tc-ppc.c 	config/tc-sh.c 	config/tc-sparc.c 	config/tc-tahoe.c 	config/tc-tic30.c 	config/tc-tic54x.c 	config/tc-tic80.c 	config/tc-vax.c 	config/tc-w65.c 	config/tc-v850.c 	config/tc-z8k.c
+
+
+TARGET_CPU_HFILES =  	config/tc-a29k.h 	config/tc-alpha.h 	config/tc-arc.h 	config/tc-arm.h 	config/tc-avr.h 	config/tc-cris.h 	config/tc-d10v.h 	config/tc-d30v.h 	config/tc-fr30.h 	config/tc-h8300.h 	config/tc-h8500.h 	config/tc-hppa.h 	config/tc-ia64.h 	config/tc-i370.h 	config/tc-i386.h 	config/tc-i860.h 	config/tc-i960.h 	config/tc-m32r.h 	config/tc-m68hc11.h 	config/tc-m68k.h 	config/tc-m88k.h 	config/tc-mcore.h 	config/tc-mips.h 	config/tc-mn10200.h 	config/tc-mn10300.h 	config/tc-ns32k.h 	config/tc-pj.h 	config/tc-ppc.h 	config/tc-sh.h 	config/tc-sparc.h 	config/tc-tahoe.h 	config/tc-tic30.h 	config/tc-tic54x.h 	config/tc-tic80.h 	config/tc-vax.h 	config/tc-w65.h 	config/tc-v850.h 	config/tc-z8k.h
 
 
 # OBJ files in config
 
-OBJ_FORMAT_CFILES = \
-	config/obj-aout.c \
-	config/obj-bout.c \
-	config/obj-coff.c \
-	config/obj-ecoff.c \
-	config/obj-elf.c \
-	config/obj-evax.c \
-	config/obj-hp300.c \
-	config/obj-ieee.c \
-	config/obj-som.c \
-	config/obj-vms.c
-
-
-OBJ_FORMAT_HFILES = \
-	config/obj-aout.h \
-	config/obj-bout.h \
-	config/obj-coff.h \
-	config/obj-ecoff.h \
-	config/obj-elf.h \
-	config/obj-evax.h \
-	config/obj-hp300.h \
-	config/obj-ieee.h \
-	config/obj-som.h \
-	config/obj-vms.h
+OBJ_FORMAT_CFILES =  	config/obj-aout.c 	config/obj-bout.c 	config/obj-coff.c 	config/obj-ecoff.c 	config/obj-elf.c 	config/obj-evax.c 	config/obj-hp300.c 	config/obj-ieee.c 	config/obj-som.c 	config/obj-vms.c
+
+
+OBJ_FORMAT_HFILES =  	config/obj-aout.h 	config/obj-bout.h 	config/obj-coff.h 	config/obj-ecoff.h 	config/obj-elf.h 	config/obj-evax.h 	config/obj-hp300.h 	config/obj-ieee.h 	config/obj-som.h 	config/obj-vms.h
 
 
 # Emulation header files in config
 
-TARG_ENV_HFILES = \
-	config/te-386bsd.h \
-	config/te-aux.h \
-	config/te-delta.h \
-	config/te-delt88.h \
-	config/te-dpx2.h \
-	config/te-dynix.h \
-	config/te-epoc-pe.h \
-	config/te-generic.h \
-	config/te-go32.h \
-	config/te-hp300.h \
-	config/te-hppa.h \
-	config/te-hppa64.h \
-	config/te-hppalinux64.h \
-	config/te-i386aix.h \
-	config/te-ic960.h \
-	config/te-linux.h \
-	config/te-lnews.h \
-	config/te-lynx.h \
-	config/te-mach.h \
-	config/te-macos.h \
-	config/te-nbsd.h \
-	config/te-nbsd532.h \
-	config/te-pc532mach.h \
-	config/te-pe.h \
-	config/te-ppcnw.h \
-	config/te-psos.h \
-	config/te-riscix.h \
-	config/te-sparcaout.h \
-	config/te-sun3.h \
-	config/te-svr4.h \
-	config/te-sysv32.h \
-	config/te-tmips.h
+TARG_ENV_HFILES =  	config/te-386bsd.h 	config/te-aux.h 	config/te-delta.h 	config/te-delt88.h 	config/te-dpx2.h 	config/te-dynix.h 	config/te-epoc-pe.h 	config/te-generic.h 	config/te-go32.h 	config/te-hp300.h 	config/te-hppa.h 	config/te-hppa64.h 	config/te-hppalinux64.h 	config/te-i386aix.h 	config/te-ic960.h 	config/te-linux.h 	config/te-lnews.h 	config/te-lynx.h 	config/te-mach.h 	config/te-macos.h 	config/te-nbsd.h 	config/te-nbsd532.h 	config/te-pc532mach.h 	config/te-pe.h 	config/te-ppcnw.h 	config/te-psos.h 	config/te-riscix.h 	config/te-sparcaout.h 	config/te-sun3.h 	config/te-svr4.h 	config/te-sysv32.h 	config/te-tmips.h
 
 
 # Multi files in config
 
-MULTI_CFILES = \
-	config/e-crisaout.c \
-	config/e-criself.c \
-	config/e-i386aout.c \
-	config/e-i386coff.c \
-	config/e-i386elf.c \
-	config/e-mipsecoff.c \
-	config/e-mipself.c
-
-
-CONFIG_OBJS = \
-	$(TARG_CPU_O) \
-	$(OBJ_FORMAT_O) \
-	$(ATOF_TARG_O) \
-	$(extra_objects)
-
-
-GENERIC_OBJS = \
-	app.o \
-	as.o \
-	atof-generic.o \
-	bignum-copy.o \
-	cond.o \
-	depend.o \
-	dwarf2dbg.o \
-	ehopt.o \
-	expr.o \
-	flonum-konst.o \
-	flonum-copy.o \
-	flonum-mult.o \
-	frags.o \
-	hash.o \
-	input-file.o \
-	input-scrub.o \
-	literal.o \
-	messages.o \
-	output-file.o \
-	read.o \
-	subsegs.o \
-	symbols.o \
-	write.o \
-	listing.o \
-	ecoff.o \
-	stabs.o \
-	sb.o \
-	macro.o
+MULTI_CFILES =  	config/e-crisaout.c 	config/e-criself.c 	config/e-i386aout.c 	config/e-i386coff.c 	config/e-i386elf.c 	config/e-mipsecoff.c 	config/e-mipself.c
+
+
+CONFIG_OBJS =  	$(TARG_CPU_O) 	$(OBJ_FORMAT_O) 	$(ATOF_TARG_O) 	$(extra_objects)
+
+
+GENERIC_OBJS =  	app.o 	as.o 	atof-generic.o 	bignum-copy.o 	cond.o 	depend.o 	dwarf2dbg.o 	ehopt.o 	expr.o 	flonum-konst.o 	flonum-copy.o 	flonum-mult.o 	frags.o 	hash.o 	input-file.o 	input-scrub.o 	literal.o 	messages.o 	output-file.o 	read.o 	subsegs.o 	symbols.o 	write.o 	listing.o 	ecoff.o 	stabs.o 	sb.o 	macro.o
 
 
 OBJS = $(CONFIG_OBJS) $(GENERIC_OBJS)
 
-POTFILES = $(MULTI_CFILES) $(TARGET_ENV_HFILES) $(OBJ_FORMAT_HFILES) \
-	$(OBJ_FORMAT_CFILES) $(TARGET_CPU_HFILES) $(TARGET_CPU_CFILES) \
-	$(HFILES) $(CFILES) $(GAS_CFILES)
+POTFILES = $(MULTI_CFILES) $(TARGET_ENV_HFILES) $(OBJ_FORMAT_HFILES) 	$(OBJ_FORMAT_CFILES) $(TARGET_CPU_HFILES) $(TARGET_CPU_CFILES) 	$(HFILES) $(CFILES) $(GAS_CFILES)
 
 
 noinst_PROGRAMS = as-new gasp-new
@@ -576,25 +256,19 @@ GASLIBS = @OPCODES_LIB@ @BFDLIB@ ../libi
 STAGESTUFF = *.o $(noinst_PROGRAMS)
 
 as_new_SOURCES = $(GAS_CFILES)
-as_new_LDADD = $(TARG_CPU_O) $(OBJ_FORMAT_O) $(ATOF_TARG_O) \
-	$(extra_objects) $(GASLIBS) $(INTLLIBS) $(LIBM)
+as_new_LDADD = $(TARG_CPU_O) $(OBJ_FORMAT_O) $(ATOF_TARG_O) 	$(extra_objects) $(GASLIBS) $(INTLLIBS) $(LIBM)
 
-as_new_DEPENDENCIES = $(TARG_CPU_O) $(OBJ_FORMAT_O) $(ATOF_TARG_O) \
-	$(extra_objects) $(GASLIBS) $(INTLDEPS)
+as_new_DEPENDENCIES = $(TARG_CPU_O) $(OBJ_FORMAT_O) $(ATOF_TARG_O) 	$(extra_objects) $(GASLIBS) $(INTLDEPS)
 
 
 gasp_new_SOURCES = gasp.c macro.c sb.c hash.c
 gasp_new_LDADD = ../libiberty/libiberty.a $(INTLLIBS)
 gasp_new_DEPENDENCIES = ../libiberty/libiberty.a $(INTLDEPS)
 
-EXPECT = `if [ -f $${rootme}/../expect/expect ] ; then \
-          echo $${rootme}/../expect/expect ; \
-          else echo expect ; fi`
+EXPECT = `if [ -f $${rootme}/../expect/expect ] ; then           echo $${rootme}/../expect/expect ;           else echo expect ; fi`
 
 
-RUNTEST = `if [ -f $${srcdir}/../dejagnu/runtest ] ; then \
-		echo $${srcdir}/../dejagnu/runtest ; else echo runtest; \
-	   fi`
+RUNTEST = `if [ -f $${srcdir}/../dejagnu/runtest ] ; then 		echo $${srcdir}/../dejagnu/runtest ; else echo runtest; 	   fi`
 
 RUNTESTFLAGS = 
 
@@ -614,1225 +288,578 @@ CGEN_CPU_PREFIX = @cgen_cpu_prefix@
 
 # Remake the info files.
 
-MOSTLYCLEANFILES = $(STAGESTUFF) core stamp-mk.com \
-	testsuite/*.o testsuite/*.out testsuite/gas.log testsuite/gas.sum \
-	testsuite/site.exp site.bak site.exp stage stage1 stage2
+MOSTLYCLEANFILES = $(STAGESTUFF) core stamp-mk.com 	testsuite/*.o testsuite/*.out testsuite/gas.log testsuite/gas.sum 	testsuite/site.exp site.bak site.exp stage stage1 stage2
 
 
 CLEANFILES = dep.sed DEPTC DEPTCA DEPOBJ DEPOBJA DEP2 DEP2A DEP1 DEPA DEP DEPDIR
 
 against = stage2
 
-DEP_FILE_DEPS = $(CFILES) $(HFILES) $(TARGET_CPU_CFILES) \
-	$(TARGET_CPU_HFILES) $(OBJ_FORMAT_CFILES) $(OBJ_FORMAT_HFILES)
+DEP_FILE_DEPS = $(CFILES) $(HFILES) $(TARGET_CPU_CFILES) 	$(TARGET_CPU_HFILES) $(OBJ_FORMAT_CFILES) $(OBJ_FORMAT_HFILES)
 
 
 AMKDEP = #DO NOT PUT ANYTHING BETWEEN THIS LINE AND THE MATCHING WARNING BELOW.
-DEPTC_a29k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-a29k.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/opcode/a29k.h
+DEPTC_a29k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-a29k.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/opcode/a29k.h
+
+DEPTC_a29k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-a29k.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/a29k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/opcode/a29k.h
+
+DEPTC_a29k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-a29k.h $(INCDIR)/opcode/a29k.h
+
+DEPTC_alpha_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-alpha.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   subsegs.h $(INCDIR)/obstack.h struc-symbol.h ecoff.h   $(INCDIR)/opcode/alpha.h $(srcdir)/config/atof-vax.c
+
+DEPTC_alpha_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-alpha.h   ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h   subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/opcode/alpha.h   $(srcdir)/config/atof-vax.c
+
+DEPTC_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-alpha.h subsegs.h   $(INCDIR)/obstack.h struc-symbol.h ecoff.h $(INCDIR)/coff/sym.h   $(INCDIR)/coff/ecoff.h $(INCDIR)/opcode/alpha.h $(INCDIR)/elf/alpha.h   $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h $(srcdir)/config/atof-vax.c
+
+DEPTC_alpha_evax = $(srcdir)/config/obj-evax.h $(srcdir)/config/tc-alpha.h   subsegs.h $(INCDIR)/obstack.h struc-symbol.h ecoff.h   $(INCDIR)/opcode/alpha.h $(srcdir)/config/atof-vax.c
+
+DEPTC_arc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arc.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   struc-symbol.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arc.h   $(srcdir)/../opcodes/arc-ext.h $(INCDIR)/elf/arc.h   $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
+
+DEPTC_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h struc-symbol.h   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arc.h   $(srcdir)/../opcodes/arc-ext.h $(INCDIR)/elf/arc.h   $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
+
+DEPTC_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h
+
+DEPTC_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/arm.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h
+
+DEPTC_arm_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arm.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/elf/arm.h $(INCDIR)/elf/reloc-macros.h   dwarf2dbg.h
+
+DEPTC_avr_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-avr.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/avr.h
+
+DEPTC_avr_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-avr.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/avr.h
+
+DEPTC_cris_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-cris.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h   $(INCDIR)/opcode/cris.h dwarf2dbg.h
+
+DEPTC_cris_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cris.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/cris.h dwarf2dbg.h
+
+DEPTC_d10v_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-d10v.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/d10v.h   $(INCDIR)/elf/ppc.h $(INCDIR)/elf/reloc-macros.h
+
+DEPTC_d10v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d10v.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/d10v.h $(INCDIR)/elf/ppc.h   $(INCDIR)/elf/reloc-macros.h
+
+DEPTC_d30v_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-d30v.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/d30v.h
+
+DEPTC_d30v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d30v.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/d30v.h
+
+DEPTC_fr30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-fr30.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/symcat.h $(srcdir)/../opcodes/fr30-desc.h   $(INCDIR)/opcode/cgen.h $(srcdir)/../opcodes/fr30-opc.h   cgen.h
+
+DEPTC_fr30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-fr30.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/symcat.h $(srcdir)/../opcodes/fr30-desc.h   $(INCDIR)/opcode/cgen.h $(srcdir)/../opcodes/fr30-opc.h   cgen.h
+
+DEPTC_h8300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8300.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8300.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/h8300.h
+
+DEPTC_h8300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8300.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/h8300.h
+
+DEPTC_h8500_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8500.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8500.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/h8500-opc.h
+
+DEPTC_h8500_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8500.h subsegs.h   $(INCDIR)/obstack.h $(srcdir)/../opcodes/h8500-opc.h
+
+DEPTC_hppa_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-hppa.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   subsegs.h $(INCDIR)/obstack.h $(BFDDIR)/libhppa.h $(INCDIR)/opcode/hppa.h
+
+DEPTC_hppa_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-hppa.h $(BFDDIR)/elf32-hppa.h   $(BFDDIR)/libhppa.h $(INCDIR)/elf/hppa.h $(INCDIR)/elf/reloc-macros.h   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/hppa.h   dwarf2dbg.h
+
+DEPTC_ia64_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ia64.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   dwarf2dbg.h subsegs.h $(INCDIR)/obstack.h
+
+DEPTC_ia64_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ia64.h dwarf2dbg.h   subsegs.h $(INCDIR)/obstack.h
+
+DEPTC_i370_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i370.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/opcode/i370.h
+
+DEPTC_i370_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i370.h subsegs.h   $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/opcode/i370.h   $(INCDIR)/elf/i370.h
+
+DEPTC_i386_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-i386.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h   dwarf2dbg.h $(INCDIR)/opcode/i386.h
+
+DEPTC_i386_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i386.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/i386.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h   $(INCDIR)/opcode/i386.h
+
+DEPTC_i386_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i386.h subsegs.h   $(INCDIR)/obstack.h dwarf2dbg.h $(INCDIR)/opcode/i386.h
+
+DEPTC_i860_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i860.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/i860.h $(INCDIR)/elf/i860.h   $(INCDIR)/elf/reloc-macros.h
+
+DEPTC_i960_bout = $(srcdir)/config/obj-bout.h $(srcdir)/config/tc-i960.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/i960.h
+
+DEPTC_i960_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i960.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/i960.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h $(INCDIR)/opcode/i960.h
+
+DEPTC_i960_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i960.h $(INCDIR)/obstack.h   $(INCDIR)/opcode/i960.h
+
+DEPTC_m32r_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m32r.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/symcat.h $(srcdir)/../opcodes/m32r-desc.h   $(INCDIR)/opcode/cgen.h $(srcdir)/../opcodes/m32r-opc.h   cgen.h
+
+DEPTC_m32r_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m32r.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/symcat.h $(srcdir)/../opcodes/m32r-desc.h   $(INCDIR)/opcode/cgen.h $(srcdir)/../opcodes/m32r-opc.h   cgen.h
+
+DEPTC_m68hc11_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68hc11.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/m68hc11.h   dwarf2dbg.h
+
+DEPTC_m68hc11_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68hc11.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/m68hc11.h dwarf2dbg.h
+
+DEPTC_m68k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-m68k.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h   subsegs.h $(INCDIR)/opcode/m68k.h $(srcdir)/config/m68k-parse.h
+
+DEPTC_m68k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68k.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h $(INCDIR)/opcode/m68k.h   $(srcdir)/config/m68k-parse.h
+
+DEPTC_m68k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68k.h $(INCDIR)/obstack.h   subsegs.h $(INCDIR)/opcode/m68k.h $(srcdir)/config/m68k-parse.h   $(INCDIR)/elf/m68k.h $(INCDIR)/elf/reloc-macros.h
+
+DEPTC_m68k_hp300 = $(srcdir)/config/obj-hp300.h $(srcdir)/config/obj-aout.h   $(srcdir)/config/tc-m68k.h $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h $(INCDIR)/opcode/m68k.h   $(srcdir)/config/m68k-parse.h
+
+DEPTC_m88k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m88k.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m88k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/config/m88k-opcode.h
+
+DEPTC_m88k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m88k.h subsegs.h   $(INCDIR)/obstack.h $(srcdir)/config/m88k-opcode.h
+
+DEPTC_mcore_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mcore.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/mcore.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/mcore-opc.h
+
+DEPTC_mcore_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mcore.h subsegs.h   $(INCDIR)/obstack.h $(srcdir)/../opcodes/mcore-opc.h   $(INCDIR)/elf/mcore.h $(INCDIR)/elf/reloc-macros.h
+
+DEPTC_mips_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-mips.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h   $(INCDIR)/opcode/mips.h itbl-ops.h $(srcdir)/config/obj-elf.h   $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h   $(INCDIR)/elf/external.h $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h   ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
+
+DEPTC_mips_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mips.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/mipspe.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/mips.h   itbl-ops.h $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h ecoff.h   $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
+
+DEPTC_mips_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-mips.h   ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/mips.h   itbl-ops.h $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h
+
+DEPTC_mips_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mips.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/mips.h itbl-ops.h   $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h ecoff.h   $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
+
+DEPTC_mn10200_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mn10200.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/mn10200.h
+
+DEPTC_mn10200_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10200.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/mn10200.h
+
+DEPTC_mn10300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mn10300.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/mn10300.h   dwarf2dbg.h
+
+DEPTC_mn10300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10300.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/mn10300.h dwarf2dbg.h
+
+DEPTC_ns32k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-ns32k.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/opcode/ns32k.h   $(INCDIR)/obstack.h
+
+DEPTC_ns32k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ns32k.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/opcode/ns32k.h $(INCDIR)/obstack.h
+
+DEPTC_ns32k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ns32k.h $(INCDIR)/opcode/ns32k.h   $(INCDIR)/obstack.h
+
+DEPTC_pj_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-pj.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/opcode/pj.h
+
+DEPTC_pj_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-pj.h $(INCDIR)/opcode/pj.h
+
+DEPTC_ppc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ppc.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/ppc.h
+
+DEPTC_ppc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/ppc.h $(INCDIR)/elf/ppc.h   $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
+
+DEPTC_sh_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sh.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/sh.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/sh-opc.h   struc-symbol.h dwarf2dbg.h
+
+DEPTC_sh_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sh.h subsegs.h   $(INCDIR)/obstack.h $(srcdir)/../opcodes/sh-opc.h struc-symbol.h   $(INCDIR)/elf/sh.h $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
+
+DEPTC_sparc_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-sparc.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h   $(INCDIR)/opcode/sparc.h
+
+DEPTC_sparc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sparc.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/sparc.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/sparc.h
+
+DEPTC_sparc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sparc.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/sparc.h $(INCDIR)/elf/sparc.h   $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
+
+DEPTC_tahoe_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tahoe.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h   $(INCDIR)/opcode/tahoe.h
+
+DEPTC_tahoe_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tahoe.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/tahoe.h
+
+DEPTC_tahoe_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tahoe.h $(INCDIR)/obstack.h   $(INCDIR)/opcode/tahoe.h
+
+DEPTC_tic30_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tic30.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/opcode/tic30.h
+
+DEPTC_tic30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic30.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic30.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/opcode/tic30.h
+
+DEPTC_tic30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic30.h $(INCDIR)/opcode/tic30.h
+
+DEPTC_tic54x_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic54x.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h sb.h macro.h   subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/opcode/tic54x.h
+
+DEPTC_tic54x_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic54x.h sb.h   macro.h subsegs.h $(INCDIR)/obstack.h struc-symbol.h   $(INCDIR)/opcode/tic54x.h $(srcdir)/config/obj-coff.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h   $(BFDDIR)/libcoff.h
+
+DEPTC_tic80_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic80.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic80.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/opcode/tic80.h
+
+DEPTC_tic80_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic80.h $(INCDIR)/opcode/tic80.h
+
+DEPTC_vax_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-vax.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(srcdir)/config/vax-inst.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/vax.h
+
+DEPTC_vax_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-vax.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(srcdir)/config/vax-inst.h $(INCDIR)/obstack.h $(INCDIR)/opcode/vax.h
+
+DEPTC_vax_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-vax.h $(srcdir)/config/vax-inst.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/vax.h
+
+DEPTC_vax_vms = $(srcdir)/config/obj-vms.h $(srcdir)/config/tc-vax.h   $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def $(srcdir)/config/vax-inst.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/vax.h
+
+DEPTC_w65_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-w65.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/w65.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/w65-opc.h
+
+DEPTC_w65_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-w65.h subsegs.h   $(INCDIR)/obstack.h $(srcdir)/../opcodes/w65-opc.h
+
+DEPTC_v850_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-v850.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/v850.h   dwarf2dbg.h
+
+DEPTC_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/opcode/v850.h dwarf2dbg.h
 
-DEPTC_a29k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-a29k.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/a29k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/opcode/a29k.h
-
-DEPTC_a29k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-a29k.h $(INCDIR)/opcode/a29k.h
-
-DEPTC_alpha_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-alpha.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  subsegs.h $(INCDIR)/obstack.h struc-symbol.h ecoff.h \
-  $(INCDIR)/opcode/alpha.h $(srcdir)/config/atof-vax.c
-
-DEPTC_alpha_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-alpha.h \
-  ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
-  subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/opcode/alpha.h \
-  $(srcdir)/config/atof-vax.c
-
-DEPTC_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-alpha.h subsegs.h \
-  $(INCDIR)/obstack.h struc-symbol.h ecoff.h $(INCDIR)/coff/sym.h \
-  $(INCDIR)/coff/ecoff.h $(INCDIR)/opcode/alpha.h $(INCDIR)/elf/alpha.h \
-  $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h $(srcdir)/config/atof-vax.c
-
-DEPTC_alpha_evax = $(srcdir)/config/obj-evax.h $(srcdir)/config/tc-alpha.h \
-  subsegs.h $(INCDIR)/obstack.h struc-symbol.h ecoff.h \
-  $(INCDIR)/opcode/alpha.h $(srcdir)/config/atof-vax.c
-
-DEPTC_arc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arc.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  struc-symbol.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arc.h \
-  $(srcdir)/../opcodes/arc-ext.h $(INCDIR)/elf/arc.h \
-  $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
-
-DEPTC_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h struc-symbol.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/arc.h \
-  $(srcdir)/../opcodes/arc-ext.h $(INCDIR)/elf/arc.h \
-  $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
-
-DEPTC_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h
-
-DEPTC_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/arm.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h
-
-DEPTC_arm_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arm.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/elf/arm.h $(INCDIR)/elf/reloc-macros.h \
-  dwarf2dbg.h
-
-DEPTC_avr_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-avr.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/avr.h
-
-DEPTC_avr_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-avr.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/avr.h
-
-DEPTC_cris_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-cris.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/opcode/cris.h dwarf2dbg.h
-
-DEPTC_cris_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cris.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/cris.h dwarf2dbg.h
-
-DEPTC_d10v_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-d10v.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/d10v.h \
-  $(INCDIR)/elf/ppc.h $(INCDIR)/elf/reloc-macros.h
-
-DEPTC_d10v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d10v.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/d10v.h $(INCDIR)/elf/ppc.h \
-  $(INCDIR)/elf/reloc-macros.h
-
-DEPTC_d30v_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-d30v.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/d30v.h
-
-DEPTC_d30v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d30v.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/d30v.h
-
-DEPTC_fr30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-fr30.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/symcat.h $(srcdir)/../opcodes/fr30-desc.h \
-  $(INCDIR)/opcode/cgen.h $(srcdir)/../opcodes/fr30-opc.h \
-  cgen.h
-
-DEPTC_fr30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-fr30.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/symcat.h $(srcdir)/../opcodes/fr30-desc.h \
-  $(INCDIR)/opcode/cgen.h $(srcdir)/../opcodes/fr30-opc.h \
-  cgen.h
-
-DEPTC_h8300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8300.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8300.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/h8300.h
-
-DEPTC_h8300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8300.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/h8300.h
-
-DEPTC_h8500_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8500.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8500.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/h8500-opc.h
-
-DEPTC_h8500_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8500.h subsegs.h \
-  $(INCDIR)/obstack.h $(srcdir)/../opcodes/h8500-opc.h
-
-DEPTC_hppa_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-hppa.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  subsegs.h $(INCDIR)/obstack.h $(BFDDIR)/libhppa.h $(INCDIR)/opcode/hppa.h
-
-DEPTC_hppa_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-hppa.h $(BFDDIR)/elf32-hppa.h \
-  $(BFDDIR)/libhppa.h $(INCDIR)/elf/hppa.h $(INCDIR)/elf/reloc-macros.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/hppa.h \
-  dwarf2dbg.h
-
-DEPTC_ia64_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ia64.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  dwarf2dbg.h subsegs.h $(INCDIR)/obstack.h
-
-DEPTC_ia64_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ia64.h dwarf2dbg.h \
-  subsegs.h $(INCDIR)/obstack.h
-
-DEPTC_i370_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i370.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/opcode/i370.h
-
-DEPTC_i370_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i370.h subsegs.h \
-  $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/opcode/i370.h \
-  $(INCDIR)/elf/i370.h
-
-DEPTC_i386_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-i386.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h \
-  dwarf2dbg.h $(INCDIR)/opcode/i386.h
-
-DEPTC_i386_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i386.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/i386.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h dwarf2dbg.h \
-  $(INCDIR)/opcode/i386.h
-
-DEPTC_i386_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i386.h subsegs.h \
-  $(INCDIR)/obstack.h dwarf2dbg.h $(INCDIR)/opcode/i386.h
-
-DEPTC_i860_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i860.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/i860.h $(INCDIR)/elf/i860.h \
-  $(INCDIR)/elf/reloc-macros.h
-
-DEPTC_i960_bout = $(srcdir)/config/obj-bout.h $(srcdir)/config/tc-i960.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/i960.h
-
-DEPTC_i960_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i960.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/i960.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h $(INCDIR)/opcode/i960.h
-
-DEPTC_i960_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i960.h $(INCDIR)/obstack.h \
-  $(INCDIR)/opcode/i960.h
-
-DEPTC_m32r_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m32r.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/symcat.h $(srcdir)/../opcodes/m32r-desc.h \
-  $(INCDIR)/opcode/cgen.h $(srcdir)/../opcodes/m32r-opc.h \
-  cgen.h
-
-DEPTC_m32r_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m32r.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/symcat.h $(srcdir)/../opcodes/m32r-desc.h \
-  $(INCDIR)/opcode/cgen.h $(srcdir)/../opcodes/m32r-opc.h \
-  cgen.h
-
-DEPTC_m68hc11_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68hc11.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/m68hc11.h \
-  dwarf2dbg.h
-
-DEPTC_m68hc11_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68hc11.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/m68hc11.h dwarf2dbg.h
-
-DEPTC_m68k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-m68k.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/opcode/m68k.h $(srcdir)/config/m68k-parse.h
-
-DEPTC_m68k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68k.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h $(INCDIR)/opcode/m68k.h \
-  $(srcdir)/config/m68k-parse.h
-
-DEPTC_m68k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68k.h $(INCDIR)/obstack.h \
-  subsegs.h $(INCDIR)/opcode/m68k.h $(srcdir)/config/m68k-parse.h \
-  $(INCDIR)/elf/m68k.h $(INCDIR)/elf/reloc-macros.h
-
-DEPTC_m68k_hp300 = $(srcdir)/config/obj-hp300.h $(srcdir)/config/obj-aout.h \
-  $(srcdir)/config/tc-m68k.h $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h $(INCDIR)/opcode/m68k.h \
-  $(srcdir)/config/m68k-parse.h
-
-DEPTC_m88k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m88k.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/m88k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/config/m88k-opcode.h
-
-DEPTC_m88k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m88k.h subsegs.h \
-  $(INCDIR)/obstack.h $(srcdir)/config/m88k-opcode.h
-
-DEPTC_mcore_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mcore.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/mcore.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/mcore-opc.h
-
-DEPTC_mcore_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mcore.h subsegs.h \
-  $(INCDIR)/obstack.h $(srcdir)/../opcodes/mcore-opc.h \
-  $(INCDIR)/elf/mcore.h $(INCDIR)/elf/reloc-macros.h
-
-DEPTC_mips_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-mips.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/opcode/mips.h itbl-ops.h $(srcdir)/config/obj-elf.h \
-  $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/elf/external.h $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h \
-  ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
-
-DEPTC_mips_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mips.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/mipspe.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/mips.h \
-  itbl-ops.h $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h ecoff.h \
-  $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
-
-DEPTC_mips_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-mips.h \
-  ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/mips.h \
-  itbl-ops.h $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h
-
-DEPTC_mips_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mips.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/mips.h itbl-ops.h \
-  $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h ecoff.h \
-  $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
-
-DEPTC_mn10200_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mn10200.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/mn10200.h
-
-DEPTC_mn10200_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10200.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/mn10200.h
-
-DEPTC_mn10300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mn10300.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/mn10300.h \
-  dwarf2dbg.h
-
-DEPTC_mn10300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10300.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/mn10300.h dwarf2dbg.h
-
-DEPTC_ns32k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-ns32k.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/opcode/ns32k.h \
-  $(INCDIR)/obstack.h
-
-DEPTC_ns32k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ns32k.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/opcode/ns32k.h $(INCDIR)/obstack.h
-
-DEPTC_ns32k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ns32k.h $(INCDIR)/opcode/ns32k.h \
-  $(INCDIR)/obstack.h
-
-DEPTC_pj_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-pj.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/opcode/pj.h
-
-DEPTC_pj_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-pj.h $(INCDIR)/opcode/pj.h
-
-DEPTC_ppc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ppc.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/ppc.h
-
-DEPTC_ppc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/ppc.h $(INCDIR)/elf/ppc.h \
-  $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
-
-DEPTC_sh_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sh.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/sh.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/sh-opc.h \
-  struc-symbol.h dwarf2dbg.h
-
-DEPTC_sh_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sh.h subsegs.h \
-  $(INCDIR)/obstack.h $(srcdir)/../opcodes/sh-opc.h struc-symbol.h \
-  $(INCDIR)/elf/sh.h $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
-
-DEPTC_sparc_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-sparc.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h \
-  $(INCDIR)/opcode/sparc.h
-
-DEPTC_sparc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sparc.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/sparc.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/sparc.h
-
-DEPTC_sparc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sparc.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/sparc.h $(INCDIR)/elf/sparc.h \
-  $(INCDIR)/elf/reloc-macros.h dwarf2dbg.h
-
-DEPTC_tahoe_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tahoe.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  $(INCDIR)/opcode/tahoe.h
-
-DEPTC_tahoe_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tahoe.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/tahoe.h
-
-DEPTC_tahoe_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tahoe.h $(INCDIR)/obstack.h \
-  $(INCDIR)/opcode/tahoe.h
-
-DEPTC_tic30_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tic30.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/opcode/tic30.h
-
-DEPTC_tic30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic30.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic30.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/opcode/tic30.h
-
-DEPTC_tic30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic30.h $(INCDIR)/opcode/tic30.h
-
-DEPTC_tic54x_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic54x.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h \
-  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h sb.h macro.h \
-  subsegs.h $(INCDIR)/obstack.h struc-symbol.h $(INCDIR)/opcode/tic54x.h
-
-DEPTC_tic54x_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic54x.h sb.h \
-  macro.h subsegs.h $(INCDIR)/obstack.h struc-symbol.h \
-  $(INCDIR)/opcode/tic54x.h $(srcdir)/config/obj-coff.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h \
-  $(BFDDIR)/libcoff.h
-
-DEPTC_tic80_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic80.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic80.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/opcode/tic80.h
-
-DEPTC_tic80_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic80.h $(INCDIR)/opcode/tic80.h
-
-DEPTC_vax_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-vax.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(srcdir)/config/vax-inst.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/vax.h
-
-DEPTC_vax_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-vax.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(srcdir)/config/vax-inst.h $(INCDIR)/obstack.h $(INCDIR)/opcode/vax.h
-
-DEPTC_vax_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-vax.h $(srcdir)/config/vax-inst.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/vax.h
-
-DEPTC_vax_vms = $(srcdir)/config/obj-vms.h $(srcdir)/config/tc-vax.h \
-  $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def $(srcdir)/config/vax-inst.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/vax.h
-
-DEPTC_w65_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-w65.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/w65.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h subsegs.h $(INCDIR)/obstack.h $(srcdir)/../opcodes/w65-opc.h
-
-DEPTC_w65_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-w65.h subsegs.h \
-  $(INCDIR)/obstack.h $(srcdir)/../opcodes/w65-opc.h
-
-DEPTC_v850_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-v850.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/opcode/v850.h \
-  dwarf2dbg.h
-
-DEPTC_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/opcode/v850.h dwarf2dbg.h
-
-DEPTC_z8k_coff = $(srcdir)/../opcodes/z8k-opc.h $(srcdir)/config/obj-coff.h \
-  $(srcdir)/config/tc-z8k.h $(INCDIR)/coff/internal.h \
-  $(INCDIR)/coff/z8k.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
-
-DEPTC_z8k_elf = $(srcdir)/../opcodes/z8k-opc.h $(srcdir)/config/obj-elf.h \
-  $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h \
-  $(INCDIR)/elf/external.h $(INCDIR)/bfdlink.h $(srcdir)/config/tc-z8k.h
-
-DEPTC_hppa_som = $(srcdir)/config/tc-hppa.h subsegs.h \
-  $(INCDIR)/obstack.h $(BFDDIR)/libhppa.h $(INCDIR)/opcode/hppa.h \
-  $(BFDDIR)/som.h
+DEPTC_z8k_coff = $(srcdir)/../opcodes/z8k-opc.h $(srcdir)/config/obj-coff.h   $(srcdir)/config/tc-z8k.h $(INCDIR)/coff/internal.h   $(INCDIR)/coff/z8k.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEPTC_i386_multi = $(DEPTC_i386_aout) $(DEPTC_i386_coff) \
-  $(DEPTC_i386_elf)
+DEPTC_z8k_elf = $(srcdir)/../opcodes/z8k-opc.h $(srcdir)/config/obj-elf.h   $(BFDDIR)/elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h   $(INCDIR)/elf/external.h $(INCDIR)/bfdlink.h $(srcdir)/config/tc-z8k.h
 
-DEPTC_mips_multi = $(DEPTC_mips_coff) $(DEPTC_mips_ecoff) \
-  $(DEPTC_mips_elf)
+DEPTC_hppa_som = $(srcdir)/config/tc-hppa.h subsegs.h   $(INCDIR)/obstack.h $(BFDDIR)/libhppa.h $(INCDIR)/opcode/hppa.h   $(BFDDIR)/som.h
+
+DEPTC_i386_multi = $(DEPTC_i386_aout) $(DEPTC_i386_coff)   $(DEPTC_i386_elf)
+
+DEPTC_mips_multi = $(DEPTC_mips_coff) $(DEPTC_mips_ecoff)   $(DEPTC_mips_elf)
 
 DEPTC_cris_multi = $(DEPTC_cris_aout) $(DEPTC_cris_elf)
-DEPOBJ_a29k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-a29k.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
-  $(INCDIR)/obstack.h
-
-DEPOBJ_a29k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-a29k.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/a29k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_a29k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-a29k.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_alpha_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-alpha.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_alpha_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-alpha.h \
-  ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(BFDDIR)/libecoff.h
-
-DEPOBJ_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-alpha.h subsegs.h \
-  $(INCDIR)/obstack.h ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
-  $(INCDIR)/elf/alpha.h $(INCDIR)/elf/reloc-macros.h \
-  $(INCDIR)/aout/aout64.h
+DEPOBJ_a29k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-a29k.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h   $(INCDIR)/obstack.h
+
+DEPOBJ_a29k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-a29k.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/a29k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_a29k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-a29k.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_alpha_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-alpha.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_alpha_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-alpha.h   ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(BFDDIR)/libecoff.h
+
+DEPOBJ_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-alpha.h subsegs.h   $(INCDIR)/obstack.h ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h   $(INCDIR)/elf/alpha.h $(INCDIR)/elf/reloc-macros.h   $(INCDIR)/aout/aout64.h
 
 DEPOBJ_alpha_evax = $(srcdir)/config/obj-evax.h $(srcdir)/config/tc-alpha.h
-DEPOBJ_arc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arc.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  struc-symbol.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h struc-symbol.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
-  $(INCDIR)/obstack.h
-
-DEPOBJ_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/arm.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_arm_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arm.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_avr_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-avr.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_avr_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-avr.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_cris_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-cris.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
-  $(INCDIR)/obstack.h
-
-DEPOBJ_cris_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cris.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_d10v_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-d10v.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_d10v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d10v.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_d30v_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-d30v.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_d30v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d30v.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_fr30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-fr30.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_fr30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-fr30.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_h8300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8300.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8300.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_h8300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8300.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_h8500_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8500.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8500.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_h8500_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8500.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_hppa_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-hppa.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_hppa_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-hppa.h $(BFDDIR)/elf32-hppa.h \
-  $(BFDDIR)/libhppa.h $(INCDIR)/elf/hppa.h $(INCDIR)/elf/reloc-macros.h \
-  subsegs.h $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_ia64_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ia64.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_ia64_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ia64.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_i370_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i370.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_i370_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i370.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/elf/i370.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_i386_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-i386.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
-  $(INCDIR)/obstack.h
-
-DEPOBJ_i386_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i386.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/i386.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_i386_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i386.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_i860_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i860.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_i960_bout = $(srcdir)/config/obj-bout.h $(srcdir)/config/tc-i960.h \
-  $(INCDIR)/obstack.h
-
-DEPOBJ_i960_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i960.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/i960.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_i960_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i960.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_m32r_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m32r.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_m32r_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m32r.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_m68hc11_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68hc11.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_m68hc11_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68hc11.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_m68k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-m68k.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
-  $(INCDIR)/obstack.h
-
-DEPOBJ_m68k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68k.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_m68k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68k.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_m68k_hp300 = $(srcdir)/config/obj-aout.c $(srcdir)/config/obj-aout.h \
-  $(srcdir)/config/tc-m68k.h $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/aout/aout64.h $(INCDIR)/obstack.h
-
-DEPOBJ_m88k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m88k.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/m88k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_m88k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m88k.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_mcore_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mcore.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/mcore.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_mcore_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mcore.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_mips_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-mips.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
-  $(INCDIR)/obstack.h
-
-DEPOBJ_mips_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mips.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/mipspe.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_mips_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-mips.h \
-  ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(BFDDIR)/libecoff.h
-
-DEPOBJ_mips_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mips.h subsegs.h \
-  $(INCDIR)/obstack.h ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h \
-  $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_mn10200_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mn10200.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_mn10200_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10200.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_mn10300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mn10300.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_mn10300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10300.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_ns32k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-ns32k.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
-  $(INCDIR)/obstack.h
-
-DEPOBJ_ns32k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ns32k.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_ns32k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ns32k.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_pj_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-pj.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_pj_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-pj.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_ppc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ppc.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_ppc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/elf/ppc.h $(INCDIR)/elf/reloc-macros.h \
-  $(INCDIR)/aout/aout64.h
-
-DEPOBJ_sh_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sh.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/sh.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_sh_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sh.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_sparc_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-sparc.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
-  $(INCDIR)/obstack.h
-
-DEPOBJ_sparc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sparc.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/sparc.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_sparc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sparc.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_tahoe_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tahoe.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
-  $(INCDIR)/obstack.h
-
-DEPOBJ_tahoe_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tahoe.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_tahoe_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tahoe.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_tic30_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tic30.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
-  $(INCDIR)/obstack.h
-
-DEPOBJ_tic30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic30.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic30.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_tic30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic30.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_tic54x_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic54x.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h \
-  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h \
-  subsegs.h
-
-DEPOBJ_tic54x_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic54x.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_tic80_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic80.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic80.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_tic80_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic80.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_vax_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-vax.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h \
-  $(INCDIR)/obstack.h
-
-DEPOBJ_vax_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-vax.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_vax_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-vax.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_vax_vms = $(srcdir)/config/obj-vms.h $(srcdir)/config/tc-vax.h \
-  $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def subsegs.h \
-  $(INCDIR)/obstack.h
-
-DEPOBJ_w65_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-w65.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/w65.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_w65_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-w65.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_v850_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-v850.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h \
-  $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_z8k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-z8k.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/z8k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
-
-DEPOBJ_z8k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-z8k.h subsegs.h \
-  $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
-
-DEPOBJ_hppa_som = $(srcdir)/config/obj-som.h subsegs.h \
-  $(INCDIR)/obstack.h $(BFDDIR)/libhppa.h $(BFDDIR)/som.h \
-  $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def
+DEPOBJ_arc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arc.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   struc-symbol.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h struc-symbol.h   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h   $(INCDIR)/obstack.h
+
+DEPOBJ_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/arm.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_arm_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arm.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_avr_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-avr.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_avr_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-avr.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_cris_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-cris.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h   $(INCDIR)/obstack.h
+
+DEPOBJ_cris_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cris.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_d10v_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-d10v.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_d10v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d10v.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_d30v_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-d30v.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_d30v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d30v.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_fr30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-fr30.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_fr30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-fr30.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_h8300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8300.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8300.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_h8300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8300.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_h8500_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8500.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8500.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_h8500_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8500.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_hppa_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-hppa.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_hppa_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-hppa.h $(BFDDIR)/elf32-hppa.h   $(BFDDIR)/libhppa.h $(INCDIR)/elf/hppa.h $(INCDIR)/elf/reloc-macros.h   subsegs.h $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_ia64_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ia64.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_ia64_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ia64.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_i370_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i370.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_i370_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i370.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/elf/i370.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_i386_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-i386.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h   $(INCDIR)/obstack.h
+
+DEPOBJ_i386_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i386.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/i386.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_i386_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i386.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_i860_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i860.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_i960_bout = $(srcdir)/config/obj-bout.h $(srcdir)/config/tc-i960.h   $(INCDIR)/obstack.h
+
+DEPOBJ_i960_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i960.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/i960.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_i960_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i960.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_m32r_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m32r.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_m32r_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m32r.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_m68hc11_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68hc11.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_m68hc11_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68hc11.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_m68k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-m68k.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h   $(INCDIR)/obstack.h
+
+DEPOBJ_m68k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68k.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_m68k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68k.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_m68k_hp300 = $(srcdir)/config/obj-aout.c $(srcdir)/config/obj-aout.h   $(srcdir)/config/tc-m68k.h $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h   $(INCDIR)/aout/aout64.h $(INCDIR)/obstack.h
+
+DEPOBJ_m88k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m88k.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m88k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_m88k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m88k.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
 
-DEPOBJ_i386_multi = $(DEPOBJ_i386_aout) $(DEPOBJ_i386_coff) \
-  $(DEPOBJ_i386_elf)
+DEPOBJ_mcore_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mcore.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/mcore.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
 
-DEPOBJ_mips_multi = $(DEPOBJ_mips_coff) $(DEPOBJ_mips_ecoff) \
-  $(DEPOBJ_mips_elf)
+DEPOBJ_mcore_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mcore.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_mips_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-mips.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h   $(INCDIR)/obstack.h
+
+DEPOBJ_mips_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mips.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/mipspe.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_mips_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-mips.h   ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(BFDDIR)/libecoff.h
+
+DEPOBJ_mips_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mips.h subsegs.h   $(INCDIR)/obstack.h ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h   $(INCDIR)/elf/mips.h $(INCDIR)/elf/reloc-macros.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_mn10200_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mn10200.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_mn10200_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10200.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_mn10300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mn10300.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_mn10300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10300.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_ns32k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-ns32k.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h   $(INCDIR)/obstack.h
+
+DEPOBJ_ns32k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ns32k.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_ns32k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ns32k.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_pj_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-pj.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_pj_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-pj.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_ppc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ppc.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_ppc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/elf/ppc.h $(INCDIR)/elf/reloc-macros.h   $(INCDIR)/aout/aout64.h
+
+DEPOBJ_sh_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sh.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/sh.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_sh_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sh.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_sparc_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-sparc.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h   $(INCDIR)/obstack.h
+
+DEPOBJ_sparc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sparc.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/sparc.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_sparc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sparc.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_tahoe_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tahoe.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h   $(INCDIR)/obstack.h
+
+DEPOBJ_tahoe_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tahoe.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_tahoe_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tahoe.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_tic30_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tic30.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h   $(INCDIR)/obstack.h
+
+DEPOBJ_tic30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic30.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic30.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_tic30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic30.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_tic54x_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic54x.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h   subsegs.h
+
+DEPOBJ_tic54x_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic54x.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_tic80_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic80.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic80.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_tic80_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic80.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_vax_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-vax.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h $(INCDIR)/aout/aout64.h   $(INCDIR)/obstack.h
+
+DEPOBJ_vax_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-vax.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_vax_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-vax.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_vax_vms = $(srcdir)/config/obj-vms.h $(srcdir)/config/tc-vax.h   $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def subsegs.h   $(INCDIR)/obstack.h
+
+DEPOBJ_w65_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-w65.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/w65.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_w65_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-w65.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_v850_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-v850.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h   $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_z8k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-z8k.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/z8k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h $(INCDIR)/obstack.h subsegs.h
+
+DEPOBJ_z8k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-z8k.h subsegs.h   $(INCDIR)/obstack.h $(INCDIR)/aout/aout64.h
+
+DEPOBJ_hppa_som = $(srcdir)/config/obj-som.h subsegs.h   $(INCDIR)/obstack.h $(BFDDIR)/libhppa.h $(BFDDIR)/som.h   $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def
+
+DEPOBJ_i386_multi = $(DEPOBJ_i386_aout) $(DEPOBJ_i386_coff)   $(DEPOBJ_i386_elf)
+
+DEPOBJ_mips_multi = $(DEPOBJ_mips_coff) $(DEPOBJ_mips_ecoff)   $(DEPOBJ_mips_elf)
 
 DEPOBJ_cris_multi = $(DEPOBJ_cris_aout) $(DEPOBJ_cris_elf)
-DEP_a29k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-a29k.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
+DEP_a29k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-a29k.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
+
+DEP_a29k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-a29k.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/a29k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
+
+DEP_a29k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-a29k.h
 
-DEP_a29k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-a29k.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/a29k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
-
-DEP_a29k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-a29k.h
-
-DEP_alpha_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-alpha.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
-
-DEP_alpha_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-alpha.h \
-  ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
-
-DEP_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-alpha.h
+DEP_alpha_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-alpha.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+
+DEP_alpha_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-alpha.h   ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
+
+DEP_alpha_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-alpha.h
 
 DEP_alpha_evax = $(srcdir)/config/obj-evax.h $(srcdir)/config/tc-alpha.h
-DEP_arc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arc.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_arc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arc.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h
+DEP_arc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arc.h
 
-DEP_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
+DEP_arm_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-arm.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
 
-DEP_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/arm.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_arm_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-arm.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/arm.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_arm_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arm.h
+DEP_arm_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-arm.h
 
-DEP_avr_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-avr.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_avr_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-avr.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_avr_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-avr.h
+DEP_avr_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-avr.h
 
-DEP_cris_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-cris.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
+DEP_cris_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-cris.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
 
-DEP_cris_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cris.h
+DEP_cris_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-cris.h
 
-DEP_d10v_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-d10v.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_d10v_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-d10v.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_d10v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d10v.h
+DEP_d10v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d10v.h
 
-DEP_d30v_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-d30v.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_d30v_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-d30v.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_d30v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d30v.h
+DEP_d30v_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-d30v.h
 
-DEP_fr30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-fr30.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_fr30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-fr30.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_fr30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-fr30.h
+DEP_fr30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-fr30.h
 
-DEP_h8300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8300.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8300.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_h8300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8300.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8300.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_h8300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8300.h
+DEP_h8300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8300.h
 
-DEP_h8500_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8500.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8500.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_h8500_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-h8500.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/h8500.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_h8500_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8500.h
+DEP_h8500_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-h8500.h
 
-DEP_hppa_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-hppa.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_hppa_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-hppa.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_hppa_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-hppa.h $(BFDDIR)/elf32-hppa.h \
-  $(BFDDIR)/libhppa.h $(INCDIR)/elf/hppa.h $(INCDIR)/elf/reloc-macros.h
+DEP_hppa_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-hppa.h $(BFDDIR)/elf32-hppa.h   $(BFDDIR)/libhppa.h $(INCDIR)/elf/hppa.h $(INCDIR)/elf/reloc-macros.h
 
-DEP_ia64_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ia64.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_ia64_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ia64.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_ia64_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ia64.h
+DEP_ia64_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ia64.h
 
-DEP_i370_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i370.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_i370_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i370.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_i370_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i370.h
+DEP_i370_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i370.h
 
-DEP_i386_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-i386.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
+DEP_i386_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-i386.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
 
-DEP_i386_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i386.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/i386.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_i386_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i386.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/i386.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_i386_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i386.h
+DEP_i386_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i386.h
 
-DEP_i860_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i860.h
+DEP_i860_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i860.h
 
 DEP_i960_bout = $(srcdir)/config/obj-bout.h $(srcdir)/config/tc-i960.h
-DEP_i960_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i960.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/i960.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_i960_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-i960.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/i960.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_i960_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i960.h
+DEP_i960_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-i960.h
 
-DEP_m32r_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m32r.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_m32r_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m32r.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_m32r_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m32r.h
+DEP_m32r_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m32r.h
 
-DEP_m68hc11_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68hc11.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_m68hc11_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68hc11.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_m68hc11_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68hc11.h
+DEP_m68hc11_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68hc11.h
 
-DEP_m68k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-m68k.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
+DEP_m68k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-m68k.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
 
-DEP_m68k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68k.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_m68k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m68k.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m68k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_m68k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68k.h
+DEP_m68k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m68k.h
 
-DEP_m68k_hp300 = $(srcdir)/config/obj-hp300.h $(srcdir)/config/obj-aout.h \
-  $(srcdir)/config/tc-m68k.h $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
+DEP_m68k_hp300 = $(srcdir)/config/obj-hp300.h $(srcdir)/config/obj-aout.h   $(srcdir)/config/tc-m68k.h $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
 
-DEP_m88k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m88k.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/m88k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_m88k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-m88k.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/m88k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_m88k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m88k.h
+DEP_m88k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-m88k.h
 
-DEP_mcore_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mcore.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/mcore.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_mcore_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mcore.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/mcore.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_mcore_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mcore.h
+DEP_mcore_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mcore.h
 
-DEP_mips_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-mips.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
+DEP_mips_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-mips.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
 
-DEP_mips_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mips.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/mipspe.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_mips_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mips.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/mipspe.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_mips_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-mips.h \
-  ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
+DEP_mips_ecoff = $(srcdir)/config/obj-ecoff.h $(srcdir)/config/tc-mips.h   ecoff.h $(INCDIR)/coff/sym.h $(INCDIR)/coff/ecoff.h
 
-DEP_mips_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mips.h
+DEP_mips_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mips.h
 
-DEP_mn10200_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mn10200.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_mn10200_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mn10200.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_mn10200_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10200.h
+DEP_mn10200_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10200.h
 
-DEP_mn10300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mn10300.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_mn10300_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-mn10300.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_mn10300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10300.h
+DEP_mn10300_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-mn10300.h
 
-DEP_ns32k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-ns32k.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
+DEP_ns32k_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-ns32k.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
 
-DEP_ns32k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ns32k.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_ns32k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ns32k.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_ns32k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ns32k.h
+DEP_ns32k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ns32k.h
 
-DEP_pj_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-pj.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_pj_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-pj.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_pj_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-pj.h
+DEP_pj_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-pj.h
 
-DEP_ppc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ppc.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_ppc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-ppc.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/rs6000.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_ppc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h
+DEP_ppc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-ppc.h
 
-DEP_sh_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sh.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/sh.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_sh_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sh.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/sh.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_sh_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sh.h
+DEP_sh_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sh.h
 
-DEP_sparc_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-sparc.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
+DEP_sparc_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-sparc.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
 
-DEP_sparc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sparc.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/sparc.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_sparc_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-sparc.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/sparc.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_sparc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sparc.h
+DEP_sparc_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-sparc.h
 
-DEP_tahoe_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tahoe.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
+DEP_tahoe_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tahoe.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
 
-DEP_tahoe_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tahoe.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_tahoe_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tahoe.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_tahoe_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tahoe.h
+DEP_tahoe_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tahoe.h
 
-DEP_tic30_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tic30.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
+DEP_tic30_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-tic30.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
 
-DEP_tic30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic30.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic30.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_tic30_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic30.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic30.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_tic30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic30.h
+DEP_tic30_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic30.h
 
-DEP_tic54x_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic54x.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h \
-  $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_tic54x_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic54x.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic54x.h $(INCDIR)/coff/ti.h   $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_tic54x_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic54x.h
+DEP_tic54x_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic54x.h
 
-DEP_tic80_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic80.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic80.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_tic80_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-tic80.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/tic80.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_tic80_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic80.h
+DEP_tic80_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-tic80.h
 
-DEP_vax_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-vax.h \
-  $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
+DEP_vax_aout = $(srcdir)/config/obj-aout.h $(srcdir)/config/tc-vax.h   $(BFDDIR)/libaout.h $(INCDIR)/bfdlink.h
 
-DEP_vax_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-vax.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_vax_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-vax.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_vax_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-vax.h
+DEP_vax_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-vax.h
 
-DEP_vax_vms = $(srcdir)/config/obj-vms.h $(srcdir)/config/tc-vax.h \
-  $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def
+DEP_vax_vms = $(srcdir)/config/obj-vms.h $(srcdir)/config/tc-vax.h   $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def
 
-DEP_w65_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-w65.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/w65.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_w65_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-w65.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/w65.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_w65_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-w65.h
+DEP_w65_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-w65.h
 
-DEP_v850_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-v850.h \
-  $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
+DEP_v850_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-v850.h   $(INCDIR)/coff/internal.h $(BFDDIR)/libcoff.h $(INCDIR)/bfdlink.h
 
-DEP_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h
+DEP_v850_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-v850.h
 
-DEP_z8k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-z8k.h \
-  $(INCDIR)/coff/internal.h $(INCDIR)/coff/z8k.h $(BFDDIR)/libcoff.h \
-  $(INCDIR)/bfdlink.h
+DEP_z8k_coff = $(srcdir)/config/obj-coff.h $(srcdir)/config/tc-z8k.h   $(INCDIR)/coff/internal.h $(INCDIR)/coff/z8k.h $(BFDDIR)/libcoff.h   $(INCDIR)/bfdlink.h
 
-DEP_z8k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(srcdir)/config/tc-z8k.h
+DEP_z8k_elf = $(srcdir)/config/obj-elf.h $(BFDDIR)/elf-bfd.h   $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h   $(INCDIR)/bfdlink.h $(srcdir)/config/tc-z8k.h
 
 DEP_hppa_som = $(BFDDIR)/som.h
-DEP_i386_multi = $(DEP_i386_aout) $(DEP_i386_coff) \
-  $(DEP_i386_elf)
+DEP_i386_multi = $(DEP_i386_aout) $(DEP_i386_coff)   $(DEP_i386_elf)
 
-DEP_mips_multi = $(DEP_mips_coff) $(DEP_mips_ecoff) \
-  $(DEP_mips_elf)
+DEP_mips_multi = $(DEP_mips_coff) $(DEP_mips_ecoff)   $(DEP_mips_elf)
 
 DEP_cris_multi = $(DEP_cris_aout) $(DEP_cris_elf)
 BMKDEP = #DO NOT PUT ANYTHING BETWEEN THIS LINE AND THE MATCHING WARNING ABOVE.
@@ -1869,15 +896,14 @@ SCRIPTS =  $(noinst_SCRIPTS)
 
 LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
 LEXLIB = @LEXLIB@
-YLWRAP = $(top_srcdir)/../ylwrap
 CFLAGS = @CFLAGS@
 COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 CCLD = $(CC)
 LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
 DIST_COMMON =  README ./stamp-h.in COPYING ChangeLog Makefile.am \
-Makefile.in NEWS acinclude.m4 aclocal.m4 config.in config/m68k-parse.c \
-configure configure.in gdbinit.in itbl-lex.c itbl-parse.c
+Makefile.in NEWS acinclude.m4 aclocal.m4 config.in configure \
+configure.in gdbinit.in itbl-lex.c itbl-parse.c
 
 
 DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
@@ -2002,8 +1028,10 @@ gasp-new$(EXEEXT): $(gasp_new_OBJECTS) $
 .l.c:
 	$(LEX) $(AM_LFLAGS) $(LFLAGS) $< && mv $(LEX_OUTPUT_ROOT).c $@
 .y.c:
-	$(SHELL) $(YLWRAP) "$(YACC)" $< y.tab.c $*.c y.tab.h $*.h -- $(AM_YFLAGS) $(YFLAGS)
-config/m68k-parse.h: config/m68k-parse.c
+	$(YACC) $(AM_YFLAGS) $(YFLAGS) $< && mv y.tab.c $*.c
+	if test -f y.tab.h; then \
+	if cmp -s y.tab.h $*.h; then rm -f y.tab.h; else mv y.tab.h $*.h; fi; \
+	else :; fi
 itbl-parse.h: itbl-parse.c
 
 
@@ -2137,7 +1165,7 @@ distdir: $(DISTFILES)
 	@for file in $(DISTFILES); do \
 	  if test -f $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
-	    cp -pr $$d/$$file $(distdir)/$$file; \
+	    cp -pr $$/$$file $(distdir)/$$file; \
 	  else \
 	    test -f $(distdir)/$$file \
 	    || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
@@ -2222,7 +1250,7 @@ distclean-generic:
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
-	-test -z "itbl-lexlconfig/m68k-parsehconfig/m68k-parsecitbl-parsehitbl-parsec" || rm -f itbl-lexl config/m68k-parseh config/m68k-parsec itbl-parseh itbl-parsec
+	-test -z "itbl-lexlitbl-parsehitbl-parsec" || rm -f itbl-lexl itbl-parseh itbl-parsec
 mostlyclean-am:  mostlyclean-hdr mostlyclean-noinstPROGRAMS \
 		mostlyclean-compile mostlyclean-libtool \
 		mostlyclean-tags mostlyclean-generic
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/config/tc-m68hc11.c binutils-2.11.2-m68hc1x/gas/config/tc-m68hc11.c
--- binutils-2.11.2/gas/config/tc-m68hc11.c	Fri Sep 21 20:58:40 2001
+++ binutils-2.11.2-m68hc1x/gas/config/tc-m68hc11.c	Sun Jan 20 20:11:33 2002
@@ -1,5 +1,5 @@
 /* tc-m68hc11.c -- Assembler code for the Motorola 68HC11 & 68HC12.
-   Copyright 1999, 2000, 2001 Free Software Foundation, Inc.
+   Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
    Written by Stephane Carrez (stcarrez@worldnet.fr)
 
    This file is part of GAS, the GNU Assembler.
@@ -152,6 +152,10 @@ static alias alias_opcodes[] = {
 /* Local functions.  */
 static register_id reg_name_search PARAMS ((char *));
 static register_id register_name PARAMS ((void));
+static int cmp_opcode PARAMS ((struct m68hc11_opcode *,
+                               struct m68hc11_opcode *));
+static char *print_opcode_format PARAMS ((struct m68hc11_opcode *, int));
+static char *skip_whites PARAMS ((char *));
 static int check_range PARAMS ((long, int));
 static void print_opcode_list PARAMS ((void));
 static void get_default_target PARAMS ((void));
@@ -159,12 +163,23 @@ static void print_insn_format PARAMS ((c
 static int get_operand PARAMS ((operand *, int, long));
 static void fixup8 PARAMS ((expressionS *, int, int));
 static void fixup16 PARAMS ((expressionS *, int, int));
+static unsigned char convert_branch PARAMS ((unsigned char));
+static char *m68hc11_new_insn PARAMS ((int));
+static void build_dbranch_insn PARAMS ((struct m68hc11_opcode *,
+                                        operand *, int, int));
+static int build_indexed_byte PARAMS ((operand *, int, int));
+static int build_reg_mode PARAMS ((operand *, int));
+
+static struct m68hc11_opcode *find
+  PARAMS ((struct m68hc11_opcode_def *, operand *, int));
 static struct m68hc11_opcode *find_opcode
   PARAMS ((struct m68hc11_opcode_def *, operand *, int *));
 static void build_jump_insn
   PARAMS ((struct m68hc11_opcode *, operand *, int, int));
 static void build_insn
   PARAMS ((struct m68hc11_opcode *, operand *, int));
+static int relaxable_symbol PARAMS ((symbolS *));
+static void m68hc11_relax_instruction PARAMS((int));
 
 /* Controls whether relative branches can be turned into long branches.
    When the relative offset is too large, the insn are changed:
@@ -236,6 +251,9 @@ const pseudo_typeS md_pseudo_table[] = {
   /* Motorola ALIS.  */
   {"xrefb", s_ignore, 0}, /* Same as xref  */
 
+  /* Gcc driven relaxation.  */
+  {"relax", m68hc11_relax_instruction, 0},
+
   {0, 0, 0}
 };
 
@@ -559,7 +577,8 @@ md_begin ()
 	      }
 	}
     }
-  qsort (opcodes, num_opcodes, sizeof (struct m68hc11_opcode), cmp_opcode);
+  qsort (opcodes, num_opcodes, sizeof (struct m68hc11_opcode),
+         (int (*) PARAMS ((const void*, const void*))) cmp_opcode);
 
   opc = (struct m68hc11_opcode_def *)
     xmalloc (num_opcodes * sizeof (struct m68hc11_opcode_def));
@@ -803,7 +822,7 @@ print_insn_format (name)
     {
       char *fmt;
 
-      fmt = print_opcode_format (opcode, 0, 0);
+      fmt = print_opcode_format (opcode, 0);
       sprintf (buf, "\t%-5.5s %s", opcode->name, fmt);
 
       as_bad ("%s", buf);
@@ -1411,6 +1430,8 @@ build_jump_insn (opcode, operands, nb_op
   unsigned char code;
   char *f;
   unsigned long n;
+  fragS *frag;
+  int where;
 
   /* The relative branch convertion is not supported for
      brclr and brset.  */
@@ -1431,6 +1452,12 @@ build_jump_insn (opcode, operands, nb_op
 	  && (!check_range (n, opcode->format) &&
 	      (jmp_mode == 1 || flag_fixed_branchs == 0))))
     {
+      frag = frag_now;
+      where = frag_now_fix ();
+
+      fix_new (frag_now, frag_now_fix (), 1,
+               &abs_symbol, 0, 1, BFD_RELOC_M68HC11_RL_JUMP);
+
       if (code == M6811_BSR || code == M6811_BRA || code == M6812_BSR)
 	{
 	  code = convert_branch (code);
@@ -1485,6 +1512,12 @@ build_jump_insn (opcode, operands, nb_op
     }
   else if (opcode->format & M6812_OP_JUMP_REL16)
     {
+      frag = frag_now;
+      where = frag_now_fix ();
+
+      fix_new (frag_now, frag_now_fix (), 1,
+               &abs_symbol, 0, 1, BFD_RELOC_M68HC11_RL_JUMP);
+
       f = m68hc11_new_insn (2);
       number_to_chars_bigendian (f, M6811_OPCODE_PAGE2, 1);
       number_to_chars_bigendian (f + 1, code, 1);
@@ -1494,6 +1527,12 @@ build_jump_insn (opcode, operands, nb_op
     {
       char *opcode;
 
+      frag = frag_now;
+      where = frag_now_fix ();
+      
+      fix_new (frag_now, frag_now_fix (), 1,
+               &abs_symbol, 0, 1, BFD_RELOC_M68HC11_RL_JUMP);
+
       /* Branch offset must fit in 8-bits, don't do some relax.  */
       if (jmp_mode == 0 && flag_fixed_branchs)
 	{
@@ -1505,12 +1544,14 @@ build_jump_insn (opcode, operands, nb_op
       /* bra/bsr made be changed into jmp/jsr.  */
       else if (code == M6811_BSR || code == M6811_BRA || code == M6812_BSR)
 	{
-	  opcode = m68hc11_new_insn (2);
+          /* Allocate worst case storage.  */
+	  opcode = m68hc11_new_insn (3);
 	  number_to_chars_bigendian (opcode, code, 1);
 	  number_to_chars_bigendian (opcode + 1, 0, 1);
-	  frag_var (rs_machine_dependent, 2, 1,
-		    ENCODE_RELAX (STATE_PC_RELATIVE, STATE_UNDF),
-		    operands[0].exp.X_add_symbol, (offsetT) n, opcode);
+	  frag_variant (rs_machine_dependent, 1, 1,
+                        ENCODE_RELAX (STATE_PC_RELATIVE, STATE_UNDF),
+                        operands[0].exp.X_add_symbol, (offsetT) n,
+                        opcode);
 	}
       else if (current_architecture & cpu6812)
 	{
@@ -1887,9 +1928,15 @@ build_insn (opcode, operands, nb_operand
   char *f;
   long format;
   int move_insn = 0;
+  fragS *frag;
+  int where;
 
   /* Put the page code instruction if there is one.  */
   format = opcode->format;
+
+  frag = frag_now;
+  where = frag_now_fix ();
+
   if (format & OP_EXTENDED)
     {
       int page_code;
@@ -1940,6 +1987,9 @@ build_insn (opcode, operands, nb_operand
     }
   else if (format & (M6811_OP_IMM16 | M6811_OP_IND16))
     {
+      if ((format & M6811_OP_IND16) && opcode->opcode == 0x7e)
+        fix_new (frag, where, 1, &abs_symbol, 0, 1, BFD_RELOC_M68HC11_RL_JUMP);
+
       fixup16 (&operands[i].exp, format & (M6811_OP_IMM16 | M6811_OP_IND16),
 	       operands[i].mode);
       i++;
@@ -1972,6 +2022,7 @@ build_insn (opcode, operands, nb_operand
     }
   if (format & M6811_OP_JUMP_REL)
     {
+      fix_new (frag, where, 1, &abs_symbol, 0, 1, BFD_RELOC_M68HC11_RL_JUMP);
       fixup8 (&operands[i].exp, M6811_OP_JUMP_REL, operands[i].mode);
     }
   else if (format & M6812_OP_IND16_P2)
@@ -2359,7 +2410,7 @@ md_assemble (str)
      relative and must be in the range -256..255 (9-bits).  */
   if ((opcode->format & M6812_XBCC_MARKER)
       && (opcode->format & M6811_OP_JUMP_REL))
-    build_dbranch_insn (opcode, operands, nb_operands);
+    build_dbranch_insn (opcode, operands, nb_operands, branch_optimize);
 
   /* Relative jumps instructions are taken care of separately.  We have to make
      sure that the relative branch is within the range -128..127.  If it's out
@@ -2371,21 +2422,42 @@ md_assemble (str)
   else
     build_insn (opcode, operands, nb_operands);
 }
+
+void
+m68hc11_relax_instruction (ignore)
+     int ignore ATTRIBUTE_UNUSED;
+{
+  expressionS ex;
+
+  expression (&ex);
+
+  if (ex.X_op != O_symbol || ex.X_add_number != 0)
+    {
+      as_bad (_("bad .relax format"));
+      ignore_rest_of_line ();
+      return;
+    }
+
+  fix_new_exp (frag_now, frag_now_fix (), 1, &ex, 1,
+               BFD_RELOC_M68HC11_RL_GROUP);
+
+  demand_empty_rest_of_line ();
+}
+
 
 /* Relocation, relaxation and frag conversions.  */
+
+/* PC-relative offsets are relative to the start of the
+   next instruction.  That is, the address of the offset, plus its
+   size, since the offset is always the last part of the insn.  */
 long
-md_pcrel_from_section (fixp, sec)
-     fixS *fixp;
-     segT sec;
+md_pcrel_from (fixP)
+     fixS *fixP;
 {
-  int adjust;
-  if (fixp->fx_addsy != (symbolS *) NULL
-      && (!S_IS_DEFINED (fixp->fx_addsy)
-	  || (S_GET_SEGMENT (fixp->fx_addsy) != sec)))
+  if (fixP->fx_r_type == BFD_RELOC_M68HC11_RL_JUMP)
     return 0;
 
-  adjust = fixp->fx_pcrel_adjust;
-  return fixp->fx_frag->fr_address + fixp->fx_where + adjust;
+  return fixP->fx_size + fixP->fx_where + fixP->fx_frag->fr_address;
 }
 
 /* If while processing a fixup, a reloc really needs to be created
@@ -2417,10 +2489,10 @@ tc_gen_reloc (section, fixp)
     reloc->addend = fixp->fx_addnumber;
   else
     reloc->addend = (section->vma
-		     + (fixp->fx_pcrel_adjust == 64
-			? -1 : fixp->fx_pcrel_adjust)
+		     /*+ (fixp->fx_pcrel_adjust == 64
+                       ? -1 : fixp->fx_pcrel_adjust)*/
 		     + fixp->fx_addnumber
-		     + md_pcrel_from_section (fixp, section));
+		     + md_pcrel_from (fixp));
   return reloc;
 }
 
@@ -2596,9 +2668,9 @@ md_estimate_size_before_relax (fragP, se
 		 necessary for the unresolved symbol address.  */
 	      fragP->fr_opcode[0] = convert_branch (fragP->fr_opcode[0]);
 
-	      fragP->fr_fix++;
-	      fix_new (fragP, old_fr_fix - 1, 2, fragP->fr_symbol,
+	      fix_new (fragP, fragP->fr_fix - 1, 2, fragP->fr_symbol,
 		       fragP->fr_offset, 0, BFD_RELOC_16);
+	      fragP->fr_fix++;
 	      break;
 
 	    case STATE_CONDITIONAL_BRANCH:
@@ -2653,7 +2725,7 @@ md_estimate_size_before_relax (fragP, se
 	      fragP->fr_opcode[0] = M6811_OPCODE_PAGE2;
 
 	      fix_new (fragP, fragP->fr_fix, 2, fragP->fr_symbol,
-		       fragP->fr_offset, 0, BFD_RELOC_16_PCREL);
+                       fragP->fr_offset, 1, BFD_RELOC_16_PCREL);
 	      fragP->fr_fix += 2;
 	      break;
 
@@ -2714,43 +2786,85 @@ md_estimate_size_before_relax (fragP, se
   return md_relax_table[fragP->fr_subtype].rlx_length;
 }
 
+/* See whether we need to force a relocation into the output file.  */
 int
-md_apply_fix (fixp, valuep)
-     fixS *fixp;
-     valueT *valuep;
+tc_m68hc11_force_relocation (fixP)
+     fixS * fixP;
 {
-  char *where;
-  long value;
-  int op_type;
-
-  if (fixp->fx_addsy == (symbolS *) NULL)
+  switch (fixP->fx_r_type)
     {
-      value = *valuep;
-      fixp->fx_done = 1;
+    case BFD_RELOC_VTABLE_INHERIT:
+    case BFD_RELOC_VTABLE_ENTRY:
+    case BFD_RELOC_M68HC11_RL_GROUP:
+      return 1;
+
+    default:
+      return 0;
     }
-  else if (fixp->fx_pcrel)
+}
+
+/* Here we decide which fixups can be adjusted to make them relative
+   to the beginning of the section instead of the symbol.  Basically
+   we need to make sure that the linker relaxation is done
+   correctly, so in some cases we force the original symbol to be
+   used.  */
+int
+tc_m68hc11_fix_adjustable (fixP)
+     fixS *fixP;
+{
+  /* Prevent all adjustments to global symbols.  */
+  if (! relaxable_symbol (fixP->fx_addsy))
+    return 0;
+
+  switch (fixP->fx_r_type)
     {
-      value = *valuep;
+      /* For the linker relaxation to work correctly, these relocs
+         need to be on the symbol itself.  */
+    case BFD_RELOC_16:
+    case BFD_RELOC_M68HC11_RL_JUMP:
+    case BFD_RELOC_M68HC11_RL_GROUP:
+    case BFD_RELOC_VTABLE_INHERIT:
+    case BFD_RELOC_VTABLE_ENTRY:
+      return 0;
+
+    case BFD_RELOC_32:
+    default:
+      return 1;
     }
+}
+
+int
+md_apply_fix3 (fixP, valP, seg)
+     fixS *fixP;
+     valueT *valP;
+     segT seg ATTRIBUTE_UNUSED;
+{
+  char *where;
+  long value = * valP;
+  int op_type;
+
+  if (fixP->fx_addsy == (symbolS *) NULL)
+    fixP->fx_done = 1;
+
+  else if (fixP->fx_pcrel)
+    ;
+
   else
     {
-      value = fixp->fx_offset;
-      if (fixp->fx_subsy != (symbolS *) NULL)
+      value = fixP->fx_offset;
+
+      if (fixP->fx_subsy != (symbolS *) NULL)
 	{
-	  if (S_GET_SEGMENT (fixp->fx_subsy) == absolute_section)
-	    {
-	      value -= S_GET_VALUE (fixp->fx_subsy);
-	    }
+	  if (S_GET_SEGMENT (fixP->fx_subsy) == absolute_section)
+	    value -= S_GET_VALUE (fixP->fx_subsy);
 	  else
-	    {
-	      /* We don't actually support subtracting a symbol.  */
-	      as_bad_where (fixp->fx_file, fixp->fx_line,
-			    _("Expression too complex."));
-	    }
+	    /* We don't actually support subtracting a symbol.  */
+	    as_bad_where (fixP->fx_file, fixP->fx_line,
+			  _("Expression too complex."));
 	}
     }
 
-  op_type = fixp->fx_r_type;
+  op_type = fixP->fx_r_type;
 
   /* Patch the instruction with the resolved operand.  Elf relocation
      info will also be generated to take care of linker/loader fixups.
@@ -2761,9 +2875,9 @@ md_apply_fix (fixp, valuep)
      relax table, bcc, bra, bsr transformations)
 
      The BFD_RELOC_32 is necessary for the support of --gstabs.  */
-  where = fixp->fx_frag->fr_literal + fixp->fx_where;
+  where = fixP->fx_frag->fr_literal + fixP->fx_where;
 
-  switch (fixp->fx_r_type)
+  switch (fixP->fx_r_type)
     {
     case BFD_RELOC_32:
       bfd_putb32 ((bfd_vma) value, (unsigned char *) where);
@@ -2773,7 +2887,7 @@ md_apply_fix (fixp, valuep)
     case BFD_RELOC_16_PCREL:
       bfd_putb16 ((bfd_vma) value, (unsigned char *) where);
       if (value < -65537 || value > 65535)
-	as_bad_where (fixp->fx_file, fixp->fx_line,
+	as_bad_where (fixP->fx_file, fixP->fx_line,
 		      _("Value out of 16-bit range."));
       break;
 
@@ -2796,14 +2910,14 @@ md_apply_fix (fixp, valuep)
       ((bfd_byte *) where)[0] = (bfd_byte) value;
 
       if (value < -128 || value > 127)
-	as_bad_where (fixp->fx_file, fixp->fx_line,
+	as_bad_where (fixP->fx_file, fixP->fx_line,
 		      _("Value %ld too large for 8-bit PC-relative branch."),
 		      value);
       break;
 
     case BFD_RELOC_M68HC11_3B:
       if (value <= 0 || value > 8)
-	as_bad_where (fixp->fx_file, fixp->fx_line,
+	as_bad_where (fixP->fx_file, fixP->fx_line,
 		      _("Auto increment/decrement offset '%ld' is out of range."),
 		      value);
       if (where[0] & 0x8)
@@ -2814,10 +2928,21 @@ md_apply_fix (fixp, valuep)
       where[0] = where[0] | (value & 0x07);
       break;
 
+    case BFD_RELOC_M68HC11_RL_JUMP:
+    case BFD_RELOC_M68HC11_RL_GROUP:
+    case BFD_RELOC_VTABLE_INHERIT:
+    case BFD_RELOC_VTABLE_ENTRY:
+      fixP->fx_done = 0;
+      return 0;
+
     default:
       as_fatal (_("Line %d: unknown relocation type: 0x%x."),
-		fixp->fx_line, fixp->fx_r_type);
+		fixP->fx_line, fixP->fx_r_type);
     }
+
+  /* Are we finished with this relocation now?  */
+  if (fixP->fx_addsy == 0 && !fixP->fx_pcrel)
+    fixP->fx_done = 1;
 
   return 0;
 }
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/config/tc-m68hc11.h binutils-2.11.2-m68hc1x/gas/config/tc-m68hc11.h
--- binutils-2.11.2/gas/config/tc-m68hc11.h	Fri Sep 21 20:58:40 2001
+++ binutils-2.11.2-m68hc1x/gas/config/tc-m68hc11.h	Thu Jan  3 17:37:06 2002
@@ -1,5 +1,5 @@
 /* tc-m68hc11.h -- Header file for tc-m68hc11.c.
-   Copyright 1999, 2000, 2001 Free Software Foundation, Inc.
+   Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
 
    This file is part of GAS, the GNU Assembler.
 
@@ -60,6 +60,8 @@ extern const char *m68hc11_arch_format P
    - The .vectors is the data section that represents the interrupt
      vectors.  */
 #define ELF_TC_SPECIAL_SECTIONS \
+  { ".eeprom",	SHT_PROGBITS,	SHF_ALLOC + SHF_WRITE	}, \
+  { ".softregs",SHT_NOBITS,	SHF_ALLOC + SHF_WRITE	}, \
   { ".page0",	SHT_PROGBITS,	SHF_ALLOC + SHF_WRITE	}, \
   { ".vectors",	SHT_PROGBITS,	SHF_ALLOC + SHF_WRITE	},
 
@@ -68,15 +70,13 @@ extern const char *m68hc11_arch_format P
 #define LISTING_LHS_WIDTH_SECOND 4	/* One word on the second line */
 #define LISTING_LHS_CONT_LINES 4	/* And 4 lines max */
 #define LISTING_HEADER m68hc11_listing_header ()
-extern const char *m68hc11_listing_header PARAMS (());
-
-/* call md_pcrel_from_section, not md_pcrel_from */
-#define MD_PCREL_FROM_SECTION(FIXP, SEC) md_pcrel_from_section(FIXP, SEC)
-extern long md_pcrel_from_section PARAMS ((struct fix *fixp, segT sec));
+extern const char *m68hc11_listing_header PARAMS ((void));
 
 /* Permit temporary numeric labels.  */
 #define LOCAL_LABELS_FB 1
 
+#define TC_HANDLES_FX_DONE
+
 #define DIFF_EXPR_OK		/* .-foo gets turned into PC relative relocs */
 
 #define tc_init_after_args m68hc11_init_after_args
@@ -96,6 +96,14 @@ extern int m68hc11_parse_long_option PAR
    absolute branches.  */
 #define TC_GENERIC_RELAX_TABLE md_relax_table
 extern struct relax_type md_relax_table[];
+
+#define TC_FORCE_RELOCATION(fix) tc_m68hc11_force_relocation (fix)
+extern int tc_m68hc11_force_relocation PARAMS ((struct fix *));
+
+#define MD_APPLY_FIX3
+
+#define tc_fix_adjustable(X) tc_m68hc11_fix_adjustable(X)
+extern int tc_m68hc11_fix_adjustable PARAMS ((struct fix *));
 
 #define md_operand(x)
 #define tc_frob_label(sym) do {\
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/doc/Makefile.am binutils-2.11.2-m68hc1x/gas/doc/Makefile.am
--- binutils-2.11.2/gas/doc/Makefile.am	Thu Jan 11 22:20:17 2001
+++ binutils-2.11.2-m68hc1x/gas/doc/Makefile.am	Fri Sep 21 21:28:48 2001
@@ -5,6 +5,13 @@ AUTOMAKE_OPTIONS = cygnus
 # What version of the manual you want; "all" includes everything
 CONFIG=all
 
+# Options to extract the man page from as.texinfo
+MANCONF = -Dman
+
+TEXI2POD = perl $(top_srcdir)/../etc/texi2pod.pl
+
+POD2MAN = pod2man --center="GNU" --release="binutils-$(VERSION)" --section=1
+
 man_MANS = as.1
 
 info_TEXINFOS = as.texinfo gasp.texi
@@ -54,3 +61,17 @@ noinst_TEXINFOS = internals.texi
 DISTCLEANFILES = asconfig.texi
 
 MAINTAINERCLEANFILES = gasver.texi
+
+# Maintenance
+
+# Build the man page from the texinfo file
+# The sed command removes the no-adjust Nroff command so that
+# the man output looks standard.
+$(srcdir)/as.1: $(srcdir)/as.texinfo
+	touch $(srcdir)/as.1
+	-$(TEXI2POD) $(MANCONF) < $(srcdir)/as.texinfo > as.pod
+	-($(POD2MAN) as.pod | \
+		sed -e '/^.if n .na/d' > $(srcdir)/as.1.T$$$$ && \
+		mv -f $(srcdir)/as.1.T$$$$ $(srcdir)/as.1) || \
+		(rm -f $(srcdir)/as.1.T$$$$ && exit 1)
+
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/doc/Makefile.in binutils-2.11.2-m68hc1x/gas/doc/Makefile.in
--- binutils-2.11.2/gas/doc/Makefile.in	Fri Sep 21 20:58:40 2001
+++ binutils-2.11.2-m68hc1x/gas/doc/Makefile.in	Sat Sep 22 12:05:51 2001
@@ -121,34 +121,18 @@ AUTOMAKE_OPTIONS = cygnus
 # What version of the manual you want; "all" includes everything
 CONFIG = all
 
+# Options to extract the man page from as.texinfo
+MANCONF = -Dman
+
+TEXI2POD = perl $(top_srcdir)/../etc/texi2pod.pl
+
+POD2MAN = pod2man --center="GNU" --release="binutils-$(VERSION)" --section=1
+
 man_MANS = as.1
 
 info_TEXINFOS = as.texinfo gasp.texi
 
-CPU_DOCS = \
-	c-a29k.texi \
-	c-arc.texi \
-	c-arm.texi \
-	c-d10v.texi \
-	c-h8300.texi \
-	c-h8500.texi \
-	c-hppa.texi \
-	c-i370.texi \
-	c-i386.texi \
-	c-i860.texi \
-	c-i960.texi \
-	c-m32r.texi \
-	c-m68hc11.texi \
-	c-m68k.texi \
-	c-mips.texi \
-	c-ns32k.texi \
-	c-pj.texi \
-	c-sh.texi \
-	c-sparc.texi \
-        c-tic54x.texi \
-	c-vax.texi \
-	c-v850.texi \
-	c-z8k.texi
+CPU_DOCS =  	c-a29k.texi 	c-arc.texi 	c-arm.texi 	c-d10v.texi 	c-h8300.texi 	c-h8500.texi 	c-hppa.texi 	c-i370.texi 	c-i386.texi 	c-i860.texi 	c-i960.texi 	c-m32r.texi 	c-m68hc11.texi 	c-m68k.texi 	c-mips.texi 	c-ns32k.texi 	c-pj.texi 	c-sh.texi 	c-sparc.texi         c-tic54x.texi 	c-vax.texi 	c-v850.texi 	c-z8k.texi
 
 
 # This one isn't ready for prime time yet.  Not even a little bit.
@@ -356,7 +340,7 @@ distdir: $(DISTFILES)
 	@for file in $(DISTFILES); do \
 	  if test -f $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
-	    cp -pr $$d/$$file $(distdir)/$$file; \
+	    cp -pr $$/$$file $(distdir)/$$file; \
 	  else \
 	    test -f $(distdir)/$$file \
 	    || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
@@ -446,6 +430,19 @@ gasver.texi: Makefile
 
 as.info: $(srcdir)/as.texinfo asconfig.texi gasver.texi $(CPU_DOCS)
 as.dvi: $(srcdir)/as.texinfo asconfig.texi gasver.texi $(CPU_DOCS)
+
+# Maintenance
+
+# Build the man page from the texinfo file
+# The sed command removes the no-adjust Nroff command so that
+# the man output looks standard.
+$(srcdir)/as.1: $(srcdir)/as.texinfo
+	touch $(srcdir)/as.1
+	-$(TEXI2POD) $(MANCONF) < $(srcdir)/as.texinfo > as.pod
+	-($(POD2MAN) as.pod | \
+		sed -e '/^.if n .na/d' > $(srcdir)/as.1.T$$$$ && \
+		mv -f $(srcdir)/as.1.T$$$$ $(srcdir)/as.1) || \
+		(rm -f $(srcdir)/as.1.T$$$$ && exit 1)
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/doc/as.1 binutils-2.11.2-m68hc1x/gas/doc/as.1
--- binutils-2.11.2/gas/doc/as.1	Wed Nov 29 22:45:14 2000
+++ binutils-2.11.2-m68hc1x/gas/doc/as.1	Sat Sep 22 17:02:14 2001
@@ -1,666 +1,637 @@
-.\" Copyright (c) 1991, 1992, 1996, 1997, 1998, 2000 Free Software Foundation
-.\" See section COPYING for conditions for redistribution
-.TH as 1 "29 March 1996" "Free Software Foundation" "GNU Development Tools"
-
-.SH NAME
-GNU as \- the portable GNU assembler.
-
-.SH SYNOPSIS
-.na
-.B as
-.RB "[\|" \-a "[\|" dhlns "\|]" \c
-\&[\|\=\c
-.I file\c
-\&\|]\|]
-.RB "[\|" \-D "\|]"
-.RB "[\|" \-\-defsym\ SYM=VAL "\|]"
-.RB "[\|" \-f "\|]"
-.RB "[\|" \-\-gstabs "\|]"
-.RB "[\|" \-I
-.I path\c
-\&\|]
-.RB "[\|" \-K "\|]"
-.RB "[\|" \-L "\|]"
-.RB "[\|" \-M\ |\ \-\-mri "\|]"
-.RB "[\|" \-o 
-.I objfile\c
-\&\|]
-.RB "[\|" \-R "\|]"
-.RB "[\|" \-\-traditional\-format "\|]"
-.RB "[\|" \-v "\|]"
-.RB "[\|" \-w "\|]"
-.RB "[\|" \-\^\- "\ |\ " \c
-.I files\c
-\&\|.\|.\|.\|]
-
-.I i960-only options:
+.\" Automatically generated by Pod::Man version 1.19
+.\" Sat Sep 22 17:01:39 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
 .br
-.RB "[\|" \-ACA "\||\|" \-ACA_A "\||\|" \-ACB\c
-.RB "\||\|" \-ACC "\||\|" \-AKA "\||\|" \-AKB\c
-.RB "\||\|" \-AKC "\||\|" \-AMC "\|]"
-.RB "[\|" \-b "\|]"
-.RB "[\|" \-no-relax "\|]"
-
-.I m680x0-only options:
-.br
-.RB "[\|" \-l "\|]"
-.RB "[\|" \-mc68000 "\||\|" \-mc68010 "\||\|" \-mc68020 "\|]"
-.ad b
-
-.SH DESCRIPTION
-GNU \c
-.B as\c
-\& is really a family of assemblers.  
-If you use (or have used) the GNU assembler on one architecture, you
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
+..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.hy 0
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "AS 1"
+.TH AS 1 "binutils-2.11.2" "2001-09-22" "GNU"
+.UC
+.SH "NAME"
+\&\s-1AS\s0 \- the portable \s-1GNU\s0 assembler.
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\s-1GNU\s0 \fBas\fR is really a family of assemblers.
+If you use (or have used) the \s-1GNU\s0 assembler on one architecture, you
 should find a fairly similar environment when you use it on another
 architecture.  Each version has much in common with the others,
 including object file formats, most assembler directives (often called
-\c
-.I pseudo-ops)\c
-\& and assembler syntax.  
-
-For information on the syntax and pseudo-ops used by GNU \c
-.B as\c
-\&, see `\|\c
-.B as\c
-\|' entry in \c
-.B info \c
-(or the manual \c
-.I
-.I
-Using as: The GNU Assembler\c
-\&).
-
-\c
-.B as\c
-\& is primarily intended to assemble the output of the GNU C
-compiler \c
-.B gcc\c
-\& for use by the linker \c
-.B ld\c
-\&.  Nevertheless,
-we've tried to make \c
-.B as\c
-\& assemble correctly everything that the native
-assembler would.
-This doesn't mean \c
-.B as\c
-\& always uses the same syntax as another
+\&\fIpseudo-ops\fR) and assembler syntax.
+.PP
+\&\fBas\fR is primarily intended to assemble the output of the
+\&\s-1GNU\s0 C compiler  for use by the linker
+\&.  Nevertheless, we've tried to make \fBas\fR
+assemble correctly everything that other assemblers for the same
+machine would assemble.
+Any exceptions are documented explicitly.
+This doesn't mean \fBas\fR always uses the same syntax as another
 assembler for the same architecture; for example, we know of several
 incompatible versions of 680x0 assembly language syntax.
-
-Each time you run \c
-.B as\c
-\& it assembles exactly one source
+.PP
+Each time you run \fBas\fR it assembles exactly one source
 program.  The source program is made up of one or more files.
 (The standard input is also a file.)
-
-If \c
-.B as\c
-\& is given no file names it attempts to read one input file
-from the \c
-.B as\c
-\& standard input, which is normally your terminal.  You
-may have to type \c
-.B ctl-D\c
-\& to tell \c
-.B as\c
-\& there is no more program
-to assemble.  Use `\|\c
-.B \-\^\-\c
-\|' if you need to explicitly name the standard input file
+.PP
+You give \fBas\fR a command line that has zero or more input file
+names.  The input files are read (from left file name to right).  A
+command line argument (in any position) that has no special meaning
+is taken to be an input file name.
+.PP
+If you give \fBas\fR no file names it attempts to read one input file
+from the \fBas\fR standard input, which is normally your terminal.  You
+may have to type \fBctl-D\fR to tell \fBas\fR there is no more program
+to assemble.
+.PP
+Use \fB\--\fR if you need to explicitly name the standard input file
 in your command line.
-
-.B as\c
-\& may write warnings and error messages to the standard error
-file (usually your terminal).  This should not happen when \c
-.B as\c
-\& is
-run automatically by a compiler.  Warnings report an assumption made so
-that \c
-.B as\c
-\& could keep assembling a flawed program; errors report a
+.PP
+If the source is empty, \fBas\fR produces a small, empty object
+file.
+.PP
+\&\fBas\fR may write warnings and error messages to the standard error
+file (usually your terminal).  This should not happen when  a compiler
+runs \fBas\fR automatically.  Warnings report an assumption made so
+that \fBas\fR could keep assembling a flawed program; errors report a
 grave problem that stops the assembly.
-
-.SH OPTIONS
-.TP
-.BR \-a
-Turn on assembly listings.  There are various suboptions.
-.B d
-omits debugging directives.
-.B h
-includes the high level source code; this is only available if the
-source file can be found, and the code was compiled with
-.B \-g.
-.B l
-includes an assembly listing.
-.B n
-omits forms processing.
-.B s
-includes a symbol listing.
-.B =
-.I file
-sets the listing file name; this must be the last suboption.
-The default suboptions are
-.B hls.
-.TP
-.B \-D
-This option is accepted only for script compatibility with calls to
-other assemblers; it has no effect on \c
-.B as\c
-\&.
-.TP
-.B \-\-defsym SYM=VALUE
-Define the symbol SYM to be VALUE before assembling the input file.
-VALUE must be an integer constant.  As in C, a leading 0x indicates a
-hexadecimal value, and a leading 0 indicates an octal value.
-.TP
-.B \-f
-``fast''--skip preprocessing (assume source is compiler output).
-.TP
-.BI "\-I\ " path
-Add 
-.I path
-to the search list for 
-.B .include
-directives.
-.TP
-.B \-\-gstabs
+.PP
+If you are invoking \fBas\fR via the \s-1GNU\s0 C compiler (version 2),
+you can use the \fB\-Wa\fR option to pass arguments through to the assembler.
+The assembler arguments must be separated from each other (and the \fB\-Wa\fR)
+by commas.  For example:
+.PP
+.Vb 1
+\&        gcc -c -g -O -Wa,-alh,-L file.c
+.Ve
+This passes two options to the assembler: \fB\-alh\fR (emit a listing to
+standard output with with high-level and assembly source) and \fB\-L\fR (retain
+local symbols in the symbol table).
+.PP
+Usually you do not need to use this \fB\-Wa\fR mechanism, since many compiler
+command-line options are automatically passed to the assembler by the compiler.
+(You can call the \s-1GNU\s0 compiler driver with the \fB\-v\fR option to see
+precisely what options it passes to each compilation pass, including the
+assembler.)
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+.IP "\fB\-a[cdhlmns]\fR" 4
+.IX Item "-a[cdhlmns]"
+Turn on listings, in any of a variety of ways:
+.RS 4
+.IP "\fB\-ac\fR" 4
+.IX Item "-ac"
+omit false conditionals
+.IP "\fB\-ad\fR" 4
+.IX Item "-ad"
+omit debugging directives
+.IP "\fB\-ah\fR" 4
+.IX Item "-ah"
+include high-level source
+.IP "\fB\-al\fR" 4
+.IX Item "-al"
+include assembly
+.IP "\fB\-am\fR" 4
+.IX Item "-am"
+include macro expansions
+.IP "\fB\-an\fR" 4
+.IX Item "-an"
+omit forms processing
+.IP "\fB\-as\fR" 4
+.IX Item "-as"
+include symbols
+.IP "\fB=file\fR" 4
+.IX Item "=file"
+set the name of the listing file
+.RE
+.RS 4
+.Sp
+You may combine these options; for example, use \fB\-aln\fR for assembly
+listing without forms processing.  The \fB=file\fR option, if used, must be
+the last one.  By itself, \fB\-a\fR defaults to \fB\-ahls\fR.
+.RE
+.IP "\fB\-D\fR" 4
+.IX Item "-D"
+Ignored.  This option is accepted for script compatibility with calls to
+other assemblers.
+.IP "\fB\*(--defsym\fR \fIsym\fR\fB=\fR\fIvalue\fR" 4
+.IX Item "defsym sym=value"
+Define the symbol \fIsym\fR to be \fIvalue\fR before assembling the input file.
+\&\fIvalue\fR must be an integer constant.  As in C, a leading \fB0x\fR
+indicates a hexadecimal value, and a leading \fB0\fR indicates an octal value.
+.IP "\fB\-f\fR" 4
+.IX Item "-f"
+``fast''\-\-\-skip whitespace and comment preprocessing (assume source is
+compiler output).
+.IP "\fB\*(--gstabs\fR" 4
+.IX Item "gstabs"
 Generate stabs debugging information for each assembler line.  This
 may help debugging assembler code, if the debugger can handle it.
-.TP
-.B \-K
-Issue warnings when difference tables altered for long displacements.
-.TP
-.B \-L
-Keep (in symbol table) local symbols, starting with `\|\c
-.B L\c
-\|'
-.TP
-.B \-M, \-\-mri
-Assemble in MRI compatibility mode.
-.TP
-.BI "\-o\ " objfile
-Name the object-file output from \c
-.B as
-.TP
-.B \-R
-Fold data section into text section
-.TP
-.B \-\-traditional\-format
-Use same format as native assembler, when possible.
-.TP
-.B \-v
-Announce \c
-.B as\c
-\& version
-.TP
-.B \-W, \-\-no-warn
+.IP "\fB\*(--gdwarf2\fR" 4
+.IX Item "gdwarf2"
+Generate \s-1DWARF2\s0 debugging information for each assembler line.  This
+may help debugging assembler code, if the debugger can handle it.  Note \- this
+option is only supported by some targets, not all of them.
+.IP "\fB\*(--help\fR" 4
+.IX Item "help"
+Print a summary of the command line options and exit.
+.IP "\fB\*(--target-help\fR" 4
+.IX Item "target-help"
+Print a summary of all target specific options and exit.
+.IP "\fB\-I\fR \fIdir\fR" 4
+.IX Item "-I dir"
+Add directory \fIdir\fR to the search list for \f(CW\*(C`.include\*(C'\fR directives.
+.IP "\fB\-J\fR" 4
+.IX Item "-J"
+Don't warn about signed overflow.
+.IP "\fB\-K\fR" 4
+.IX Item "-K"
+This option is accepted but has no effect on the \s-1TARGET\s0 family.
+.IP "\fB\-L\fR" 4
+.IX Item "-L"
+.PD 0
+.IP "\fB\*(--keep-locals\fR" 4
+.IX Item "keep-locals"
+.PD
+Keep (in the symbol table) local symbols.  On traditional a.out systems
+these start with \fBL\fR, but different systems have different local
+label prefixes.
+.IP "\fB\-o\fR \fIobjfile\fR" 4
+.IX Item "-o objfile"
+Name the object-file output from \fBas\fR \fIobjfile\fR.
+.IP "\fB\-R\fR" 4
+.IX Item "-R"
+Fold the data section into the text section.
+.IP "\fB\*(--statistics\fR" 4
+.IX Item "statistics"
+Print the maximum space (in bytes) and total time (in seconds) used by
+assembly.
+.IP "\fB\*(--strip-local-absolute\fR" 4
+.IX Item "strip-local-absolute"
+Remove local absolute symbols from the outgoing symbol table.
+.IP "\fB\-v\fR" 4
+.IX Item "-v"
+.PD 0
+.IP "\fB\-version\fR" 4
+.IX Item "-version"
+.PD
+Print the \fBas\fR version.
+.IP "\fB\*(--version\fR" 4
+.IX Item "version"
+Print the \fBas\fR version and exit.
+.IP "\fB\-W\fR" 4
+.IX Item "-W"
+.PD 0
+.IP "\fB\*(--no-warn\fR" 4
+.IX Item "no-warn"
+.PD
 Suppress warning messages.
-.TP
-.B \-\-fatal\-warnings
-Consider warnings to be fatal.
-.TP
-.B \-\-warn
-Just warn on warnings.
-.TP
-.IR "\-\^\-" "\ |\ " "files\|.\|.\|."
-Source files to assemble, or standard input (\c
-.BR "\-\^\-" ")"
-.TP
-.BI \-A var
-.I
-(When configured for Intel 960.)
+.IP "\fB\*(--fatal-warnings\fR" 4
+.IX Item "fatal-warnings"
+Treat warnings as errors.
+.IP "\fB\*(--warn\fR" 4
+.IX Item "warn"
+Don't suppress warning messages or treat them as errors.
+.IP "\fB\-w\fR" 4
+.IX Item "-w"
+Ignored.
+.IP "\fB\-x\fR" 4
+.IX Item "-x"
+Ignored.
+.IP "\fB\-Z\fR" 4
+.IX Item "-Z"
+Generate an object file even after errors.
+.IP "\fB\-\- |\fR \fIfiles\fR \fB...\fR" 4
+.IX Item "-- | files ..."
+Standard input, or source files to assemble.
+.PP
+The following options are available when as is configured for
+an \s-1ARC\s0 processor.
+.IP "\fB\-marc[5|6|7|8]\fR" 4
+.IX Item "-marc[5|6|7|8]"
+This option selects the core processor variant.
+.IP "\fB\-EB | \-EL\fR" 4
+.IX Item "-EB | -EL"
+Select either big-endian (\-EB) or little-endian (\-EL) output.
+.PP
+The following options are available when as is configured for the \s-1ARM\s0
+processor family.
+.IP "\fB\-m[arm][1|2|3|6|7|8|9][...]\fR" 4
+.IX Item "-m[arm][1|2|3|6|7|8|9][...]"
+Specify which \s-1ARM\s0 processor variant is the target.
+.IP "\fB\-m[arm]v[2|2a|3|3m|4|4t|5|5t]\fR" 4
+.IX Item "-m[arm]v[2|2a|3|3m|4|4t|5|5t]"
+Specify which \s-1ARM\s0 architecture variant is used by the target.
+.IP "\fB\-mthumb | \-mall\fR" 4
+.IX Item "-mthumb | -mall"
+Enable or disable Thumb only instruction decoding.
+.IP "\fB\-mfpa10 | \-mfpa11 | \-mfpe-old | \-mno-fpu\fR" 4
+.IX Item "-mfpa10 | -mfpa11 | -mfpe-old | -mno-fpu"
+Select which Floating Point architecture is the target.
+.IP "\fB\-mapcs-32 | \-mapcs-26 | \-mapcs-float | \-mapcs-reentrant | \-moabi\fR" 4
+.IX Item "-mapcs-32 | -mapcs-26 | -mapcs-float | -mapcs-reentrant | -moabi"
+Select which procedure calling convention is in use.
+.IP "\fB\-EB | \-EL\fR" 4
+.IX Item "-EB | -EL"
+Select either big-endian (\-EB) or little-endian (\-EL) output.
+.IP "\fB\-mthumb-interwork\fR" 4
+.IX Item "-mthumb-interwork"
+Specify that the code has been generated with interworking between Thumb and
+\&\s-1ARM\s0 code in mind.
+.IP "\fB\-k\fR" 4
+.IX Item "-k"
+Specify that \s-1PIC\s0 code has been generated.
+.PP
+The following options are available when as is configured for
+a D10V processor.
+.IP "\fB\-O\fR" 4
+.IX Item "-O"
+Optimize output by parallelizing instructions.
+.PP
+The following options are available when as is configured for a D30V
+processor.
+.IP "\fB\-O\fR" 4
+.IX Item "-O"
+Optimize output by parallelizing instructions.
+.IP "\fB\-n\fR" 4
+.IX Item "-n"
+Warn when nops are generated.
+.IP "\fB\-N\fR" 4
+.IX Item "-N"
+Warn when a nop after a 32\-bit multiply instruction is generated.
+.PP
+The following options are available when as is configured for the
+Intel 80960 processor.
+.IP "\fB\-ACA | \-ACA_A | \-ACB | \-ACC | \-AKA | \-AKB | \-AKC | \-AMC\fR" 4
+.IX Item "-ACA | -ACA_A | -ACB | -ACC | -AKA | -AKB | -AKC | -AMC"
 Specify which variant of the 960 architecture is the target.
-.TP
-.B \-b
-.I
-(When configured for Intel 960.)
+.IP "\fB\-b\fR" 4
+.IX Item "-b"
 Add code to collect statistics about branches taken.
-.TP
-.B \-no-relax
-.I
-(When configured for Intel 960.)
+.IP "\fB\-no-relax\fR" 4
+.IX Item "-no-relax"
 Do not alter compare-and-branch instructions for long displacements;
 error if necessary.
-.TP
-.B \-l
-.I
-(When configured for Motorola 68000).  
-.br
+.PP
+The following options are available when as is configured for the
+Mitsubishi M32R series.
+.IP "\fB\*(--m32rx\fR" 4
+.IX Item "m32rx"
+Specify which processor in the M32R family is the target.  The default
+is normally the M32R, but this option changes it to the M32RX.
+.IP "\fB\*(--warn-explicit-parallel-conflicts or \-\-Wp\fR" 4
+.IX Item "warn-explicit-parallel-conflicts or --Wp"
+Produce warning messages when questionable parallel constructs are
+encountered. 
+.IP "\fB\*(--no-warn-explicit-parallel-conflicts or \-\-Wnp\fR" 4
+.IX Item "no-warn-explicit-parallel-conflicts or --Wnp"
+Do not produce warning messages when questionable parallel constructs are 
+encountered. 
+.PP
+The following options are available when as is configured for the
+Motorola 68000 series.
+.IP "\fB\-l\fR" 4
+.IX Item "-l"
 Shorten references to undefined symbols, to one word instead of two.
-.TP
-.BR "\-mc68000" "\||\|" "\-mc68010" "\||\|" "\-mc68020"
-.I
-(When configured for Motorola 68000).  
-.br
-Specify what processor in the 68000 family is the target (default 68020)
-
+.IP "\fB\-m68000 | \-m68008 | \-m68010 | \-m68020 | \-m68030\fR" 4
+.IX Item "-m68000 | -m68008 | -m68010 | -m68020 | -m68030"
+.PD 0
+.IP "\fB| \-m68040 | \-m68060 | \-m68302 | \-m68331 | \-m68332\fR" 4
+.IX Item "| -m68040 | -m68060 | -m68302 | -m68331 | -m68332"
+.IP "\fB| \-m68333 | \-m68340 | \-mcpu32 | \-m5200\fR" 4
+.IX Item "| -m68333 | -m68340 | -mcpu32 | -m5200"
+.PD
+Specify what processor in the 68000 family is the target.  The default
+is normally the 68020, but this can be changed at configuration time.
+.IP "\fB\-m68881 | \-m68882 | \-mno-68881 | \-mno-68882\fR" 4
+.IX Item "-m68881 | -m68882 | -mno-68881 | -mno-68882"
+The target machine does (or does not) have a floating-point coprocessor.
+The default is to assume a coprocessor for 68020, 68030, and cpu32.  Although
+the basic 68000 is not compatible with the 68881, a combination of the
+two can be specified, since it's possible to do emulation of the
+coprocessor instructions with the main processor.
+.IP "\fB\-m68851 | \-mno-68851\fR" 4
+.IX Item "-m68851 | -mno-68851"
+The target machine does (or does not) have a memory-management
+unit coprocessor.  The default is to assume an \s-1MMU\s0 for 68020 and up.
 .PP
-Options may be in any order, and may be
-before, after, or between file names.  The order of file names is
-significant.
-
-`\|\c
-.B \-\^\-\c
-\|' (two hyphens) by itself names the standard input file
-explicitly, as one of the files for \c
-.B as\c
-\& to assemble.
-
-Except for `\|\c
-.B \-\^\-\c
-\|' any command line argument that begins with a
-hyphen (`\|\c
-.B \-\c
-\|') is an option.  Each option changes the behavior of
-\c
-.B as\c
-\&.  No option changes the way another option works.  An
-option is a `\|\c
-.B \-\c
-\|' followed by one or more letters; the case of
-the letter is important.   All options are optional.
-
-The `\|\c
-.B \-o\c
-\|' option expects exactly one file name to follow.  The file
-name may either immediately follow the option's letter (compatible
-with older assemblers) or it may be the next command argument (GNU
-standard).  
-
-These two command lines are equivalent:
-.br
-.B
-as\ \ \-o\ \ my\-object\-file.o\ \ mumble.s
-.br
-.B
-as\ \ \-omy\-object\-file.o\ \ mumble.s
-
+The following options are available when as is configured for
+a picoJava processor.
+.IP "\fB\-mb\fR" 4
+.IX Item "-mb"
+Generate ``big endian'' format output.
+.IP "\fB\-ml\fR" 4
+.IX Item "-ml"
+Generate ``little endian'' format output.
+.PP
+The following options are available when as is configured for the
+Motorola 68HC11 or 68HC12 series.
+.IP "\fB\-m68hc11 | \-m68hc12\fR" 4
+.IX Item "-m68hc11 | -m68hc12"
+Specify what processor is the target.  The default is
+defined by the configuration option when building the assembler.
+.IP "\fB\*(--force-long-branchs\fR" 4
+.IX Item "force-long-branchs"
+Relative branches are turned into absolute ones. This concerns
+conditional branches, unconditional branches and branches to a
+sub routine.
+.IP "\fB\-S | \-\-short-branchs\fR" 4
+.IX Item "-S | --short-branchs"
+Do not turn relative branchs into absolute ones
+when the offset is out of range.
+.IP "\fB\*(--strict-direct-mode\fR" 4
+.IX Item "strict-direct-mode"
+Do not turn the direct addressing mode into extended addressing mode
+when the instruction does not support direct addressing mode.
+.IP "\fB\*(--print-insn-syntax\fR" 4
+.IX Item "print-insn-syntax"
+Print the syntax of instruction in case of error.
+.IP "\fB\*(--print-opcodes\fR" 4
+.IX Item "print-opcodes"
+print the list of instructions with syntax and then exit.
+.IP "\fB\*(--generate-example\fR" 4
+.IX Item "generate-example"
+print an example of instruction for each possible instruction and then exit.
+This option is only useful for testing \fBas\fR.
+.PP
+The following options are available when \fBas\fR is configured
+for the \s-1SPARC\s0 architecture:
+.IP "\fB\-Av6 | \-Av7 | \-Av8 | \-Asparclet | \-Asparclite\fR" 4
+.IX Item "-Av6 | -Av7 | -Av8 | -Asparclet | -Asparclite"
+.PD 0
+.IP "\fB\-Av8plus | \-Av8plusa | \-Av9 | \-Av9a\fR" 4
+.IX Item "-Av8plus | -Av8plusa | -Av9 | -Av9a"
+.PD
+Explicitly select a variant of the \s-1SPARC\s0 architecture.
+.Sp
+\&\fB\-Av8plus\fR and \fB\-Av8plusa\fR select a 32 bit environment.
+\&\fB\-Av9\fR and \fB\-Av9a\fR select a 64 bit environment.
+.Sp
+\&\fB\-Av8plusa\fR and \fB\-Av9a\fR enable the \s-1SPARC\s0 V9 instruction set with
+UltraSPARC extensions.
+.IP "\fB\-xarch=v8plus | \-xarch=v8plusa\fR" 4
+.IX Item "-xarch=v8plus | -xarch=v8plusa"
+For compatibility with the Solaris v9 assembler.  These options are
+equivalent to \-Av8plus and \-Av8plusa, respectively.
+.IP "\fB\-bump\fR" 4
+.IX Item "-bump"
+Warn when the assembler switches to another architecture.
+.PP
+The following options are available when as is configured for
+a \s-1MIPS\s0 processor.
+.IP "\fB\-G\fR \fInum\fR" 4
+.IX Item "-G num"
+This option sets the largest size of an object that can be referenced
+implicitly with the \f(CW\*(C`gp\*(C'\fR register.  It is only accepted for targets that
+use \s-1ECOFF\s0 format, such as a DECstation running Ultrix.  The default value is 8.
+.IP "\fB\-EB\fR" 4
+.IX Item "-EB"
+Generate ``big endian'' format output.
+.IP "\fB\-EL\fR" 4
+.IX Item "-EL"
+Generate ``little endian'' format output.
+.IP "\fB\-mips1\fR" 4
+.IX Item "-mips1"
+.PD 0
+.IP "\fB\-mips2\fR" 4
+.IX Item "-mips2"
+.IP "\fB\-mips3\fR" 4
+.IX Item "-mips3"
+.IP "\fB\-mips4\fR" 4
+.IX Item "-mips4"
+.IP "\fB\-mips32\fR" 4
+.IX Item "-mips32"
+.PD
+Generate code for a particular \s-1MIPS\s0 Instruction Set Architecture level.
+\&\fB\-mips1\fR corresponds to the R2000 and R3000 processors,
+\&\fB\-mips2\fR to the R6000 processor, and \fB\-mips3\fR to the R4000
+processor.
+\&\fB\-mips5\fR, \fB\-mips32\fR, and \fB\-mips64\fR correspond
+to generic \s-1MIPS\s0 V, \s-1MIPS32\s0, and \s-1MIPS64\s0 \s-1ISA\s0
+processors, respectively.
+.IP "\fB\-m4650\fR" 4
+.IX Item "-m4650"
+.PD 0
+.IP "\fB\-no-m4650\fR" 4
+.IX Item "-no-m4650"
+.PD
+Generate code for the \s-1MIPS\s0 R4650 chip.  This tells the assembler to accept
+the \fBmad\fR and \fBmadu\fR instruction, and to not schedule \fBnop\fR
+instructions around accesses to the \fB\s-1HI\s0\fR and \fB\s-1LO\s0\fR registers.
+\&\fB\-no-m4650\fR turns off this option.
+.IP "\fB\-mcpu=\fR\fI\s-1CPU\s0\fR" 4
+.IX Item "-mcpu=CPU"
+Generate code for a particular \s-1MIPS\s0 cpu.  It is exactly equivalent to
+\&\fB\-m\fR\fIcpu\fR, except that there are more value of \fIcpu\fR
+understood.
+.IP "\fB\*(--emulation=\fR\fIname\fR" 4
+.IX Item "emulation=name"
+This option causes \fBas\fR to emulate \fBas\fR configured
+for some other target, in all respects, including output format (choosing
+between \s-1ELF\s0 and \s-1ECOFF\s0 only), handling of pseudo-opcodes which may generate
+debugging information or store symbol table information, and default
+endianness.  The available configuration names are: \fBmipsecoff\fR,
+\&\fBmipself\fR, \fBmipslecoff\fR, \fBmipsbecoff\fR, \fBmipslelf\fR,
+\&\fBmipsbelf\fR.  The first two do not alter the default endianness from that
+of the primary target for which the assembler was configured; the others change
+the default to little- or big-endian as indicated by the \fBb\fR or \fBl\fR
+in the name.  Using \fB\-EB\fR or \fB\-EL\fR will override the endianness
+selection in any case.
+.Sp
+This option is currently supported only when the primary target
+\&\fBas\fR is configured for is a \s-1MIPS\s0 \s-1ELF\s0 or \s-1ECOFF\s0 target.
+Furthermore, the primary target or others specified with
+\&\fB\*(--enable-targets=...\fR at configuration time must include support for
+the other format, if both are to be available.  For example, the Irix 5
+configuration includes support for both.
+.Sp
+Eventually, this option will support more configurations, with more
+fine-grained control over the assembler's behavior, and will be supported for
+more processors.
+.IP "\fB\-nocpp\fR" 4
+.IX Item "-nocpp"
+\&\fBas\fR ignores this option.  It is accepted for compatibility with
+the native tools.
+.IP "\fB\*(--trap\fR" 4
+.IX Item "trap"
+.PD 0
+.IP "\fB\*(--no-trap\fR" 4
+.IX Item "no-trap"
+.IP "\fB\*(--break\fR" 4
+.IX Item "break"
+.IP "\fB\*(--no-break\fR" 4
+.IX Item "no-break"
+.PD
+Control how to deal with multiplication overflow and division by zero.
+\&\fB\*(--trap\fR or \fB\*(--no-break\fR (which are synonyms) take a trap exception
+(and only work for Instruction Set Architecture level 2 and higher);
+\&\fB\*(--break\fR or \fB\*(--no-trap\fR (also synonyms, and the default) take a
+break exception.
+.PP
+The following options are available when as is configured for
+an MCore processor.
+.IP "\fB\-jsri2bsr\fR" 4
+.IX Item "-jsri2bsr"
+.PD 0
+.IP "\fB\-nojsri2bsr\fR" 4
+.IX Item "-nojsri2bsr"
+.PD
+Enable or disable the \s-1JSRI\s0 to \s-1BSR\s0 transformation.  By default this is enabled.
+The command line option \fB\-nojsri2bsr\fR can be used to disable it.
+.IP "\fB\-sifilter\fR" 4
+.IX Item "-sifilter"
+.PD 0
+.IP "\fB\-nosifilter\fR" 4
+.IX Item "-nosifilter"
+.PD
+Enable or disable the silicon filter behaviour.  By default this is disabled.
+The default can be overridden by the \fB\-sifilter\fR command line option.
+.IP "\fB\-relax\fR" 4
+.IX Item "-relax"
+Alter jump instructions for long displacements.
+.IP "\fB\-mcpu=[210|340]\fR" 4
+.IX Item "-mcpu=[210|340]"
+Select the cpu type on the target hardware.  This controls which instructions
+can be assembled.
+.IP "\fB\-EB\fR" 4
+.IX Item "-EB"
+Assemble for a big endian target.
+.IP "\fB\-EL\fR" 4
+.IX Item "-EL"
+Assemble for a little endian target.
 .SH "SEE ALSO"
-.RB "`\|" as "\|'"
-entry in 
-.B
-info\c
-\&; 
-.I
-Using as: The GNU Assembler\c
-\&;
-.BR gcc "(" 1 "),"
-.BR ld "(" 1 ")."
-
-.SH COPYING
-Copyright (c) 1991, 1992, 2000 Free Software Foundation, Inc.
+.IX Header "SEE ALSO"
+\&\fIgcc\fR\|(1), \fIld\fR\|(1), and the Info entries for \fIbinutils\fR and \fIld\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
 .PP
-This document is distributed under the terms of the GNU Free
-Documentation License, version 1.1.  That license is described in the
-sources for this manual page, but it is not displayed here in order to
-make this manual more consise.  Copies of this license can also be
-obtained from: http://www.gnu.org/copyleft/.
-
-\"  GNU Free Documentation License
-\"    Version 1.1, March 2000
-
-\"    Copyright (C) 2000  Free Software Foundation, Inc.
-\"    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-     
-\"    Everyone is permitted to copy and distribute verbatim
-\"    copies of this license document, but changing it is
-\"    not allowed.
-\"  .PP
-\"  0. PREAMBLE
-\"  .PP
-\"  The purpose of this License is to make a manual, textbook, or other
-\"  written document "free" in the sense of freedom: to assure everyone
-\"  the effective freedom to copy and redistribute it, with or without
-\"  modifying it, either commercially or noncommercially.  Secondarily,
-\"  this License preserves for the author and publisher a way to get
-\"  credit for their work, while not being considered responsible for
-\"  modifications made by others.
-\"  .PP
-\"  This License is a kind of "copyleft", which means that derivative
-\"  works of the document must themselves be free in the same sense.  It
-\"  complements the GNU General Public License, which is a copyleft
-\"  license designed for free software.
-\"  .PP
-\"  We have designed this License in order to use it for manuals for free
-\"  software, because free software needs free documentation: a free
-\"  program should come with manuals providing the same freedoms that the
-\"  software does.  But this License is not limited to software manuals;
-\"  it can be used for any textual work, regardless of subject matter or
-\"  whether it is published as a printed book.  We recommend this License
-\"  principally for works whose purpose is instruction or reference.
-\"  .PP
-\"  1. APPLICABILITY AND DEFINITIONS
-\"  .PP
-\"  This License applies to any manual or other work that contains a
-\"  notice placed by the copyright holder saying it can be distributed
-\"  under the terms of this License.  The "Document", below, refers to any
-\"  such manual or work.  Any member of the public is a licensee, and is
-\"  addressed as "you".
-\"  .PP
-\"  A "Modified Version" of the Document means any work containing the
-\"  Document or a portion of it, either copied verbatim, or with
-\"  modifications and/or translated into another language.
-\"  .PP
-\"  A "Secondary Section" is a named appendix or a front-matter section of
-\"  the Document that deals exclusively with the relationship of the
-\"  publishers or authors of the Document to the Document's overall subject
-\"  (or to related matters) and contains nothing that could fall directly
-\"  within that overall subject.  (For example, if the Document is in part a
-\"  textbook of mathematics, a Secondary Section may not explain any
-\"  mathematics.)  The relationship could be a matter of historical
-\"  connection with the subject or with related matters, or of legal,
-\"  commercial, philosophical, ethical or political position regarding
-\"  them.
-\"  .PP
-\"  The "Invariant Sections" are certain Secondary Sections whose titles
-\"  are designated, as being those of Invariant Sections, in the notice
-\"  that says that the Document is released under this License.
-\"  .PP
-\"  The "Cover Texts" are certain short passages of text that are listed,
-\"  as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-\"  the Document is released under this License.
-\"  .PP
-\"  A "Transparent" copy of the Document means a machine-readable copy,
-\"  represented in a format whose specification is available to the
-\"  general public, whose contents can be viewed and edited directly and
-\"  straightforwardly with generic text editors or (for images composed of
-\"  pixels) generic paint programs or (for drawings) some widely available
-\"  drawing editor, and that is suitable for input to text formatters or
-\"  for automatic translation to a variety of formats suitable for input
-\"  to text formatters.  A copy made in an otherwise Transparent file
-\"  format whose markup has been designed to thwart or discourage
-\"  subsequent modification by readers is not Transparent.  A copy that is
-\"  not "Transparent" is called "Opaque".
-\"  .PP
-\"  Examples of suitable formats for Transparent copies include plain
-\"  ASCII without markup, Texinfo input format, LaTeX input format, SGML
-\"  or XML using a publicly available DTD, and standard-conforming simple
-\"  HTML designed for human modification.  Opaque formats include
-\"  PostScript, PDF, proprietary formats that can be read and edited only
-\"  by proprietary word processors, SGML or XML for which the DTD and/or
-\"  processing tools are not generally available, and the
-\"  machine-generated HTML produced by some word processors for output
-\"  purposes only.
-\"  .PP
-\"  The "Title Page" means, for a printed book, the title page itself,
-\"  plus such following pages as are needed to hold, legibly, the material
-\"  this License requires to appear in the title page.  For works in
-\"  formats which do not have any title page as such, "Title Page" means
-\"  the text near the most prominent appearance of the work's title,
-\"  preceding the beginning of the body of the text.
-\"  .PP
-\"  2. VERBATIM COPYING
-\"  .PP
-\"  You may copy and distribute the Document in any medium, either
-\"  commercially or noncommercially, provided that this License, the
-\"  copyright notices, and the license notice saying this License applies
-\"  to the Document are reproduced in all copies, and that you add no other
-\"  conditions whatsoever to those of this License.  You may not use
-\"  technical measures to obstruct or control the reading or further
-\"  copying of the copies you make or distribute.  However, you may accept
-\"  compensation in exchange for copies.  If you distribute a large enough
-\"  number of copies you must also follow the conditions in section 3.
-\"  .PP
-\"  You may also lend copies, under the same conditions stated above, and
-\"  you may publicly display copies.
-\"  .PP
-\"  3. COPYING IN QUANTITY
-\"  .PP
-\"  If you publish printed copies of the Document numbering more than 100,
-\"  and the Document's license notice requires Cover Texts, you must enclose
-\"  the copies in covers that carry, clearly and legibly, all these Cover
-\"  Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-\"  the back cover.  Both covers must also clearly and legibly identify
-\"  you as the publisher of these copies.  The front cover must present
-\"  the full title with all words of the title equally prominent and
-\"  visible.  You may add other material on the covers in addition.
-\"  Copying with changes limited to the covers, as long as they preserve
-\"  the title of the Document and satisfy these conditions, can be treated
-\"  as verbatim copying in other respects.
-\"  .PP
-\"  If the required texts for either cover are too voluminous to fit
-\"  legibly, you should put the first ones listed (as many as fit
-\"  reasonably) on the actual cover, and continue the rest onto adjacent
-\"  pages.
-\"  .PP
-\"  If you publish or distribute Opaque copies of the Document numbering
-\"  more than 100, you must either include a machine-readable Transparent
-\"  copy along with each Opaque copy, or state in or with each Opaque copy
-\"  a publicly-accessible computer-network location containing a complete
-\"  Transparent copy of the Document, free of added material, which the
-\"  general network-using public has access to download anonymously at no
-\"  charge using public-standard network protocols.  If you use the latter
-\"  option, you must take reasonably prudent steps, when you begin
-\"  distribution of Opaque copies in quantity, to ensure that this
-\"  Transparent copy will remain thus accessible at the stated location
-\"  until at least one year after the last time you distribute an Opaque
-\"  copy (directly or through your agents or retailers) of that edition to
-\"  the public.
-\"  .PP
-\"  It is requested, but not required, that you contact the authors of the
-\"  Document well before redistributing any large number of copies, to give
-\"  them a chance to provide you with an updated version of the Document.
-\"  .PP
-\"  4. MODIFICATIONS
-\"  .PP
-\"  You may copy and distribute a Modified Version of the Document under
-\"  the conditions of sections 2 and 3 above, provided that you release
-\"  the Modified Version under precisely this License, with the Modified
-\"  Version filling the role of the Document, thus licensing distribution
-\"  and modification of the Modified Version to whoever possesses a copy
-\"  of it.  In addition, you must do these things in the Modified Version:
-\"  .PP
-\"  A. Use in the Title Page (and on the covers, if any) a title distinct
-\"  from that of the Document, and from those of previous versions
-\"  (which should, if there were any, be listed in the History section
-\"  of the Document).  You may use the same title as a previous version
-\"  if the original publisher of that version gives permission.
-\"  .PP
-\"  B. List on the Title Page, as authors, one or more persons or entities
-\"  responsible for authorship of the modifications in the Modified
-\"  Version, together with at least five of the principal authors of the
-\"  Document (all of its principal authors, if it has less than five).
-\"  .PP
-\"  C. State on the Title page the name of the publisher of the
-\"  Modified Version, as the publisher.
-\"  .PP
-\"  D. Preserve all the copyright notices of the Document.
-\"  .PP
-\"  E. Add an appropriate copyright notice for your modifications
-\"  adjacent to the other copyright notices.
-\"  .PP
-\"  F. Include, immediately after the copyright notices, a license notice
-\"  giving the public permission to use the Modified Version under the
-\"  terms of this License, in the form shown in the Addendum below.
-\"  Preserve in that license notice the full lists of Invariant Sections
-\"  and required Cover Texts given in the Document's license notice.
-\"  .PP
-\"  H. Include an unaltered copy of this License.
-\"  .PP
-\"  I. Preserve the section entitled "History", and its title, and add to
-\"  it an item stating at least the title, year, new authors, and
-\"  publisher of the Modified Version as given on the Title Page.  If
-\"  there is no section entitled "History" in the Document, create one
-\"  stating the title, year, authors, and publisher of the Document as
-\"  given on its Title Page, then add an item describing the Modified
-\"  Version as stated in the previous sentence.
-\"  .PP
-\"  J. Preserve the network location, if any, given in the Document for
-\"  public access to a Transparent copy of the Document, and likewise
-\"  the network locations given in the Document for previous versions
-\"  it was based on.  These may be placed in the "History" section.
-\"  You may omit a network location for a work that was published at
-\"  least four years before the Document itself, or if the original
-\"  publisher of the version it refers to gives permission.
-\"  .PP
-\"  K. In any section entitled "Acknowledgements" or "Dedications",
-\"  preserve the section's title, and preserve in the section all the
-\"  substance and tone of each of the contributor acknowledgements
-\"  and/or dedications given therein.
-\"  .PP
-\"  L. Preserve all the Invariant Sections of the Document,
-\"  unaltered in their text and in their titles.  Section numbers
-\"  or the equivalent are not considered part of the section titles.
-\"  .PP
-\"  M. Delete any section entitled "Endorsements".  Such a section
-\"  may not be included in the Modified Version.
-\"  .PP
-\"  N. Do not retitle any existing section as "Endorsements"
-\"  or to conflict in title with any Invariant Section.
-\"  .PP
-\"  If the Modified Version includes new front-matter sections or
-\"  appendices that qualify as Secondary Sections and contain no material
-\"  copied from the Document, you may at your option designate some or all
-\"  of these sections as invariant.  To do this, add their titles to the
-\"  list of Invariant Sections in the Modified Version's license notice.
-\"  These titles must be distinct from any other section titles.
-\"  .PP
-\"  You may add a section entitled "Endorsements", provided it contains
-\"  nothing but endorsements of your Modified Version by various
-\"  parties--for example, statements of peer review or that the text has
-\"  been approved by an organization as the authoritative definition of a
-\"  standard.
-\"  .PP
-\"  You may add a passage of up to five words as a Front-Cover Text, and a
-\"  passage of up to 25 words as a Back-Cover Text, to the end of the list
-\"  of Cover Texts in the Modified Version.  Only one passage of
-\"  Front-Cover Text and one of Back-Cover Text may be added by (or
-\"  through arrangements made by) any one entity.  If the Document already
-\"  includes a cover text for the same cover, previously added by you or
-\"  by arrangement made by the same entity you are acting on behalf of,
-\"  you may not add another; but you may replace the old one, on explicit
-\"  permission from the previous publisher that added the old one.
-\"  .PP
-\"  The author(s) and publisher(s) of the Document do not by this License
-\"  give permission to use their names for publicity for or to assert or
-\"  imply endorsement of any Modified Version.
-\"  .PP
-
-\"  5. COMBINING DOCUMENTS
-\"  .PP
-\"  You may combine the Document with other documents released under this
-\"  License, under the terms defined in section 4 above for modified
-\"  versions, provided that you include in the combination all of the
-\"  Invariant Sections of all of the original documents, unmodified, and
-\"  list them all as Invariant Sections of your combined work in its
-\"  license notice.
-\"  .PP
-\"  The combined work need only contain one copy of this License, and
-\"  multiple identical Invariant Sections may be replaced with a single
-\"  copy.  If there are multiple Invariant Sections with the same name but
-\"  different contents, make the title of each such section unique by
-\"  adding at the end of it, in parentheses, the name of the original
-\"  author or publisher of that section if known, or else a unique number.
-\"  Make the same adjustment to the section titles in the list of
-\"  Invariant Sections in the license notice of the combined work.
-\"  .PP
-\"  In the combination, you must combine any sections entitled "History"
-\"  in the various original documents, forming one section entitled
-\"  "History"; likewise combine any sections entitled "Acknowledgements",
-\"  and any sections entitled "Dedications".  You must delete all sections
-\"  entitled "Endorsements."
-\"  .PP
-
-\"  6. COLLECTIONS OF DOCUMENTS
-\"  .PP
-\"  You may make a collection consisting of the Document and other documents
-\"  released under this License, and replace the individual copies of this
-\"  License in the various documents with a single copy that is included in
-\"  the collection, provided that you follow the rules of this License for
-\"  verbatim copying of each of the documents in all other respects.
-\"  .PP
-\"  You may extract a single document from such a collection, and distribute
-\"  it individually under this License, provided you insert a copy of this
-\"  License into the extracted document, and follow this License in all
-\"  other respects regarding verbatim copying of that document.
-\"  .PP
-
-\"  7. AGGREGATION WITH INDEPENDENT WORKS
-\"  .PP
-\"  A compilation of the Document or its derivatives with other separate
-\"  and independent documents or works, in or on a volume of a storage or
-\"  distribution medium, does not as a whole count as a Modified Version
-\"  of the Document, provided no compilation copyright is claimed for the
-\"  compilation.  Such a compilation is called an "aggregate", and this
-\"  License does not apply to the other self-contained works thus compiled
-\"  with the Document, on account of their being thus compiled, if they
-\"  are not themselves derivative works of the Document.
-\"  .PP
-\"  If the Cover Text requirement of section 3 is applicable to these
-\"  copies of the Document, then if the Document is less than one quarter
-\"  of the entire aggregate, the Document's Cover Texts may be placed on
-\"  covers that surround only the Document within the aggregate.
-\"  Otherwise they must appear on covers around the whole aggregate.
-\"  .PP
-
-\"  8. TRANSLATION
-\"  .PP
-\"  Translation is considered a kind of modification, so you may
-\"  distribute translations of the Document under the terms of section 4.
-\"  Replacing Invariant Sections with translations requires special
-\"  permission from their copyright holders, but you may include
-\"  translations of some or all Invariant Sections in addition to the
-\"  original versions of these Invariant Sections.  You may include a
-\"  translation of this License provided that you also include the
-\"  original English version of this License.  In case of a disagreement
-\"  between the translation and the original English version of this
-\"  License, the original English version will prevail.
-\"  .PP
-
-\"  9. TERMINATION
-\"  .PP
-\"  You may not copy, modify, sublicense, or distribute the Document except
-\"  as expressly provided for under this License.  Any other attempt to
-\"  copy, modify, sublicense or distribute the Document is void, and will
-\"  automatically terminate your rights under this License.  However,
-\"  parties who have received copies, or rights, from you under this
-\"  License will not have their licenses terminated so long as such
-\"  parties remain in full compliance.
-\"  .PP
-
-\"  10. FUTURE REVISIONS OF THIS LICENSE
-\"  .PP
-\"  The Free Software Foundation may publish new, revised versions
-\"  of the GNU Free Documentation License from time to time.  Such new
-\"  versions will be similar in spirit to the present version, but may
-\"  differ in detail to address new problems or concerns.  See
-\"  http://www.gnu.org/copyleft/.
-\"  .PP
-\"  Each version of the License is given a distinguishing version number.
-\"  If the Document specifies that a particular numbered version of this
-\"  License "or any later version" applies to it, you have the option of
-\"  following the terms and conditions either of that specified version or
-\"  of any later version that has been published (not as a draft) by the
-\"  Free Software Foundation.  If the Document does not specify a version
-\"  number of this License, you may choose any version ever published (not
-\"  as a draft) by the Free Software Foundation.
-\"  .PP
-
-\"  ADDENDUM: How to use this License for your documents
-\"  .PP
-\"  To use this License in a document you have written, include a copy of
-\"  the License in the document and put the following copyright and
-\"  license notices just after the title page:
-\"  .PP
-\"      Copyright (c)  YEAR  YOUR NAME.
-\"      Permission is granted to copy, distribute and/or
-\"      modify this document under the terms of the GNU
-\"      Free Documentation License, Version 1.1 or any later
-\"      version published by the Free Software Foundation;
-\"      with the Invariant Sections being LIST THEIR TITLES,
-\"      with the Front-Cover Texts being LIST, and with the
-\"      Back-Cover Texts being LIST.  A copy of the license
-\"      is included in the section entitled "GNU Free
-\"      Documentation License".
-\"  .PP
-\"  If you have no Invariant Sections, write "with no Invariant Sections"
-\"  instead of saying which ones are invariant.  If you have no
-\"  Front-Cover Texts, write "no Front-Cover Texts" instead of
-\"  "Front-Cover Texts being LIST"; likewise for Back-Cover Texts.
-\"  .PP
-\"  If your document contains nontrivial examples of program code, we
-\"  recommend releasing these examples in parallel under your choice of
-\"  free software license, such as the GNU General Public License,
-\"  to permit their use in free software.
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/doc/as.texinfo binutils-2.11.2-m68hc1x/gas/doc/as.texinfo
--- binutils-2.11.2/gas/doc/as.texinfo	Fri Sep 21 20:58:40 2001
+++ binutils-2.11.2-m68hc1x/gas/doc/as.texinfo	Fri Sep 21 22:24:13 2001
@@ -19,6 +19,38 @@
 @include asconfig.texi
 @include gasver.texi
 @c ---
+@c man begin NAME
+@ifset man
+@c Configure for the generation of man pages
+@set AS as
+@set TARGET TARGET
+@set GENERIC
+@set A29K
+@set ARC
+@set ARM
+@set D10V
+@set D30V
+@set H8/300
+@set H8/500
+@set HPPA
+@set I370
+@set I80386
+@set I860
+@set I960
+@set M32R
+@set M68HC11
+@set M680X0
+@set MCORE
+@set MIPS
+@set PDP11
+@set PJ
+@set SH
+@set SPARC
+@set C54X
+@set V850
+@set VAX
+@end ifset
+@c man end
 @c common OR combinations of conditions
 @ifset AOUT
 @set aout-bout
@@ -88,14 +120,17 @@ END-INFO-DIR-ENTRY
 @ifinfo
 This file documents the GNU Assembler "@value{AS}".
 
+@c man begin COPYRIGHT
 Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
 
-      Permission is granted to copy, distribute and/or modify this document
-      under the terms of the GNU Free Documentation License, Version 1.1
-      or any later version published by the Free Software Foundation;
-      with no Invariant Sections, with no Front-Cover Texts, and with no
-      Back-Cover Texts.  A copy of the license is included in the
-      section entitled "GNU Free Documentation License".
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled "GNU Free Documentation License".
+
+@c man end
 
 @ignore
 Permission is granted to process this file through Tex and print the
@@ -118,7 +153,7 @@ notice identical to this one except for 
 @sp 13
 The Free Software Foundation Inc.  thanks The Nice Computer
 Company of Australia for loaning Dean Elsner to write the
-first (Vax) version of @code{as} for Project @sc{gnu}.
+first (Vax) version of @command{as} for Project @sc{gnu}.
 The proprietors, management and staff of TNCCA thank FSF for
 distracting the boss while they got some work
 done.
@@ -154,10 +189,10 @@ Copyright @copyright{} 1991, 92, 93, 94,
 @node Top
 @top Using @value{AS}
 
-This file is a user guide to the @sc{gnu} assembler @code{@value{AS}} version
+This file is a user guide to the @sc{gnu} assembler @command{@value{AS}} version
 @value{VERSION}.
 @ifclear GENERIC
-This version of the file describes @code{@value{AS}} configured to generate
+This version of the file describes @command{@value{AS}} configured to generate
 code for @value{TARGET} architectures.
 @end ifclear
 
@@ -184,9 +219,9 @@ section entitled "GNU Free Documentation
 @node Overview
 @chapter Overview
 @iftex
-This manual is a user guide to the @sc{gnu} assembler @code{@value{AS}}.
+This manual is a user guide to the @sc{gnu} assembler @command{@value{AS}}.
 @ifclear GENERIC
-This version of the manual describes @code{@value{AS}} configured to generate
+This version of the manual describes @command{@value{AS}} configured to generate
 code for @value{TARGET} architectures.
 @end ifclear
 @end iftex
@@ -194,14 +229,21 @@ code for @value{TARGET} architectures.
 @cindex invocation summary
 @cindex option summary
 @cindex summary of options
-Here is a brief summary of how to invoke @code{@value{AS}}.  For details,
+Here is a brief summary of how to invoke @command{@value{AS}}.  For details,
 @pxref{Invoking,,Comand-Line Options}.
 
+@c man title AS the portable GNU assembler.
+
+@c man begin SEEALSO
+gcc(1), ld(1), and the Info entries for @file{binutils} and @file{ld}.
+@c man end
+
 @c We don't use deffn and friends for the following because they seem
 @c to be limited to one line for the header.
 @smallexample
 @value{AS} [ -a[cdhlns][=file] ] [ -D ]  [ --defsym @var{sym}=@var{val} ]
- [ -f ] [ --gstabs ] [ --gdwarf2 ] [ --help ] [ -I @var{dir} ] [ -J ] [ -K ] [ -L ]
+ [ -f ] [ --gstabs ] [ --gdwarf2 ] [ --help ] [ -I @var{dir} ]
+ [ -J ] [ -K ] [ -L ]
  [ --keep-locals ] [ -o @var{objfile} ] [ -R ] [ --statistics ] [ -v ]
  [ -version ] [ --version ] [ -W ] [ --warn ] [ --fatal-warnings ] 
  [ -w ] [ -x ] [ -Z ] [ --target-help ]
@@ -213,20 +255,22 @@ Here is a brief summary of how to invoke
  [ -EB | -EL ]
 @end ifset
 @ifset ARM
- [ -m[arm]1 | -m[arm]2 | -m[arm]250 | -m[arm]3 | -m[arm]6 | -m[arm]60 |
-   -m[arm]600 | -m[arm]610 | -m[arm]620 | -m[arm]7[t][[d]m[i]][fe] | -m[arm]70 |
-   -m[arm]700 | -m[arm]710[c] | -m[arm]7100 | -m[arm]7500 | -m[arm]8 |
-   -m[arm]810 | -m[arm]9 | -m[arm]920 | -m[arm]920t | -m[arm]9tdmi |
+ [ -m[arm]1 | -m[arm]2 | -m[arm]250 | -m[arm]3 |
+   -m[arm]6 | -m[arm]60 | -m[arm]600 | -m[arm]610 |
+   -m[arm]620 | -m[arm]7[t][[d]m[i]][fe] | -m[arm]70 |
+   -m[arm]700 | -m[arm]710[c] | -m[arm]7100 |
+   -m[arm]7500 | -m[arm]8 | -m[arm]810 | -m[arm]9 |
+   -m[arm]920 | -m[arm]920t | -m[arm]9tdmi |
    -mstrongarm | -mstrongarm110 | -mstrongarm1100 ]
- [ -m[arm]v2 | -m[arm]v2a | -m[arm]v3 | -m[arm]v3m | -m[arm]v4 | -m[arm]v4t |
-   -m[arm]v5 | -[arm]v5t | -[arm]v5te ]
+ [ -m[arm]v2 | -m[arm]v2a | -m[arm]v3 | -m[arm]v3m |
+   -m[arm]v4 | -m[arm]v4t | -m[arm]v5 | -[arm]v5t |
+   -[arm]v5te ]
  [ -mthumb | -mall ]
  [ -mfpa10 | -mfpa11 | -mfpe-old | -mno-fpu ]
  [ -EB | -EL ]
- [ -mapcs-32 | -mapcs-26 | -mapcs-float | -mapcs-reentrant ]
- [ -mthumb-interwork ]
- [ -moabi ]
- [ -k ]
+ [ -mapcs-32 | -mapcs-26 | -mapcs-float |
+   -mapcs-reentrant ]
+ [ -mthumb-interwork ] [ -moabi ] [ -k ]
 @end ifset
 @ifset D10V
  [ -O ]
@@ -247,7 +291,8 @@ Here is a brief summary of how to invoke
 @c The order here is important.  See c-sparc.texi.
  [ -Av6 | -Av7 | -Av8 | -Asparclet | -Asparclite
    -Av8plus | -Av8plusa | -Av9 | -Av9a ]
- [ -xarch=v8plus | -xarch=v8plusa ] [ -bump ] [ -32 | -64 ]
+ [ -xarch=v8plus | -xarch=v8plusa ] [ -bump ]
+ [ -32 | -64 ]
 @end ifset
 @ifset TIC54X
  [ -mcpu=54[123589] | -mcpu=54[56]lp ] [ -mfar-mode | -mf ] 
@@ -258,11 +303,13 @@ Here is a brief summary of how to invoke
 @end ifset
 @ifset I960
 @c see md_parse_option in tc-i960.c
- [ -ACA | -ACA_A | -ACB | -ACC | -AKA | -AKB | -AKC | -AMC ]
+ [ -ACA | -ACA_A | -ACB | -ACC | -AKA | -AKB |
+   -AKC | -AMC ]
  [ -b ] [ -no-relax ]
 @end ifset
 @ifset M32R
- [ --m32rx | --[no-]warn-explicit-parallel-conflicts | --W[n]p ]
+ [ --m32rx | --[no-]warn-explicit-parallel-conflicts |
+   --W[n]p ]
 @end ifset
 @ifset M680X0
  [ -l ] [ -m68000 | -m68010 | -m68020 | ... ]
@@ -273,8 +320,9 @@ Here is a brief summary of how to invoke
 @end ifset
 @ifset M68HC11
  [ -m68hc11 | -m68hc12 ]
- [ --force-long-branchs ] [ --short-branchs ] [ --strict-direct-mode ]
- [ --print-insn-syntax ] [ --print-opcodes ] [ --generate-example ]
+ [ --force-long-branchs ] [ --short-branchs ]
+ [ --strict-direct-mode ] [ --print-insn-syntax ]
+ [ --print-opcodes ] [ --generate-example ]
 @end ifset
 @ifset MIPS
  [ -nocpp ] [ -EL ] [ -EB ] [ -G @var{num} ] [ -mcpu=@var{CPU} ]
@@ -285,13 +333,16 @@ Here is a brief summary of how to invoke
  [ --emulation=@var{name} ]
 @end ifset
  [ -- | @var{files} @dots{} ]
+@c man end
 @end smallexample
 
-@table @code
+@c man begin OPTIONS
+
+@table @env
 @item -a[cdhlmns]
 Turn on listings, in any of a variety of ways:
 
-@table @code
+@table @env
 @item -ac
 omit false conditionals
 
@@ -370,7 +421,7 @@ these start with @samp{L}, but different
 label prefixes.
 
 @item -o @var{objfile}
-Name the object-file output from @code{@value{AS}} @var{objfile}.
+Name the object-file output from @command{@value{AS}} @var{objfile}.
 
 @item -R
 Fold the data section into the text section.
@@ -384,10 +435,10 @@ Remove local absolute symbols from the o
 
 @item -v
 @itemx -version
-Print the @code{as} version.
+Print the @command{as} version.
 
 @item --version
-Print the @code{as} version and exit.
+Print the @command{as} version and exit.
 
 @item -W
 @itemx --no-warn
@@ -417,7 +468,7 @@ Standard input, or source files to assem
 The following options are available when @value{AS} is configured for
 an ARC processor.
 
-@table @code
+@table @env
 @item -marc[5|6|7|8]
 This option selects the core processor variant.
 @item -EB | -EL
@@ -429,7 +480,7 @@ Select either big-endian (-EB) or little
 The following options are available when @value{AS} is configured for the ARM
 processor family.
 
-@table @code
+@table @env
 @item -m[arm][1|2|3|6|7|8|9][...] 
 Specify which ARM processor variant is the target.
 @item -m[arm]v[2|2a|3|3m|4|4t|5|5t]
@@ -453,7 +504,7 @@ Specify that PIC code has been generated
 @ifset D10V
 The following options are available when @value{AS} is configured for
 a D10V processor.
-@table @code
+@table @env
 @cindex D10V optimization
 @cindex optimization, D10V
 @item -O
@@ -464,7 +515,7 @@ Optimize output by parallelizing instruc
 @ifset D30V
 The following options are available when @value{AS} is configured for a D30V
 processor.
-@table @code
+@table @env
 @cindex D30V optimization
 @cindex optimization, D30V
 @item -O
@@ -484,7 +535,7 @@ Warn when a nop after a 32-bit multiply 
 The following options are available when @value{AS} is configured for the
 Intel 80960 processor.
 
-@table @code
+@table @env
 @item -ACA | -ACA_A | -ACB | -ACC | -AKA | -AKB | -AKC | -AMC
 Specify which variant of the 960 architecture is the target.
 
@@ -502,7 +553,7 @@ error if necessary.
 The following options are available when @value{AS} is configured for the
 Mitsubishi M32R series.
 
-@table @code
+@table @env
 
 @item --m32rx
 Specify which processor in the M32R family is the target.  The default
@@ -523,13 +574,14 @@ encountered. 
 The following options are available when @value{AS} is configured for the
 Motorola 68000 series.
 
-@table @code
+@table @env
 
 @item -l
 Shorten references to undefined symbols, to one word instead of two.
 
-@item -m68000 | -m68008 | -m68010 | -m68020 | -m68030 | -m68040 | -m68060
-@itemx | -m68302 | -m68331 | -m68332 | -m68333 | -m68340 | -mcpu32 | -m5200
+@item -m68000 | -m68008 | -m68010 | -m68020 | -m68030
+@itemx | -m68040 | -m68060 | -m68302 | -m68331 | -m68332
+@itemx | -m68333 | -m68340 | -mcpu32 | -m5200
 Specify what processor in the 68000 family is the target.  The default
 is normally the 68020, but this can be changed at configuration time.
 
@@ -551,7 +603,7 @@ unit coprocessor.  The default is to ass
 The following options are available when @value{AS} is configured for
 a picoJava processor.
 
-@table @code
+@table @env
 
 @cindex PJ endianness
 @cindex endianness, PJ
@@ -570,7 +622,7 @@ Generate ``little endian'' format output
 The following options are available when @value{AS} is configured for the
 Motorola 68HC11 or 68HC12 series.
 
-@table @code
+@table @env
 
 @item -m68hc11 | -m68hc12
 Specify what processor is the target.  The default is
@@ -597,16 +649,16 @@ print the list of instructions with synt
 
 @item --generate-example
 print an example of instruction for each possible instruction and then exit.
-This option is only useful for testing @code{@value{AS}}.
+This option is only useful for testing @command{@value{AS}}.
 
 @end table
 @end ifset
 
 @ifset SPARC
-The following options are available when @code{@value{AS}} is configured
+The following options are available when @command{@value{AS}} is configured
 for the SPARC architecture:
 
-@table @code
+@table @env
 @item -Av6 | -Av7 | -Av8 | -Asparclet | -Asparclite
 @itemx -Av8plus | -Av8plusa | -Av9 | -Av9a
 Explicitly select a variant of the SPARC architecture.
@@ -630,7 +682,7 @@ Warn when the assembler switches to anot
 The following options are available when @value{AS} is configured for the 'c54x
 architecture. 
 
-@table @code
+@table @env
 @item -mfar-mode
 Enable extended addressing mode.  All addresses and relocations will assume
 extended addressing (usually 23 bits).
@@ -646,7 +698,7 @@ behaviour in the shell.
 The following options are available when @value{AS} is configured for
 a MIPS processor.
 
-@table @code
+@table @env
 @item -G @var{num}
 This option sets the largest size of an object that can be referenced
 implicitly with the @code{gp} register.  It is only accepted for targets that
@@ -690,7 +742,7 @@ understood.
 
 @cindex emulation
 @item --emulation=@var{name}
-This option causes @code{@value{AS}} to emulate @code{@value{AS}} configured
+This option causes @command{@value{AS}} to emulate @command{@value{AS}} configured
 for some other target, in all respects, including output format (choosing
 between ELF and ECOFF only), handling of pseudo-opcodes which may generate
 debugging information or store symbol table information, and default
@@ -703,7 +755,7 @@ in the name.  Using @samp{-EB} or @samp{
 selection in any case.
 
 This option is currently supported only when the primary target
-@code{@value{AS}} is configured for is a MIPS ELF or ECOFF target.
+@command{@value{AS}} is configured for is a MIPS ELF or ECOFF target.
 Furthermore, the primary target or others specified with
 @samp{--enable-targets=@dots{}} at configuration time must include support for
 the other format, if both are to be available.  For example, the Irix 5
@@ -714,7 +766,7 @@ fine-grained control over the assembler'
 more processors.
 
 @item -nocpp
-@code{@value{AS}} ignores this option.  It is accepted for compatibility with
+@command{@value{AS}} ignores this option.  It is accepted for compatibility with
 the native tools.
 
 @need 900
@@ -734,7 +786,7 @@ break exception.
 The following options are available when @value{AS} is configured for
 an MCore processor.
 
-@table @code
+@table @env
 @item -jsri2bsr
 @itemx -nojsri2bsr
 Enable or disable the JSRI to BSR transformation.  By default this is enabled.
@@ -761,6 +813,8 @@ Assemble for a little endian target.
 @end table
 @end ifset
 
+@c man end
+
 @menu
 * Manual::                      Structure of this Manual
 * GNU Assembler::               The GNU Assembler
@@ -776,13 +830,13 @@ Assemble for a little endian target.
 
 @cindex manual, structure and purpose
 This manual is intended to describe what you need to know to use
-@sc{gnu} @code{@value{AS}}.  We cover the syntax expected in source files, including
+@sc{gnu} @command{@value{AS}}.  We cover the syntax expected in source files, including
 notation for symbols, constants, and expressions; the directives that
-@code{@value{AS}} understands; and of course how to invoke @code{@value{AS}}.
+@command{@value{AS}} understands; and of course how to invoke @command{@value{AS}}.
 
 @ifclear GENERIC
 We also cover special features in the @value{TARGET}
-configuration of @code{@value{AS}}, including assembler directives.
+configuration of @command{@value{AS}}, including assembler directives.
 @end ifclear
 @ifset GENERIC
 This manual also describes some of the machine-dependent features of
@@ -828,10 +882,10 @@ computer (in particular, the kinds of co
 once this assumption is granted examples and definitions need less
 qualification.
 
-@code{@value{AS}} is part of a team of programs that turn a high-level
+@command{@value{AS}} is part of a team of programs that turn a high-level
 human-readable series of instructions into a low-level
 computer-readable series of instructions.  Different versions of
-@code{@value{AS}} are used for different kinds of computer.
+@command{@value{AS}} are used for different kinds of computer.
 @end ignore
 
 @c There used to be a section "Terminology" here, which defined
@@ -846,9 +900,11 @@ computer-readable series of instructions
 @node GNU Assembler
 @section The GNU Assembler
 
-@sc{gnu} @code{as} is really a family of assemblers.
+@c man begin DESCRIPTION
+
+@sc{gnu} @command{as} is really a family of assemblers.
 @ifclear GENERIC
-This manual describes @code{@value{AS}}, a member of that family which is
+This manual describes @command{@value{AS}}, a member of that family which is
 configured for the @value{TARGET} architectures.
 @end ifclear
 If you use (or have used) the @sc{gnu} assembler on one architecture, you
@@ -858,9 +914,9 @@ including object file formats, most asse
 @dfn{pseudo-ops}) and assembler syntax.@refill
 
 @cindex purpose of @sc{gnu} assembler
-@code{@value{AS}} is primarily intended to assemble the output of the
-@sc{gnu} C compiler @code{@value{GCC}} for use by the linker
-@code{@value{LD}}.  Nevertheless, we've tried to make @code{@value{AS}}
+@command{@value{AS}} is primarily intended to assemble the output of the
+@sc{gnu} C compiler @command{@value{GCC}} for use by the linker
+@command{@value{LD}}.  Nevertheless, we've tried to make @command{@value{AS}}
 assemble correctly everything that other assemblers for the same
 machine would assemble.
 @ifset VAX
@@ -869,12 +925,14 @@ Any exceptions are documented explicitly
 @ifset M680X0
 @c This remark should appear in generic version of manual; assumption
 @c here is that generic version sets M680x0.
-This doesn't mean @code{@value{AS}} always uses the same syntax as another
+This doesn't mean @command{@value{AS}} always uses the same syntax as another
 assembler for the same architecture; for example, we know of several
 incompatible versions of 680x0 assembly language syntax.
 @end ifset
 
-Unlike older assemblers, @code{@value{AS}} is designed to assemble a source
+@c man end
+
+Unlike older assemblers, @command{@value{AS}} is designed to assemble a source
 program in one pass of the source file.  This has a subtle impact on the
 @kbd{.org} directive (@pxref{Org,,@code{.org}}).
 
@@ -889,20 +947,20 @@ are typically different in different fil
 Attributes,,Symbol Attributes}.
 @ifclear GENERIC
 @ifclear MULTI-OBJ
-On the @value{TARGET}, @code{@value{AS}} is configured to produce
+On the @value{TARGET}, @command{@value{AS}} is configured to produce
 @value{OBJ-NAME} format object files.
 @end ifclear
 @c The following should exhaust all configs that set MULTI-OBJ, ideally
 @ifset A29K
-On the @value{TARGET}, @code{@value{AS}} can be configured to produce either
+On the @value{TARGET}, @command{@value{AS}} can be configured to produce either
 @code{a.out} or COFF format object files.
 @end ifset
 @ifset I960
-On the @value{TARGET}, @code{@value{AS}} can be configured to produce either
+On the @value{TARGET}, @command{@value{AS}} can be configured to produce either
 @code{b.out} or COFF format object files.
 @end ifset
 @ifset HPPA
-On the @value{TARGET}, @code{@value{AS}} can be configured to produce either
+On the @value{TARGET}, @command{@value{AS}} can be configured to produce either
 SOM or ELF format object files.
 @end ifset
 @end ifclear
@@ -911,7 +969,8 @@ SOM or ELF format object files.
 @section Command Line
 
 @cindex command line conventions
-After the program name @code{@value{AS}}, the command line may contain
+
+After the program name @command{@value{AS}}, the command line may contain
 options and file names.  Options may appear in any order, and may be
 before, after, or between file names.  The order of file names is
 significant.
@@ -919,12 +978,12 @@ significant.
 @cindex standard input, as input file
 @kindex --
 @file{--} (two hyphens) by itself names the standard input file
-explicitly, as one of the files for @code{@value{AS}} to assemble.
+explicitly, as one of the files for @command{@value{AS}} to assemble.
 
 @cindex options, command line
 Except for @samp{--} any command line argument that begins with a
 hyphen (@samp{-}) is an option.  Each option changes the behavior of
-@code{@value{AS}}.  No option changes the way another option works.  An
+@command{@value{AS}}.  No option changes the way another option works.  An
 option is a @samp{-} followed by one or more letters; the case of
 the letter is important.   All options are optional.
 
@@ -945,7 +1004,7 @@ standard).  These two command lines are 
 @cindex source program
 @cindex files, input
 We use the phrase @dfn{source program}, abbreviated @dfn{source}, to
-describe the program input to one run of @code{@value{AS}}.  The program may
+describe the program input to one run of @command{@value{AS}}.  The program may
 be in one or more files; how the source is partitioned into files
 doesn't change the meaning of the source.
 
@@ -954,26 +1013,29 @@ doesn't change the meaning of the source
 The source program is a concatenation of the text in all the files, in the
 order specified.
 
-Each time you run @code{@value{AS}} it assembles exactly one source
+@c man begin DESCRIPTION
+Each time you run @command{@value{AS}} it assembles exactly one source
 program.  The source program is made up of one or more files.
 (The standard input is also a file.)
 
-You give @code{@value{AS}} a command line that has zero or more input file
+You give @command{@value{AS}} a command line that has zero or more input file
 names.  The input files are read (from left file name to right).  A
 command line argument (in any position) that has no special meaning
 is taken to be an input file name.
 
-If you give @code{@value{AS}} no file names it attempts to read one input file
-from the @code{@value{AS}} standard input, which is normally your terminal.  You
-may have to type @key{ctl-D} to tell @code{@value{AS}} there is no more program
+If you give @command{@value{AS}} no file names it attempts to read one input file
+from the @command{@value{AS}} standard input, which is normally your terminal.  You
+may have to type @key{ctl-D} to tell @command{@value{AS}} there is no more program
 to assemble.
 
 Use @samp{--} if you need to explicitly name the standard input file
 in your command line.
 
-If the source is empty, @code{@value{AS}} produces a small, empty object
+If the source is empty, @command{@value{AS}} produces a small, empty object
 file.
 
+@c man end
+
 @subheading Filenames and Line-numbers
 
 @cindex input file linenumbers
@@ -984,13 +1046,13 @@ number in a physical file; the other ref
 ``logical'' file.  @xref{Errors, ,Error and Warning Messages}.
 
 @dfn{Physical files} are those files named in the command line given
-to @code{@value{AS}}.
+to @command{@value{AS}}.
 
 @dfn{Logical files} are simply names declared explicitly by assembler
 directives; they bear no relation to physical files.  Logical file names help
-error messages reflect the original source file, when @code{@value{AS}} source
-is itself synthesized from other files.  @code{@value{AS}} understands the
-@samp{#} directives emitted by the @code{@value{GCC}} preprocessor.  See also
+error messages reflect the original source file, when @command{@value{AS}} source
+is itself synthesized from other files.  @command{@value{AS}} understands the
+@samp{#} directives emitted by the @command{@value{GCC}} preprocessor.  See also
 @ref{File,,@code{.file}}.
 
 @node Object
@@ -1000,7 +1062,7 @@ is itself synthesized from other files. 
 @cindex output file
 @kindex a.out
 @kindex .o
-Every time you run @code{@value{AS}} it produces an output file, which is
+Every time you run @command{@value{AS}} it produces an output file, which is
 your assembly language program translated into numbers.  This file
 is the object file.  Its default name is
 @ifclear BOUT
@@ -1010,9 +1072,9 @@ is the object file.  Its default name is
 @ifset GENERIC
 @code{a.out}, or 
 @end ifset
-@code{b.out} when @code{@value{AS}} is configured for the Intel 80960.
+@code{b.out} when @command{@value{AS}} is configured for the Intel 80960.
 @end ifset
-You can give it another name by using the @code{-o} option.  Conventionally,
+You can give it another name by using the @option{-o} option.  Conventionally,
 object file names end with @file{.o}.  The default name is used for historical
 reasons: older assemblers were capable of assembling self-contained programs
 directly into a runnable program.  (For some formats, this isn't currently
@@ -1020,8 +1082,8 @@ possible, but it can be done for the @co
 
 @cindex linker
 @kindex ld
-The object file is meant for input to the linker @code{@value{LD}}.  It contains
-assembled program code, information to help @code{@value{LD}} integrate
+The object file is meant for input to the linker @command{@value{LD}}.  It contains
+assembled program code, information to help @command{@value{LD}} integrate
 the assembled program into a runnable file, and (optionally) symbolic
 information for the debugger.
 
@@ -1031,15 +1093,19 @@ information for the debugger.
 @node Errors
 @section Error and Warning Messages
 
+@c man begin DESCRIPTION
+
 @cindex error messages
 @cindex warning messages
 @cindex messages from assembler
-@code{@value{AS}} may write warnings and error messages to the standard error
+@command{@value{AS}} may write warnings and error messages to the standard error
 file (usually your terminal).  This should not happen when  a compiler
-runs @code{@value{AS}} automatically.  Warnings report an assumption made so
-that @code{@value{AS}} could keep assembling a flawed program; errors report a
+runs @command{@value{AS}} automatically.  Warnings report an assumption made so
+that @command{@value{AS}} could keep assembling a flawed program; errors report a
 grave problem that stops the assembly.
 
+@c man end
+
 @cindex format of warning messages
 Warning messages have the format
 
@@ -1090,7 +1156,9 @@ to the @value{TARGET}.
 to particular machine architectures.
 @end ifset
 
-If you are invoking @code{@value{AS}} via the @sc{gnu} C compiler (version 2),
+@c man begin DESCRIPTION
+
+If you are invoking @command{@value{AS}} via the @sc{gnu} C compiler (version 2),
 you can use the @samp{-Wa} option to pass arguments through to the assembler.
 The assembler arguments must be separated from each other (and the @samp{-Wa})
 by commas.  For example:
@@ -1110,6 +1178,8 @@ command-line options are automatically p
 precisely what options it passes to each compilation pass, including the
 assembler.)
 
+@c man end
+
 @menu
 * a::             -a[cdhlns] enable listings
 * D::             -D for compatibility
@@ -1135,7 +1205,7 @@ assembler.)
 @end menu
 
 @node a
-@section Enable Listings: @code{-a[cdhlns]}
+@section Enable Listings: @option{-a[cdhlns]}
 
 @kindex -a
 @kindex -ac
@@ -1177,19 +1247,19 @@ The letters after @samp{-a} may be combi
 @emph{e.g.}, @samp{-aln}.
 
 @node D
-@section @code{-D}
+@section @option{-D}
 
 @kindex -D
 This option has no effect whatsoever, but it is accepted to make it more
 likely that scripts written for other assemblers also work with
-@code{@value{AS}}.
+@command{@value{AS}}.
 
 @node f
-@section Work Faster: @code{-f}
+@section Work Faster: @option{-f}
 
 @kindex -f
 @cindex trusted compiler
-@cindex faster processing (@code{-f})
+@cindex faster processing (@option{-f})
 @samp{-f} should only be used when assembling programs written by a
 (trusted) compiler.  @samp{-f} stops the assembler from doing whitespace
 and comment preprocessing on
@@ -1198,27 +1268,27 @@ the input file(s) before assembling them
 
 @quotation
 @emph{Warning:} if you use @samp{-f} when the files actually need to be
-preprocessed (if they contain comments, for example), @code{@value{AS}} does
+preprocessed (if they contain comments, for example), @command{@value{AS}} does
 not work correctly.
 @end quotation
 
 @node I
-@section @code{.include} search path: @code{-I} @var{path}
+@section @code{.include} search path: @option{-I} @var{path}
 
 @kindex -I @var{path}
 @cindex paths for @code{.include}
 @cindex search path for @code{.include}
 @cindex @code{include} directive search path
 Use this option to add a @var{path} to the list of directories
-@code{@value{AS}} searches for files specified in @code{.include}
-directives (@pxref{Include,,@code{.include}}).  You may use @code{-I} as
+@command{@value{AS}} searches for files specified in @code{.include}
+directives (@pxref{Include,,@code{.include}}).  You may use @option{-I} as
 many times as necessary to include a variety of paths.  The current
-working directory is always searched first; after that, @code{@value{AS}}
+working directory is always searched first; after that, @command{@value{AS}}
 searches any @samp{-I} directories in the same order as they were
 specified (left to right) on the command line.
 
 @node K
-@section Difference Tables: @code{-K}
+@section Difference Tables: @option{-K}
 
 @kindex -K
 @ifclear DIFF-TBL-KLUGE
@@ -1233,14 +1303,14 @@ alteration on other platforms.
 @ifset DIFF-TBL-KLUGE
 @cindex difference tables, warning
 @cindex warning for altered difference tables
-@code{@value{AS}} sometimes alters the code emitted for directives of the form
+@command{@value{AS}} sometimes alters the code emitted for directives of the form
 @samp{.word @var{sym1}-@var{sym2}}; @pxref{Word,,@code{.word}}.
 You can use the @samp{-K} option if you want a warning issued when this
 is done.
 @end ifset
 
 @node L
-@section Include Local Labels: @code{-L}
+@section Include Local Labels: @option{-L}
 
 @kindex -L
 @cindex local labels, retaining in output
@@ -1248,12 +1318,12 @@ Labels beginning with @samp{L} (upper ca
 labels}. @xref{Symbol Names}.  Normally you do not see such labels when
 debugging, because they are intended for the use of programs (like
 compilers) that compose assembler programs, not for your notice.
-Normally both @code{@value{AS}} and @code{@value{LD}} discard such labels, so you do not
+Normally both @command{@value{AS}} and @command{@value{LD}} discard such labels, so you do not
 normally debug with them.
 
-This option tells @code{@value{AS}} to retain those @samp{L@dots{}} symbols
+This option tells @command{@value{AS}} to retain those @samp{L@dots{}} symbols
 in the object file.  Usually if you do this you also tell the linker
-@code{@value{LD}} to preserve symbols whose names begin with @samp{L}.
+@command{@value{LD}} to preserve symbols whose names begin with @samp{L}.
 
 By default, a local label is any label beginning with @samp{L}, but each
 target is allowed to redefine the local label prefix.
@@ -1262,18 +1332,18 @@ On the HPPA local labels begin with @sam
 @end ifset
 
 @node M
-@section Assemble in MRI Compatibility Mode: @code{-M}
+@section Assemble in MRI Compatibility Mode: @option{-M}
 
 @kindex -M
 @cindex MRI compatibility mode
-The @code{-M} or @code{--mri} option selects MRI compatibility mode.  This
-changes the syntax and pseudo-op handling of @code{@value{AS}} to make it
+The @option{-M} or @option{--mri} option selects MRI compatibility mode.  This
+changes the syntax and pseudo-op handling of @command{@value{AS}} to make it
 compatible with the @code{ASM68K} or the @code{ASM960} (depending upon the
 configured target) assembler from Microtec Research.  The exact nature of the
 MRI syntax will not be documented here; see the MRI manuals for more
 information.  Note in particular that the handling of macros and macro
 arguments is somewhat different.  The purpose of this option is to permit
-assembling existing MRI assembler code using @code{@value{AS}}.
+assembling existing MRI assembler code using @command{@value{AS}}.
 
 The MRI compatibility is not complete.  Certain operations of the MRI assembler
 depend upon its object file format, and can not be supported using other object
@@ -1284,7 +1354,7 @@ individually.  These are:
 @item global symbols in common section
 
 The m68k MRI assembler supports common sections which are merged by the linker.
-Other object file formats do not support this.  @code{@value{AS}} handles
+Other object file formats do not support this.  @command{@value{AS}} handles
 common sections by treating them as a single common symbol.  It permits local
 symbols to be defined within a common section, but it can not support global
 symbols, since it has no way to describe them.
@@ -1299,7 +1369,7 @@ are not support by other object file for
 
 The MRI @code{END} pseudo-op permits the specification of a start address.
 This is not supported by other object file formats.  The start address may
-instead be specified using the @code{-e} option to the linker, or in a linker
+instead be specified using the @option{-e} option to the linker, or in a linker
 script.
 
 @item @code{IDNT}, @code{.ident} and @code{NAME} pseudo-ops
@@ -1310,14 +1380,14 @@ name to the output file.  This is not su
 @item @code{ORG} pseudo-op
 
 The m68k MRI @code{ORG} pseudo-op begins an absolute section at a given
-address.  This differs from the usual @code{@value{AS}} @code{.org} pseudo-op,
+address.  This differs from the usual @command{@value{AS}} @code{.org} pseudo-op,
 which changes the location within the current section.  Absolute sections are
 not supported by other object file formats.  The address of a section may be
 assigned within a linker script.
 @end itemize
 
 There are some other features of the MRI assembler which are not supported by
-@code{@value{AS}}, typically either because they are difficult or because they
+@command{@value{AS}}, typically either because they are difficult or because they
 seem of little consequence.  Some of these may be supported in future releases.
 
 @itemize @bullet
@@ -1342,7 +1412,7 @@ The m68k @code{NOOBJ} pseudo-op is not s
 @item @code{OPT} branch control options
 
 The m68k @code{OPT} branch control options---@code{B}, @code{BRS}, @code{BRB},
-@code{BRL}, and @code{BRW}---are ignored.  @code{@value{AS}} automatically
+@code{BRL}, and @code{BRW}---are ignored.  @command{@value{AS}} automatically
 relaxes all branches, whether forward or backward, to an appropriate size, so
 these options serve no purpose.
 
@@ -1393,13 +1463,13 @@ The i960 @code{.setreal} pseudo-op is no
 @end itemize
 
 @node MD
-@section Dependency tracking: @code{--MD}
+@section Dependency tracking: @option{--MD}
 
 @kindex --MD
 @cindex dependency tracking
 @cindex make rules
 
-@code{@value{AS}} can generate a dependency file for the file it creates.  This
+@command{@value{AS}} can generate a dependency file for the file it creates.  This
 file consists of a single rule suitable for @code{make} describing the
 dependencies of the main source file.
 
@@ -1408,12 +1478,12 @@ The rule is written to the file named in
 This feature is used in the automatic updating of makefiles.
 
 @node o
-@section Name the Object File: @code{-o}
+@section Name the Object File: @option{-o}
 
 @kindex -o
 @cindex naming object file
 @cindex object file name
-There is always one object file output when you run @code{@value{AS}}.  By
+There is always one object file output when you run @command{@value{AS}}.  By
 default it has the name
 @ifset GENERIC
 @ifset I960
@@ -1434,65 +1504,65 @@ default it has the name
 You use this option (which takes exactly one filename) to give the
 object file a different name.
 
-Whatever the object file is called, @code{@value{AS}} overwrites any
+Whatever the object file is called, @command{@value{AS}} overwrites any
 existing file of the same name.
 
 @node R
-@section Join Data and Text Sections: @code{-R}
+@section Join Data and Text Sections: @option{-R}
 
 @kindex -R
 @cindex data and text sections, joining
 @cindex text and data sections, joining
 @cindex joining text and data sections
 @cindex merging text and data sections
-@code{-R} tells @code{@value{AS}} to write the object file as if all
+@option{-R} tells @command{@value{AS}} to write the object file as if all
 data-section data lives in the text section.  This is only done at
 the very last moment:  your binary data are the same, but data
 section parts are relocated differently.  The data section part of
 your object file is zero bytes long because all its bytes are
 appended to the text section.  (@xref{Sections,,Sections and Relocation}.)
 
-When you specify @code{-R} it would be possible to generate shorter
+When you specify @option{-R} it would be possible to generate shorter
 address displacements (because we do not have to cross between text and
 data section).  We refrain from doing this simply for compatibility with
-older versions of @code{@value{AS}}.  In future, @code{-R} may work this way.
+older versions of @command{@value{AS}}.  In future, @option{-R} may work this way.
 
 @ifset COFF
-When @code{@value{AS}} is configured for COFF output,
+When @command{@value{AS}} is configured for COFF output,
 this option is only useful if you use sections named @samp{.text} and
 @samp{.data}.
 @end ifset
 
 @ifset HPPA
-@code{-R} is not supported for any of the HPPA targets.  Using
-@code{-R} generates a warning from @code{@value{AS}}.
+@option{-R} is not supported for any of the HPPA targets.  Using
+@option{-R} generates a warning from @command{@value{AS}}.
 @end ifset
 
 @node statistics
-@section Display Assembly Statistics: @code{--statistics}
+@section Display Assembly Statistics: @option{--statistics}
 
 @kindex --statistics
 @cindex statistics, about assembly
 @cindex time, total for assembly
 @cindex space used, maximum for assembly
 Use @samp{--statistics} to display two statistics about the resources used by
-@code{@value{AS}}: the maximum amount of space allocated during the assembly
+@command{@value{AS}}: the maximum amount of space allocated during the assembly
 (in bytes), and the total execution time taken for the assembly (in @sc{cpu}
 seconds).
 
 @node traditional-format
-@section Compatible output: @code{--traditional-format}
+@section Compatible output: @option{--traditional-format}
 
 @kindex --traditional-format
-For some targets, the output of @code{@value{AS}} is different in some ways
+For some targets, the output of @command{@value{AS}} is different in some ways
 from the output of some existing assembler.  This switch requests
-@code{@value{AS}} to use the traditional format instead.
+@command{@value{AS}} to use the traditional format instead.
 
 For example, it disables the exception frame optimizations which
-@code{@value{AS}} normally does by default on @code{@value{GCC}} output.
+@command{@value{AS}} normally does by default on @command{@value{GCC}} output.
 
 @node v
-@section Announce Version: @code{-v}
+@section Announce Version: @option{-v}
 
 @kindex -v
 @kindex -version
@@ -1503,41 +1573,41 @@ option @samp{-v} (which you can also spe
 command line.
 
 @node W
-@section Control Warnings: @code{-W}, @code{--warn}, @code{--no-warn}, @code{--fatal-warnings}
+@section Control Warnings: @option{-W}, @option{--warn}, @option{--no-warn}, @option{--fatal-warnings}
 
-@code{@value{AS}} should never give a warning or error message when
+@command{@value{AS}} should never give a warning or error message when
 assembling compiler output.  But programs written by people often
-cause @code{@value{AS}} to give a warning that a particular assumption was
+cause @command{@value{AS}} to give a warning that a particular assumption was
 made.  All such warnings are directed to the standard error file.
 
 @kindex @samp{-W}
 @kindex @samp{--no-warn}
 @cindex suppressing warnings
 @cindex warnings, suppressing
-If you use the @code{-W} and @code{--no-warn} options, no warnings are issued.
+If you use the @option{-W} and @option{--no-warn} options, no warnings are issued.
 This only affects the warning messages: it does not change any particular of
-how @code{@value{AS}} assembles your file.  Errors, which stop the assembly,
+how @command{@value{AS}} assembles your file.  Errors, which stop the assembly,
 are still reported.
 
 @kindex @samp{--fatal-warnings}
 @cindex errors, caused by warnings
 @cindex warnings, causing error
-If you use the @code{--fatal-warnings} option, @code{@value{AS}} considers
+If you use the @option{--fatal-warnings} option, @command{@value{AS}} considers
 files that generate warnings to be in error.
 
 @kindex @samp{--warn}
 @cindex warnings, switching on
-You can switch these options off again by specifying @code{--warn}, which
+You can switch these options off again by specifying @option{--warn}, which
 causes warnings to be output as usual.
 
 @node Z
-@section Generate Object File in Spite of Errors: @code{-Z}
+@section Generate Object File in Spite of Errors: @option{-Z}
 @cindex object file, after errors
 @cindex errors, continuing after
-After an error message, @code{@value{AS}} normally produces no output.  If for
+After an error message, @command{@value{AS}} normally produces no output.  If for
 some reason you are interested in object file output even after
-@code{@value{AS}} gives an error message on your program, use the @samp{-Z}
-option.  If there are any errors, @code{@value{AS}} continues anyways, and
+@command{@value{AS}} gives an error message on your program, use the @samp{-Z}
+option.  If there are any errors, @command{@value{AS}} continues anyways, and
 writes an object file after a final warning message of the form @samp{@var{n}
 errors, @var{m} warnings, generating bad object file.}
 
@@ -1547,13 +1617,13 @@ errors, @var{m} warnings, generating bad
 @cindex machine-independent syntax
 @cindex syntax, machine-independent
 This chapter describes the machine-independent syntax allowed in a
-source file.  @code{@value{AS}} syntax is similar to what many other
+source file.  @command{@value{AS}} syntax is similar to what many other
 assemblers use; it is inspired by the BSD 4.2
 @ifclear VAX
 assembler.
 @end ifclear
 @ifset VAX
-assembler, except that @code{@value{AS}} does not assemble Vax bit-fields.
+assembler, except that @command{@value{AS}} does not assemble Vax bit-fields.
 @end ifset
 
 @menu
@@ -1569,7 +1639,7 @@ assembler, except that @code{@value{AS}}
 @section Preprocessing
 
 @cindex preprocessing
-The @code{@value{AS}} internal preprocessor:
+The @command{@value{AS}} internal preprocessor:
 @itemize @bullet
 @cindex whitespace, removed by preprocessor
 @item
@@ -1626,7 +1696,7 @@ as exactly one space.
 @section Comments
 
 @cindex comments
-There are two ways of rendering comments to @code{@value{AS}}.  In both
+There are two ways of rendering comments to @command{@value{AS}}.  In both
 cases the comment is equivalent to one space.
 
 Anything from @samp{/*} through the next @samp{*/} is a comment.
@@ -1729,7 +1799,7 @@ the line is ignored.  (Just like a comme
                           # This is logical line # 36.
 @end smallexample
 This feature is deprecated, and may disappear from future versions
-of @code{@value{AS}}.
+of @command{@value{AS}}.
 
 @node Symbol Intro
 @section Symbols
@@ -1827,7 +1897,7 @@ directive: typically valid for any compu
 a letter the statement is an assembly language @dfn{instruction}: it
 assembles into a machine language instruction.
 @ifset GENERIC
-Different versions of @code{@value{AS}} for different computers
+Different versions of @command{@value{AS}} for different computers
 recognize different instructions.  In fact, the same symbol may
 represent a different instruction in a different computer's assembly
 language.@refill
@@ -1898,8 +1968,8 @@ double-quotes or null characters.  The w
 into a string is to @dfn{escape} these characters: precede them with
 a backslash @samp{\} character.  For example @samp{\\} represents
 one backslash:  the first @code{\} is an escape which tells
-@code{@value{AS}} to interpret the second character literally as a backslash
-(which prevents @code{@value{AS}} from recognizing the second @code{\} as an
+@command{@value{AS}} to interpret the second character literally as a backslash
+(which prevents @command{@value{AS}} from recognizing the second @code{\} as an
 escape character).  The complete list of escapes follows.
 
 @cindex escape codes, character
@@ -1982,8 +2052,8 @@ this character, because an unescaped @sa
 Any other character when escaped by @kbd{\} gives a warning, but
 assembles as if the @samp{\} was not present.  The idea is that if
 you used an escape sequence you clearly didn't want the literal
-interpretation of the following character.  However @code{@value{AS}} has no
-other interpretation, so @code{@value{AS}} knows it is giving you the wrong
+interpretation of the following character.  However @command{@value{AS}} has no
+other interpretation, so @command{@value{AS}} knows it is giving you the wrong
 code and warns you of the fact.
 @end table
 
@@ -2023,7 +2093,7 @@ H8/500)
 immediately following an acute accent is taken as a literal character
 and does not count as the end of a statement.  The value of a character
 constant in a numeric expression is the machine's byte-wide code for
-that character.  @code{@value{AS}} assumes your character code is ASCII:
+that character.  @command{@value{AS}} assumes your character code is ASCII:
 @kbd{'A} means 65, @kbd{'B} means 66, and so on. @refill
 
 @node Numbers
@@ -2031,7 +2101,7 @@ that character.  @code{@value{AS}} assum
 
 @cindex constants, number
 @cindex number constants
-@code{@value{AS}} distinguishes three kinds of numbers according to how they
+@command{@value{AS}} distinguishes three kinds of numbers according to how they
 are stored in the target machine.  @emph{Integers} are numbers that
 would fit into an @code{int} in the C language.  @emph{Bignums} are
 integers, but they are stored in more than 32 bits.  @emph{Flonums}
@@ -2096,10 +2166,10 @@ integers are permitted while bignums are
 @cindex precision, floating point
 A @dfn{flonum} represents a floating point number.  The translation is
 indirect: a decimal floating point number from the text is converted by
-@code{@value{AS}} to a generic binary floating point number of more than
+@command{@value{AS}} to a generic binary floating point number of more than
 sufficient precision.  This generic floating point number is converted
 to a particular computer's floating point format (or formats) by a
-portion of @code{@value{AS}} specialized to that computer.
+portion of @command{@value{AS}} specialized to that computer.
 
 A flonum is written by writing (in order)
 @itemize @bullet
@@ -2110,7 +2180,7 @@ The digit @samp{0}.
 @end ifset
 
 @item
-A letter, to tell @code{@value{AS}} the rest of the number is a flonum.
+A letter, to tell @command{@value{AS}} the rest of the number is a flonum.
 @ifset GENERIC
 @kbd{e} is recommended.  Case is not important.
 @ignore
@@ -2179,9 +2249,9 @@ One or more decimal digits.
 At least one of the integer part or the fractional part must be
 present.  The floating point number has the usual base-10 value.
 
-@code{@value{AS}} does all processing using integers.  Flonums are computed
+@command{@value{AS}} does all processing using integers.  Flonums are computed
 independently of any floating point hardware in the computer running
-@code{@value{AS}}.
+@command{@value{AS}}.
 
 @ifclear GENERIC
 @ifset I960
@@ -2199,7 +2269,7 @@ specify two numbers separated by a colon
 @var{mask}:@var{value}
 @end example
 @noindent
-@code{@value{AS}} applies a bitwise @sc{and} between @var{mask} and
+@command{@value{AS}} applies a bitwise @sc{and} between @var{mask} and
 @var{value}.
 
 The resulting number is then packed
@@ -2240,15 +2310,15 @@ For example there may be a ``read only''
 
 @cindex linker, and assembler
 @cindex assembler, and linker
-The linker @code{@value{LD}} reads many object files (partial programs) and
-combines their contents to form a runnable program.  When @code{@value{AS}}
+The linker @command{@value{LD}} reads many object files (partial programs) and
+combines their contents to form a runnable program.  When @command{@value{AS}}
 emits an object file, the partial program is assumed to start at address 0.
-@code{@value{LD}} assigns the final addresses for the partial program, so that
+@command{@value{LD}} assigns the final addresses for the partial program, so that
 different partial programs do not overlap.  This is actually an
-oversimplification, but it suffices to explain how @code{@value{AS}} uses
+oversimplification, but it suffices to explain how @command{@value{AS}} uses
 sections.
 
-@code{@value{LD}} moves blocks of bytes of your program to their run-time
+@command{@value{LD}} moves blocks of bytes of your program to their run-time
 addresses.  These blocks slide to their run-time addresses as rigid
 units; their length does not change and neither does the order of bytes
 within them.  Such a rigid unit is called a @emph{section}.  Assigning
@@ -2258,12 +2328,12 @@ the proper run-time addresses.
 @ifset H8
 For the H8/300 and H8/500,
 and for the Hitachi SH,
-@code{@value{AS}} pads sections if needed to
+@command{@value{AS}} pads sections if needed to
 ensure they end on a word (sixteen bit) boundary.
 @end ifset
 
 @cindex standard assembler sections
-An object file written by @code{@value{AS}} has at least three sections, any
+An object file written by @command{@value{AS}} has at least three sections, any
 of which may be empty.  These are named @dfn{text}, @dfn{data} and
 @dfn{bss} sections.
 
@@ -2271,7 +2341,7 @@ of which may be empty.  These are named 
 @ifset GENERIC
 When it generates COFF output,
 @end ifset
-@code{@value{AS}} can also generate whatever other named sections you specify
+@command{@value{AS}} can also generate whatever other named sections you specify
 using the @samp{.section} directive (@pxref{Section,,@code{.section}}).
 If you do not use any directives that place output in the @samp{.text}
 or @samp{.data} sections, these sections still exist, but are empty.
@@ -2279,16 +2349,16 @@ or @samp{.data} sections, these sections
 
 @ifset HPPA
 @ifset GENERIC
-When @code{@value{AS}} generates SOM or ELF output for the HPPA,
+When @command{@value{AS}} generates SOM or ELF output for the HPPA,
 @end ifset
-@code{@value{AS}} can also generate whatever other named sections you
+@command{@value{AS}} can also generate whatever other named sections you
 specify using the @samp{.space} and @samp{.subspace} directives.  See
 @cite{HP9000 Series 800 Assembly Language Reference Manual}
 (HP 92432-90001) for details on the @samp{.space} and @samp{.subspace}
 assembler directives.
 
 @ifset SOM
-Additionally, @code{@value{AS}} uses different names for the standard
+Additionally, @command{@value{AS}} uses different names for the standard
 text, data, and bss sections when generating SOM output.  Program text
 is placed into the @samp{$CODE$} section, data into @samp{$DATA$}, and
 BSS into @samp{$BSS$}.
@@ -2304,10 +2374,10 @@ section starts at address @code{0}, the 
 @code{0x4000000}, and the bss section follows the data section.
 @end ifset
 
-To let @code{@value{LD}} know which data changes when the sections are
-relocated, and how to change that data, @code{@value{AS}} also writes to the
+To let @command{@value{LD}} know which data changes when the sections are
+relocated, and how to change that data, @command{@value{AS}} also writes to the
 object file details of the relocation needed.  To perform relocation
-@code{@value{LD}} must know, each time an address in the object
+@command{@value{LD}} must know, each time an address in the object
 file is mentioned:
 @itemize @bullet
 @item
@@ -2326,12 +2396,12 @@ Is the reference to an address ``Program
 
 @cindex addresses, format of
 @cindex section-relative addressing
-In fact, every address @code{@value{AS}} ever uses is expressed as
+In fact, every address @command{@value{AS}} ever uses is expressed as
 @display
 (@var{section}) + (@var{offset into section})
 @end display
 @noindent
-Further, most expressions @code{@value{AS}} computes have this section-relative
+Further, most expressions @command{@value{AS}} computes have this section-relative
 nature.
 @ifset SOM
 (For some object formats, such as SOM for the HPPA, some expressions are
@@ -2342,10 +2412,10 @@ In this manual we use the notation @{@va
 @var{N} into section @var{secname}.''
 
 Apart from text, data and bss sections you need to know about the
-@dfn{absolute} section.  When @code{@value{LD}} mixes partial programs,
+@dfn{absolute} section.  When @command{@value{LD}} mixes partial programs,
 addresses in the absolute section remain unchanged.  For example, address
 @code{@{absolute 0@}} is ``relocated'' to run-time address 0 by
-@code{@value{LD}}.  Although the linker never arranges two partial programs'
+@command{@value{LD}}.  Although the linker never arranges two partial programs'
 data sections with overlapping addresses after linking, @emph{by definition}
 their absolute sections must overlap.  Address @code{@{absolute@ 239@}} in one
 part of a program is always the same address when the program is running as
@@ -2360,18 +2430,18 @@ common block would be such a symbol: its
 time so it has section @emph{undefined}.
 
 By analogy the word @emph{section} is used to describe groups of sections in
-the linked program.  @code{@value{LD}} puts all partial programs' text
+the linked program.  @command{@value{LD}} puts all partial programs' text
 sections in contiguous addresses in the linked program.  It is
 customary to refer to the @emph{text section} of a program, meaning all
 the addresses of all partial programs' text sections.  Likewise for
 data and bss sections.
 
-Some sections are manipulated by @code{@value{LD}}; others are invented for
-use of @code{@value{AS}} and have no meaning except during assembly.
+Some sections are manipulated by @command{@value{LD}}; others are invented for
+use of @command{@value{AS}} and have no meaning except during assembly.
 
 @node Ld Sections
 @section Linker Sections
-@code{@value{LD}} deals with just four kinds of sections, summarized below.
+@command{@value{LD}} deals with just four kinds of sections, summarized below.
 
 @table @strong
 
@@ -2386,7 +2456,7 @@ use of @code{@value{AS}} and have no mea
 @itemx text section
 @itemx data section
 @end ifset
-These sections hold your program.  @code{@value{AS}} and @code{@value{LD}} treat them as
+These sections hold your program.  @command{@value{AS}} and @command{@value{LD}} treat them as
 separate but equal sections.  Anything you can say of one section is
 true another.
 @ifset aout-bout
@@ -2410,7 +2480,7 @@ those explicit zeros from object files.
 @cindex absolute section
 @item absolute section
 Address 0 of this section is always ``relocated'' to runtime address 0.
-This is useful if you want to refer to an address that @code{@value{LD}} must
+This is useful if you want to refer to an address that @command{@value{LD}} must
 not change when relocating.  In this sense we speak of absolute
 addresses being ``unrelocatable'': they do not change during relocation.
 
@@ -2479,11 +2549,11 @@ DDDD}\boxit{2cm}{\tt 00000}\ \dots\hfil}
 
 @cindex internal assembler sections
 @cindex sections in messages, internal
-These sections are meant only for the internal use of @code{@value{AS}}.  They
+These sections are meant only for the internal use of @command{@value{AS}}.  They
 have no meaning at run-time.  You do not really need to know about these
-sections for most purposes; but they can be mentioned in @code{@value{AS}}
+sections for most purposes; but they can be mentioned in @command{@value{AS}}
 warning messages, so it might be helpful to have an idea of their
-meanings to @code{@value{AS}}.  These sections are used to permit the
+meanings to @command{@value{AS}}.  These sections are used to permit the
 value of every expression in your assembly language program to be a
 section-relative address.
 
@@ -2529,7 +2599,7 @@ text or data
 @end ifset
 @end ifclear
 that you want to end up near to each other in the object file, even though they
-are not contiguous in the assembler source.  @code{@value{AS}} allows you to
+are not contiguous in the assembler source.  @command{@value{AS}} allows you to
 use @dfn{subsections} for this purpose.  Within each section, there can be
 numbered subsections with values from 0 to 8192.  Objects assembled into the
 same subsection go into the object file together with other objects in the same
@@ -2545,7 +2615,7 @@ goes in subsection number zero.
 @ifset GENERIC
 Each subsection is zero-padded up to a multiple of four bytes.
 (Subsections may be padded a different amount on different flavors
-of @code{@value{AS}}.)
+of @command{@value{AS}}.)
 @end ifset
 @ifclear GENERIC
 @ifset H8
@@ -2569,7 +2639,7 @@ subsection sizes; @value{AS} forces no a
 
 Subsections appear in your object file in numeric order, lowest numbered
 to highest.  (All this to be compatible with other people's assemblers.)
-The object file contains no representation of subsections; @code{@value{LD}} and
+The object file contains no representation of subsections; @command{@value{LD}} and
 other programs that manipulate object files see no trace of them.
 They just see all your text subsections as a text section, and all your
 data subsections as a data section.
@@ -2607,7 +2677,7 @@ begins in @code{text 0}.  For instance:
 
 Each section has a @dfn{location counter} incremented by one for every byte
 assembled into that section.  Because subsections are merely a convenience
-restricted to @code{@value{AS}} there is no concept of a subsection location
+restricted to @command{@value{AS}} there is no concept of a subsection location
 counter.  There is no way to directly manipulate a location counter---but the
 @code{.align} directive changes it, and any label definition captures its
 current value.  The location counter of the section where statements are being
@@ -2648,7 +2718,7 @@ to debug.
 
 @quotation
 @cindex debuggers, and symbol order
-@emph{Warning:} @code{@value{AS}} does not place symbols in the object file in
+@emph{Warning:} @command{@value{AS}} does not place symbols in the object file in
 the same order they were declared.  This may break some debuggers.
 @end quotation
 
@@ -2674,7 +2744,7 @@ definitions.
 @ifset HPPA
 On the HPPA, the usual form for a label need not be immediately followed by a
 colon, but instead must start in column zero.  Only one label may be defined on
-a single line.  To work around this, the HPPA version of @code{@value{AS}} also
+a single line.  To work around this, the HPPA version of @command{@value{AS}} also
 provides a special directive @code{.label} for defining labels more flexibly.
 @end ifset
 
@@ -2753,11 +2823,11 @@ parts:
 
 @table @code
 @item L
-All local labels begin with @samp{L}. Normally both @code{@value{AS}} and
-@code{@value{LD}} forget symbols that start with @samp{L}. These labels are
+All local labels begin with @samp{L}. Normally both @command{@value{AS}} and
+@command{@value{LD}} forget symbols that start with @samp{L}. These labels are
 used for symbols you are never intended to see.  If you use the
-@samp{-L} option then @code{@value{AS}} retains these symbols in the
-object file. If you also instruct @code{@value{LD}} to retain these symbols,
+@samp{-L} option then @command{@value{AS}} retains these symbols in the
+object file. If you also instruct @command{@value{LD}} to retain these symbols,
 you may use them in debugging.
 
 @item @var{digit}
@@ -2788,7 +2858,7 @@ For instance, the first @code{1:} is nam
 @cindex current address
 @cindex location counter
 The special symbol @samp{.} refers to the current address that
-@code{@value{AS}} is assembling into.  Thus, the expression @samp{melvin:
+@command{@value{AS}} is assembling into.  Thus, the expression @samp{melvin:
 .long .} defines @code{melvin} to contain its own address.
 Assigning a value to @code{.} is treated the same as a @code{.org}
 directive.  Thus, the expression @samp{.=.+4} is the same as saying
@@ -2813,7 +2883,7 @@ attributes.
 The detailed definitions are in @file{a.out.h}.
 @end ifset
 
-If you use a symbol without defining it, @code{@value{AS}} assumes zero for
+If you use a symbol without defining it, @command{@value{AS}} assumes zero for
 all these attributes, and probably won't warn you.  This makes the
 symbol an externally defined symbol, which is generally what you
 would want.
@@ -2851,13 +2921,13 @@ The value of a symbol is (usually) 32 bi
 location in the text, data, bss or absolute sections the value is the
 number of addresses from the start of that section to the label.
 Naturally for text, data and bss sections the value of a symbol changes
-as @code{@value{LD}} changes section base addresses during linking.  Absolute
+as @command{@value{LD}} changes section base addresses during linking.  Absolute
 symbols' values do not change during linking: that is why they are
 called absolute.
 
 The value of an undefined symbol is treated in a special way.  If it is
 0 then the symbol is not defined in this assembler source file, and
-@code{@value{LD}} tries to determine its value from other files linked into the
+@command{@value{LD}} tries to determine its value from other files linked into the
 same program.  You make this kind of symbol simply by mentioning a symbol
 name without defining it.  A non-zero value represents a @code{.comm}
 common declaration.  The value is how much common storage to reserve, in
@@ -2885,7 +2955,7 @@ format depends on the object-code output
 
 @cindex @code{b.out} symbol attributes
 @cindex symbol attributes, @code{b.out}
-These symbol attributes appear only when @code{@value{AS}} is configured for
+These symbol attributes appear only when @command{@value{AS}} is configured for
 one of the Berkeley-descended object output formats---@code{a.out} or
 @code{b.out}.
 
@@ -2919,13 +2989,13 @@ one of the Berkeley-descended object out
 This is an arbitrary 16-bit value.  You may establish a symbol's
 descriptor value by using a @code{.desc} statement
 (@pxref{Desc,,@code{.desc}}).  A descriptor value means nothing to
-@code{@value{AS}}.
+@command{@value{AS}}.
 
 @node Symbol Other
 @subsubsection Other
 
 @cindex other attribute, of @code{a.out} symbol
-This is an arbitrary 8-bit value.  It means nothing to @code{@value{AS}}.
+This is an arbitrary 8-bit value.  It means nothing to @command{@value{AS}}.
 @end ifset
 
 @ifset COFF
@@ -2948,7 +3018,7 @@ respectively, with @code{.val} and @code
 @subsubsection Auxiliary Attributes
 
 @cindex auxiliary attributes, COFF symbols
-The @code{@value{AS}} directives @code{.dim}, @code{.line}, @code{.scl},
+The @command{@value{AS}} directives @code{.dim}, @code{.line}, @code{.scl},
 @code{.size}, and @code{.tag} can generate auxiliary symbol table
 information for COFF.
 @end ifset
@@ -2979,10 +3049,10 @@ Whitespace may precede and/or follow an 
 
 The result of an expression must be an absolute number, or else an offset into
 a particular section.  If an expression is not absolute, and there is not
-enough information when @code{@value{AS}} sees the expression to know its
+enough information when @command{@value{AS}} sees the expression to know its
 section, a second pass over the source program might be necessary to interpret
 the expression---but the second pass is currently not implemented.
-@code{@value{AS}} aborts with an error message in this situation.
+@command{@value{AS}} aborts with an error message in this situation.
 
 @menu
 * Empty Exprs::                 Empty Expressions
@@ -2996,7 +3066,7 @@ the expression---but the second pass is 
 @cindex expressions, empty
 An empty expression has no value: it is just whitespace or null.
 Wherever an absolute expression is required, you may omit the
-expression, and @code{@value{AS}} assumes a value of (absolute) 0.  This
+expression, and @command{@value{AS}} assumes a value of (absolute) 0.  This
 is compatible with other assemblers.
 
 @node Integer Exprs
@@ -3036,7 +3106,7 @@ integer.
 Numbers are usually integers.
 
 A number can be a flonum or bignum.  In this case, you are warned
-that only the low order 32 bits are used, and @code{@value{AS}} pretends
+that only the low order 32 bits are used, and @command{@value{AS}} pretends
 these 32 bits are an integer.  You may write integer-manipulating
 instructions that act on exotic constants, compatible with other
 assemblers.
@@ -3061,7 +3131,7 @@ whitespace.
 @subsection Prefix Operator
 
 @cindex prefix operators
-@code{@value{AS}} has the following @dfn{prefix operators}.  They each take
+@command{@value{AS}} has the following @dfn{prefix operators}.  They each take
 one argument, which must be absolute.
 
 @c the tex/end tex stuff surrounding this small table is meant to make
@@ -3089,7 +3159,7 @@ one argument, which must be absolute.
 @cindex operators, permitted arguments
 @dfn{Infix operators} take two arguments, one on either side.  Operators
 have precedence, but operations with equal precedence are performed left
-to right.  Apart from @code{+} or @code{-}, both arguments must be
+to right.  Apart from @code{+} or @option{-}, both arguments must be
 absolute, and the result is absolute.
 
 @enumerate
@@ -3375,7 +3445,7 @@ Some machine configurations provide addi
 This directive stops the assembly immediately.  It is for
 compatibility with other assemblers.  The original idea was that the
 assembly language source would be piped into the assembler.  If the sender
-of the source quit, it could use this directive tells @code{@value{AS}} to
+of the source quit, it could use this directive tells @command{@value{AS}} to
 quit also.  One day @code{.abort} will not be supported.
 
 @ifset COFF
@@ -3383,11 +3453,11 @@ quit also.  One day @code{.abort} will n
 @section @code{.ABORT}
 
 @cindex @code{ABORT} directive
-When producing COFF output, @code{@value{AS}} accepts this directive as a
+When producing COFF output, @command{@value{AS}} accepts this directive as a
 synonym for @samp{.abort}.
 
 @ifset BOUT
-When producing @code{b.out} output, @code{@value{AS}} accepts this directive,
+When producing @code{b.out} output, @command{@value{AS}} accepts this directive,
 but ignores it.
 @end ifset
 @end ifset
@@ -3505,10 +3575,10 @@ Each expression is assembled into the ne
 @cindex symbol, common
 @code{.comm} declares a common symbol named @var{symbol}.  When linking, a
 common symbol in one object file may be merged with a defined or common symbol
-of the same name in another object file.  If @code{@value{LD}} does not see a
+of the same name in another object file.  If @command{@value{LD}} does not see a
 definition for the symbol--just one or more common symbols--then it will
 allocate @var{length} bytes of uninitialized memory.  @var{length} must be an
-absolute expression.  If @code{@value{LD}} sees multiple common symbols with
+absolute expression.  If @command{@value{LD}} sees multiple common symbols with
 the same name, and they do not all have the same size, it will allocate space
 using the largest size.
 
@@ -3517,9 +3587,9 @@ When using ELF, the @code{.comm} directi
 This is the desired alignment of the symbol, specified as a byte boundary (for
 example, an alignment of 16 means that the least significant 4 bits of the
 address should be zero).  The alignment must be an absolute expression, and it
-must be a power of two.  If @code{@value{LD}} allocates uninitialized memory
+must be a power of two.  If @command{@value{LD}} allocates uninitialized memory
 for the common symbol, it will use the alignment when placing the symbol.  If
-no alignment is specified, @code{@value{AS}} will set the alignment to the
+no alignment is specified, @command{@value{AS}} will set the alignment to the
 largest power of two less than or equal to the size of the symbol, up to a
 maximum of 16.
 @end ifset
@@ -3533,7 +3603,7 @@ The syntax for @code{.comm} differs slig
 @section @code{.data @var{subsection}}
 
 @cindex @code{data} directive
-@code{.data} tells @code{@value{AS}} to assemble the following statements onto the
+@code{.data} tells @command{@value{AS}} to assemble the following statements onto the
 end of the data subsection numbered @var{subsection} (which is an
 absolute expression).  If @var{subsection} is omitted, it defaults
 to zero.
@@ -3549,7 +3619,7 @@ Begin defining debugging information for
 definition extends until the @code{.endef} directive is encountered.
 @ifset BOUT
 
-This directive is only observed when @code{@value{AS}} is configured for COFF
+This directive is only observed when @command{@value{AS}} is configured for COFF
 format output; when producing @code{b.out}, @samp{.def} is recognized,
 but ignored.
 @end ifset
@@ -3566,9 +3636,9 @@ This directive sets the descriptor of th
 to the low 16 bits of an absolute expression.
 
 @ifset COFF
-The @samp{.desc} directive is not available when @code{@value{AS}} is
+The @samp{.desc} directive is not available when @command{@value{AS}} is
 configured for COFF output; it is only for @code{a.out} or @code{b.out}
-object format.  For the sake of compatibility, @code{@value{AS}} accepts
+object format.  For the sake of compatibility, @command{@value{AS}} accepts
 it, but produces no output, when configured for COFF.
 @end ifset
 @end ifset
@@ -3586,7 +3656,7 @@ information in the symbol table.  It is 
 @ifset BOUT
 
 @samp{.dim} is only meaningful when generating COFF format output; when
-@code{@value{AS}} is generating @code{b.out}, it accepts this directive but
+@command{@value{AS}} is generating @code{b.out}, it accepts this directive but
 ignores it.
 @end ifset
 @end ifset
@@ -3600,7 +3670,7 @@ ignores it.
 assembles floating point numbers.
 @ifset GENERIC
 The exact kind of floating point numbers emitted depends on how
-@code{@value{AS}} is configured.  @xref{Machine Dependencies}.
+@command{@value{AS}} is configured.  @xref{Machine Dependencies}.
 @end ifset
 @ifclear GENERIC
 @ifset IEEEFLOAT
@@ -3622,7 +3692,7 @@ Force a page break at this point, when g
 @section @code{.else}
 
 @cindex @code{else} directive
-@code{.else} is part of the @code{@value{AS}} support for conditional
+@code{.else} is part of the @command{@value{AS}} support for conditional
 assembly; @pxref{If,,@code{.if}}.  It marks the beginning of a section
 of code to be assembled if the condition for the preceding @code{.if}
 was false.
@@ -3631,7 +3701,7 @@ was false.
 @section @code{.elseif}
 
 @cindex @code{elseif} directive
-@code{.elseif} is part of the @code{@value{AS}} support for conditional
+@code{.elseif} is part of the @command{@value{AS}} support for conditional
 assembly; @pxref{If,,@code{.if}}.  It is shorthand for beginning a new
 @code{.if} block that would otherwise fill the entire @code{.else} section.
 
@@ -3639,7 +3709,7 @@ assembly; @pxref{If,,@code{.if}}.  It is
 @section @code{.end}
 
 @cindex @code{end} directive
-@code{.end} marks the end of the assembly file.  @code{@value{AS}} does not
+@code{.end} marks the end of the assembly file.  @command{@value{AS}} does not
 process anything in the file past the @code{.end} directive.
 
 @ifset COFF
@@ -3652,7 +3722,7 @@ This directive flags the end of a symbol
 @ifset BOUT
 
 @samp{.endef} is only meaningful when generating COFF format output; if
-@code{@value{AS}} is configured to generate @code{b.out}, it accepts this
+@command{@value{AS}} is configured to generate @code{b.out}, it accepts this
 directive but ignores it.
 @end ifset
 @end ifset
@@ -3666,7 +3736,7 @@ directive but ignores it.
 @section @code{.endif}
 
 @cindex @code{endif} directive
-@code{.endif} is part of the @code{@value{AS}} support for conditional assembly;
+@code{.endif} is part of the @command{@value{AS}} support for conditional assembly;
 it marks the end of a block of code that is only assembled
 conditionally.  @xref{If,,@code{.if}}.
 
@@ -3701,8 +3771,8 @@ Except for the contents of the error mes
 @node Err
 @section @code{.err}
 @cindex @code{err} directive
-If @code{@value{AS}} assembles a @code{.err} directive, it will print an error
-message and, unless the @code{-Z} option was used, it will not generate an
+If @command{@value{AS}} assembles a @code{.err} directive, it will print an error
+message and, unless the @option{-Z} option was used, it will not generate an
 object file.  This can be used to signal error an conditionally compiled code.
 
 @node Exitm
@@ -3714,7 +3784,7 @@ Exit early from the current macro defini
 
 @cindex @code{extern} directive
 @code{.extern} is accepted in the source program---for compatibility
-with other assemblers---but it is ignored.  @code{@value{AS}} treats
+with other assemblers---but it is ignored.  @command{@value{AS}} treats
 all undefined symbols as external.
 
 @node Fail
@@ -3722,8 +3792,8 @@ all undefined symbols as external.
 
 @cindex @code{fail} directive
 Generates an error or a warning.  If the value of the @var{expression} is 500
-or more, @code{@value{AS}} will print a warning message.  If the value is less
-than 500, @code{@value{AS}} will print an error message.  The message will
+or more, @command{@value{AS}} will print a warning message.  If the value is less
+than 500, @command{@value{AS}} will print an error message.  The message will
 include the value of @var{expression}.  This can occasionally be useful inside
 complex nested macros or conditional assembly.
 
@@ -3734,14 +3804,14 @@ complex nested macros or conditional ass
 @cindex @code{file} directive
 @cindex logical file name
 @cindex file name, logical
-@code{.file} tells @code{@value{AS}} that we are about to start a new logical
+@code{.file} tells @command{@value{AS}} that we are about to start a new logical
 file.  @var{string} is the new file name.  In general, the filename is
 recognized whether or not it is surrounded by quotes @samp{"}; but if you wish
 to specify an empty file name, you must give the quotes--@code{""}.  This
 statement may go away in future: it is only recognized to be compatible with
-old @code{@value{AS}} programs.
+old @command{@value{AS}} programs.
 @ifset A29K
-In some configurations of @code{@value{AS}}, @code{.file} has already been
+In some configurations of @command{@value{AS}}, @code{.file} has already been
 removed to avoid conflicts with other assemblers.  @xref{Machine Dependencies}.
 @end ifset
 @end ifclear
@@ -3759,7 +3829,7 @@ more than 8, then it is deemed to have t
 other people's assemblers.  The contents of each @var{repeat} bytes
 is taken from an 8-byte number.  The highest order 4 bytes are
 zero.  The lowest order 4 bytes are @var{value} rendered in the
-byte-order of an integer on the computer @code{@value{AS}} is assembling for.
+byte-order of an integer on the computer @command{@value{AS}} is assembling for.
 Each @var{size} bytes in a repetition is taken from the lowest order
 @var{size} bytes of this number.  Again, this bizarre behavior is
 compatible with other people's assemblers.
@@ -3778,7 +3848,7 @@ This directive assembles zero or more fl
 has the same effect as @code{.single}.
 @ifset GENERIC
 The exact kind of floating point numbers emitted depends on how
-@code{@value{AS}} is configured.
+@command{@value{AS}} is configured.
 @xref{Machine Dependencies}.
 @end ifset
 @ifclear GENERIC
@@ -3805,7 +3875,7 @@ The function must be terminated with @co
 
 @cindex @code{global} directive
 @cindex symbol, making visible to linker
-@code{.global} makes the symbol visible to @code{@value{LD}}.  If you define
+@code{.global} makes the symbol visible to @command{@value{LD}}.  If you define
 @var{symbol} in your partial program, its value is made available to
 other partial programs that are linked with it.  Otherwise,
 @var{symbol} takes its attributes from a symbol of the same name
@@ -3864,7 +3934,7 @@ This directive is a synonym for both @sa
 
 @cindex @code{ident} directive
 This directive is used by some assemblers to place tags in object files.
-@code{@value{AS}} simply accepts the directive for source-file
+@command{@value{AS}} simply accepts the directive for source-file
 compatibility with such assemblers, but does not actually emit anything
 for it.
 
@@ -4062,7 +4132,7 @@ denoted by @var{symbol}.  The section an
 those of the new local common.  The addresses are allocated in the bss
 section, so that at run-time the bytes start off zeroed.  @var{Symbol}
 is not declared global (@pxref{Global,,@code{.global}}), so is normally
-not visible to @code{@value{LD}}.
+not visible to @command{@value{LD}}.
 
 @ifset GENERIC
 Some targets permit a third argument to be used with @code{.lcomm}.  This
@@ -4078,7 +4148,7 @@ The syntax for @code{.lcomm} differs sli
 @section @code{.lflags}
 
 @cindex @code{lflags} directive (ignored)
-@code{@value{AS}} accepts this directive, for compatibility with other
+@command{@value{AS}} accepts this directive, for compatibility with other
 assemblers, but ignores it.
 
 @ifclear no-line-dir
@@ -4099,7 +4169,7 @@ Change the logical line number.  @var{li
 expression.  The next line has that logical line number.  Therefore any other
 statements on the current line (after a statement separator character) are
 reported as on logical line number @var{line-number} @minus{} 1.  One day
-@code{@value{AS}} will no longer support this directive: it is recognized only
+@command{@value{AS}} will no longer support this directive: it is recognized only
 for compatibility with existing assembler programs.
 
 @ifset GENERIC
@@ -4112,7 +4182,7 @@ not available; use the synonym @code{.ln
 
 @ifclear no-line-dir
 Even though this is a directive associated with the @code{a.out} or
-@code{b.out} object-code formats, @code{@value{AS}} still recognizes it
+@code{b.out} object-code formats, @command{@value{AS}} still recognizes it
 when producing COFF output, and treats @samp{.line} as though it
 were the COFF @samp{.ln} @emph{if} it is found outside a
 @code{.def}/@code{.endef} pair.
@@ -4167,14 +4237,14 @@ Warn if any of the duplicates do not hav
 @samp{.ln} is a synonym for @samp{.line}.
 @end ifclear
 @ifset no-line-dir
-Tell @code{@value{AS}} to change the logical line number.  @var{line-number}
+Tell @command{@value{AS}} to change the logical line number.  @var{line-number}
 must be an absolute expression.  The next line has that logical
 line number, so any other statements on the current line (after a
 statement separator character @code{;}) are reported as on logical
 line number @var{line-number} @minus{} 1.
 @ifset BOUT
 
-This directive is accepted, but ignored, when @code{@value{AS}} is
+This directive is accepted, but ignored, when @command{@value{AS}} is
 configured for @code{b.out}; its effect is only associated with COFF
 output format.
 @end ifset
@@ -4185,8 +4255,8 @@ output format.
 
 @cindex @code{mri} directive
 @cindex MRI mode, temporarily
-If @var{val} is non-zero, this tells @code{@value{AS}} to enter MRI mode.  If
-@var{val} is zero, this tells @code{@value{AS}} to exit MRI mode.  This change
+If @var{val} is non-zero, this tells @command{@value{AS}} to enter MRI mode.  If
+@var{val} is zero, this tells @command{@value{AS}} to exit MRI mode.  This change
 affects code assembled until the next @code{.mri} directive, or until the end
 of the file.  @xref{M, MRI mode, MRI mode}.
 
@@ -4307,7 +4377,7 @@ Exit early from the current macro defini
 @cindex number of macros executed
 @cindex macros, count executed
 @item \@@
-@code{@value{AS}} maintains a counter of how many macros it has
+@command{@value{AS}} maintains a counter of how many macros it has
 executed in this pseudo-variable; you can copy that number to your
 output with @samp{\@@}, but @emph{only within a macro definition}.
 
@@ -4362,7 +4432,7 @@ expression with the same section as the 
 you can't use @code{.org} to cross sections: if @var{new-lc} has the
 wrong section, the @code{.org} directive is ignored.  To be compatible
 with former assemblers, if the section of @var{new-lc} is absolute,
-@code{@value{AS}} issues a warning, then pretends the section of @var{new-lc}
+@command{@value{AS}} issues a warning, then pretends the section of @var{new-lc}
 is the same as the current subsection.
 
 @code{.org} may only increase the location counter, or leave it
@@ -4372,7 +4442,7 @@ backwards.
 @c double negative used below "not undefined" because this is a specific
 @c reference to "undefined" (as SEG_UNKNOWN is called in this manual)
 @c section. doc@cygnus.com 18feb91
-Because @code{@value{AS}} tries to assemble programs in one pass, @var{new-lc}
+Because @command{@value{AS}} tries to assemble programs in one pass, @var{new-lc}
 may not be undefined.  If you really detest this restriction we eagerly await
 a chance to share your improved assembler.
 
@@ -4462,7 +4532,7 @@ stack. 
 @section @code{.print @var{string}}
 
 @cindex @code{print} directive
-@code{@value{AS}} will print @var{string} on the standard output during
+@command{@value{AS}} will print @var{string} on the standard output during
 assembly.  You must put @var{string} in double quotes.
 
 @ifset ELF
@@ -4495,7 +4565,7 @@ If you do not use @code{.psize}, listing
 of 60.  You may omit the comma and @var{columns} specification; the
 default width is 200 columns.
 
-@code{@value{AS}} generates formfeeds whenever the specified number of
+@command{@value{AS}} generates formfeeds whenever the specified number of
 lines is exceeded (or whenever you explicitly request one, using
 @code{.eject}).
 
@@ -4596,7 +4666,7 @@ symbolic debugging information.
 @ifset BOUT
 
 The @samp{.scl} directive is primarily associated with COFF output; when
-configured to generate @code{b.out} output format, @code{@value{AS}}
+configured to generate @code{b.out} output format, @command{@value{AS}}
 accepts this directive but ignores it.
 @end ifset
 @end ifset
@@ -4763,7 +4833,7 @@ This directive assembles zero or more fl
 has the same effect as @code{.float}.
 @ifset GENERIC
 The exact kind of floating point numbers emitted depends on how
-@code{@value{AS}} is configured.  @xref{Machine Dependencies}.
+@command{@value{AS}} is configured.  @xref{Machine Dependencies}.
 @end ifset
 @ifclear GENERIC
 @ifset IEEEFLOAT
@@ -4782,7 +4852,7 @@ information in the symbol table.  It is 
 
 @ifset BOUT
 @samp{.size} is only meaningful when generating COFF format output; when
-@code{@value{AS}} is generating @code{b.out}, it accepts this directive but
+@command{@value{AS}} is generating @code{b.out}, it accepts this directive but
 ignores it.
 @end ifset
 
@@ -4857,7 +4927,7 @@ compatibility with other AMD 29K assembl
 @cindex @code{stab@var{x}} directives
 There are three directives that begin @samp{.stab}.
 All emit symbols (@pxref{Symbols}), for use by symbolic debuggers.
-The symbols are not entered in the @code{@value{AS}} hash table: they
+The symbols are not entered in the @command{@value{AS}} hash table: they
 cannot be referenced elsewhere in the source file.
 Up to five fields are required:
 
@@ -4870,7 +4940,7 @@ using this field.
 
 @item type
 An absolute expression.  The symbol's type is set to the low 8 bits of
-this expression.  Any bit pattern is permitted, but @code{@value{LD}}
+this expression.  Any bit pattern is permitted, but @command{@value{LD}}
 and debuggers choke on silly bit patterns.
 
 @item other
@@ -5032,7 +5102,7 @@ definitions in the symbol table with ins
 @ifset BOUT
 
 @samp{.tag} is only used when generating COFF format output; when
-@code{@value{AS}} is generating @code{b.out}, it accepts this directive but
+@command{@value{AS}} is generating @code{b.out}, it accepts this directive but
 ignores it.
 @end ifset
 @end ifset
@@ -5041,7 +5111,7 @@ ignores it.
 @section @code{.text @var{subsection}}
 
 @cindex @code{text} directive
-Tells @code{@value{AS}} to assemble the following statements onto the end of
+Tells @command{@value{AS}} to assemble the following statements onto the end of
 the text subsection numbered @var{subsection}, which is an absolute
 expression.  If @var{subsection} is omitted, subsection number zero
 is used.
@@ -5068,7 +5138,7 @@ records the integer @var{int} as the typ
 
 @ifset BOUT
 @samp{.type} is associated only with COFF format output; when
-@code{@value{AS}} is configured for @code{b.out} output, it accepts this
+@command{@value{AS}} is configured for @code{b.out} output, it accepts this
 directive but ignores it.
 @end ifset
 
@@ -5119,7 +5189,7 @@ records the address @var{addr} as the va
 entry.
 @ifset BOUT
 
-@samp{.val} is used only for COFF output; when @code{@value{AS}} is
+@samp{.val} is used only for COFF output; when @command{@value{AS}} is
 configured for @code{b.out}, it accepts this directive but ignores it.
 @end ifset
 @end ifset
@@ -5168,10 +5238,10 @@ This directive expects zero or more @var
 separated by commas.
 @ifclear GENERIC
 @ifset W32
-For each expression, @code{@value{AS}} emits a 32-bit number.
+For each expression, @command{@value{AS}} emits a 32-bit number.
 @end ifset
 @ifset W16
-For each expression, @code{@value{AS}} emits a 16-bit number.
+For each expression, @command{@value{AS}} emits a 16-bit number.
 @end ifset
 @end ifclear
 @ifset GENERIC
@@ -5197,11 +5267,11 @@ interest to you does 32-bit addressing (
 
 @end ifset
 In order to assemble compiler output into something that works,
-@code{@value{AS}} occasionally does strange things to @samp{.word} directives.
+@command{@value{AS}} occasionally does strange things to @samp{.word} directives.
 Directives of the form @samp{.word sym1-sym2} are often emitted by
-compilers as part of jump tables.  Therefore, when @code{@value{AS}} assembles a
+compilers as part of jump tables.  Therefore, when @command{@value{AS}} assembles a
 directive of the form @samp{.word sym1-sym2}, and the difference between
-@code{sym1} and @code{sym2} does not fit in 16 bits, @code{@value{AS}}
+@code{sym1} and @code{sym2} does not fit in 16 bits, @command{@value{AS}}
 creates a @dfn{secondary jump table}, immediately before the next label.
 This secondary jump table is preceded by a short-jump to the
 first byte after the secondary table.  This short-jump prevents the flow
@@ -5219,7 +5289,7 @@ minus the address of the long-jump to @c
 entries in the original jump table as necessary.
 
 @ifset INTERNALS
-@emph{This feature may be disabled by compiling @code{@value{AS}} with the
+@emph{This feature may be disabled by compiling @command{@value{AS}} with the
 @samp{-DWORKING_DOT_WORD} option.} This feature is likely to confuse
 assembly language programmers.
 @end ifset
@@ -5244,11 +5314,11 @@ They are included for compatibility with
 
 @cindex machine dependencies
 The machine instruction sets are (almost by definition) different on
-each machine where @code{@value{AS}} runs.  Floating point representations
-vary as well, and @code{@value{AS}} often supports a few additional
+each machine where @command{@value{AS}} runs.  Floating point representations
+vary as well, and @command{@value{AS}} often supports a few additional
 directives or command-line options for compatibility with other
 assemblers on a particular platform.  Finally, some versions of
-@code{@value{AS}} support special pseudo-instructions for branch
+@command{@value{AS}} support special pseudo-instructions for branch
 optimization.
 
 This chapter discusses most of these differences, though it does not
@@ -5357,7 +5427,7 @@ subject, see the hardware manufacturer's
 
 The machine instruction sets are different on each Hitachi chip family,
 and there are also some syntax differences among the families.  This
-chapter describes the specific @code{@value{AS}} features for each
+chapter describes the specific @command{@value{AS}} features for each
 family.
 
 @menu
@@ -5463,12 +5533,12 @@ family.
 @cindex bugs in assembler
 @cindex reporting bugs in assembler
 
-Your bug reports play an essential role in making @code{@value{AS}} reliable.
+Your bug reports play an essential role in making @command{@value{AS}} reliable.
 
 Reporting a bug may help you by bringing a solution to your problem, or it may
 not.  But in any case the principal function of a bug report is to help the
-entire community by making the next version of @code{@value{AS}} work better.
-Bug reports are your contribution to the maintenance of @code{@value{AS}}.
+entire community by making the next version of @command{@value{AS}} work better.
+Bug reports are your contribution to the maintenance of @command{@value{AS}}.
 
 In order for a bug report to serve its purpose, you must include the
 information that enables us to fix the bug.
@@ -5490,21 +5560,21 @@ If you are not sure whether you have fou
 @cindex crash of assembler
 @item
 If the assembler gets a fatal signal, for any input whatever, that is a
-@code{@value{AS}} bug.  Reliable assemblers never crash.
+@command{@value{AS}} bug.  Reliable assemblers never crash.
 
 @cindex error on valid input
 @item
-If @code{@value{AS}} produces an error message for valid input, that is a bug.
+If @command{@value{AS}} produces an error message for valid input, that is a bug.
 
 @cindex invalid input
 @item
-If @code{@value{AS}} does not produce an error message for invalid input, that
+If @command{@value{AS}} does not produce an error message for invalid input, that
 is a bug.  However, you should note that your idea of ``invalid input'' might
 be our idea of ``an extension'' or ``support for traditional practice''.
 
 @item
 If you are an experienced user of assemblers, your suggestions for improvement
-of @code{@value{AS}} are welcome in any case.
+of @command{@value{AS}} are welcome in any case.
 @end itemize
 
 @node Bug Reporting
@@ -5513,14 +5583,14 @@ of @code{@value{AS}} are welcome in any 
 @cindex assembler bugs, reporting
 
 A number of companies and individuals offer support for @sc{gnu} products.  If
-you obtained @code{@value{AS}} from a support organization, we recommend you
+you obtained @command{@value{AS}} from a support organization, we recommend you
 contact that organization first.
 
 You can find contact information for many support companies and
 individuals in the file @file{etc/SERVICE} in the @sc{gnu} Emacs
 distribution.
 
-In any event, we also recommend that you send bug reports for @code{@value{AS}}
+In any event, we also recommend that you send bug reports for @command{@value{AS}}
 to @samp{bug-binutils@@gnu.org}.
 
 The fundamental principle of reporting bugs usefully is this:
@@ -5550,21 +5620,21 @@ To enable us to fix the bug, you should 
 
 @itemize @bullet
 @item
-The version of @code{@value{AS}}.  @code{@value{AS}} announces it if you start
+The version of @command{@value{AS}}.  @command{@value{AS}} announces it if you start
 it with the @samp{--version} argument.
 
 Without this, we will not know whether there is any point in looking for
-the bug in the current version of @code{@value{AS}}.
+the bug in the current version of @command{@value{AS}}.
 
 @item
-Any patches you may have applied to the @code{@value{AS}} source.
+Any patches you may have applied to the @command{@value{AS}} source.
 
 @item
 The type of machine you are using, and the operating system name and
 version number.
 
 @item
-What compiler (and its version) was used to compile @code{@value{AS}}---e.g.
+What compiler (and its version) was used to compile @command{@value{AS}}---e.g.
 ``@code{gcc-2.7}''.
 
 @item
@@ -5579,23 +5649,23 @@ and then we might not encounter the bug.
 A complete input file that will reproduce the bug.  If the bug is observed when
 the assembler is invoked via a compiler, send the assembler source, not the
 high level language source.  Most compilers will produce the assembler source
-when run with the @samp{-S} option.  If you are using @code{@value{GCC}}, use
+when run with the @samp{-S} option.  If you are using @command{@value{GCC}}, use
 the options @samp{-v --save-temps}; this will save the assembler source in a
 file with an extension of @file{.s}, and also show you exactly how
-@code{@value{AS}} is being run.
+@command{@value{AS}} is being run.
 
 @item
 A description of what behavior you observe that you believe is
 incorrect.  For example, ``It gets a fatal signal.''
 
-Of course, if the bug is that @code{@value{AS}} gets a fatal signal, then we
+Of course, if the bug is that @command{@value{AS}} gets a fatal signal, then we
 will certainly notice it.  But if the bug is incorrect output, we might not
 notice unless it is glaringly wrong.  You might as well not give us a chance to
 make a mistake.
 
 Even if the problem you experience is a fatal signal, you should still say so
 explicitly.  Suppose something strange is going on, such as, your copy of
-@code{@value{AS}} is out of synch, or you have encountered a bug in the C
+@command{@value{AS}} is out of synch, or you have encountered a bug in the C
 library on your system.  (This has happened!)  Your copy might crash and ours
 would not.  If you told us to expect a crash, then when ours fails to crash, we
 would know that the bug was not happening for us.  If you had not told us to
@@ -5603,10 +5673,10 @@ expect a crash, then we would not be abl
 observations.
 
 @item
-If you wish to suggest changes to the @code{@value{AS}} source, send us context
+If you wish to suggest changes to the @command{@value{AS}} source, send us context
 diffs, as generated by @code{diff} with the @samp{-u}, @samp{-c}, or @samp{-p}
 option.  Always send diffs from the old file to the new file.  If you even
-discuss something in the @code{@value{AS}} source, refer to it by context, not
+discuss something in the @command{@value{AS}} source, refer to it by context, not
 by line number.
 
 The line numbers in our development sources will not match those in your
@@ -5644,7 +5714,7 @@ the necessary information, such as the t
 a patch is all we need.  We might see problems with your patch and decide
 to fix the problem another way, or we might not understand it at all.
 
-Sometimes with a program as complicated as @code{@value{AS}} it is very hard to
+Sometimes with a program as complicated as @command{@value{AS}} it is very hard to
 construct an example that will make the program follow a certain path through
 the code.  If you do not send us the example, we will not be able to construct
 one, so we will not be able to verify that the bug is fixed.
@@ -5663,7 +5733,7 @@ things without first using the debugger 
 @node Acknowledgements
 @chapter Acknowledgements
 
-If you have contributed to @code{@value{AS}} and your name isn't listed here,
+If you have contributed to @command{@value{AS}} and your name isn't listed here,
 it is not meant as a slight.  We just don't know about it.  Send mail to the
 maintainer, and we'll correct the situation.  Currently 
 @c (January 1994), 
@@ -5724,7 +5794,7 @@ Ian Lance Taylor of Cygnus Support merge
 added support for MIPS ECOFF and ELF targets, wrote the initial RS/6000 and
 PowerPC assembler, and made a few other minor patches.
 
-Steve Chamberlain made @code{@value{AS}} able to generate listings.
+Steve Chamberlain made @command{@value{AS}} able to generate listings.
 
 Hewlett-Packard contributed support for the HP9000/300.
 
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/ChangeLog.M68HC11 binutils-2.11.2-m68hc1x/gas/testsuite/ChangeLog.M68HC11
--- binutils-2.11.2/gas/testsuite/ChangeLog.M68HC11	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/gas/testsuite/ChangeLog.M68HC11	Sun Dec 23 15:13:19 2001
@@ -0,0 +1,12 @@
+2001-12-23  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* gas/m68hc11/all.exp: Run the new test.
+	* gas/m68hc11/branchs12.s: New test.
+	* gas/m68hc11/branchs12.d: New test.
+
+2001-12-16  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* gas/vtable/vtable.exp: Run this test for 68HC11.
+	* gas/elf/elf.exp: Likewise.
+	* gas/symver/symver.exp: Likewise.
+
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/elf/elf.exp binutils-2.11.2-m68hc1x/gas/testsuite/gas/elf/elf.exp
--- binutils-2.11.2/gas/testsuite/gas/elf/elf.exp	Fri Sep 21 20:58:40 2001
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/elf/elf.exp	Sun Dec 16 12:17:19 2001
@@ -32,6 +32,7 @@ proc run_list_test { name suffix opts } 
 # We're testing bits in obj-elf -- don't run on anything else.
 if { ([istarget "*-*-elf*"]		
       || [istarget "*-*-linux*"]
+      || [istarget "m6811-*"]
       || [istarget "sparc*-*-solaris*"]
       || [istarget "mips*-*-irix6*"])
      && ![istarget *-*-linux*aout*]
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/m68hc11/all.exp binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/all.exp
--- binutils-2.11.2/gas/testsuite/gas/m68hc11/all.exp	Sun Feb  4 15:06:30 2001
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/all.exp	Sun Dec 23 15:11:57 2001
@@ -21,4 +21,5 @@ run_dump_test malis
 
 # Some 68HC12 tests
 run_dump_test opers12
-run_dump_test opers12-dwarf2
\ No newline at end of file
+run_dump_test opers12-dwarf2
+run_dump_test branchs12
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/m68hc11/all_insns.d binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/all_insns.d
--- binutils-2.11.2/gas/testsuite/gas/m68hc11/all_insns.d	Mon Jun 19 03:22:41 2000
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/all_insns.d	Sat Dec 15 23:17:57 2001
@@ -1,4 +1,4 @@
-#objdump: -d --prefix-addresses
+#objdump: -d --prefix-addresses --reloc
 #as: -m68hc11
 #name: all_insns
 
@@ -7,346 +7,492 @@
 .*: +file format elf32\-m68hc11
 
 Disassembly of section .text:
-0+000 <L0> aba
-0+001 <L1> abx
-0+002 <L2> aby
-0+004 <L3> adca	#103
-0+006 <L4> adca	\*0+000 <L0>
-0+008 <L5> adca	105,x
-0+00a <L6> adca	0+000 <L0>
-0+00d <L7> adca	81,x
-0+00f <L8> adcb	#255
-0+011 <L9> adcb	\*0+000 <L0>
-0+013 <L10> adcb	236,x
-0+015 <L11> adcb	0+000 <L0>
-0+018 <L12> adcb	205,x
-0+01a <L13> adda	#186
-0+01c <L14> adda	\*0+000 <L0>
-0+01e <L15> adda	242,x
-0+020 <L16> adda	0+000 <L0>
-0+023 <L17> adda	227,x
-0+025 <L18> addb	#70
-0+027 <L19> addb	\*0+000 <L0>
-0+029 <L20> addb	194,x
-0+02b <L21> addb	0+000 <L0>
-0+02e <L22> addb	248,x
-0+030 <L23> addd	#0000231b <L330\+0x2034>
-0+033 <L24> addd	\*0+000 <L0>
-0+035 <L25> addd	231,x
-0+037 <L26> addd	0+000 <L0>
-0+03a <L27> addd	118,x
-0+03c <L28> anda	#90
-0+03e <L29> anda	\*0+000 <L0>
-0+040 <L30> anda	99,x
-0+042 <L31> anda	0+000 <L0>
-0+045 <L32> anda	159,x
-0+047 <L33> andb	#201
-0+049 <L34> andb	\*0+000 <L0>
-0+04b <L35> andb	102,x
-0+04d <L36> andb	0+000 <L0>
-0+050 <L37> andb	13,x
-0+052 <L38> asl	183,x
-0+054 <L39> asl	0+000 <L0>
-0+057 <L40> asl	88,x
-0+059 <L41> asla
-0+05a <L42> aslb
-0+05b <L43> asld
-0+05c <L44> asr	163,x
-0+05e <L45> asr	0+000 <L0>
-0+061 <L46> asr	37,x
-0+063 <L47> asra
-0+064 <L48> asrb
-0+065 <L49> bcs	0+06a <L50>
-0+067 <L49\+0x2> jmp	0+0f3 <L93>
-0+06a <L50> bclr	\*0+000 <L0> #\$00
-0+06d <L51> bclr	88,x #\$00
-0+070 <L52> bclr	94,x #\$00
-0+073 <L53> bcc	0+078 <L54>
-0+075 <L53\+0x2> jmp	0+1a8 <L171>
-0+078 <L54> bne	0+07d <L55>
-0+07a <L54\+0x2> jmp	0+1b6 <L178>
-0+07d <L55> blt	0+082 <L56>
-0+07f <L55\+0x2> jmp	0+1f5 <L205>
-0+082 <L56> ble	0+087 <L57>
-0+084 <L56\+0x2> jmp	0+1e4 <L198>
-0+087 <L57> bls	0+08c <L58>
-0+089 <L57\+0x2> jmp	0+18a <L155>
-0+08c <L58> bcs	0+091 <L59>
-0+08e <L58\+0x2> jmp	0+1bb <L180>
-0+091 <L59> bita	#84
-0+093 <L60> bita	\*0+000 <L0>
-0+095 <L61> bita	14,x
-0+097 <L62> bita	0+000 <L0>
-0+09a <L63> bita	116,x
-0+09c <L64> bitb	#65
-0+09e <L65> bitb	\*0+000 <L0>
-0+0a0 <L66> bitb	61,x
-0+0a2 <L67> bitb	0+000 <L0>
-0+0a5 <L68> bitb	135,x
-0+0a7 <L69> ble	0+11d <L112>
-0+0a9 <L70> bcc	0+0ae <L71>
-0+0ab <L70\+0x2> jmp	0+22e <L233>
-0+0ae <L71> bls	0+097 <L62>
-0+0b0 <L72> bge	0+0b5 <L73>
-0+0b2 <L72\+0x2> jmp	0+197 <L161>
-0+0b5 <L73> bmi	0+09e <L65>
-0+0b7 <L74> beq	0+0bc <L75>
-0+0b9 <L74\+0x2> jmp	0+220 <L225>
-0+0bc <L75> bmi	0+0c1 <L76>
-0+0be <L75\+0x2> jmp	0+24e <L252>
-0+0c1 <L76> bra	0+106 <L103>
-0+0c3 <L77> brclr	\*0+000 <L0> #\$00 0+145 <L125\+0x2>
-0+0c7 <L78> brclr	151,x #\$00 0+127 <L115>
-0+0cb <L79> brclr	107,x #\$00 0+0de <L84\+0x1>
-0+0cf <L80> brn	0+082 <L56>
-0+0d1 <L81> brset	\*0+000 <L0> #\$00 0+141 <L124>
-0+0d5 <L82> brset	176,x #\$00 0+154 <L132>
-0+0d9 <L83> brset	50,x #\$00 0+119 <L110\+0x2>
-0+0dd <L84> bset	\*0+000 <L0> #\$00
-0+0e0 <L85> bset	24,x #\$00
-0+0e3 <L86> bset	92,x #\$00
-0+0e6 <L87> jsr	0+037 <L26>
-0+0e9 <L88> bvs	0+0ee <L89>
-0+0eb <L88\+0x2> jmp	0+253 <L254>
-0+0ee <L89> bvs	0+0a2 <L67>
-0+0f0 <L90> cba
-0+0f1 <L91> clc
-0+0f2 <L92> cli
-0+0f3 <L93> clr	251,x
-0+0f5 <L94> clr	0+000 <L0>
-0+0f8 <L95> clr	170,x
-0+0fa <L96> clra
-0+0fb <L97> clrb
-0+0fc <L98> clv
-0+0fd <L99> cmpa	#58
-0+0ff <L100> cmpa	\*0+000 <L0>
-0+101 <L101> cmpa	41,x
-0+103 <L102> cmpa	0+000 <L0>
-0+106 <L103> cmpa	230,x
-0+108 <L104> cmpb	#5
-0+10a <L105> cmpb	\*0+000 <L0>
-0+10c <L106> cmpb	124,x
-0+10e <L107> cmpb	0+000 <L0>
-0+111 <L108> cmpb	117,x
-0+113 <L109> cpd	#0+fd8 <L330\+0xcf1>
-0+117 <L110> cpd	\*0+000 <L0>
-0+11a <L111> cpd	97,x
-0+11d <L112> cpd	0+000 <L0>
-0+121 <L113> cpd	249,x
-0+124 <L114> cpx	#0000af5c <L330\+0xac75>
-0+127 <L115> cpx	\*0+000 <L0>
-0+129 <L116> cpx	168,x
-0+12b <L117> cpx	0+000 <L0>
-0+12e <L118> cpx	15,x
-0+130 <L119> cpy	#00004095 <L330\+0x3dae>
-0+134 <L120> cpy	\*0+000 <L0>
-0+137 <L121> cpy	235,x
-0+13a <L122> cpy	0+000 <L0>
-0+13e <L123> cpy	179,x
-0+141 <L124> com	5,x
-0+143 <L125> com	0+000 <L0>
-0+146 <L126> com	247,x
-0+148 <L127> coma
-0+149 <L128> comb
-0+14a <L129> cpd	#0000bf00 <L330\+0xbc19>
-0+14e <L130> cpd	\*0+000 <L0>
-0+151 <L131> cpd	161,x
-0+154 <L132> cpd	0+000 <L0>
-0+158 <L133> cpd	229,x
-0+15b <L134> cpx	#00008fca <L330\+0x8ce3>
-0+15e <L135> cpx	\*0+000 <L0>
-0+160 <L136> cpx	203,x
-0+162 <L137> cpx	0+000 <L0>
-0+165 <L138> cpx	72,x
-0+167 <L139> cpy	#0+247 <L248>
-0+16b <L140> cpy	\*0+000 <L0>
-0+16e <L141> cpy	189,x
-0+171 <L142> cpy	0+000 <L0>
-0+175 <L143> cpy	35,x
-0+178 <L144> daa
-0+179 <L145> dec	30,x
-0+17b <L146> dec	0+000 <L0>
-0+17e <L147> dec	28,x
-0+180 <L148> deca
-0+181 <L149> decb
-0+182 <L150> des
-0+183 <L151> dex
-0+184 <L152> dey
-0+186 <L153> eora	#123
-0+188 <L154> eora	\*0+000 <L0>
-0+18a <L155> eora	197,x
-0+18c <L156> eora	0+000 <L0>
-0+18f <L157> eora	115,x
-0+191 <L158> eorb	#90
-0+193 <L159> eorb	\*0+000 <L0>
-0+195 <L160> eorb	94,x
-0+197 <L161> eorb	0+000 <L0>
-0+19a <L162> eorb	121,x
-0+19c <L163> fdiv
-0+19d <L164> idiv
-0+19e <L165> inc	99,x
-0+1a0 <L166> inc	0+000 <L0>
-0+1a3 <L167> inc	112,x
-0+1a5 <L168> inca
-0+1a6 <L169> incb
-0+1a7 <L170> ins
-0+1a8 <L171> inx
-0+1a9 <L172> iny
-0+1ab <L173> jmp	100,x
-0+1ad <L174> jmp	0+000 <L0>
-0+1b0 <L175> jmp	17,x
-0+1b2 <L176> jsr	\*0+000 <L0>
-0+1b4 <L177> jsr	9,x
-0+1b6 <L178> jsr	0+000 <L0>
-0+1b9 <L179> jsr	170,x
-0+1bb <L180> ldaa	#212
-0+1bd <L181> ldaa	\*0+000 <L0>
-0+1bf <L182> ldaa	242,x
-0+1c1 <L183> ldaa	0+000 <L0>
-0+1c4 <L184> ldaa	16,x
-0+1c6 <L185> ldab	#175
-0+1c8 <L186> ldab	\*0+000 <L0>
-0+1ca <L187> ldab	51,x
-0+1cc <L188> ldab	0+000 <L0>
-0+1cf <L189> ldab	227,x
-0+1d1 <L190> ldd	#0000c550 <L330\+0xc269>
-0+1d4 <L191> ldd	\*0+000 <L0>
-0+1d6 <L192> ldd	71,x
-0+1d8 <L193> ldd	0+000 <L0>
-0+1db <L194> ldd	92,x
-0+1dd <L195> lds	#00004fbb <L330\+0x4cd4>
-0+1e0 <L196> lds	\*0+000 <L0>
-0+1e2 <L197> lds	34,x
-0+1e4 <L198> lds	0+000 <L0>
-0+1e7 <L199> lds	186,x
-0+1e9 <L200> ldx	#0000579b <L330\+0x54b4>
-0+1ec <L201> ldx	\*0+000 <L0>
-0+1ee <L202> ldx	245,x
-0+1f0 <L203> ldx	0+000 <L0>
-0+1f3 <L204> ldx	225,x
-0+1f5 <L205> ldy	#0000ac1a <L330\+0xa933>
-0+1f9 <L206> ldy	\*0+000 <L0>
-0+1fc <L207> ldy	127,x
-0+1ff <L208> ldy	0+000 <L0>
-0+203 <L209> ldy	248,x
-0+206 <L210> asl	41,x
-0+208 <L211> asl	0+000 <L0>
-0+20b <L212> asl	164,x
-0+20d <L213> asla
-0+20e <L214> aslb
-0+20f <L215> asld
-0+210 <L216> lsr	27,x
-0+212 <L217> lsr	0+000 <L0>
-0+215 <L218> lsr	181,x
-0+217 <L219> lsra
-0+218 <L220> lsrb
-0+219 <L221> lsrd
-0+21a <L222> mul
-0+21b <L223> neg	202,x
-0+21d <L224> neg	0+000 <L0>
-0+220 <L225> neg	232,x
-0+222 <L226> nega
-0+223 <L227> negb
-0+224 <L228> nop
-0+225 <L229> oraa	#152
-0+227 <L230> oraa	\*0+000 <L0>
-0+229 <L231> oraa	56,x
-0+22b <L232> oraa	0+000 <L0>
-0+22e <L233> oraa	121,x
-0+230 <L234> orab	#77
-0+232 <L235> orab	\*0+000 <L0>
-0+234 <L236> orab	52,x
-0+236 <L237> orab	0+000 <L0>
-0+239 <L238> orab	95,x
-0+23b <L239> psha
-0+23c <L240> pshb
-0+23d <L241> pshx
-0+23e <L242> pshy
-0+240 <L243> pula
-0+241 <L244> pulb
-0+242 <L245> pulx
-0+243 <L246> puly
-0+245 <L247> rol	78,x
-0+247 <L248> rol	0+000 <L0>
-0+24a <L249> rol	250,x
-0+24c <L250> rola
-0+24d <L251> rolb
-0+24e <L252> ror	203,x
-0+250 <L253> ror	0+000 <L0>
-0+253 <L254> ror	5,x
-0+255 <L255> rora
-0+256 <L256> rorb
-0+257 <L257> rti
-0+258 <L258> rts
-0+259 <L259> sba
-0+25a <L260> sbca	#172
-0+25c <L261> sbca	\*0+000 <L0>
-0+25e <L262> sbca	33,x
-0+260 <L263> sbca	0+000 <L0>
-0+263 <L264> sbca	170,x
-0+265 <L265> sbcb	#26
-0+267 <L266> sbcb	\*0+000 <L0>
-0+269 <L267> sbcb	162,x
-0+26b <L268> sbcb	0+000 <L0>
-0+26e <L269> sbcb	112,x
-0+270 <L270> sec
-0+271 <L271> sei
-0+272 <L272> sev
-0+273 <L273> staa	\*0+000 <L0>
-0+275 <L274> staa	115,x
-0+277 <L275> staa	0+000 <L0>
-0+27a <L276> staa	4,x
-0+27c <L277> stab	\*0+000 <L0>
-0+27e <L278> stab	211,x
-0+280 <L279> stab	0+000 <L0>
-0+283 <L280> stab	148,x
-0+285 <L281> std	\*0+000 <L0>
-0+287 <L282> std	175,x
-0+289 <L283> std	0+000 <L0>
-0+28c <L284> std	240,x
-0+28e <L285> stop
-0+28f <L286> sts	\*0+000 <L0>
-0+291 <L287> sts	158,x
-0+293 <L288> sts	0+000 <L0>
-0+296 <L289> sts	50,x
-0+298 <L290> stx	\*0+000 <L0>
-0+29a <L291> stx	73,x
-0+29c <L292> stx	0+000 <L0>
-0+29f <L293> stx	130,x
-0+2a1 <L294> sty	\*0+000 <L0>
-0+2a4 <L295> sty	169,x
-0+2a7 <L296> sty	0+000 <L0>
-0+2ab <L297> sty	112,x
-0+2ae <L298> suba	#212
-0+2b0 <L299> suba	\*0+000 <L0>
-0+2b2 <L300> suba	138,x
-0+2b4 <L301> suba	0+000 <L0>
-0+2b7 <L302> suba	84,x
-0+2b9 <L303> subb	#72
-0+2bb <L304> subb	\*0+000 <L0>
-0+2bd <L305> subb	10,x
-0+2bf <L306> subb	0+000 <L0>
-0+2c2 <L307> subb	213,x
-0+2c4 <L308> subd	#0000f10e <L330\+0xee27>
-0+2c7 <L309> subd	\*0+000 <L0>
-0+2c9 <L310> subd	168,x
-0+2cb <L311> subd	0+000 <L0>
-0+2ce <L312> subd	172,x
-0+2d0 <L313> swi
-0+2d1 <L314> tab
-0+2d2 <L315> tap
-0+2d3 <L316> tba
+0+0+ <L0> aba
+0+0001 <L1> abx
+0+0002 <L2> aby
+0+0004 <L3> adca	#103
+0+0006 <L4> adca	\*0+0+ <L0>
+			7: R_M68HC11_8	Z198
+0+0008 <L5> adca	105,x
+0+000a <L6> adca	0+0+ <L0>
+			b: R_M68HC11_16	symbol115
+0+000d <L7> adca	81,x
+0+000f <L8> adcb	#255
+0+0011 <L9> adcb	\*0+0+ <L0>
+			12: R_M68HC11_8	Z74
+0+0013 <L10> adcb	236,x
+0+0015 <L11> adcb	0+0+ <L0>
+			16: R_M68HC11_16	symbol41
+0+0018 <L12> adcb	205,x
+0+001a <L13> adda	#186
+0+001c <L14> adda	\*0+0+ <L0>
+			1d: R_M68HC11_8	Z171
+0+001e <L15> adda	242,x
+0+0020 <L16> adda	0+0+ <L0>
+			21: R_M68HC11_16	symbol251
+0+0023 <L17> adda	227,x
+0+0025 <L18> addb	#70
+0+0027 <L19> addb	\*0+0+ <L0>
+			28: R_M68HC11_8	Z124
+0+0029 <L20> addb	194,x
+0+002b <L21> addb	0+0+ <L0>
+			2c: R_M68HC11_16	symbol84
+0+002e <L22> addb	248,x
+0+0030 <L23> addd	#0+231b <L330\+0x2034>
+0+0033 <L24> addd	\*0+0+ <L0>
+			34: R_M68HC11_8	Z232
+0+0035 <L25> addd	231,x
+0+0037 <L26> addd	0+0+ <L0>
+			38: R_M68HC11_16	symbol141
+0+003a <L27> addd	118,x
+0+003c <L28> anda	#90
+0+003e <L29> anda	\*0+0+ <L0>
+			3f: R_M68HC11_8	Z46
+0+0040 <L30> anda	99,x
+0+0042 <L31> anda	0+0+ <L0>
+			43: R_M68HC11_16	symbol51
+0+0045 <L32> anda	159,x
+0+0047 <L33> andb	#201
+0+0049 <L34> andb	\*0+0+ <L0>
+			4a: R_M68HC11_8	Z154
+0+004b <L35> andb	102,x
+0+004d <L36> andb	0+0+ <L0>
+			4e: R_M68HC11_16	symbol50
+0+0050 <L37> andb	13,x
+0+0052 <L38> asl	183,x
+0+0054 <L39> asl	0+0+ <L0>
+			55: R_M68HC11_16	symbol49
+0+0057 <L40> asl	88,x
+0+0059 <L41> asla
+0+005a <L42> aslb
+0+005b <L43> asld
+0+005c <L44> asr	163,x
+0+005e <L45> asr	0+0+ <L0>
+			5f: R_M68HC11_16	symbol90
+0+0061 <L46> asr	37,x
+0+0063 <L47> asra
+0+0064 <L48> asrb
+0+0065 <L49> bcs	0+006a <L50>
+			65: R_M68HC11_RL_JUMP	\*ABS\*
+0+0067 <L49\+0x2> jmp	0+0+ <L0>
+			68: R_M68HC11_16	L93
+0+006a <L50> bclr	\*0+0+ <L0> #\$00
+			6b: R_M68HC11_8	Z5
+			6c: R_M68HC11_8	\$17
+0+006d <L51> bclr	88,x #\$00
+			6f: R_M68HC11_8	\$e9
+0+0070 <L52> bclr	94,x #\$00
+			72: R_M68HC11_8	\$d4
+0+0073 <L53> bcc	0+0078 <L54>
+			73: R_M68HC11_RL_JUMP	\*ABS\*
+0+0075 <L53\+0x2> jmp	0+0+ <L0>
+			76: R_M68HC11_16	L171
+0+0078 <L54> bne	0+007d <L55>
+			78: R_M68HC11_RL_JUMP	\*ABS\*
+0+007a <L54\+0x2> jmp	0+0+ <L0>
+			7b: R_M68HC11_16	L178
+0+007d <L55> blt	0+0082 <L56>
+			7d: R_M68HC11_RL_JUMP	\*ABS\*
+0+007f <L55\+0x2> jmp	0+0+ <L0>
+			80: R_M68HC11_16	L205
+0+0082 <L56> ble	0+0087 <L57>
+			82: R_M68HC11_RL_JUMP	\*ABS\*
+0+0084 <L56\+0x2> jmp	0+0+ <L0>
+			85: R_M68HC11_16	L198
+0+0087 <L57> bls	0+008c <L58>
+			87: R_M68HC11_RL_JUMP	\*ABS\*
+0+0089 <L57\+0x2> jmp	0+0+ <L0>
+			8a: R_M68HC11_16	L155
+0+008c <L58> bcs	0+0091 <L59>
+			8c: R_M68HC11_RL_JUMP	\*ABS\*
+0+008e <L58\+0x2> jmp	0+0+ <L0>
+			8f: R_M68HC11_16	L180
+0+0091 <L59> bita	#84
+0+0093 <L60> bita	\*0+0+ <L0>
+			94: R_M68HC11_8	Z17
+0+0095 <L61> bita	14,x
+0+0097 <L62> bita	0+0+ <L0>
+			98: R_M68HC11_16	symbol130
+0+009a <L63> bita	116,x
+0+009c <L64> bitb	#65
+0+009e <L65> bitb	\*0+0+ <L0>
+			9f: R_M68HC11_8	Z33
+0+00a0 <L66> bitb	61,x
+0+00a2 <L67> bitb	0+0+ <L0>
+			a3: R_M68HC11_16	symbol220
+0+00a5 <L68> bitb	135,x
+0+00a7 <L69> ble	0+011d <L112>
+			a7: R_M68HC11_RL_JUMP	\*ABS\*
+0+00a9 <L70> bcc	0+00ae <L71>
+			a9: R_M68HC11_RL_JUMP	\*ABS\*
+0+00ab <L70\+0x2> jmp	0+0+ <L0>
+			ac: R_M68HC11_16	L233
+0+00ae <L71> bls	0+0097 <L62>
+			ae: R_M68HC11_RL_JUMP	\*ABS\*
+0+00b0 <L72> bge	0+00b5 <L73>
+			b0: R_M68HC11_RL_JUMP	\*ABS\*
+0+00b2 <L72\+0x2> jmp	0+0+ <L0>
+			b3: R_M68HC11_16	L161
+0+00b5 <L73> bmi	0+009e <L65>
+			b5: R_M68HC11_RL_JUMP	\*ABS\*
+0+00b7 <L74> beq	0+00bc <L75>
+			b7: R_M68HC11_RL_JUMP	\*ABS\*
+0+00b9 <L74\+0x2> jmp	0+0+ <L0>
+			ba: R_M68HC11_16	L225
+0+00bc <L75> bmi	0+00c1 <L76>
+			bc: R_M68HC11_RL_JUMP	\*ABS\*
+0+00be <L75\+0x2> jmp	0+0+ <L0>
+			bf: R_M68HC11_16	L252
+0+00c1 <L76> bra	0+0106 <L103>
+			c1: R_M68HC11_RL_JUMP	\*ABS\*
+0+00c3 <L77> brclr	\*0+0+ <L0> #\$00 0+0145 <L125\+0x2>
+			c3: R_M68HC11_RL_JUMP	\*ABS\*
+			c4: R_M68HC11_8	Z62
+			c5: R_M68HC11_8	\$01
+0+00c7 <L78> brclr	151,x #\$00 0+0127 <L115>
+			c7: R_M68HC11_RL_JUMP	\*ABS\*
+			c9: R_M68HC11_8	\$ea
+0+00cb <L79> brclr	107,x #\$00 0+00de <L84\+0x1>
+			cb: R_M68HC11_RL_JUMP	\*ABS\*
+			cd: R_M68HC11_8	\$96
+0+00cf <L80> brn	0+0082 <L56>
+			cf: R_M68HC11_RL_JUMP	\*ABS\*
+0+00d1 <L81> brset	\*0+0+ <L0> #\$00 0+0141 <L124>
+			d1: R_M68HC11_RL_JUMP	\*ABS\*
+			d2: R_M68HC11_8	Z92
+			d3: R_M68HC11_8	\$2a
+0+00d5 <L82> brset	176,x #\$00 0+0154 <L132>
+			d5: R_M68HC11_RL_JUMP	\*ABS\*
+			d7: R_M68HC11_8	\$3b
+0+00d9 <L83> brset	50,x #\$00 0+0119 <L110\+0x2>
+			d9: R_M68HC11_RL_JUMP	\*ABS\*
+			db: R_M68HC11_8	\$af
+0+00dd <L84> bset	\*0+0+ <L0> #\$00
+			de: R_M68HC11_8	Z84
+			df: R_M68HC11_8	\$ec
+0+00e0 <L85> bset	24,x #\$00
+			e2: R_M68HC11_8	\$db
+0+00e3 <L86> bset	92,x #\$00
+			e5: R_M68HC11_8	\$02
+0+00e6 <L87> jsr	0+0+ <L0>
+			e6: R_M68HC11_RL_JUMP	\*ABS\*
+			e7: R_M68HC11_16	L26
+0+00e9 <L88> bvs	0+00ee <L89>
+			e9: R_M68HC11_RL_JUMP	\*ABS\*
+0+00eb <L88\+0x2> jmp	0+0+ <L0>
+			ec: R_M68HC11_16	L254
+0+00ee <L89> bvs	0+00a2 <L67>
+			ee: R_M68HC11_RL_JUMP	\*ABS\*
+0+00f0 <L90> cba
+0+00f1 <L91> clc
+0+00f2 <L92> cli
+0+00f3 <L93> clr	251,x
+0+00f5 <L94> clr	0+0+ <L0>
+			f6: R_M68HC11_16	symbol250
+0+00f8 <L95> clr	170,x
+0+00fa <L96> clra
+0+00fb <L97> clrb
+0+00fc <L98> clv
+0+00fd <L99> cmpa	#58
+0+00ff <L100> cmpa	\*0+0+ <L0>
+			100: R_M68HC11_8	Z251
+0+0101 <L101> cmpa	41,x
+0+0103 <L102> cmpa	0+0+ <L0>
+			104: R_M68HC11_16	symbol209
+0+0106 <L103> cmpa	230,x
+0+0108 <L104> cmpb	#5
+0+010a <L105> cmpb	\*0+0+ <L0>
+			10b: R_M68HC11_8	Z60
+0+010c <L106> cmpb	124,x
+0+010e <L107> cmpb	0+0+ <L0>
+			10f: R_M68HC11_16	symbol148
+0+0111 <L108> cmpb	117,x
+0+0113 <L109> cpd	#0+0fd8 <L330\+0xcf1>
+0+0117 <L110> cpd	\*0+0+ <L0>
+			119: R_M68HC11_8	Z190
+0+011a <L111> cpd	97,x
+0+011d <L112> cpd	0+0+ <L0>
+			11f: R_M68HC11_16	symbol137
+0+0121 <L113> cpd	249,x
+0+0124 <L114> cpx	#0+af5c <L330\+0xac75>
+0+0127 <L115> cpx	\*0+0+ <L0>
+			128: R_M68HC11_8	Z187
+0+0129 <L116> cpx	168,x
+0+012b <L117> cpx	0+0+ <L0>
+			12c: R_M68HC11_16	symbol153
+0+012e <L118> cpx	15,x
+0+0130 <L119> cpy	#0+4095 <L330\+0x3dae>
+0+0134 <L120> cpy	\*0+0+ <L0>
+			136: R_M68HC11_8	Z177
+0+0137 <L121> cpy	235,x
+0+013a <L122> cpy	0+0+ <L0>
+			13c: R_M68HC11_16	symbol241
+0+013e <L123> cpy	179,x
+0+0141 <L124> com	5,x
+0+0143 <L125> com	0+0+ <L0>
+			144: R_M68HC11_16	symbol239
+0+0146 <L126> com	247,x
+0+0148 <L127> coma
+0+0149 <L128> comb
+0+014a <L129> cpd	#0+bf00 <L330\+0xbc19>
+0+014e <L130> cpd	\*0+0+ <L0>
+			150: R_M68HC11_8	Z233
+0+0151 <L131> cpd	161,x
+0+0154 <L132> cpd	0+0+ <L0>
+			156: R_M68HC11_16	symbol58
+0+0158 <L133> cpd	229,x
+0+015b <L134> cpx	#0+8fca <L330\+0x8ce3>
+0+015e <L135> cpx	\*0+0+ <L0>
+			15f: R_M68HC11_8	Z11
+0+0160 <L136> cpx	203,x
+0+0162 <L137> cpx	0+0+ <L0>
+			163: R_M68HC11_16	symbol208
+0+0165 <L138> cpx	72,x
+0+0167 <L139> cpy	#0+0247 <L248>
+0+016b <L140> cpy	\*0+0+ <L0>
+			16d: R_M68HC11_8	Z100
+0+016e <L141> cpy	189,x
+0+0171 <L142> cpy	0+0+ <L0>
+			173: R_M68HC11_16	symbol31
+0+0175 <L143> cpy	35,x
+0+0178 <L144> daa
+0+0179 <L145> dec	30,x
+0+017b <L146> dec	0+0+ <L0>
+			17c: R_M68HC11_16	symbol168
+0+017e <L147> dec	28,x
+0+0180 <L148> deca
+0+0181 <L149> decb
+0+0182 <L150> des
+0+0183 <L151> dex
+0+0184 <L152> dey
+0+0186 <L153> eora	#123
+0+0188 <L154> eora	\*0+0+ <L0>
+			189: R_M68HC11_8	Z100
+0+018a <L155> eora	197,x
+0+018c <L156> eora	0+0+ <L0>
+			18d: R_M68HC11_16	symbol20
+0+018f <L157> eora	115,x
+0+0191 <L158> eorb	#90
+0+0193 <L159> eorb	\*0+0+ <L0>
+			194: R_M68HC11_8	Z197
+0+0195 <L160> eorb	94,x
+0+0197 <L161> eorb	0+0+ <L0>
+			198: R_M68HC11_16	symbol75
+0+019a <L162> eorb	121,x
+0+019c <L163> fdiv
+0+019d <L164> idiv
+0+019e <L165> inc	99,x
+0+01a0 <L166> inc	0+0+ <L0>
+			1a1: R_M68HC11_16	symbol59
+0+01a3 <L167> inc	112,x
+0+01a5 <L168> inca
+0+01a6 <L169> incb
+0+01a7 <L170> ins
+0+01a8 <L171> inx
+0+01a9 <L172> iny
+0+01ab <L173> jmp	100,x
+0+01ad <L174> jmp	0+0+ <L0>
+			1ad: R_M68HC11_RL_JUMP	\*ABS\*
+			1ae: R_M68HC11_16	symbol36
+0+01b0 <L175> jmp	17,x
+0+01b2 <L176> jsr	\*0+0+ <L0>
+			1b3: R_M68HC11_8	Z158
+0+01b4 <L177> jsr	9,x
+0+01b6 <L178> jsr	0+0+ <L0>
+			1b7: R_M68HC11_16	symbol220
+0+01b9 <L179> jsr	170,x
+0+01bb <L180> ldaa	#212
+0+01bd <L181> ldaa	\*0+0+ <L0>
+			1be: R_M68HC11_8	Z172
+0+01bf <L182> ldaa	242,x
+0+01c1 <L183> ldaa	0+0+ <L0>
+			1c2: R_M68HC11_16	symbol27
+0+01c4 <L184> ldaa	16,x
+0+01c6 <L185> ldab	#175
+0+01c8 <L186> ldab	\*0+0+ <L0>
+			1c9: R_M68HC11_8	Z59
+0+01ca <L187> ldab	51,x
+0+01cc <L188> ldab	0+0+ <L0>
+			1cd: R_M68HC11_16	symbol205
+0+01cf <L189> ldab	227,x
+0+01d1 <L190> ldd	#0+c550 <L330\+0xc269>
+0+01d4 <L191> ldd	\*0+0+ <L0>
+			1d5: R_M68HC11_8	Z72
+0+01d6 <L192> ldd	71,x
+0+01d8 <L193> ldd	0+0+ <L0>
+			1d9: R_M68HC11_16	symbol21
+0+01db <L194> ldd	92,x
+0+01dd <L195> lds	#0+4fbb <L330\+0x4cd4>
+0+01e0 <L196> lds	\*0+0+ <L0>
+			1e1: R_M68HC11_8	Z111
+0+01e2 <L197> lds	34,x
+0+01e4 <L198> lds	0+0+ <L0>
+			1e5: R_M68HC11_16	symbol25
+0+01e7 <L199> lds	186,x
+0+01e9 <L200> ldx	#0+579b <L330\+0x54b4>
+0+01ec <L201> ldx	\*0+0+ <L0>
+			1ed: R_M68HC11_8	Z125
+0+01ee <L202> ldx	245,x
+0+01f0 <L203> ldx	0+0+ <L0>
+			1f1: R_M68HC11_16	symbol11
+0+01f3 <L204> ldx	225,x
+0+01f5 <L205> ldy	#0+ac1a <L330\+0xa933>
+0+01f9 <L206> ldy	\*0+0+ <L0>
+			1fb: R_M68HC11_8	Z28
+0+01fc <L207> ldy	127,x
+0+01ff <L208> ldy	0+0+ <L0>
+			201: R_M68HC11_16	symbol35
+0+0203 <L209> ldy	248,x
+0+0206 <L210> asl	41,x
+0+0208 <L211> asl	0+0+ <L0>
+			209: R_M68HC11_16	symbol248
+0+020b <L212> asl	164,x
+0+020d <L213> asla
+0+020e <L214> aslb
+0+020f <L215> asld
+0+0210 <L216> lsr	27,x
+0+0212 <L217> lsr	0+0+ <L0>
+			213: R_M68HC11_16	symbol19
+0+0215 <L218> lsr	181,x
+0+0217 <L219> lsra
+0+0218 <L220> lsrb
+0+0219 <L221> lsrd
+0+021a <L222> mul
+0+021b <L223> neg	202,x
+0+021d <L224> neg	0+0+ <L0>
+			21e: R_M68HC11_16	symbol78
+0+0220 <L225> neg	232,x
+0+0222 <L226> nega
+0+0223 <L227> negb
+0+0224 <L228> nop
+0+0225 <L229> oraa	#152
+0+0227 <L230> oraa	\*0+0+ <L0>
+			228: R_M68HC11_8	Z50
+0+0229 <L231> oraa	56,x
+0+022b <L232> oraa	0+0+ <L0>
+			22c: R_M68HC11_16	symbol224
+0+022e <L233> oraa	121,x
+0+0230 <L234> orab	#77
+0+0232 <L235> orab	\*0+0+ <L0>
+			233: R_M68HC11_8	Z61
+0+0234 <L236> orab	52,x
+0+0236 <L237> orab	0+0+ <L0>
+			237: R_M68HC11_16	symbol188
+0+0239 <L238> orab	95,x
+0+023b <L239> psha
+0+023c <L240> pshb
+0+023d <L241> pshx
+0+023e <L242> pshy
+0+0240 <L243> pula
+0+0241 <L244> pulb
+0+0242 <L245> pulx
+0+0243 <L246> puly
+0+0245 <L247> rol	78,x
+0+0247 <L248> rol	0+0+ <L0>
+			248: R_M68HC11_16	symbol119
+0+024a <L249> rol	250,x
+0+024c <L250> rola
+0+024d <L251> rolb
+0+024e <L252> ror	203,x
+0+0250 <L253> ror	0+0+ <L0>
+			251: R_M68HC11_16	symbol108
+0+0253 <L254> ror	5,x
+0+0255 <L255> rora
+0+0256 <L256> rorb
+0+0257 <L257> rti
+0+0258 <L258> rts
+0+0259 <L259> sba
+0+025a <L260> sbca	#172
+0+025c <L261> sbca	\*0+0+ <L0>
+			25d: R_M68HC11_8	Z134
+0+025e <L262> sbca	33,x
+0+0260 <L263> sbca	0+0+ <L0>
+			261: R_M68HC11_16	symbol43
+0+0263 <L264> sbca	170,x
+0+0265 <L265> sbcb	#26
+0+0267 <L266> sbcb	\*0+0+ <L0>
+			268: R_M68HC11_8	Z85
+0+0269 <L267> sbcb	162,x
+0+026b <L268> sbcb	0+0+ <L0>
+			26c: R_M68HC11_16	symbol190
+0+026e <L269> sbcb	112,x
+0+0270 <L270> sec
+0+0271 <L271> sei
+0+0272 <L272> sev
+0+0273 <L273> staa	\*0+0+ <L0>
+			274: R_M68HC11_8	Z181
+0+0275 <L274> staa	115,x
+0+0277 <L275> staa	0+0+ <L0>
+			278: R_M68HC11_16	symbol59
+0+027a <L276> staa	4,x
+0+027c <L277> stab	\*0+0+ <L0>
+			27d: R_M68HC11_8	Z92
+0+027e <L278> stab	211,x
+0+0280 <L279> stab	0+0+ <L0>
+			281: R_M68HC11_16	symbol54
+0+0283 <L280> stab	148,x
+0+0285 <L281> std	\*0+0+ <L0>
+			286: R_M68HC11_8	Z179
+0+0287 <L282> std	175,x
+0+0289 <L283> std	0+0+ <L0>
+			28a: R_M68HC11_16	symbol226
+0+028c <L284> std	240,x
+0+028e <L285> stop
+0+028f <L286> sts	\*0+0+ <L0>
+			290: R_M68HC11_8	Z228
+0+0291 <L287> sts	158,x
+0+0293 <L288> sts	0+0+ <L0>
+			294: R_M68HC11_16	symbol79
+0+0296 <L289> sts	50,x
+0+0298 <L290> stx	\*0+0+ <L0>
+			299: R_M68HC11_8	Z21
+0+029a <L291> stx	73,x
+0+029c <L292> stx	0+0+ <L0>
+			29d: R_M68HC11_16	symbol253
+0+029f <L293> stx	130,x
+0+02a1 <L294> sty	\*0+0+ <L0>
+			2a3: R_M68HC11_8	Z78
+0+02a4 <L295> sty	169,x
+0+02a7 <L296> sty	0+0+ <L0>
+			2a9: R_M68HC11_16	symbol8
+0+02ab <L297> sty	112,x
+0+02ae <L298> suba	#212
+0+02b0 <L299> suba	\*0+0+ <L0>
+			2b1: R_M68HC11_8	Z178
+0+02b2 <L300> suba	138,x
+0+02b4 <L301> suba	0+0+ <L0>
+			2b5: R_M68HC11_16	symbol41
+0+02b7 <L302> suba	84,x
+0+02b9 <L303> subb	#72
+0+02bb <L304> subb	\*0+0+ <L0>
+			2bc: R_M68HC11_8	Z154
+0+02bd <L305> subb	10,x
+0+02bf <L306> subb	0+0+ <L0>
+			2c0: R_M68HC11_16	symbol188
+0+02c2 <L307> subb	213,x
+0+02c4 <L308> subd	#0+f10e <L330\+0xee27>
+0+02c7 <L309> subd	\*0+0+ <L0>
+			2c8: R_M68HC11_8	Z24
+0+02c9 <L310> subd	168,x
+0+02cb <L311> subd	0+0+ <L0>
+			2cc: R_M68HC11_16	symbol68
+0+02ce <L312> subd	172,x
+0+02d0 <L313> swi
+0+02d1 <L314> tab
+0+02d2 <L315> tap
+0+02d3 <L316> tba
 	...
-0+2d5 <L318> tpa
-0+2d6 <L319> tst	91,x
-0+2d8 <L320> tst	0+000 <L0>
-0+2db <L321> tst	142,x
-0+2dd <L322> tsta
-0+2de <L323> tstb
-0+2df <L324> tsx
-0+2e0 <L325> tsy
-0+2e2 <L326> txs
-0+2e3 <L327> tys
-0+2e5 <L328> wai
-0+2e6 <L329> xgdx
-0+2e7 <L330> xgdy
+0+02d5 <L318> tpa
+0+02d6 <L319> tst	91,x
+0+02d8 <L320> tst	0+0+ <L0>
+			2d9: R_M68HC11_16	symbol243
+0+02db <L321> tst	142,x
+0+02dd <L322> tsta
+0+02de <L323> tstb
+0+02df <L324> tsx
+0+02e0 <L325> tsy
+0+02e2 <L326> txs
+0+02e3 <L327> tys
+0+02e5 <L328> wai
+0+02e6 <L329> xgdx
+0+02e7 <L330> xgdy
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/m68hc11/branchs12.d binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/branchs12.d
--- binutils-2.11.2/gas/testsuite/gas/m68hc11/branchs12.d	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/branchs12.d	Sun Dec 23 15:14:51 2001
@@ -0,0 +1,225 @@
+#objdump: -d --prefix-addresses --reloc
+#as: -m68hc12
+#name: 68HC12 branchs
+
+.*: +file format elf32\-m68hc12
+
+Disassembly of section .text:
+0+00 <start> bgt	0+48 <L1>
+[	]+0: R_M68HC11_RL_JUMP	\*ABS\*
+0+02 <start\+0x2> bge	0+48 <L1>
+[	]+2: R_M68HC11_RL_JUMP	\*ABS\*
+0+04 <start\+0x4> ble	0+48 <L1>
+[	]+4: R_M68HC11_RL_JUMP	\*ABS\*
+0+06 <start\+0x6> blt	0+48 <L1>
+[	]+6: R_M68HC11_RL_JUMP	\*ABS\*
+0+08 <start\+0x8> bhi	0+48 <L1>
+[	]+8: R_M68HC11_RL_JUMP	\*ABS\*
+0+0a <start\+0xa> bcc	0+48 <L1>
+[	]+a: R_M68HC11_RL_JUMP	\*ABS\*
+0+0c <start\+0xc> bcc	0+48 <L1>
+[	]+c: R_M68HC11_RL_JUMP	\*ABS\*
+0+0e <start\+0xe> beq	0+48 <L1>
+[	]+e: R_M68HC11_RL_JUMP	\*ABS\*
+0+10 <start\+0x10> bls	0+48 <L1>
+[	]+10: R_M68HC11_RL_JUMP	\*ABS\*
+0+12 <start\+0x12> bcs	0+48 <L1>
+[	]+12: R_M68HC11_RL_JUMP	\*ABS\*
+0+14 <start\+0x14> bcs	0+48 <L1>
+[	]+14: R_M68HC11_RL_JUMP	\*ABS\*
+0+16 <start\+0x16> bmi	0+48 <L1>
+[	]+16: R_M68HC11_RL_JUMP	\*ABS\*
+0+18 <start\+0x18> bvs	0+48 <L1>
+[	]+18: R_M68HC11_RL_JUMP	\*ABS\*
+0+1a <start\+0x1a> bra	0+48 <L1>
+[	]+1a: R_M68HC11_RL_JUMP	\*ABS\*
+0+1c <start\+0x1c> bvc	0+48 <L1>
+[	]+1c: R_M68HC11_RL_JUMP	\*ABS\*
+0+1e <start\+0x1e> bne	0+48 <L1>
+[	]+1e: R_M68HC11_RL_JUMP	\*ABS\*
+0+20 <start\+0x20> bpl	0+48 <L1>
+[	]+20: R_M68HC11_RL_JUMP	\*ABS\*
+0+22 <start\+0x22> brn	0+48 <L1>
+[	]+22: R_M68HC11_RL_JUMP	\*ABS\*
+0+24 <start\+0x24> bgt	0+00 <start>
+[	]+24: R_M68HC11_RL_JUMP	\*ABS\*
+0+26 <start\+0x26> bge	0+00 <start>
+[	]+26: R_M68HC11_RL_JUMP	\*ABS\*
+0+28 <start\+0x28> ble	0+00 <start>
+[	]+28: R_M68HC11_RL_JUMP	\*ABS\*
+0+2a <start\+0x2a> blt	0+00 <start>
+[	]+2a: R_M68HC11_RL_JUMP	\*ABS\*
+0+2c <start\+0x2c> bhi	0+00 <start>
+[	]+2c: R_M68HC11_RL_JUMP	\*ABS\*
+0+2e <start\+0x2e> bcc	0+00 <start>
+[	]+2e: R_M68HC11_RL_JUMP	\*ABS\*
+0+30 <start\+0x30> bcc	0+00 <start>
+[	]+30: R_M68HC11_RL_JUMP	\*ABS\*
+0+32 <start\+0x32> beq	0+00 <start>
+[	]+32: R_M68HC11_RL_JUMP	\*ABS\*
+0+34 <start\+0x34> bls	0+00 <start>
+[	]+34: R_M68HC11_RL_JUMP	\*ABS\*
+0+36 <start\+0x36> bcs	0+00 <start>
+[	]+36: R_M68HC11_RL_JUMP	\*ABS\*
+0+38 <start\+0x38> bcs	0+00 <start>
+[	]+38: R_M68HC11_RL_JUMP	\*ABS\*
+0+3a <start\+0x3a> bmi	0+00 <start>
+[	]+3a: R_M68HC11_RL_JUMP	\*ABS\*
+0+3c <start\+0x3c> bvs	0+00 <start>
+[	]+3c: R_M68HC11_RL_JUMP	\*ABS\*
+0+3e <start\+0x3e> bra	0+00 <start>
+[	]+3e: R_M68HC11_RL_JUMP	\*ABS\*
+0+40 <start\+0x40> bvc	0+00 <start>
+[	]+40: R_M68HC11_RL_JUMP	\*ABS\*
+0+42 <start\+0x42> bne	0+00 <start>
+[	]+42: R_M68HC11_RL_JUMP	\*ABS\*
+0+44 <start\+0x44> bpl	0+00 <start>
+[	]+44: R_M68HC11_RL_JUMP	\*ABS\*
+0+46 <start\+0x46> brn	0+00 <start>
+[	]+46: R_M68HC11_RL_JUMP	\*ABS\*
+0+48 <L1> lbgt	0+1e7 <L2>
+[	]+48: R_M68HC11_RL_JUMP	\*ABS\*
+0+4c <L1\+0x4> lbge	0+1e7 <L2>
+[	]+4c: R_M68HC11_RL_JUMP	\*ABS\*
+0+50 <L1\+0x8> lble	0+1e7 <L2>
+[	]+50: R_M68HC11_RL_JUMP	\*ABS\*
+0+54 <L1\+0xc> lblt	0+1e7 <L2>
+[	]+54: R_M68HC11_RL_JUMP	\*ABS\*
+0+58 <L1\+0x10> lbhi	0+1e7 <L2>
+[	]+58: R_M68HC11_RL_JUMP	\*ABS\*
+0+5c <L1\+0x14> lbcc	0+1e7 <L2>
+[	]+5c: R_M68HC11_RL_JUMP	\*ABS\*
+0+60 <L1\+0x18> lbcc	0+1e7 <L2>
+[	]+60: R_M68HC11_RL_JUMP	\*ABS\*
+0+64 <L1\+0x1c> lbeq	0+1e7 <L2>
+[	]+64: R_M68HC11_RL_JUMP	\*ABS\*
+0+68 <L1\+0x20> lbls	0+1e7 <L2>
+[	]+68: R_M68HC11_RL_JUMP	\*ABS\*
+0+6c <L1\+0x24> lbcs	0+1e7 <L2>
+[	]+6c: R_M68HC11_RL_JUMP	\*ABS\*
+0+70 <L1\+0x28> lbcs	0+1e7 <L2>
+[	]+70: R_M68HC11_RL_JUMP	\*ABS\*
+0+74 <L1\+0x2c> lbmi	0+1e7 <L2>
+[	]+74: R_M68HC11_RL_JUMP	\*ABS\*
+0+78 <L1\+0x30> lbvs	0+1e7 <L2>
+[	]+78: R_M68HC11_RL_JUMP	\*ABS\*
+0+7c <L1\+0x34> lbra	0+1e7 <L2>
+[	]+7c: R_M68HC11_RL_JUMP	\*ABS\*
+0+80 <L1\+0x38> lbvc	0+1e7 <L2>
+[	]+80: R_M68HC11_RL_JUMP	\*ABS\*
+0+84 <L1\+0x3c> lbne	0+1e7 <L2>
+[	]+84: R_M68HC11_RL_JUMP	\*ABS\*
+0+88 <L1\+0x40> lbpl	0+1e7 <L2>
+[	]+88: R_M68HC11_RL_JUMP	\*ABS\*
+0+8c <L1\+0x44> lbrn	0+1e7 <L2>
+[	]+8c: R_M68HC11_RL_JUMP	\*ABS\*
+0+90 <L1\+0x48> lbgt	0+00 <start>
+[	]+90: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+92: R_M68HC11_PCREL_16	undefined
+0+94 <L1\+0x4c> lbge	0+00 <start>
+[	]+94: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+96: R_M68HC11_PCREL_16	undefined
+0+98 <L1\+0x50> lble	0+00 <start>
+[	]+98: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+9a: R_M68HC11_PCREL_16	undefined
+0+9c <L1\+0x54> lblt	0+00 <start>
+[	]+9c: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+9e: R_M68HC11_PCREL_16	undefined
+0+a0 <L1\+0x58> lbhi	0+00 <start>
+[	]+a0: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+a2: R_M68HC11_PCREL_16	undefined
+0+a4 <L1\+0x5c> lbcc	0+00 <start>
+[	]+a4: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+a6: R_M68HC11_PCREL_16	undefined
+0+a8 <L1\+0x60> lbcc	0+00 <start>
+[	]+a8: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+aa: R_M68HC11_PCREL_16	undefined
+0+ac <L1\+0x64> lbeq	0+00 <start>
+[	]+ac: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+ae: R_M68HC11_PCREL_16	undefined
+0+b0 <L1\+0x68> lbls	0+00 <start>
+[	]+b0: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+b2: R_M68HC11_PCREL_16	undefined
+0+b4 <L1\+0x6c> lbcs	0+00 <start>
+[	]+b4: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+b6: R_M68HC11_PCREL_16	undefined
+0+b8 <L1\+0x70> lbcs	0+00 <start>
+[	]+b8: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+ba: R_M68HC11_PCREL_16	undefined
+0+bc <L1\+0x74> lbmi	0+00 <start>
+[	]+bc: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+be: R_M68HC11_PCREL_16	undefined
+0+c0 <L1\+0x78> lbvs	0+00 <start>
+[	]+c0: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+c2: R_M68HC11_PCREL_16	undefined
+0+c4 <L1\+0x7c> jmp	0+00 <start>
+[	]+c4: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+c5: R_M68HC11_16	undefined
+0+c7 <L1\+0x7f> lbvc	0+00 <start>
+[	]+c7: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+c9: R_M68HC11_PCREL_16	undefined
+0+cb <L1\+0x83> lbne	0+00 <start>
+[	]+cb: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+cd: R_M68HC11_PCREL_16	undefined
+0+cf <L1\+0x87> lbpl	0+00 <start>
+[	]+cf: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+d1: R_M68HC11_PCREL_16	undefined
+0+d3 <L1\+0x8b> lbrn	0+00 <start>
+[	]+d3: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+d5: R_M68HC11_PCREL_16	undefined
+0+d7 <L1\+0x8f> lbgt	0+10 <start\+0x10>
+[	]+d7: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+d9: R_M68HC11_PCREL_16	undefined
+0+db <L1\+0x93> lbge	0+10 <start\+0x10>
+[	]+db: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+dd: R_M68HC11_PCREL_16	undefined
+0+df <L1\+0x97> lble	0+10 <start\+0x10>
+[	]+df: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+e1: R_M68HC11_PCREL_16	undefined
+0+e3 <L1\+0x9b> lblt	0+10 <start\+0x10>
+[	]+e3: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+e5: R_M68HC11_PCREL_16	undefined
+0+e7 <L1\+0x9f> lbhi	0+10 <start\+0x10>
+[	]+e7: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+e9: R_M68HC11_PCREL_16	undefined
+0+eb <L1\+0xa3> lbcc	0+10 <start\+0x10>
+[	]+eb: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+ed: R_M68HC11_PCREL_16	undefined
+0+ef <L1\+0xa7> lbcc	0+10 <start\+0x10>
+[	]+ef: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+f1: R_M68HC11_PCREL_16	undefined
+0+f3 <L1\+0xab> lbeq	0+10 <start\+0x10>
+[	]+f3: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+f5: R_M68HC11_PCREL_16	undefined
+0+f7 <L1\+0xaf> lbls	0+10 <start\+0x10>
+[	]+f7: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+f9: R_M68HC11_PCREL_16	undefined
+0+fb <L1\+0xb3> lbcs	0+10 <start\+0x10>
+[	]+fb: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+fd: R_M68HC11_PCREL_16	undefined
+0+ff <L1\+0xb7> lbcs	0+10 <start\+0x10>
+[	]+ff: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+101: R_M68HC11_PCREL_16	undefined
+0+103 <L1\+0xbb> lbmi	0+10 <start\+0x10>
+[	]+103: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+105: R_M68HC11_PCREL_16	undefined
+0+107 <L1\+0xbf> lbvs	0+10 <start\+0x10>
+[	]+107: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+109: R_M68HC11_PCREL_16	undefined
+0+10b <L1\+0xc3> lbra	0+10 <start\+0x10>
+[	]+10b: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+10d: R_M68HC11_PCREL_16	undefined
+0+10f <L1\+0xc7> lbvc	0+10 <start\+0x10>
+[	]+10f: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+111: R_M68HC11_PCREL_16	undefined
+0+113 <L1\+0xcb> lbne	0+10 <start\+0x10>
+[	]+113: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+115: R_M68HC11_PCREL_16	undefined
+0+117 <L1\+0xcf> lbpl	0+10 <start\+0x10>
+[	]+117: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+119: R_M68HC11_PCREL_16	undefined
+0+11b <L1\+0xd3> lbrn	0+10 <start\+0x10>
+[	]+11b: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+11d: R_M68HC11_PCREL_16	undefined
+	...
+0+1e7 <L2> rts
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/m68hc11/branchs12.s binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/branchs12.s
--- binutils-2.11.2/gas/testsuite/gas/m68hc11/branchs12.s	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/branchs12.s	Sun Dec 23 15:08:05 2001
@@ -0,0 +1,111 @@
+#
+# Try to verify all branchs for 68HC12
+# Ensures that PC-relative relocations are correct.
+#
+	sect .text
+	globl start
+
+start:
+L0:
+	;; Branchs to defined symbols, positive offset < 128
+	bgt	L1
+	bge	L1
+	ble	L1
+	blt	L1
+	bhi	L1
+	bhs	L1
+	bcc	L1
+	beq	L1
+	bls	L1
+	blo	L1
+	bcs	L1
+	bmi	L1
+	bvs	L1
+	bra	L1
+	bvc	L1
+	bne	L1
+	bpl	L1
+	brn	L1
+
+	;; Branchs to defined symbols, negative offset > -128
+	bgt	L0
+	bge	L0
+	ble	L0
+	blt	L0
+	bhi	L0
+	bhs	L0
+	bcc	L0
+	beq	L0
+	bls	L0
+	blo	L0
+	bcs	L0
+	bmi	L0
+	bvs	L0
+	bra	L0
+	bvc	L0
+	bne	L0
+	bpl	L0
+	brn	L0
+L1:
+	;; Branchs to defined symbols, positive offset > -128
+	lbgt	L2
+	lbge	L2
+	lble	L2
+	lblt	L2
+	lbhi	L2
+	lbhs	L2
+	lbcc	L2
+	lbeq	L2
+	lbls	L2
+	lblo	L2
+	lbcs	L2
+	lbmi	L2
+	lbvs	L2
+	lbra	L2
+	lbvc	L2
+	lbne	L2
+	lbpl	L2
+	lbrn	L2
+
+	;; Branchs to undefined symbols, translated into lbcc
+	bgt	undefined
+	bge	undefined
+	ble	undefined
+	blt	undefined
+	bhi	undefined
+	bhs	undefined
+	bcc	undefined
+	beq	undefined
+	bls	undefined
+	blo	undefined
+	bcs	undefined
+	bmi	undefined
+	bvs	undefined
+	bra	undefined
+	bvc	undefined
+	bne	undefined
+	bpl	undefined
+	brn	undefined
+
+	;; Far branchs to undefined symbols
+	lbgt	undefined+16
+	lbge	undefined+16
+	lble	undefined+16
+	lblt	undefined+16
+	lbhi	undefined+16
+	lbhs	undefined+16
+	lbcc	undefined+16
+	lbeq	undefined+16
+	lbls	undefined+16
+	lblo	undefined+16
+	lbcs	undefined+16
+	lbmi	undefined+16
+	lbvs	undefined+16
+	lbra	undefined+16
+	lbvc	undefined+16
+	lbne	undefined+16
+	lbpl	undefined+16
+	lbrn	undefined+16
+	.skip	200
+L2:
+	rts
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/m68hc11/insns-dwarf2.d binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/insns-dwarf2.d
--- binutils-2.11.2/gas/testsuite/gas/m68hc11/insns-dwarf2.d	Thu Jan 11 20:48:41 2001
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/insns-dwarf2.d	Sat Dec 15 23:17:57 2001
@@ -9,20 +9,20 @@
 
 Disassembly of section .text:
 
-0+0 <_start>:
+00000000 <_start>:
 	.globl _start
 	.sect .text
 
 _start:
 	lds #stack\+1024
-   0:	8e 04 00    	lds	#400 <L1\+0x3a9>
+   0:	8e 04 00    	lds	#400 <.L0\+0x3a4>
 	ldx #1
    3:	ce 00 01    	ldx	#1 <_start\+0x1>
 
-00000006 <Loop>:
+0+06 <Loop>:
 Loop:	
 	jsr test
-   6:	bd 00 10    	jsr	10 <test>
+   6:	bd 00 00    	jsr	0 <_start>
 	dex
    9:	09          	dex
 	bne Loop
@@ -43,7 +43,7 @@ test:
 	ldd #2
   10:	cc 00 02    	ldd	#2 <_start\+0x2>
 	jsr test2
-  13:	bd 00 17    	jsr	17 <test2>
+  13:	bd 00 00    	jsr	0 <_start>
 	rts
   16:	39          	rts
 
@@ -87,7 +87,7 @@ test2:
 	brclr \*ZD2\+2, #40, test2
   3d:	13 02 28 d6 	brclr	\*2 <_start\+0x2> #\$28 17 <test2>
 	ldy #24\+_start-44
-  41:	18 ce ff ec 	ldy	#ffec <L1\+0xff95>
+  41:	18 ce ff ec 	ldy	#ffec <.L0\+0xff90>
 	ldd B_low,y
   45:	18 ec 0c    	ldd	12,y
 	addd A_low,y
@@ -99,9 +99,9 @@ test2:
 	subd #A_low
   51:	83 00 2c    	subd	#2c <test2\+0x15>
 	jmp Stop
-  54:	7e 00 0c    	jmp	c <Stop>
+  54:	7e 00 00    	jmp	0 <_start>
 
-0+057 <L1>:
+00000057 <L1>:
 L1:	
 	anda #%lo\(test2\)
   57:	84 17       	anda	#23
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/m68hc11/insns.d binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/insns.d
--- binutils-2.11.2/gas/testsuite/gas/m68hc11/insns.d	Mon Jun 19 03:22:41 2000
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/insns.d	Sat Dec 15 23:17:57 2001
@@ -1,4 +1,4 @@
-#objdump: -d --prefix-addresses
+#objdump: -d --prefix-addresses --reloc
 #as: -m68hc11
 #name: insns
 
@@ -7,38 +7,57 @@
 .*: +file format elf32\-m68hc11
 
 Disassembly of section .text:
-0+000 <_start> lds	#0+0400 <L1\+0x3a9>
-0+003 <_start\+0x3> ldx	#0+0001 <_start\+0x1>
-0+006 <Loop> jsr	0+0010 <test>
-0+009 <Loop\+0x3> dex
-0+00a <Loop\+0x4> bne	0+0006 <Loop>
-0+00c <Stop> .byte	0xcd, 0x03
-0+00e <Stop\+0x2> bra	0+0000 <_start>
-0+010 <test> ldd	#0+0002 <_start\+0x2>
-0+013 <test\+0x3> jsr	0+0017 <test2>
-0+016 <test\+0x6> rts
-0+017 <test2> ldx	23,y
-0+01a <test2\+0x3> std	23,x
-0+01c <test2\+0x5> ldd	0,x
-0+01e <test2\+0x7> sty	0,y
-0+021 <test2\+0xa> stx	0,y
-0+024 <test2\+0xd> brclr	6,x #\$04 00000017 <test2>
-0+028 <test2\+0x11> brclr	12,x #\$08 00000017 <test2>
-0+02c <test2\+0x15> ldd	\*0+0 <_start>
-0+02e <test2\+0x17> ldx	\*0+2 <_start\+0x2>
-0+030 <test2\+0x19> clr	0+0 <_start>
-0+033 <test2\+0x1c> clr	0+1 <_start\+0x1>
-0+036 <test2\+0x1f> bne	0+34 <test2\+0x1d>
-0+038 <test2\+0x21> beq	0+3c <test2\+0x25>
-0+03a <test2\+0x23> bclr	\*0+1 <_start\+0x1> #\$20
-0+03d <test2\+0x26> brclr	\*0+2 <_start\+0x2> #\$28 0+017 <test2>
-0+041 <test2\+0x2a> ldy	#0+ffec <L1\+0xff95>
-0+045 <test2\+0x2e> ldd	12,y
-0+048 <test2\+0x31> addd	44,y
-0+04b <test2\+0x34> addd	50,y
-0+04e <test2\+0x37> subd	0+02c <test2\+0x15>
-0+051 <test2\+0x3a> subd	#0+02c <test2\+0x15>
-0+054 <test2\+0x3d> jmp	0000000c <Stop>
-0+057 <L1> anda	#23
-0+059 <L1\+0x2> andb	#0
-0+05b <L1\+0x4> rts
\ No newline at end of file
+0+0+ <_start> lds	#0+0400 <L1\+0x3a9>
+[	]+1: R_M68HC11_16	stack
+0+0003 <_start\+0x3> ldx	#0+0001 <_start\+0x1>
+0+0006 <Loop> jsr	0+0+ <_start>
+[	]+7: R_M68HC11_16	test
+0+0009 <Loop\+0x3> dex
+0+000a <Loop\+0x4> bne	0+0006 <Loop>
+[	]+a: R_M68HC11_RL_JUMP	\*ABS\*
+0+000c <Stop> .byte	0xcd, 0x03
+0+000e <Stop\+0x2> bra	0+0+ <_start>
+[	]+e: R_M68HC11_RL_JUMP	\*ABS\*
+0+0010 <test> ldd	#0+0002 <_start\+0x2>
+0+0013 <test\+0x3> jsr	0+0+ <_start>
+[	]+14: R_M68HC11_16	test2
+0+0016 <test\+0x6> rts
+0+0017 <test2> ldx	23,y
+0+001a <test2\+0x3> std	23,x
+0+001c <test2\+0x5> ldd	0,x
+0+001e <test2\+0x7> sty	0,y
+0+0021 <test2\+0xa> stx	0,y
+0+0024 <test2\+0xd> brclr	6,x #\$04 0+0017 <test2>
+[	]+24: R_M68HC11_RL_JUMP	\*ABS\*
+0+0028 <test2\+0x11> brclr	12,x #\$08 0+0017 <test2>
+[	]+28: R_M68HC11_RL_JUMP	\*ABS\*
+0+002c <test2\+0x15> ldd	\*0+0+ <_start>
+[	]+2d: R_M68HC11_8	ZD1
+0+002e <test2\+0x17> ldx	\*0+0002 <_start\+0x2>
+[	]+2f: R_M68HC11_8	ZD1
+0+0030 <test2\+0x19> clr	0+0+ <_start>
+[	]+31: R_M68HC11_16	ZD2
+0+0033 <test2\+0x1c> clr	0+0001 <_start\+0x1>
+[	]+34: R_M68HC11_16	ZD2
+0+0036 <test2\+0x1f> bne	0+0034 <test2\+0x1d>
+0+0038 <test2\+0x21> beq	0+003c <test2\+0x25>
+0+003a <test2\+0x23> bclr	\*0+0001 <_start\+0x1> #\$20
+[	]+3b: R_M68HC11_8	ZD1
+0+003d <test2\+0x26> brclr	\*0+0002 <_start\+0x2> #\$28 0+0017 <test2>
+[	]+3d: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+3e: R_M68HC11_8	ZD2
+0+0041 <test2\+0x2a> ldy	#0+ffec <L1\+0xff95>
+[	]+43: R_M68HC11_16	_start
+0+0045 <test2\+0x2e> ldd	12,y
+0+0048 <test2\+0x31> addd	44,y
+0+004b <test2\+0x34> addd	50,y
+0+004e <test2\+0x37> subd	0+002c <test2\+0x15>
+0+0051 <test2\+0x3a> subd	#0+002c <test2\+0x15>
+0+0054 <test2\+0x3d> jmp	0+0+ <_start>
+[	]+54: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+55: R_M68HC11_16	Stop
+0+0057 <L1> anda	#23
+[	]+58: R_M68HC11_LO8	.text
+0+0059 <L1\+0x2> andb	#0
+[	]+5a: R_M68HC11_HI8	.text
+0+005b <L1\+0x4> rts
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/m68hc11/lbranch-dwarf2.d binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/lbranch-dwarf2.d
--- binutils-2.11.2/gas/testsuite/gas/m68hc11/lbranch-dwarf2.d	Thu Jan 11 20:48:41 2001
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/lbranch-dwarf2.d	Sat Dec 15 23:17:57 2001
@@ -9,56 +9,56 @@
 
 Disassembly of section .text:
 
-0+0 <_rcall>:
+0+00 <_rcall>:
 	.globl	_rcall
 	.globl _start
 _start:
 _rcall:
-	ldaa	\#0x10		;86 10
-   0:	86 10       	ldaa	\#16
+	ldaa	#0x10		;86 10
+   0:	86 10       	ldaa	#16
 	jbra	Lend		; Must be switched to a jmp
-   2:	7e 01 0b    	jmp	10b <Lend>
-	jbsr	toto		; \-> to a jsr
-   5:	bd 01 1b    	jsr	11b <toto>
-	jbne	toto		; \-> to a beq\+jmp
+   2:	7e 00 00    	jmp	0 <_rcall>
+	jbsr	toto		; -> to a jsr
+   5:	bd 00 00    	jsr	0 <_rcall>
+	jbne	toto		; -> to a beq\+jmp
    8:	27 03       	beq	d <_rcall\+0xd>
-   a:	7e 01 1b    	jmp	11b <toto>
+   a:	7e 00 00    	jmp	0 <_rcall>
 	jbeq	toto		; -> to a bne\+jmp
    d:	26 03       	bne	12 <_rcall\+0x12>
-   f:	7e 01 1b    	jmp	11b <toto>
+   f:	7e 00 00    	jmp	0 <_rcall>
 	jbcs	toto		; -> to a bcc\+jmp
   12:	24 03       	bcc	17 <_rcall\+0x17>
-  14:	7e 01 1b    	jmp	11b <toto>
+  14:	7e 00 00    	jmp	0 <_rcall>
 	jbcc	toto		; -> to a bcs\+jmp
   17:	25 03       	bcs	1c <_rcall\+0x1c>
-  19:	7e 01 1b    	jmp	11b <toto>
+  19:	7e 00 00    	jmp	0 <_rcall>
 	xgdx
   1c:	8f          	xgdx
 	xgdx
   1d:	8f          	xgdx
 	beq	bidule		; -> to a bne\+jmp
   1e:	26 03       	bne	23 <_rcall\+0x23>
-  20:	7e 01 80    	jmp	180 <bidule>
+  20:	7e 00 00    	jmp	0 <_rcall>
 	bcs	bidule		; -> to a bcc\+jmp
   23:	24 03       	bcc	28 <_rcall\+0x28>
-  25:	7e 01 80    	jmp	180 <bidule>
+  25:	7e 00 00    	jmp	0 <_rcall>
 	bcc	bidule		; -> to a bcs\+jmp
   28:	25 03       	bcs	2d <_rcall\+0x2d>
-  2a:	7e 01 80    	jmp	180 <bidule>
+  2a:	7e 00 00    	jmp	0 <_rcall>
 	xgdx
   2d:	8f          	xgdx
 	jbra	200
   2e:	7e 00 c8    	jmp	c8 <_rcall\+0xc8>
 	jbsr	1923
-  31:	bd 07 83    	jsr	783 <bidule\+0x603>
+  31:	bd 07 83    	jsr	783 <.L0\+0x602>
 	bne	Lend		; -> to a beq\+jmp
   34:	27 03       	beq	39 <_rcall\+0x39>
-  36:	7e 01 0b    	jmp	10b <Lend>
+  36:	7e 00 00    	jmp	0 <_rcall>
 	jbsr	toto
-  39:	bd 01 1b    	jsr	11b <toto>
+  39:	bd 00 00    	jsr	0 <_rcall>
 	jbeq	toto
   3c:	26 03       	bne	41 <_rcall\+0x41>
-  3e:	7e 01 1b    	jmp	11b <toto>
+  3e:	7e 00 00    	jmp	0 <_rcall>
 	...
 	.skip 200
 	ldaa	\*dir		;96 33
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/m68hc11/lbranch.d binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/lbranch.d
--- binutils-2.11.2/gas/testsuite/gas/m68hc11/lbranch.d	Mon Jun 19 03:22:41 2000
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/lbranch.d	Sat Dec 15 23:17:57 2001
@@ -1,4 +1,4 @@
-#objdump: -d --prefix-addresses
+#objdump: -d --prefix-addresses --reloc
 #as: -m68hc11
 #name: lbranch
 
@@ -7,41 +7,74 @@
 .*: +file format elf32\-m68hc11
 
 Disassembly of section .text:
-0+0000 <_rcall> ldaa	#16
-0+0002 <_rcall\+0x2> jmp	0+010b <Lend>
-0+0005 <_rcall\+0x5> jsr	0+011b <toto>
+0+0+ <_rcall> ldaa	#16
+0+0002 <_rcall\+0x2> jmp	0+0+ <_rcall>
+[	]+2: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+3: R_M68HC11_16	Lend
+0+0005 <_rcall\+0x5> jsr	0+0+ <_rcall>
+[	]+5: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+6: R_M68HC11_16	toto
 0+0008 <_rcall\+0x8> beq	0+000d <_rcall\+0xd>
-0+000a <_rcall\+0xa> jmp	0+011b <toto>
+[	]+8: R_M68HC11_RL_JUMP	\*ABS\*
+0+000a <_rcall\+0xa> jmp	0+0+ <_rcall>
+[	]+b: R_M68HC11_16	toto
 0+000d <_rcall\+0xd> bne	0+0012 <_rcall\+0x12>
-0+000f <_rcall\+0xf> jmp	0+011b <toto>
+[	]+d: R_M68HC11_RL_JUMP	\*ABS\*
+0+000f <_rcall\+0xf> jmp	0+0+ <_rcall>
+[	]+10: R_M68HC11_16	toto
 0+0012 <_rcall\+0x12> bcc	0+0017 <_rcall\+0x17>
-0+0014 <_rcall\+0x14> jmp	0+011b <toto>
+[	]+12: R_M68HC11_RL_JUMP	\*ABS\*
+0+0014 <_rcall\+0x14> jmp	0+0+ <_rcall>
+[	]+15: R_M68HC11_16	toto
 0+0017 <_rcall\+0x17> bcs	0+001c <_rcall\+0x1c>
-0+0019 <_rcall\+0x19> jmp	0+011b <toto>
+[	]+17: R_M68HC11_RL_JUMP	\*ABS\*
+0+0019 <_rcall\+0x19> jmp	0+0+ <_rcall>
+[	]+1a: R_M68HC11_16	toto
 0+001c <_rcall\+0x1c> xgdx
 0+001d <_rcall\+0x1d> xgdx
 0+001e <_rcall\+0x1e> bne	0+0023 <_rcall\+0x23>
-0+0020 <_rcall\+0x20> jmp	0+0180 <bidule>
+[	]+1e: R_M68HC11_RL_JUMP	\*ABS\*
+0+0020 <_rcall\+0x20> jmp	0+0+ <_rcall>
+[	]+21: R_M68HC11_16	bidule
 0+0023 <_rcall\+0x23> bcc	0+0028 <_rcall\+0x28>
-0+0025 <_rcall\+0x25> jmp	0+0180 <bidule>
+[	]+23: R_M68HC11_RL_JUMP	\*ABS\*
+0+0025 <_rcall\+0x25> jmp	0+0+ <_rcall>
+[	]+26: R_M68HC11_16	bidule
 0+0028 <_rcall\+0x28> bcs	0+002d <_rcall\+0x2d>
-0+002a <_rcall\+0x2a> jmp	0+0180 <bidule>
+[	]+28: R_M68HC11_RL_JUMP	\*ABS\*
+0+002a <_rcall\+0x2a> jmp	0+0+ <_rcall>
+[	]+2b: R_M68HC11_16	bidule
 0+002d <_rcall\+0x2d> xgdx
 0+002e <_rcall\+0x2e> jmp	0+00c8 <_rcall\+0xc8>
+[	]+2e: R_M68HC11_RL_JUMP	\*ABS\*
 0+0031 <_rcall\+0x31> jsr	0+0783 <bidule\+0x603>
+[	]+31: R_M68HC11_RL_JUMP	\*ABS\*
 0+0034 <_rcall\+0x34> beq	0+0039 <_rcall\+0x39>
-0+0036 <_rcall\+0x36> jmp	0+010b <Lend>
-0+0039 <_rcall\+0x39> jsr	0+011b <toto>
+[	]+34: R_M68HC11_RL_JUMP	\*ABS\*
+0+0036 <_rcall\+0x36> jmp	0+0+ <_rcall>
+[	]+37: R_M68HC11_16	Lend
+0+0039 <_rcall\+0x39> jsr	0+0+ <_rcall>
+[	]+39: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+3a: R_M68HC11_16	toto
 0+003c <_rcall\+0x3c> bne	0+0041 <_rcall\+0x41>
-0+003e <_rcall\+0x3e> jmp	0+011b <toto>
-[ 	]*\.\.\.
-0+0109 <_rcall\+0x109> ldaa	\*0+0000 <_rcall>
+[	]+3c: R_M68HC11_RL_JUMP	\*ABS\*
+0+003e <_rcall\+0x3e> jmp	0+0+ <_rcall>
+[	]+3f: R_M68HC11_16	toto
+	...
+0+0109 <_rcall\+0x109> ldaa	\*0+0+ <_rcall>
+[	]+10a: R_M68HC11_8	.page0
 0+010b <Lend> bls	0+0110 <Lend\+0x5>
-0+010d <Lend\+0x2> jmp	0+0000 <_rcall>
+[	]+10b: R_M68HC11_RL_JUMP	\*ABS\*
+0+010d <Lend\+0x2> jmp	0+0+ <_rcall>
+[	]+10e: R_M68HC11_16	external_op
 0+0110 <Lend\+0x5> bhi	0+0115 <Lend\+0xa>
-0+0112 <Lend\+0x7> jmp	0+0000 <_rcall>
-0+0115 <Lend\+0xa> jsr	0+0000 <_rcall>
+[	]+110: R_M68HC11_RL_JUMP	\*ABS\*
+0+0112 <Lend\+0x7> jmp	0+0+ <_rcall>
+[	]+113: R_M68HC11_16	external_op
+0+0115 <Lend\+0xa> jsr	0+0+ <_rcall>
+[	]+115: R_M68HC11_RL_JUMP	\*ABS\*
+[	]+116: R_M68HC11_16	out
 0+0118 <Lend\+0xd> ldx	#0+000c <_rcall\+0xc>
 0+011b <toto> rts
-[ 	]*\.\.\.
+	...
 0+0180 <bidule> rts
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/m68hc11/opers12-dwarf2.d binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/opers12-dwarf2.d
--- binutils-2.11.2/gas/testsuite/gas/m68hc11/opers12-dwarf2.d	Thu Jan 11 20:48:41 2001
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/opers12-dwarf2.d	Sat Dec 15 23:17:57 2001
@@ -7,7 +7,7 @@
 
 Disassembly of section .text:
 
-0+0 <start>:
+0+00 <start>:
 	sect .text
 	globl start
 
@@ -17,9 +17,9 @@ start:
 	ldaa	#10
    4:	86 0a       	ldaa	#10
 	ldx	L1
-   6:	fe 00 09    	ldx	9 <L1>
+   6:	fe 00 00    	ldx	0 <start>
 
-00000009 <L1>:
+0+09 <L1>:
 L1:	ldy	,x
    9:	ed 00       	ldy	0,X
 	addd	1,y		; Offset from register
@@ -118,24 +118,24 @@ L1:	ldy	,x
 	movb	#23, 1,\-sp
   84:	18 08 af 17 	movb	#23, 1,\-SP
 	movb	L1, L2
-  88:	18 0c 00 09 	movb	9 <L1>, bc <L2>
-  8c:	00 bc 
+  88:	18 0c 00 00 	movb	0 <start>, 0 <start>
+  8c:	00 00 
 	movb	L1, a,x
-  8e:	18 09 e4 00 	movb	9 <L1>, A,X
-  92:	09 
+  8e:	18 09 e4 00 	movb	0 <start>, A,X
+  92:	00 
 	movw	L1, b,x
-  93:	18 01 e5 00 	movw	9 <L1>, B,X
-  97:	09 
+  93:	18 01 e5 00 	movw	0 <start>, B,X
+  97:	00 
 	movw	L1, d,x
-  98:	18 01 e6 00 	movw	9 <L1>, D,X
-  9c:	09 
+  98:	18 01 e6 00 	movw	0 <start>, D,X
+  9c:	00 
 	movw	d,x, a,x
   9d:	18 02 e6 e4 	movw	D,X, A,X
 	movw	b,sp, d,pc
   a1:	18 02 f5 fe 	movw	B,SP, D,PC
 	movw	b,sp, L1
-  a5:	18 05 f5 00 	movw	B,SP, 9 <L1>
-  a9:	09 
+  a5:	18 05 f5 00 	movw	B,SP, 0 <start>
+  a9:	00 
 	movw	b,sp, 1,x
   aa:	18 02 f5 01 	movw	B,SP, 1,X
 	movw	d,x, a,y
@@ -151,7 +151,7 @@ L1:	ldy	,x
 	trap	#255
   ba:	18 ff       	trap	#255
 
-000000bc <L2>:
+0+bc <L2>:
 L2:	
 	movw 1,x,2,x
   bc:	18 02 01 02 	movw	1,X, 2,X
@@ -185,7 +185,7 @@ L2:	
 	rts
   f0:	3d          	rts
 
-000000f1 <post_indexed_pb>:
+0+f1 <post_indexed_pb>:
 ;;
 ;; Post\-index byte with relocation
 ;; 
@@ -194,7 +194,7 @@ t1:
 	leas	abort,x
   f1:	1b e2 00 00 	leas	0,X
 
-000000f5 <t2>:
+0+f5 <t2>:
 t2:
 	leax	t2\-t1,y
   f5:	1a 44       	leax	4,Y
@@ -214,3 +214,28 @@ t2:
  10f:	1b fa 00 ff 	leas	255,PC
 	leas	max9b,pc
  113:	1b fa 00 00 	leas	0,PC
+
+;;
+;; Disassembler bug with movb
+;;
+	movb	#23,0x2345
+ 117:	18 0b 17 23 	movb	#23, 2345 <.L0\+0x2208>
+ 11b:	45 
+	movb	#40,12,sp
+ 11c:	18 08 8c 28 	movb	#40, 12,SP
+	movb	#39,3,\+sp
+ 120:	18 08 a2 27 	movb	#39, 3,\+SP
+	movb	#20,14,sp
+ 124:	18 08 8e 14 	movb	#20, 14,SP
+	movw	#0x3210,0x3456
+ 128:	18 03 32 10 	movw	#3210 <bb\+0xa10>, 3456 <bb\+0xc56>
+ 12c:	34 56 
+	movw	#0x4040,12,sp
+ 12e:	18 00 8c 40 	movw	#4040 <bb\+0x1840>, 12,SP
+ 132:	40 
+	movw	#0x3900,3,\+sp
+ 133:	18 00 a2 39 	movw	#3900 <bb\+0x1100>, 3,\+SP
+ 137:	00 
+	movw	#0x2000,14,sp
+ 138:	18 00 8e 20 	movw	#2000 <.L0\+0x1ec3>, 14,SP
+ 13c:	00 
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/m68hc11/opers12.d binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/opers12.d
--- binutils-2.11.2/gas/testsuite/gas/m68hc11/opers12.d	Thu Jan 11 21:19:17 2001
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/opers12.d	Sat Dec 15 23:17:57 2001
@@ -1,90 +1,114 @@
-#objdump: -d --prefix-addresses
+#objdump: -d --prefix-addresses --reloc
 #as: -m68hc12
 #name: opers
 
 .*: +file format elf32\-m68hc12
 
 Disassembly of section .text:
-0+000 <start> anda	\[12,X\]
-0+004 <start\+0x4> ldaa	#10
-0+006 <start\+0x6> ldx	0+009 <L1>
-0+009 <L1> ldy	0,X
-0+00b <L1\+0x2> addd	1,Y
-0+00d <L1\+0x4> subd	-1,Y
-0+00f <L1\+0x6> eora	15,Y
-0+011 <L1\+0x8> eora	-16,Y
-0+013 <L1\+0xa> eorb	16,Y
-0+016 <L1\+0xd> eorb	-17,Y
-0+019 <L1\+0x10> oraa	128,SP
-0+01c <L1\+0x13> orab	-128,SP
-0+01f <L1\+0x16> orab	255,X
-0+022 <L1\+0x19> orab	-256,X
-0+025 <L1\+0x1c> anda	256,X
-0+029 <L1\+0x20> andb	-257,X
-0+02d <L1\+0x24> anda	\[12,X\]
-0+031 <L1\+0x28> ldaa	\[257,Y\]
-0+035 <L1\+0x2c> ldab	\[32767,SP\]
-0+039 <L1\+0x30> ldd	\[32768,PC\]
-0+03d <L1\+0x34> ldd	9,PC
-0+040 <L1\+0x37> std	A,X
-0+042 <L1\+0x39> ldx	B,X
-0+044 <L1\+0x3b> stx	D,Y
-0+046 <L1\+0x3d> addd	1,\+X
-0+048 <L1\+0x3f> addd	2,\+X
-0+04a <L1\+0x41> addd	8,\+X
-0+04c <L1\+0x43> addd	1,SP\+
-0+04e <L1\+0x45> addd	2,SP\+
-0+050 <L1\+0x47> addd	8,SP\+
-0+052 <L1\+0x49> subd	1,\-Y
-0+054 <L1\+0x4b> subd	2,\-Y
-0+056 <L1\+0x4d> subd	8,\-Y
-0+058 <L1\+0x4f> addd	1,Y\-
-0+05a <L1\+0x51> addd	2,Y\-
-0+05c <L1\+0x53> addd	8,Y\-
-0+05e <L1\+0x55> std	\[D,X\]
-0+060 <L1\+0x57> std	\[D,Y\]
-0+062 <L1\+0x59> std	\[D,SP\]
-0+064 <L1\+0x5b> std	\[D,PC\]
-0+066 <L1\+0x5d> beq	0+009 <L1>
-0+068 <L1\+0x5f> lbeq	0+000 <start>
-0+06c <L1\+0x63> lbcc	0+0bc <L2>
-0+070 <L1\+0x67> movb	0+000 <start>, 1,X
-0+075 <L1\+0x6c> movw	1,X, 0+000 <start>
-0+07a <L1\+0x71> movb	0+000 <start>, 1,\+X
-0+07f <L1\+0x76> movb	0+000 <start>, 1,\-X
-0+084 <L1\+0x7b> movb	#23, 1,\-SP
-0+088 <L1\+0x7f> movb	0+009 <L1>, 0+0bc <L2>
-0+08e <L1\+0x85> movb	0+009 <L1>, A,X
-0+093 <L1\+0x8a> movw	0+009 <L1>, B,X
-0+098 <L1\+0x8f> movw	0+009 <L1>, D,X
-0+09d <L1\+0x94> movw	D,X, A,X
-0+0a1 <L1\+0x98> movw	B,SP, D,PC
-0+0a5 <L1\+0x9c> movw	B,SP, 0+009 <L1>
-0+0aa <L1\+0xa1> movw	B,SP, 1,X
-0+0ae <L1\+0xa5> movw	D,X, A,Y
-0+0b2 <L1\+0xa9> trap	#48
-0+0b4 <L1\+0xab> trap	#57
-0+0b6 <L1\+0xad> trap	#64
-0+0b8 <L1\+0xaf> trap	#128
-0+0ba <L1\+0xb1> trap	#255
-0+0bc <L2> movw	1,X, 2,X
-0+0c0 <L2\+0x4> movw	0+0ffff <bb\+0xd7ff>, 0000ffff <bb\+0xd7ff>
-0+0c6 <L2\+0xa> movw	0+0ffff <bb\+0xd7ff>, 1,X
-0+0cb <L2\+0xf> movw	#0+0ffff <bb\+0xd7ff>, 1,X
-0+0d0 <L2\+0x14> movw	0+03 <start\+0x3>, 0+08 <start\+0x8>
-0+0d6 <L2\+0x1a> movw	#0+03 <start\+0x3>, 0+03 <start\+0x3>
-0+0dc <L2\+0x20> movw	#0+03 <start\+0x3>, 1,X
-0+0e1 <L2\+0x25> movw	0+03 <start\+0x3>, 1,X
-0+0e6 <L2\+0x2a> movw	0+03 <start\+0x3>, 2,X
-0+0eb <L2\+0x2f> movw	0+04 <start\+0x4>, -2,X
-0+0f0 <L2\+0x34> rts
-0+0f1 <post_indexed_pb> leas	0,X
-0+0f5 <t2> leax	4,Y
-0+0f7 <t2\+0x2> leax	100,X
-0+0fb <t2\+0x6> leas	110,SP
-0+0ff <t2\+0xa> leay	10,X
-0+103 <t2\+0xe> leas	10240,Y
-0+107 <t2\+0x12> leas	255,PC
-0+10b <t2\+0x16> leas	0,PC
-0+10f <t2\+0x1a> leas	255,PC
-0+113 <t2\+0x1e> leas	0,PC
+0+0+ <start> anda	\[12,X\]
+0+0004 <start\+0x4> ldaa	#10
+0+0006 <start\+0x6> ldx	0+0+ <start>
+[	]+7: R_M68HC11_16	L1
+0+0009 <L1> ldy	0,X
+0+000b <L1\+0x2> addd	1,Y
+0+000d <L1\+0x4> subd	\-1,Y
+0+000f <L1\+0x6> eora	15,Y
+0+0011 <L1\+0x8> eora	\-16,Y
+0+0013 <L1\+0xa> eorb	16,Y
+0+0016 <L1\+0xd> eorb	\-17,Y
+0+0019 <L1\+0x10> oraa	128,SP
+0+001c <L1\+0x13> orab	\-128,SP
+0+001f <L1\+0x16> orab	255,X
+0+0022 <L1\+0x19> orab	\-256,X
+0+0025 <L1\+0x1c> anda	256,X
+0+0029 <L1\+0x20> andb	\-257,X
+0+002d <L1\+0x24> anda	\[12,X\]
+0+0031 <L1\+0x28> ldaa	\[257,Y\]
+0+0035 <L1\+0x2c> ldab	\[32767,SP\]
+0+0039 <L1\+0x30> ldd	\[32768,PC\]
+0+003d <L1\+0x34> ldd	9,PC
+[	]+3f: R_M68HC11_8	.text
+0+0040 <L1\+0x37> std	A,X
+0+0042 <L1\+0x39> ldx	B,X
+0+0044 <L1\+0x3b> stx	D,Y
+0+0046 <L1\+0x3d> addd	1,\+X
+0+0048 <L1\+0x3f> addd	2,\+X
+0+004a <L1\+0x41> addd	8,\+X
+0+004c <L1\+0x43> addd	1,SP\+
+0+004e <L1\+0x45> addd	2,SP\+
+0+0050 <L1\+0x47> addd	8,SP\+
+0+0052 <L1\+0x49> subd	1,\-Y
+0+0054 <L1\+0x4b> subd	2,\-Y
+0+0056 <L1\+0x4d> subd	8,\-Y
+0+0058 <L1\+0x4f> addd	1,Y\-
+0+005a <L1\+0x51> addd	2,Y\-
+0+005c <L1\+0x53> addd	8,Y\-
+0+005e <L1\+0x55> std	\[D,X\]
+0+0060 <L1\+0x57> std	\[D,Y\]
+0+0062 <L1\+0x59> std	\[D,SP\]
+0+0064 <L1\+0x5b> std	\[D,PC\]
+0+0066 <L1\+0x5d> beq	0+0009 <L1>
+[	]+66: R_M68HC11_RL_JUMP	\*ABS\*
+0+0068 <L1\+0x5f> lbeq	0+0+ <start>
+[	]+68: R_M68HC11_RL_JUMP	\*ABS\*
+0+006c <L1\+0x63> lbcc	0+00bc <L2>
+[	]+6c: R_M68HC11_RL_JUMP	\*ABS\*
+0+0070 <L1\+0x67> movb	0+0+ <start>, 1,X
+[	]+73: R_M68HC11_16	start
+0+0075 <L1\+0x6c> movw	1,X, 0+0+ <start>
+[	]+78: R_M68HC11_16	start
+0+007a <L1\+0x71> movb	0+0+ <start>, 1,\+X
+[	]+7d: R_M68HC11_16	start
+0+007f <L1\+0x76> movb	0+0+ <start>, 1,\-X
+[	]+82: R_M68HC11_16	start
+0+0084 <L1\+0x7b> movb	#23, 1,\-SP
+0+0088 <L1\+0x7f> movb	0+0+ <start>, 0+0+ <start>
+[	]+8a: R_M68HC11_16	L1
+[	]+8c: R_M68HC11_16	L2
+0+008e <L1\+0x85> movb	0+0+ <start>, A,X
+[	]+91: R_M68HC11_16	L1
+0+0093 <L1\+0x8a> movw	0+0+ <start>, B,X
+[	]+96: R_M68HC11_16	L1
+0+0098 <L1\+0x8f> movw	0+0+ <start>, D,X
+[	]+9b: R_M68HC11_16	L1
+0+009d <L1\+0x94> movw	D,X, A,X
+0+00a1 <L1\+0x98> movw	B,SP, D,PC
+0+00a5 <L1\+0x9c> movw	B,SP, 0+0+ <start>
+[	]+a8: R_M68HC11_16	L1
+0+00aa <L1\+0xa1> movw	B,SP, 1,X
+0+00ae <L1\+0xa5> movw	D,X, A,Y
+0+00b2 <L1\+0xa9> trap	#48
+0+00b4 <L1\+0xab> trap	#57
+0+00b6 <L1\+0xad> trap	#64
+0+00b8 <L1\+0xaf> trap	#128
+0+00ba <L1\+0xb1> trap	#255
+0+00bc <L2> movw	1,X, 2,X
+0+00c0 <L2\+0x4> movw	0+ffff <bb\+0xd7ff>, 0+ffff <bb\+0xd7ff>
+0+00c6 <L2\+0xa> movw	0+ffff <bb\+0xd7ff>, 1,X
+0+00cb <L2\+0xf> movw	#0+ffff <bb\+0xd7ff>, 1,X
+0+00d0 <L2\+0x14> movw	0+0003 <start\+0x3>, 0+0008 <start\+0x8>
+0+00d6 <L2\+0x1a> movw	#0+0003 <start\+0x3>, 0+0003 <start\+0x3>
+0+00dc <L2\+0x20> movw	#0+0003 <start\+0x3>, 1,X
+0+00e1 <L2\+0x25> movw	0+0003 <start\+0x3>, 1,X
+0+00e6 <L2\+0x2a> movw	0+0003 <start\+0x3>, 2,X
+0+00eb <L2\+0x2f> movw	0+0004 <start\+0x4>, \-2,X
+0+00f0 <L2\+0x34> rts
+0+00f1 <post_indexed_pb> leas	0,X
+[	]+f3: R_M68HC11_16	abort
+0+00f5 <t2> leax	4,Y
+0+00f7 <t2\+0x2> leax	100,X
+0+00fb <t2\+0x6> leas	110,SP
+0+00ff <t2\+0xa> leay	10,X
+0+0103 <t2\+0xe> leas	10240,Y
+0+0107 <t2\+0x12> leas	255,PC
+0+010b <t2\+0x16> leas	0,PC
+0+010f <t2\+0x1a> leas	255,PC
+0+0113 <t2\+0x1e> leas	0,PC
+0+0117 <t2\+0x22> movb	#23, 0+2345 <max9b\+0x2246>
+0+011c <t2\+0x27> movb	#40, 12,SP
+0+0120 <t2\+0x2b> movb	#39, 3,\+SP
+0+0124 <t2\+0x2f> movb	#20, 14,SP
+0+0128 <t2\+0x33> movw	#0+3210 <bb\+0xa10>, 0+3456 <bb\+0xc56>
+0+012e <t2\+0x39> movw	#0+4040 <bb\+0x1840>, 12,SP
+0+0133 <t2\+0x3e> movw	#0+3900 <bb\+0x1100>, 3,\+SP
+0+0138 <t2\+0x43> movw	#0+2000 <max9b\+0x1f01>, 14,SP
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/m68hc11/opers12.s binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/opers12.s
--- binutils-2.11.2/gas/testsuite/gas/m68hc11/opers12.s	Thu Jan 11 21:19:17 2001
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/m68hc11/opers12.s	Sat Dec 15 23:17:57 2001
@@ -100,6 +100,19 @@ t2:
 	leas	min9b,pc
 	leas	max9b,pc
 
+;;
+;; Disassembler bug with movb
+;;
+	movb	#23,0x2345
+	movb	#40,12,sp
+	movb	#39,3,+sp
+	movb	#20,14,sp
+	movw	#0x3210,0x3456
+	movw	#0x4040,12,sp
+	movw	#0x3900,3,+sp
+	movw	#0x2000,14,sp
+#	movb	#111,start
+
 titi = 10
 toto = 100
 min5b= -15
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/symver/symver.exp binutils-2.11.2-m68hc1x/gas/testsuite/gas/symver/symver.exp
--- binutils-2.11.2/gas/testsuite/gas/symver/symver.exp	Thu Nov 16 20:28:10 2000
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/symver/symver.exp	Sun Dec 16 12:17:42 2001
@@ -16,6 +16,7 @@ proc run_error_test { name opts } {
 
 # symver is only supported by ELF targets.
 if { ([istarget "*-*-elf*"]		
+      || [istarget "m6811-*"]
       || [istarget "*-*-linux*"])
      && ![istarget *-*-linux*aout*]
      && ![istarget *-*-linux*oldld*] } then {
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/gas/testsuite/gas/vtable/vtable.exp binutils-2.11.2-m68hc1x/gas/testsuite/gas/vtable/vtable.exp
--- binutils-2.11.2/gas/testsuite/gas/vtable/vtable.exp	Sat Mar 17 23:38:21 2001
+++ binutils-2.11.2-m68hc1x/gas/testsuite/gas/vtable/vtable.exp	Sun Dec 16 12:14:31 2001
@@ -15,7 +15,7 @@ proc run_list_test { name opts } {
 }
 
 # Vtable bits are only supported by ELF targets.
-if { (   [istarget "*-*-elf*"] || [istarget "*-*-linux*"])
+if { (   [istarget "*-*-elf*"] || [istarget "*-*-linux*"] || [istarget "m6811-*"])
      && ![istarget *-*-linux*aout*]
      && ![istarget *-*-linux*oldld*] } then {
 	 
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/include/elf/ChangeLog.M68HC11 binutils-2.11.2-m68hc1x/include/elf/ChangeLog.M68HC11
--- binutils-2.11.2/include/elf/ChangeLog.M68HC11	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/include/elf/ChangeLog.M68HC11	Sat Dec 15 21:37:25 2001
@@ -0,0 +1,5 @@
+2001-11-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* m68hc11.h (R_M68HC11_RL_JUMP): New reloc for linker relaxation.
+	(R_M68HC11_RL_GROUP): Likewise.
+
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/include/elf/m68hc11.h binutils-2.11.2-m68hc1x/include/elf/m68hc11.h
--- binutils-2.11.2/include/elf/m68hc11.h	Fri Sep 21 20:58:41 2001
+++ binutils-2.11.2-m68hc1x/include/elf/m68hc11.h	Sat Dec 15 21:37:08 2001
@@ -1,5 +1,5 @@
 /* m68hc11 & m68hc12 ELF support for BFD.
-   Copyright 1999, 2000 Free Software Foundation, Inc.
+   Copyright 1999, 2000, 2001 Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 
@@ -37,6 +37,13 @@ START_RELOC_NUMBERS (elf_m68hc11_reloc_t
      /* These are GNU extensions to enable C++ vtable garbage collection.  */
   RELOC_NUMBER (R_M68HC11_GNU_VTINHERIT, 9)
   RELOC_NUMBER (R_M68HC11_GNU_VTENTRY, 10)
+
+     /* GNU extension for linker relaxation.
+        Mark beginning of a jump instruction (any form).  */
+  RELOC_NUMBER (R_M68HC11_RL_JUMP, 20)
+
+     /* Mark beginning of Gcc relaxation group instruction.  */
+  RELOC_NUMBER (R_M68HC11_RL_GROUP, 21)
 END_RELOC_NUMBERS (R_M68HC11_max)
 
 #endif
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/ChangeLog.M68HC11 binutils-2.11.2-m68hc1x/ld/ChangeLog.M68HC11
--- binutils-2.11.2/ld/ChangeLog.M68HC11	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/ChangeLog.M68HC11	Thu Jan  3 16:44:02 2002
@@ -0,0 +1,76 @@
+2002-01-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* scripttempl/elfm68hc11.sc: Handle .softregs sections to put soft
+	registers in .page0.
+	* scripttempl/elfm68hc12.sc: Likewise but put them in bss.
+
+2001-12-23  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* emulparams/m68hc12elfb.sh (EEPROM_MEMORY): Define.
+	* emulparams/m68hc11elfb.sh (EEPROM_MEMORY): Define.
+	* emulparams/m68hc11elf.sh (EEPROM_SIZE): Define.
+	(EEPROM_START_ADDR): Define.
+	(EEPROM_MEMORY): Define.
+	* emulparams/m68hc12elf.sh: Likewise.
+	* scripttempl/elfm68hc11.sc: Handle .eeprom section.
+	* scripttempl/elfm68hc12.sc: Likewise.
+
+2001-10-14  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* scripttempl/elfm68hc11.sc (CTOR): Put constructor table in ROM.
+	(DTOR): Likewise.
+	* scripttempl/elfm68hc12.sc (CTOR): Likewise.
+	(DTOR): Likewise.
+
+2001-09-21  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* Makefile.am (POD2MAN): Use 'GNU Development Tools' for the
+	center title.
+	* ld.texi: Use @command{ld} for commands;
+	use @option{-opt} for options; use @table @env for list of options;
+	remove spaces arround [ | ] in synopsis.
+
+2001-07-27  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* scripttempl/elfm68hc12.sc: Put constructor and destructor tables
+	in ROM; export the symbols.
+	* scripttempl/elfm68hc11.sc: Likewise.
+
+2001-03-26  Andreas Jaeger  <aj@suse.de>
+
+	* ld.texinfo (Overview): Fix syntax in texi code.
+
+2001-03-25  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* ld.texinfo: Put @c man indications to generate the ld man page.
+	When generating man, define all the variables.  Define SEEALSO
+	and SYNOPSIS.  Re-organize some lines to avoid the cross references.
+	* Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variables.
+	(ld.1): Generate from ld.texinfo.
+	* Makefile.in: Regenerate.
+
+2001-02-15  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* ld.h (args_type): New data members for preprocessor options.
+	* ldfile.h (ldfile_find_command_file): Update prototype.
+
+	* ldlex.l (lex_cpp_line): New function.
+	(lex grammar): Call it when a line starting with # is seen.
+	(lex_push_file): Fix save of current file position.
+	(<<EOF>>): Restore correctly the previous file name and line.
+
+	* lexsup.c (OPTION_UNDEF): New option to pre-process linker scripts.
+	(OPTION_DEFINE): Likewise.
+	(OPTION_CPP_SCRIPT): Likewise.
+	(OPTION_M4_SCRIPT): Likewise.
+	(ld_options): Define new options to run a pre-processor command
+	on the linker scripts.
+	(parse_args): Collect options for pre-processor.
+	(prep_collect_option): New function.
+
+	* ldfile.c (remove_temporary_files): New function.
+	(get_temporary_file): Likewise.
+	(ldfile_find_command_file): Returns the path of the opened file.
+	(run_cmd): New function imported from binutils/resrc.c.
+	(ldfile_open_command_file): Preprocess the linker script throught
+	cpp using run_cmd.
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/Makefile.am binutils-2.11.2-m68hc1x/ld/Makefile.am
--- binutils-2.11.2/ld/Makefile.am	Fri Sep 21 20:58:42 2001
+++ binutils-2.11.2-m68hc1x/ld/Makefile.am	Fri Sep 21 21:47:31 2001
@@ -41,6 +41,14 @@ MKDEP = gcc -MM
 # What version of the manual to build
 DOCVER = gen
 
+# Options to extract the man page from ld.texinfo
+MANCONF = -Dman
+
+TEXI2POD = perl $(BASEDIR)/etc/texi2pod.pl
+
+POD2MAN = pod2man --center="GNU Development Tools" \
+	 --release="binutils-$(VERSION)" --section=1
+
 #stuff for self hosting (can be overridden in config file).
 HOSTING_CRT0 = @HOSTING_CRT0@
 HOSTING_LIBS = @HOSTING_LIBS@
@@ -895,6 +903,18 @@ ld.info: $(srcdir)/ld.texinfo configdoc.
 ld.dvi: $(srcdir)/ld.texinfo configdoc.texi ldver.texi
 	TEXINPUTS=$(top_srcdir)/../texinfo:$$TEXINPUTS \
 	  MAKEINFO="$(MAKEINFO) -I $(srcdir) -I $(BFDDIR)/doc" $(TEXI2DVI) -I $(BFDDIR)/doc $(srcdir)/ld.texinfo
+
+
+# Build the man page from the texinfo file
+# The sed command removes the no-adjust Nroff command so that
+# the man output looks standard.
+$(srcdir)/ld.1: $(srcdir)/ld.texinfo
+	touch $(srcdir)/ld.1
+	-$(TEXI2POD) $(MANCONF) < $(srcdir)/ld.texinfo > ld.pod
+	-($(POD2MAN) ld.pod | \
+		sed -e '/^.if n .na/d' > $(srcdir)/ld.1.T$$$$ && \
+		mv -f $(srcdir)/ld.1.T$$$$ $(srcdir)/ld.1) || \
+		(rm -f $(srcdir)/ld.1.T$$$$ && exit 1)
 
 MAINTAINERCLEANFILES = ldver.texi
 
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/Makefile.in binutils-2.11.2-m68hc1x/ld/Makefile.in
--- binutils-2.11.2/ld/Makefile.in	Fri Sep 21 20:58:42 2001
+++ binutils-2.11.2-m68hc1x/ld/Makefile.in	Sat Sep 22 12:06:26 2001
@@ -145,55 +145,33 @@ MKDEP = gcc -MM
 # What version of the manual to build
 DOCVER = gen
 
+# Options to extract the man page from ld.texinfo
+MANCONF = -Dman
+
+TEXI2POD = perl $(BASEDIR)/etc/texi2pod.pl
+
+POD2MAN = pod2man --center="GNU Development Tools" 	 --release="binutils-$(VERSION)" --section=1
+
+
 #stuff for self hosting (can be overridden in config file).
 HOSTING_CRT0 = @HOSTING_CRT0@
 HOSTING_LIBS = @HOSTING_LIBS@
 HOSTING_EMU = -m $(EMUL)
 
 # Setup the testing framework, if you have one
-EXPECT = `if [ -f $$r/../expect/expect ] ; \
-	then echo $$r/../expect/expect ; \
-	else echo expect ; fi`
+EXPECT = `if [ -f $$r/../expect/expect ] ; 	then echo $$r/../expect/expect ; 	else echo expect ; fi`
 
 
-RUNTEST = `if [ -f $${srcroot}/../dejagnu/runtest ] ; \
-	then echo $${srcroot}/../dejagnu/runtest ; \
-	else echo runtest ; fi`
+RUNTEST = `if [ -f $${srcroot}/../dejagnu/runtest ] ; 	then echo $${srcroot}/../dejagnu/runtest ; 	else echo runtest ; fi`
 
 
 RUNTESTFLAGS = 
 
-CC_FOR_TARGET = ` \
-  if [ -f $$r/../gcc/xgcc ] ; then \
-    if [ -f $$r/../newlib/Makefile ] ; then \
-      echo $$r/../gcc/xgcc -B$$r/../gcc/ -idirafter $$r/../newlib/targ-include -idirafter $${srcroot}/../newlib/libc/include -nostdinc; \
-    else \
-      echo $$r/../gcc/xgcc -B$$r/../gcc/; \
-    fi; \
-  else \
-    if [ "@host@" = "@target@" ] ; then \
-      echo $(CC); \
-    else \
-      echo gcc | sed '$(transform)'; \
-    fi; \
-  fi`
+CC_FOR_TARGET = `   if [ -f $$r/../gcc/xgcc ] ; then     if [ -f $$r/../newlib/Makefile ] ; then       echo $$r/../gcc/xgcc -B$$r/../gcc/ -idirafter $$r/../newlib/targ-include -idirafter $${srcroot}/../newlib/libc/include -nostdinc;     else       echo $$r/../gcc/xgcc -B$$r/../gcc/;     fi;   else     if [ "@host@" = "@target@" ] ; then       echo $(CC);     else       echo gcc | sed '$(transform)';     fi;   fi`
 
 
 CXX = gcc
-CXX_FOR_TARGET = ` \
-  if [ -f $$r/../gcc/xgcc ] ; then \
-    if [ -f $$r/../newlib/Makefile ] ; then \
-      echo $$r/../gcc/xgcc -B$$r/../gcc/ -idirafter $$r/../newlib/targ-include -idirafter $${srcroot}/../newlib/libc/include -nostdinc; \
-    else \
-      echo $$r/../gcc/xgcc -B$$r/../gcc/; \
-    fi; \
-  else \
-    if [ "@host@" = "@target@" ] ; then \
-      echo $(CXX); \
-    else \
-      echo gcc | sed '$(transform)'; \
-    fi; \
-  fi`
+CXX_FOR_TARGET = `   if [ -f $$r/../gcc/xgcc ] ; then     if [ -f $$r/../newlib/Makefile ] ; then       echo $$r/../gcc/xgcc -B$$r/../gcc/ -idirafter $$r/../newlib/targ-include -idirafter $${srcroot}/../newlib/libc/include -nostdinc;     else       echo $$r/../gcc/xgcc -B$$r/../gcc/;     fi;   else     if [ "@host@" = "@target@" ] ; then       echo $(CXX);     else       echo gcc | sed '$(transform)';     fi;   fi`
 
 
 noinst_PROGRAMS = ld-new
@@ -206,181 +184,25 @@ INCLUDES = -D_GNU_SOURCE -I. -I$(srcdir)
 BFDLIB = ../bfd/libbfd.la
 LIBIBERTY = ../libiberty/libiberty.a
 
-ALL_EMULATIONS = \
-	ea29k.o \
-	eaixppc.o \
-	eaixrs6.o \
-	ealpha.o \
-	earcelf.o \
-	earm_epoc_pe.o \
-	earmaoutb.o \
-	earmaoutl.o \
-	earmcoff.o \
-	earmelf.o \
-	earmelf_linux.o \
-	earmelf_oabi.o \
-	earmnbsd.o \
-	earmpe.o \
-	eavr1200.o \
-	eavr23xx.o \
-	eavr4433.o \
-	eavr44x4.o \
-	eavr85xx.o \
-	eavrmega103.o \
-	eavrmega161.o \
-	eavrmega603.o \
-	ecoff_sparc.o \
-	ecrisaout.o \
-	ecriself.o \
-	ecrislinux.o \
-	ed10velf.o \
-	ed30v_e.o \
-	ed30v_o.o \
-	ed30velf.o \
-	edelta68.o \
-	eebmon29k.o \
-	eelf32_i960.o \
-	eelf32_i860.o \
-	eelf32_sparc.o \
-	eelf32b4300.o \
-	eelf32bmip.o \
-	eelf32bmipn32.o \
-	eelf32btsmip.o \
-	eelf32ltsmip.o \
-	eelf32ebmip.o \
-	eelf32elmip.o \
-	eelf32fr30.o \
-	eelf32i370.o \
-	eelf32l4300.o \
-	eelf32lmip.o \
-	eelf32lppc.o \
-	eelf32lppcsim.o \
-	eelf32mcore.o \
-	eelf32ppc.o \
-	eelf32ppclinux.o \
-	eelf32ppcsim.o \
-	eelf_i386.o \
-	eelf_i386_be.o \
-	eelf_i386_chaos.o \
-	egld960.o \
-	egld960coff.o \
-	eh8300.o \
-	eh8300h.o \
-	eh8300s.o \
-	eh8500.o \
-	eh8500b.o \
-	eh8500c.o \
-	eh8500m.o \
-	eh8500s.o \
-	ehp300bsd.o \
-	ehp3hpux.o \
-	ehppaelf.o \
-	ehppalinux.o \
-	ei386aout.o \
-	ei386beos.o \
-	ei386bsd.o \
-	ei386coff.o \
-	ei386go32.o \
-	ei386linux.o \
-	ei386lynx.o \
-	ei386mach.o \
-	ei386moss.o \
-	ei386msdos.o \
-	ei386nbsd.o \
-	ei386nw.o \
-	ei386pe.o \
-	ei386pe_posix.o \
-	elnk960.o \
-	em68hc11elf.o \
-	em68hc11elfb.o \
-	em68hc12elf.o \
-	em68hc12elfb.o \
-	em68k4knbsd.o \
-	em68kaout.o \
-	em68kaux.o \
-	em68kcoff.o \
-	em68kelf.o \
-	em68klinux.o \
-	em68klynx.o \
-	em68knbsd.o \
-	em68kpsos.o \
-	em88kbcs.o \
-	emcorepe.o \
-	emipsbig.o \
-	emipsbsd.o \
-	emipsidt.o \
-	emipsidtl.o \
-	emipslit.o \
-	emipslnews.o \
-	emipspe.o \
-	enews.o \
-	ens32knbsd.o \
-	epc532macha.o \
-	epjelf.o \
-	epjlelf.o \
-	eppcmacos.o \
-	eppcnw.o \
-	eppcpe.o \
-	eriscix.o \
-	esa29200.o \
-	esh.o \
-	eshelf.o \
-	eshelf_linux.o \
-	eshlelf_linux.o \
-	eshl.o \
-	eshlelf.o \
-	eshpe.o \
-	esparcaout.o \
-	esparclinux.o \
-	esparclynx.o \
-	esparcnbsd.o \
-	est2000.o \
-	esun3.o \
-	esun4.o \
-	etic30aout.o \
-	etic30coff.o \
-	etic54xcoff.o \
-	etic80coff.o \
-	evanilla.o \
-	evax.o \
-	evsta.o \
-	ew65.o \
-	ez8001.o \
-	ez8002.o
-
-
-ALL_64_EMULATIONS = \
-	eelf64_ia64.o \
-	eelf_x86_64.o \
-	eelf64_sparc.o \
-	eelf64alpha.o \
-	eelf64bmip.o \
-	eelf64btsmip.o \
-	eelf64ltsmip.o \
-	eelf64hppa.o
-
-
-ALL_EMUL_EXTRA_OFILES = \
-	deffilep.o \
-	pe-dll.o
-
-
-CFILES = ldctor.c ldemul.c ldexp.c ldfile.c ldlang.c \
-	ldmain.c ldmisc.c ldver.c ldwrite.c lexsup.c \
-	mri.c ldcref.c pe-dll.c
-
-
-HFILES = ld.h ldctor.h ldemul.h ldexp.h ldfile.h \
-	ldlang.h ldlex.h ldmain.h ldmisc.h ldver.h \
-	ldwrite.h mri.h deffile.h pe-dll.h
+ALL_EMULATIONS =  	ea29k.o 	eaixppc.o 	eaixrs6.o 	ealpha.o 	earcelf.o 	earm_epoc_pe.o 	earmaoutb.o 	earmaoutl.o 	earmcoff.o 	earmelf.o 	earmelf_linux.o 	earmelf_oabi.o 	earmnbsd.o 	earmpe.o 	eavr1200.o 	eavr23xx.o 	eavr4433.o 	eavr44x4.o 	eavr85xx.o 	eavrmega103.o 	eavrmega161.o 	eavrmega603.o 	ecoff_sparc.o 	ecrisaout.o 	ecriself.o 	ecrislinux.o 	ed10velf.o 	ed30v_e.o 	ed30v_o.o 	ed30velf.o 	edelta68.o 	eebmon29k.o 	eelf32_i960.o 	eelf32_i860.o 	eelf32_sparc.o 	eelf32b4300.o 	eelf32bmip.o 	eelf32bmipn32.o 	eelf32btsmip.o 	eelf32ltsmip.o 	eelf32ebmip.o 	eelf32elmip.o 	eelf32fr30.o 	eelf32i370.o 	eelf32l4300.o 	eelf32lmip.o 	eelf32lppc.o 	eelf32lppcsim.o 	eelf32mcore.o 	eelf32ppc.o 	eelf32ppclinux.o 	eelf32ppcsim.o 	eelf_i386.o 	eelf_i386_be.o 	eelf_i386_chaos.o 	egld960.o 	egld960coff.o 	eh8300.o 	eh8300h.o 	eh8300s.o 	eh8500.o 	eh8500b.o 	eh8500c.o 	eh8500m.o 	eh8500s.o 	ehp300bsd.o 	ehp3hpux.o 	ehppaelf.o 	ehppalinux.o 	ei386aout.o 	ei386beos.o 	ei386bsd.o 	ei386coff.o 	ei386go32.o 	ei386linux.o 	ei386lynx.o 	ei386mach.o 	ei386moss.o 	ei386msdos.o 	ei386nbsd.o 	ei386nw.o 	ei386pe.o 	ei386pe_posix.o 	elnk960.o 	em68hc11elf.o 	em68hc11elfb.o 	em68hc12elf.o 	em68hc12elfb.o 	em68k4knbsd.o 	em68kaout.o 	em68kaux.o 	em68kcoff.o 	em68kelf.o 	em68klinux.o 	em68klynx.o 	em68knbsd.o 	em68kpsos.o 	em88kbcs.o 	emcorepe.o 	emipsbig.o 	emipsbsd.o 	emipsidt.o 	emipsidtl.o 	emipslit.o 	emipslnews.o 	emipspe.o 	enews.o 	ens32knbsd.o 	epc532macha.o 	epjelf.o 	epjlelf.o 	eppcmacos.o 	eppcnw.o 	eppcpe.o 	eriscix.o 	esa29200.o 	esh.o 	eshelf.o 	eshelf_linux.o 	eshlelf_linux.o 	eshl.o 	eshlelf.o 	eshpe.o 	esparcaout.o 	esparclinux.o 	esparclynx.o 	esparcnbsd.o 	est2000.o 	esun3.o 	esun4.o 	etic30aout.o 	etic30coff.o 	etic54xcoff.o 	etic80coff.o 	evanilla.o 	evax.o 	evsta.o 	ew65.o 	ez8001.o 	ez8002.o
+
+
+ALL_64_EMULATIONS =  	eelf64_ia64.o 	eelf_x86_64.o 	eelf64_sparc.o 	eelf64alpha.o 	eelf64bmip.o 	eelf64btsmip.o 	eelf64ltsmip.o 	eelf64hppa.o
+
+
+ALL_EMUL_EXTRA_OFILES =  	deffilep.o 	pe-dll.o
+
+
+CFILES = ldctor.c ldemul.c ldexp.c ldfile.c ldlang.c 	ldmain.c ldmisc.c ldver.c ldwrite.c lexsup.c 	mri.c ldcref.c pe-dll.c
+
+
+HFILES = ld.h ldctor.h ldemul.h ldexp.h ldfile.h 	ldlang.h ldlex.h ldmain.h ldmisc.h ldver.h 	ldwrite.h mri.h deffile.h pe-dll.h
 
 
 GENERATED_CFILES = ldgram.c ldlex.c deffilep.c
 GENERATED_HFILES = ldgram.h ldemul-list.h deffilep.h
 
-OFILES = ldgram.o ldlex.o lexsup.o ldlang.o mri.o ldctor.o ldmain.o \
-	ldwrite.o ldexp.o  ldemul.o ldver.o ldmisc.o \
-	ldfile.o ldcref.o ${EMULATION_OFILES} ${EMUL_EXTRA_OFILES}
+OFILES = ldgram.o ldlex.o lexsup.o ldlang.o mri.o ldctor.o ldmain.o 	ldwrite.o ldexp.o  ldemul.o ldver.o ldmisc.o 	ldfile.o ldcref.o ${EMULATION_OFILES} ${EMUL_EXTRA_OFILES}
 
 
 STAGESTUFF = *.o ldscripts/* e*.c
@@ -399,8 +221,7 @@ GEN_DEPENDS = $(srcdir)/genscripts.sh st
 # We need this for automake to use YLWRAP.
 EXTRA_ld_new_SOURCES = deffilep.y
 
-ld_new_SOURCES = ldgram.y ldlex.l lexsup.c ldlang.c mri.c ldctor.c ldmain.c \
-	ldwrite.c ldexp.c ldemul.c ldver.c ldmisc.c ldfile.c ldcref.c
+ld_new_SOURCES = ldgram.y ldlex.l lexsup.c ldlang.c mri.c ldctor.c ldmain.c 	ldwrite.c ldexp.c ldemul.c ldver.c ldmisc.c ldfile.c ldcref.c
 
 ld_new_DEPENDENCIES = $(EMULATION_OFILES) $(EMUL_EXTRA_OFILES) $(BFDLIB) $(LIBIBERTY) $(INTLDEPS)
 ld_new_LDADD = $(EMULATION_OFILES) $(EMUL_EXTRA_OFILES) $(BFDLIB) $(LIBIBERTY) $(INTLLIBS)
@@ -410,8 +231,7 @@ TESTBFDLIB = @TESTBFDLIB@
 
 MAINTAINERCLEANFILES = ldver.texi
 
-MOSTLYCLEANFILES = $(STAGESTUFF) ld1$(EXEEXT) ld2$(EXEEXT) ld3$(EXEEXT) \
-	ldemul-list.h crtbegin.o crtend.o ld.log ld.sum
+MOSTLYCLEANFILES = $(STAGESTUFF) ld1$(EXEEXT) ld2$(EXEEXT) ld3$(EXEEXT) 	ldemul-list.h crtbegin.o crtend.o ld.log ld.sum
 
 CLEANFILES = dep.sed DEP DEPA DEP1 DEP2
 
@@ -853,7 +673,7 @@ distdir: $(DISTFILES)
 	@for file in $(DISTFILES); do \
 	  if test -f $$file; then d=.; else d=$(srcdir); fi; \
 	  if test -d $$d/$$file; then \
-	    cp -pr $$d/$$file $(distdir)/$$file; \
+	    cp -pr $$/$$file $(distdir)/$$file; \
 	  else \
 	    test -f $(distdir)/$$file \
 	    || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
@@ -1598,6 +1418,17 @@ ld.info: $(srcdir)/ld.texinfo configdoc.
 ld.dvi: $(srcdir)/ld.texinfo configdoc.texi ldver.texi
 	TEXINPUTS=$(top_srcdir)/../texinfo:$$TEXINPUTS \
 	  MAKEINFO="$(MAKEINFO) -I $(srcdir) -I $(BFDDIR)/doc" $(TEXI2DVI) -I $(BFDDIR)/doc $(srcdir)/ld.texinfo
+
+# Build the man page from the texinfo file
+# The sed command removes the no-adjust Nroff command so that
+# the man output looks standard.
+$(srcdir)/ld.1: $(srcdir)/ld.texinfo
+	touch $(srcdir)/ld.1
+	-$(TEXI2POD) $(MANCONF) < $(srcdir)/ld.texinfo > ld.pod
+	-($(POD2MAN) ld.pod | \
+		sed -e '/^.if n .na/d' > $(srcdir)/ld.1.T$$$$ && \
+		mv -f $(srcdir)/ld.1.T$$$$ $(srcdir)/ld.1) || \
+		(rm -f $(srcdir)/ld.1.T$$$$ && exit 1)
 
 # We want to reconfigure if configure.host or configure.tgt changes.
 config.status: $(srcdir)/configure $(srcdir)/configure.host $(srcdir)/configure.tgt
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/emulparams/m68hc11elf.sh binutils-2.11.2-m68hc1x/ld/emulparams/m68hc11elf.sh
--- binutils-2.11.2/ld/emulparams/m68hc11elf.sh	Mon Jun 19 03:22:43 2000
+++ binutils-2.11.2-m68hc1x/ld/emulparams/m68hc11elf.sh	Sun Dec 23 15:27:00 2001
@@ -5,8 +5,11 @@ ROM_START_ADDR=0x08000
 ROM_SIZE=0x8000
 RAM_START_ADDR=0x01100
 RAM_SIZE=0x6F00
+EEPROM_START_ADDR=0xb600
+EEPROM_SIZE=512
 TEXT_MEMORY=text
 DATA_MEMORY=data
+EEPROM_MEMORY=eeprom
 ARCH=m68hc11
 MAXPAGESIZE=32
 EMBEDDED=yes
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/emulparams/m68hc11elfb.sh binutils-2.11.2-m68hc1x/ld/emulparams/m68hc11elfb.sh
--- binutils-2.11.2/ld/emulparams/m68hc11elfb.sh	Mon Jun 19 03:22:43 2000
+++ binutils-2.11.2-m68hc1x/ld/emulparams/m68hc11elfb.sh	Sun Dec 23 15:27:16 2001
@@ -3,6 +3,7 @@ SCRIPT_NAME=elfm68hc11
 OUTPUT_FORMAT="elf32-m68hc11"
 TEXT_MEMORY=text
 DATA_MEMORY=data
+EEPROM_MEMORY=eeprom
 ARCH=m68hc11
 MAXPAGESIZE=32
 GENERIC_BOARD=yes
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/emulparams/m68hc12elf.sh binutils-2.11.2-m68hc1x/ld/emulparams/m68hc12elf.sh
--- binutils-2.11.2/ld/emulparams/m68hc12elf.sh	Mon Jun 19 03:22:43 2000
+++ binutils-2.11.2-m68hc1x/ld/emulparams/m68hc12elf.sh	Sun Dec 23 15:58:00 2001
@@ -5,8 +5,11 @@ ROM_START_ADDR=0x08000
 ROM_SIZE=0x8000
 RAM_START_ADDR=0x01100
 RAM_SIZE=0x6F00
+EEPROM_START_ADDR=0x0800
+EEPROM_SIZE=2048
 TEXT_MEMORY=text
 DATA_MEMORY=data
+EEPROM_MEMORY=eeprom
 ARCH=m68hc12
 MAXPAGESIZE=32
 EMBEDDED=yes
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/emulparams/m68hc12elfb.sh binutils-2.11.2-m68hc1x/ld/emulparams/m68hc12elfb.sh
--- binutils-2.11.2/ld/emulparams/m68hc12elfb.sh	Mon Jun 19 03:22:43 2000
+++ binutils-2.11.2-m68hc1x/ld/emulparams/m68hc12elfb.sh	Sun Dec 23 15:30:22 2001
@@ -3,6 +3,7 @@ SCRIPT_NAME=elfm68hc12
 OUTPUT_FORMAT="elf32-m68hc12"
 TEXT_MEMORY=text
 DATA_MEMORY=data
+EEPROM_MEMORY=eeprom
 ARCH=m68hc12
 MAXPAGESIZE=32
 GENERIC_BOARD=yes
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/ld.1 binutils-2.11.2-m68hc1x/ld/ld.1
--- binutils-2.11.2/ld/ld.1	Fri Sep 21 20:58:42 2001
+++ binutils-2.11.2-m68hc1x/ld/ld.1	Sun Dec 23 16:09:41 2001
@@ -1,1508 +1,1513 @@
-.\" Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-.\" 2001 Free Software Foundation, Inc.
-.\" See section COPYING for conditions for redistribution
-.TH ld 1 "" "Free Software Foundation" "GNU Development Tools"
-.de BP
-.sp
-.ti \-.2i
-\(**
+.\" Automatically generated by Pod::Man version 1.19
+.\" Fri Sep 21 22:11:35 2001
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
 ..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
 
-.SH NAME
-ld \- the GNU linker
-
-.SH SYNOPSIS
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  | will give a
+.\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.\"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
 .hy 0
-.na
-.TP
-.B ld 
-.RB "[\|" \-o "
-.I output\c
-\&\|] \c
-.I objfile\c
-\&.\|.\|.
-.br
-.RB "[\|" \-A\c
-.I architecture\c
-\&\|] 
-.RB "[\|" "\-b\ "\c
-.I input-format\c
-\&\|] 
-.RB "[\|" \-Bstatic "\|]"  
-.RB "[\|" \-Bgroup "\|]"  
-.RB "[\|" \-Bdynamic "\|]"  
-.RB "[\|" \-Bsymbolic "\|]"  
-.RB "[\|" "\-c\ "\c
-.I commandfile\c
-\&\|] 
-.RB "[\|" \-\-cref "\|]"
-.RB "[\|" \-d | \-dc | \-dp\c
-\|]
-.br
-.RB "[\|" "\-defsym\ "\c
-.I symbol\c
-\&=\c
-.I expression\c
-\&\|]
-.RB "[\|" \-\-demangle "\|]"
-.RB "[\|" \-\-no\-demangle "\|]"
-.RB "[\|" "\-e\ "\c
-.I entry\c
-\&\|] 
-.RB "[\|" \-embedded\-relocs "\|]"
-.RB "[\|" \-E "\|]" 
-.RB "[\|" \-export\-dynamic "\|]"
-.RB "[\|" "\-f\ "\c
-.I name\c
-\&\|]
-.RB "[\|" "\-\-auxiliary\ "\c
-.I name\c
-\&\|]
-.RB "[\|" "\-F\ "\c
-.I name\c
-\&\|]
-.RB "[\|" "\-\-filter\ "\c
-.I name\c
-\&\|]
-.RB "[\|" "\-format\ "\c
-.I input-format\c
-\&\|] 
-.RB "[\|" \-g "\|]" 
-.RB "[\|" \-G
-.I size\c
-\&\|]
-.RB "[\|" "\-h\ "\c
-.I name\c
-\&\|]
-.RB "[\|" "\-soname\ "\c
-.I name\c
-\&\|]
-.RB "[\|" \-\-help "\|]"
-.RB "[\|" \-i "\|]"
-.RB "[\|" \-l\c
-.I ar\c
-\&\|] 
-.RB "[\|" \-L\c
-.I searchdir\c
-\&\|] 
-.RB "[\|" \-M "\|]" 
-.RB "[\|" \-Map
-.I mapfile\c
-\&\|] 
-.RB "[\|" \-m
-.I emulation\c
-\&\|] 
-.RB "[\|" \-n | \-N "\|]" 
-.RB "[\|" \-noinhibit-exec "\|]" 
-.RB "[\|" \-no\-keep\-memory "\|]" 
-.RB "[\|" \-no\-warn\-mismatch "\|]" 
-.RB "[\|" \-O\c
-.I level\c
-\&\|]
-.RB "[\|" "\--oformat\ "\c
-.I output-format\c
-\&\|] 
-.RB "[\|" "\-R\ "\c
-.I filename\c
-\&\|]
-.RB "[\|" \-relax "\|]"
-.RB "[\|" \-r | \-Ur "\|]" 
-.RB "[\|" "\-rpath\ "\c
-.I directory\c
-\&\|]
-.RB "[\|" "\-rpath\-link\ "\c
-.I directory\c
-\&\|]
-.RB "[\|" \-S "\|]" 
-.RB "[\|" \-s "\|]" 
-.RB "[\|" \-shared "\|]" 
-.RB "[\|" \-sort\-common "\|]" 
-.RB "[\|" "\-split\-by\-reloc\ "\c
-.I count\c
-\&\|]
-.RB "[\|" \-split\-by\-file "\|]" 
-.RB "[\|" "\-T\ "\c
-.I commandfile\c
-\&\|]  
-.RB "[\|" "\-\-section\-start\ "\c
-.I sectionname\c
-\&=\c
-.I sectionorg\c
-\&\|]
-.RB "[\|" "\-Ttext\ "\c
-.I textorg\c
-\&\|] 
-.RB "[\|" "\-Tdata\ "\c
-.I dataorg\c
-\&\|] 
-.RB "[\|" "\-Tbss\ "\c
-.I bssorg\c
-\&\|]
-.RB "[\|" \-t "\|]" 
-.RB "[\|" "\-u\ "\c
-.I sym\c
-\&]
-.RB "[\|" \-V "\|]"
-.RB "[\|" \-v "\|]"
-.RB "[\|" \-\-verbose "\|]"
-.RB "[\|" \-\-version "\|]"
-.RB "[\|" \-warn\-common "\|]" 
-.RB "[\|" \-warn\-constructors "\|]" 
-.RB "[\|" \-warn\-multiple\-gp "\|]" 
-.RB "[\|" \-warn\-once "\|]" 
-.RB "[\|" \-warn\-section\-align "\|]" 
-.RB "[\|" \-\-whole\-archive "\|]" 
-.RB "[\|" \-\-no\-whole\-archive "\|]" 
-.RB "[\|" "\-\-wrap\ "\c
-.I symbol\c
-\&\|]
-.RB "[\|" \-X "\|]" 
-.RB "[\|" \-x "\|]" 
-.ad b
-.hy 1
-.SH DESCRIPTION
-\c
-.B ld\c
-\& combines a number of object and archive files, relocates
-their data and ties up symbol references. Often the last step in
-building a new compiled program to run is a call to \c
-.B ld\c
-\&.
-
-\c
-.B ld\c
-\& accepts Linker Command Language files 
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "LD 1"
+.TH LD 1 "binutils-2.11.2" "2001-09-21" "GNU Development Tools"
+.UC
+.SH "NAME"
+ld \- Using \s-1LD\s0, the \s-1GNU\s0 linker
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+ld [ options ] objfile...
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fBld\fR combines a number of object and archive files, relocates
+their data and ties up symbol references. Usually the last step in
+compiling a program is to run \fBld\fR.
+.PP
+\&\fBld\fR accepts Linker Command Language files written in
+a superset of \s-1AT&T\s0's Link Editor Command Language syntax,
 to provide explicit and total control over the linking process.
-This man page does not describe the command language; see the `\|\c
-.B ld\c
-\|' entry in `\|\c
-.B info\c
-\|', or the manual
-.I
-ld: the GNU linker
-\&, for full details on the command language and on other aspects of
-the GNU linker. 
-
-This version of \c
-.B ld\c
-\& uses the general purpose BFD libraries
-to operate on object files. This allows \c
-.B ld\c
-\& to read, combine, and
-write object files in many different formats\(em\&for example, COFF or
-\c
-.B a.out\c
-\&.  Different formats may be linked together to produce any
-available kind of object file.  You can use `\|\c
-.B objdump \-i\c
-\|' to get a list of formats supported on various architectures; see 
-.BR objdump ( 1 ).
-
-Aside from its flexibility, the GNU linker is more helpful than other
+.PP
+This man page does not describe the command language; see the 
+\&\fBld\fR entry in \f(CW\*(C`info\*(C'\fR, or the manual
+ld: the \s-1GNU\s0 linker, for full details on the command language and 
+on other aspects of the \s-1GNU\s0 linker. 
+.PP
+This version of \fBld\fR uses the general purpose \s-1BFD\s0 libraries
+to operate on object files. This allows \fBld\fR to read, combine, and
+write object files in many different formats\-\-\-for example, \s-1COFF\s0 or
+\&\f(CW\*(C`a.out\*(C'\fR.  Different formats may be linked together to produce any
+available kind of object file.  
+.PP
+Aside from its flexibility, the \s-1GNU\s0 linker is more helpful than other
 linkers in providing diagnostic information.  Many linkers abandon
 execution immediately upon encountering an error; whenever possible,
-\c
-.B ld\c
-\& continues executing, allowing you to identify other errors
+\&\fBld\fR continues executing, allowing you to identify other errors
 (or, in some cases, to get an output file in spite of the error).
-
-The GNU linker \c
-.B ld\c
-\& is meant to cover a broad range of situations,
+.PP
+The \s-1GNU\s0 linker \fBld\fR is meant to cover a broad range of situations,
 and to be as compatible as possible with other linkers.  As a result,
-you have many choices to control its behavior through the command line,
-and through environment variables.
-
-.SH OPTIONS
-The plethora of command-line options may seem intimidating, but in
-actual practice few of them are used in any particular context.
-For instance, a frequent use of \c
-.B ld\c
-\& is to link standard Unix
+you have many choices to control its behavior.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+The linker supports a plethora of command-line options, but in actual
+practice few of them are used in any particular context.
+For instance, a frequent use of \fBld\fR is to link standard Unix
 object files on a standard, supported Unix system.  On such a system, to
-link a file \c
-.B hello.o\c
-\&:
-.sp
-.br
-$\ ld\ \-o\ output\ /lib/crt0.o\ hello.o\ \-lc
-.br
-.sp
-This tells \c
-.B ld\c
-\& to produce a file called \c
-.B output\c
-\& as the
-result of linking the file \c
-.B /lib/crt0.o\c
-\& with \c
-.B hello.o\c
-\& and
-the library \c
-.B libc.a\c
-\& which will come from the standard search
-directories.
-
-The command-line options to \c
-.B ld\c
-\& may be specified in any order, and
-may be repeated at will.  For the most part, repeating an option with a
+link a file \f(CW\*(C`hello.o\*(C'\fR:
+.PP
+.Vb 1
+\&        ld -o I<output> /lib/crt0.o hello.o -lc
+.Ve
+This tells \fBld\fR to produce a file called \fIoutput\fR as the
+result of linking the file \f(CW\*(C`/lib/crt0.o\*(C'\fR with \f(CW\*(C`hello.o\*(C'\fR and
+the library \f(CW\*(C`libc.a\*(C'\fR, which will come from the standard search
+directories.  (See the discussion of the \fB\-l\fR option below.)
+.PP
+Some of the command-line options to \fBld\fR may be specified at any
+point in the command line.  However, options which refer to files, such
+as \fB\-l\fR or \fB\-T\fR, cause the file to be read at the point at
+which the option appears in the command line, relative to the object
+files and other file options.  Repeating non-file options with a
 different argument will either have no further effect, or override prior
-occurrences (those further to the left on the command line) of an
-option.  
-
-The exceptions\(em\&which may meaningfully be used more than once\(em\&are
-\c
-.B \-A\c
-\&, \c
-.B \-b\c
-\& (or its synonym \c
-.B \-format\c
-\&), \c
-.B \-defsym\c
-\&, \c
-.B \-\-section\-start\c
-\&, \c
-.B \-L\c
-\&, \c
-.B \-l\c
-\&, \c
-.B \-R\c
-\&, and \c
-.B \-u\c
-\&.
-
-The list of object files to be linked together, shown as \c
-.I objfile\c
-\&,
-may follow, precede, or be mixed in with command-line options; save that
-an \c
-.I objfile\c
-\& argument may not be placed between an option flag and
-its argument.
-
-Usually the linker is invoked with at least one object file, but other
-forms of binary input files can also be specified with \c
-.B \-l\c
-\&,
-\c
-.B \-R\c
-\&, and the script command language.  If \c
-.I no\c
-\& binary input
-files at all are specified, the linker does not produce any output, and
-issues the message `\|\c
-.B No input files\c
-\|'.
-
-Option arguments must either follow the option letter without intervening
+occurrences (those further to the left on the command line) of that
+option.  Options which may be meaningfully specified more than once are
+noted in the descriptions below.
+.PP
+Non-option arguments are object files or archives which are to be linked
+together.  They may follow, precede, or be mixed in with command-line
+options, except that an object file argument may not be placed between
+an option and its argument.
+.PP
+Usually the linker is invoked with at least one object file, but you can
+specify other forms of binary input files using \fB\-l\fR, \fB\-R\fR,
+and the script command language.  If \fIno\fR binary input files at all
+are specified, the linker does not produce any output, and issues the
+message \fBNo input files\fR.
+.PP
+If the linker can not recognize the format of an object file, it will
+assume that it is a linker script.  A script specified in this way
+augments the main linker script used for the link (either the default
+linker script or the one specified by using \fB\-T\fR).  This feature
+permits the linker to link against a file which appears to be an object
+or an archive, but actually merely defines some symbol values, or uses
+\&\f(CW\*(C`INPUT\*(C'\fR or \f(CW\*(C`GROUP\*(C'\fR to load other objects.  Note that
+specifying a script in this way should only be used to augment the main
+linker script; if you want to use some command that logically can only
+appear once, such as the \f(CW\*(C`SECTIONS\*(C'\fR or \f(CW\*(C`MEMORY\*(C'\fR command, you
+must replace the default linker script using the \fB\-T\fR option.
+.PP
+For options whose names are a single letter,
+option arguments must either follow the option letter without intervening
 whitespace, or be given as separate arguments immediately following the
 option that requires them.
-
-.TP
-.BI "-A" "architecture"
-In the current release of \c
-.B ld\c
-\&, this option is useful only for the
-Intel 960 family of architectures.  In that \c
-.B ld\c
-\& configuration, the
-\c
-.I architecture\c
-\& argument is one of the two-letter names identifying
-members of the 960 family; the option specifies the desired output
-target, and warns of any incompatible instructions in the input files.
-It also modifies the linker's search strategy for archive libraries, to
-support the use of libraries specific to each particular
-architecture, by including in the search loop names suffixed with the
-string identifying the architecture.
-
-For example, if your \c
-.B ld\c
-\& command line included `\|\c
-.B \-ACA\c
-\|' as
-well as `\|\c
-.B \-ltry\c
-\|', the linker would look (in its built-in search
-paths, and in any paths you specify with \c
-.B \-L\c
-\&) for a library with
-the names
-.sp
-.br
-try
-.br
-libtry.a
-.br
-tryca
-.br
-libtryca.a
-.br
-.sp
-
-The first two possibilities would be considered in any event; the last
-two are due to the use of `\|\c
-.B \-ACA\c
-\|'.
-
-Future releases of \c
-.B ld\c
-\& may support similar functionality for
+.PP
+For options whose names are multiple letters, either one dash or two can
+precede the option name; for example, \fB\-trace-symbol\fR and
+\&\fB\*(--trace-symbol\fR are equivalent.  Note \- there is one exception to
+this rule.  Multiple letter options that start with a lower case 'o' can
+only be preceeded by two dashes.  This is to reduce confusion with the
+\&\fB\-o\fR option.  So for example \fB\-omagic\fR sets the output file
+name to \fBmagic\fR whereas \fB\*(--omagic\fR sets the \s-1NMAGIC\s0 flag on the
+output.
+.PP
+Arguments to multiple-letter options must either be separated from the
+option name by an equals sign, or be given as separate arguments
+immediately following the option that requires them.  For example,
+\&\fB\*(--trace-symbol foo\fR and \fB\*(--trace-symbol=foo\fR are equivalent.
+Unique abbreviations of the names of multiple-letter options are
+accepted.
+.PP
+Note \- if the linker is being invoked indirectly, via a compiler driver
+(eg \fBgcc\fR) then all the linker command line options should be
+prefixed by \fB\-Wl,\fR (or whatever is appropriate for the particular
+compiler driver) like this:
+.PP
+.Vb 1
+\&          gcc -Wl,--startgroup foo.o bar.o -Wl,--endgroup
+.Ve
+This is important, because otherwise the compiler driver program may
+silently drop the linker options, resulting in a bad link.
+.PP
+Here is a table of the generic command line switches accepted by the \s-1GNU\s0
+linker:
+.IP "\fB\-a\fR\fIkeyword\fR" 4
+.IX Item "-akeyword"
+This option is supported for \s-1HP/UX\s0 compatibility.  The \fIkeyword\fR
+argument must be one of the strings \fBarchive\fR, \fBshared\fR, or
+\&\fBdefault\fR.  \fB\-aarchive\fR is functionally equivalent to
+\&\fB\-Bstatic\fR, and the other two keywords are functionally equivalent
+to \fB\-Bdynamic\fR.  This option may be used any number of times.
+.IP "\fB\-A\fR\fIarchitecture\fR" 4
+.IX Item "-Aarchitecture"
+.PD 0
+.IP "\fB\*(--architecture=\fR\fIarchitecture\fR" 4
+.IX Item "architecture=architecture"
+.PD
+In the current release of \fBld\fR, this option is useful only for the
+Intel 960 family of architectures.  In that \fBld\fR configuration, the
+\&\fIarchitecture\fR argument identifies the particular architecture in
+the 960 family, enabling some safeguards and modifying the
+archive-library search path.  
+.Sp
+Future releases of \fBld\fR may support similar functionality for
 other architecture families.
-
-You can meaningfully use \c
-.B \-A\c
-\& more than once on a command line, if
-an architecture family allows combination of target architectures; each
-use will add another pair of name variants to search for when \c
-.B \-l
-specifies a library.
-
-.TP
-.BI "\-b " "input-format"
-Specify the binary format for input object files that follow this option
-on the command line.  You don't usually need to specify this, as
-\c
-.B ld\c
-\& is configured to expect as a default input format the most
-usual format on each machine.  \c
-.I input-format\c
-\& is a text string, the
-name of a particular format supported by the BFD libraries.  
-\c
-.B \-format \c
-.I input-format\c
-\&\c
-\& has the same effect, as does the script command
-.BR TARGET .
-
+.IP "\fB\-b\fR \fIinput-format\fR" 4
+.IX Item "-b input-format"
+.PD 0
+.IP "\fB\*(--format=\fR\fIinput-format\fR" 4
+.IX Item "format=input-format"
+.PD
+\&\fBld\fR may be configured to support more than one kind of object
+file.  If your \fBld\fR is configured this way, you can use the
+\&\fB\-b\fR option to specify the binary format for input object files
+that follow this option on the command line.  Even when \fBld\fR is
+configured to support alternative object formats, you don't usually need
+to specify this, as \fBld\fR should be configured to expect as a
+default input format the most usual format on each machine.
+\&\fIinput-format\fR is a text string, the name of a particular format
+supported by the \s-1BFD\s0 libraries.  (You can list the available binary
+formats with \fBobjdump \-i\fR.)
+.Sp
 You may want to use this option if you are linking files with an unusual
-binary format.  You can also use \c
-.B \-b\c
-\& to switch formats explicitly (when
+binary format.  You can also use \fB\-b\fR to switch formats explicitly (when
 linking object files of different formats), by including
-\c
-.B \-b \c
-.I input-format\c
-\&\c
-\& before each group of object files in a
-particular format.  
-
+\&\fB\-b\fR \fIinput-format\fR before each group of object files in a
+particular format.
+.Sp
 The default format is taken from the environment variable
-.B GNUTARGET\c
-\&.  You can also define the input
-format from a script, using the command \c
-.B TARGET\c
-\&.
-
-.TP
-.B \-Bstatic 
-Do not link against shared libraries.  This is only meaningful on
-platforms for which shared libraries are supported.
-
-.TP
-.B \-Bdynamic
+\&\f(CW\*(C`GNUTARGET\*(C'\fR.
+.Sp
+You can also define the input format from a script, using the command
+\&\f(CW\*(C`TARGET\*(C'\fR;
+.IP "\fB\-c\fR \fIMRI-commandfile\fR" 4
+.IX Item "-c MRI-commandfile"
+.PD 0
+.IP "\fB\*(--mri-script=\fR\fIMRI-commandfile\fR" 4
+.IX Item "mri-script=MRI-commandfile"
+.PD
+For compatibility with linkers produced by \s-1MRI\s0, \fBld\fR accepts script
+files written in an alternate, restricted command language, described in
+the \s-1MRI\s0 Compatible Script Files section of \s-1GNU\s0 ld documentation.
+Introduce \s-1MRI\s0 script files with
+the option \fB\-c\fR; use the \fB\-T\fR option to run linker
+scripts written in the general-purpose \fBld\fR scripting language.
+If \fIMRI-cmdfile\fR does not exist, \fBld\fR looks for it in the directories
+specified by any \fB\-L\fR options.
+.IP "\fB\-d\fR" 4
+.IX Item "-d"
+.PD 0
+.IP "\fB\-dc\fR" 4
+.IX Item "-dc"
+.IP "\fB\-dp\fR" 4
+.IX Item "-dp"
+.PD
+These three options are equivalent; multiple forms are supported for
+compatibility with other linkers.  They assign space to common symbols
+even if a relocatable output file is specified (with \fB\-r\fR).  The
+script command \f(CW\*(C`FORCE_COMMON_ALLOCATION\*(C'\fR has the same effect.
+.IP "\fB\-e\fR \fIentry\fR" 4
+.IX Item "-e entry"
+.PD 0
+.IP "\fB\*(--entry=\fR\fIentry\fR" 4
+.IX Item "entry=entry"
+.PD
+Use \fIentry\fR as the explicit symbol for beginning execution of your
+program, rather than the default entry point.  If there is no symbol
+named \fIentry\fR, the linker will try to parse \fIentry\fR as a number,
+and use that as the entry address (the number will be interpreted in
+base 10; you may use a leading \fB0x\fR for base 16, or a leading
+\&\fB0\fR for base 8).  
+.IP "\fB\-E\fR" 4
+.IX Item "-E"
+.PD 0
+.IP "\fB\*(--export-dynamic\fR" 4
+.IX Item "export-dynamic"
+.PD
+When creating a dynamically linked executable, add all symbols to the
+dynamic symbol table.  The dynamic symbol table is the set of symbols
+which are visible from dynamic objects at run time.
+.Sp
+If you do not use this option, the dynamic symbol table will normally
+contain only those symbols which are referenced by some dynamic object
+mentioned in the link.
+.Sp
+If you use \f(CW\*(C`dlopen\*(C'\fR to load a dynamic object which needs to refer
+back to the symbols defined by the program, rather than some other
+dynamic object, then you will probably need to use this option when
+linking the program itself.
+.IP "\fB\-EB\fR" 4
+.IX Item "-EB"
+Link big-endian objects.  This affects the default output format.
+.IP "\fB\-EL\fR" 4
+.IX Item "-EL"
+Link little-endian objects.  This affects the default output format.
+.IP "\fB\-f\fR" 4
+.IX Item "-f"
+.PD 0
+.IP "\fB\*(--auxiliary\fR \fIname\fR" 4
+.IX Item "auxiliary name"
+.PD
+When creating an \s-1ELF\s0 shared object, set the internal \s-1DT_AUXILIARY\s0 field
+to the specified name.  This tells the dynamic linker that the symbol
+table of the shared object should be used as an auxiliary filter on the
+symbol table of the shared object \fIname\fR.
+.Sp
+If you later link a program against this filter object, then, when you
+run the program, the dynamic linker will see the \s-1DT_AUXILIARY\s0 field.  If
+the dynamic linker resolves any symbols from the filter object, it will
+first check whether there is a definition in the shared object
+\&\fIname\fR.  If there is one, it will be used instead of the definition
+in the filter object.  The shared object \fIname\fR need not exist.
+Thus the shared object \fIname\fR may be used to provide an alternative
+implementation of certain functions, perhaps for debugging or for
+machine specific performance.
+.Sp
+This option may be specified more than once.  The \s-1DT_AUXILIARY\s0 entries
+will be created in the order in which they appear on the command line.
+.IP "\fB\-F\fR \fIname\fR" 4
+.IX Item "-F name"
+.PD 0
+.IP "\fB\*(--filter\fR \fIname\fR" 4
+.IX Item "filter name"
+.PD
+When creating an \s-1ELF\s0 shared object, set the internal \s-1DT_FILTER\s0 field to
+the specified name.  This tells the dynamic linker that the symbol table
+of the shared object which is being created should be used as a filter
+on the symbol table of the shared object \fIname\fR.
+.Sp
+If you later link a program against this filter object, then, when you
+run the program, the dynamic linker will see the \s-1DT_FILTER\s0 field.  The
+dynamic linker will resolve symbols according to the symbol table of the
+filter object as usual, but it will actually link to the definitions
+found in the shared object \fIname\fR.  Thus the filter object can be
+used to select a subset of the symbols provided by the object
+\&\fIname\fR.
+.Sp
+Some older linkers used the \fB\-F\fR option throughout a compilation
+toolchain for specifying object-file format for both input and output
+object files.  The \s-1GNU\s0 linker uses other mechanisms for this
+purpose: the \fB\-b\fR, \fB\*(--format\fR, \fB\*(--oformat\fR options, the
+\&\f(CW\*(C`TARGET\*(C'\fR command in linker scripts, and the \f(CW\*(C`GNUTARGET\*(C'\fR
+environment variable.  The \s-1GNU\s0 linker will ignore the \fB\-F\fR
+option when not creating an \s-1ELF\s0 shared object.
+.IP "\fB\-fini\fR \fIname\fR" 4
+.IX Item "-fini name"
+When creating an \s-1ELF\s0 executable or shared object, call \s-1NAME\s0 when the
+executable or shared object is unloaded, by setting \s-1DT_FINI\s0 to the
+address of the function.  By default, the linker uses \f(CW\*(C`_fini\*(C'\fR as
+the function to call.
+.IP "\fB\-g\fR" 4
+.IX Item "-g"
+Ignored.  Provided for compatibility with other tools.
+.IP "\fB\-G\fR\fIvalue\fR" 4
+.IX Item "-Gvalue"
+.PD 0
+.IP "\fB\*(--gpsize=\fR\fIvalue\fR" 4
+.IX Item "gpsize=value"
+.PD
+Set the maximum size of objects to be optimized using the \s-1GP\s0 register to
+\&\fIsize\fR.  This is only meaningful for object file formats such as
+\&\s-1MIPS\s0 \s-1ECOFF\s0 which supports putting large and small objects into different
+sections.  This is ignored for other object file formats.
+.IP "\fB\-h\fR\fIname\fR" 4
+.IX Item "-hname"
+.PD 0
+.IP "\fB\-soname=\fR\fIname\fR" 4
+.IX Item "-soname=name"
+.PD
+When creating an \s-1ELF\s0 shared object, set the internal \s-1DT_SONAME\s0 field to
+the specified name.  When an executable is linked with a shared object
+which has a \s-1DT_SONAME\s0 field, then when the executable is run the dynamic
+linker will attempt to load the shared object specified by the \s-1DT_SONAME\s0
+field rather than the using the file name given to the linker.
+.IP "\fB\-i\fR" 4
+.IX Item "-i"
+Perform an incremental link (same as option \fB\-r\fR).
+.IP "\fB\-init\fR \fIname\fR" 4
+.IX Item "-init name"
+When creating an \s-1ELF\s0 executable or shared object, call \s-1NAME\s0 when the
+executable or shared object is loaded, by setting \s-1DT_INIT\s0 to the address
+of the function.  By default, the linker uses \f(CW\*(C`_init\*(C'\fR as the
+function to call.
+.IP "\fB\-l\fR\fIarchive\fR" 4
+.IX Item "-larchive"
+.PD 0
+.IP "\fB\*(--library=\fR\fIarchive\fR" 4
+.IX Item "library=archive"
+.PD
+Add archive file \fIarchive\fR to the list of files to link.  This
+option may be used any number of times.  \fBld\fR will search its
+path-list for occurrences of \f(CW\*(C`lib\f(CIarchive\f(CW.a\*(C'\fR for every
+\&\fIarchive\fR specified.
+.Sp
+On systems which support shared libraries, \fBld\fR may also search for
+libraries with extensions other than \f(CW\*(C`.a\*(C'\fR.  Specifically, on \s-1ELF\s0
+and SunOS systems, \fBld\fR will search a directory for a library with
+an extension of \f(CW\*(C`.so\*(C'\fR before searching for one with an extension of
+\&\f(CW\*(C`.a\*(C'\fR.  By convention, a \f(CW\*(C`.so\*(C'\fR extension indicates a shared
+library.
+.Sp
+The linker will search an archive only once, at the location where it is
+specified on the command line.  If the archive defines a symbol which
+was undefined in some object which appeared before the archive on the
+command line, the linker will include the appropriate file(s) from the
+archive.  However, an undefined symbol in an object appearing later on
+the command line will not cause the linker to search the archive again.
+.Sp
+See the \fB\-(\fR option for a way to force the linker to search
+archives multiple times.
+.Sp
+You may list the same archive multiple times on the command line.
+.Sp
+This type of archive searching is standard for Unix linkers.  However,
+if you are using \fBld\fR on \s-1AIX\s0, note that it is different from the
+behaviour of the \s-1AIX\s0 linker.
+.IP "\fB\-L\fR\fIsearchdir\fR" 4
+.IX Item "-Lsearchdir"
+.PD 0
+.IP "\fB\*(--library-path=\fR\fIsearchdir\fR" 4
+.IX Item "library-path=searchdir"
+.PD
+Add path \fIsearchdir\fR to the list of paths that \fBld\fR will search
+for archive libraries and \fBld\fR control scripts.  You may use this
+option any number of times.  The directories are searched in the order
+in which they are specified on the command line.  Directories specified
+on the command line are searched before the default directories.  All
+\&\fB\-L\fR options apply to all \fB\-l\fR options, regardless of the
+order in which the options appear.
+.Sp
+The default set of paths searched (without being specified with
+\&\fB\-L\fR) depends on which emulation mode \fBld\fR is using, and in
+some cases also on how it was configured.  
+.Sp
+The paths can also be specified in a link script with the
+\&\f(CW\*(C`SEARCH_DIR\*(C'\fR command.  Directories specified this way are searched
+at the point in which the linker script appears in the command line.
+.IP "\fB\-m\fR\fIemulation\fR" 4
+.IX Item "-memulation"
+Emulate the \fIemulation\fR linker.  You can list the available
+emulations with the \fB\*(--verbose\fR or \fB\-V\fR options.
+.Sp
+If the \fB\-m\fR option is not used, the emulation is taken from the
+\&\f(CW\*(C`LDEMULATION\*(C'\fR environment variable, if that is defined.
+.Sp
+Otherwise, the default emulation depends upon how the linker was
+configured.
+.IP "\fB\-M\fR" 4
+.IX Item "-M"
+.PD 0
+.IP "\fB\*(--print-map\fR" 4
+.IX Item "print-map"
+.PD
+Print a link map to the standard output.  A link map provides
+information about the link, including the following:
+.RS 4
+.IP "\(bu" 4
+Where object files and symbols are mapped into memory.
+.IP "\(bu" 4
+How common symbols are allocated.
+.IP "\(bu" 4
+All archive members included in the link, with a mention of the symbol
+which caused the archive member to be brought in.
+.RE
+.RS 4
+.RE
+.IP "\fB\-n\fR" 4
+.IX Item "-n"
+.PD 0
+.IP "\fB\*(--nmagic\fR" 4
+.IX Item "nmagic"
+.PD
+Turn off page alignment of sections, and mark the output as
+\&\f(CW\*(C`NMAGIC\*(C'\fR if possible.
+.IP "\fB\-N\fR" 4
+.IX Item "-N"
+.PD 0
+.IP "\fB\*(--omagic\fR" 4
+.IX Item "omagic"
+.PD
+Set the text and data sections to be readable and writable.  Also, do
+not page-align the data segment.  If the output format supports Unix
+style magic numbers, mark the output as \f(CW\*(C`OMAGIC\*(C'\fR.
+.IP "\fB\-o\fR \fIoutput\fR" 4
+.IX Item "-o output"
+.PD 0
+.IP "\fB\*(--output=\fR\fIoutput\fR" 4
+.IX Item "output=output"
+.PD
+Use \fIoutput\fR as the name for the program produced by \fBld\fR; if this
+option is not specified, the name \fIa.out\fR is used by default.  The
+script command \f(CW\*(C`OUTPUT\*(C'\fR can also specify the output file name.
+.IP "\fB\-O\fR \fIlevel\fR" 4
+.IX Item "-O level"
+If \fIlevel\fR is a numeric values greater than zero \fBld\fR optimizes
+the output.  This might take significantly longer and therefore probably
+should only be enabled for the final binary.
+.IP "\fB\-q\fR" 4
+.IX Item "-q"
+.PD 0
+.IP "\fB\*(--emit-relocs\fR" 4
+.IX Item "emit-relocs"
+.PD
+Leave relocation sections and contents in fully linked exececutables.
+Post link analysis and optimization tools may need this information in
+order to perform correct modifications of executables.  This results
+in larger executables.
+.IP "\fB\-r\fR" 4
+.IX Item "-r"
+.PD 0
+.IP "\fB\*(--relocateable\fR" 4
+.IX Item "relocateable"
+.PD
+Generate relocatable output\-\-\-i.e., generate an output file that can in
+turn serve as input to \fBld\fR.  This is often called \fIpartial
+linking\fR.  As a side effect, in environments that support standard Unix
+magic numbers, this option also sets the output file's magic number to
+\&\f(CW\*(C`OMAGIC\*(C'\fR.
+If this option is not specified, an absolute file is produced.  When
+linking \*(C+ programs, this option \fIwill not\fR resolve references to
+constructors; to do that, use \fB\-Ur\fR.
+.Sp
+This option does the same thing as \fB\-i\fR.
+.IP "\fB\-R\fR \fIfilename\fR" 4
+.IX Item "-R filename"
+.PD 0
+.IP "\fB\*(--just-symbols=\fR\fIfilename\fR" 4
+.IX Item "just-symbols=filename"
+.PD
+Read symbol names and their addresses from \fIfilename\fR, but do not
+relocate it or include it in the output.  This allows your output file
+to refer symbolically to absolute locations of memory defined in other
+programs.  You may use this option more than once.
+.Sp
+For compatibility with other \s-1ELF\s0 linkers, if the \fB\-R\fR option is
+followed by a directory name, rather than a file name, it is treated as
+the \fB\-rpath\fR option.
+.IP "\fB\-s\fR" 4
+.IX Item "-s"
+.PD 0
+.IP "\fB\*(--strip-all\fR" 4
+.IX Item "strip-all"
+.PD
+Omit all symbol information from the output file.
+.IP "\fB\-S\fR" 4
+.IX Item "-S"
+.PD 0
+.IP "\fB\*(--strip-debug\fR" 4
+.IX Item "strip-debug"
+.PD
+Omit debugger symbol information (but not all symbols) from the output file.
+.IP "\fB\-t\fR" 4
+.IX Item "-t"
+.PD 0
+.IP "\fB\*(--trace\fR" 4
+.IX Item "trace"
+.PD
+Print the names of the input files as \fBld\fR processes them.
+.IP "\fB\-T\fR \fIscriptfile\fR" 4
+.IX Item "-T scriptfile"
+.PD 0
+.IP "\fB\*(--script=\fR\fIscriptfile\fR" 4
+.IX Item "script=scriptfile"
+.PD
+Use \fIscriptfile\fR as the linker script.  This script replaces
+\&\fBld\fR's default linker script (rather than adding to it), so
+\&\fIcommandfile\fR must specify everything necessary to describe the
+output file.  You must use this option if you want to use a command
+which can only appear once in a linker script, such as the
+\&\f(CW\*(C`SECTIONS\*(C'\fR or \f(CW\*(C`MEMORY\*(C'\fR command.    If
+\&\fIscriptfile\fR does not exist in the current directory, \fBld\fR
+looks for it in the directories specified by any preceding \fB\-L\fR
+options.  Multiple \fB\-T\fR options accumulate.
+.IP "\fB\-u\fR \fIsymbol\fR" 4
+.IX Item "-u symbol"
+.PD 0
+.IP "\fB\*(--undefined=\fR\fIsymbol\fR" 4
+.IX Item "undefined=symbol"
+.PD
+Force \fIsymbol\fR to be entered in the output file as an undefined
+symbol.  Doing this may, for example, trigger linking of additional
+modules from standard libraries.  \fB\-u\fR may be repeated with
+different option arguments to enter additional undefined symbols.  This
+option is equivalent to the \f(CW\*(C`EXTERN\*(C'\fR linker script command.
+.IP "\fB\-Ur\fR" 4
+.IX Item "-Ur"
+For anything other than \*(C+ programs, this option is equivalent to
+\&\fB\-r\fR: it generates relocatable output\-\-\-i.e., an output file that can in
+turn serve as input to \fBld\fR.  When linking \*(C+ programs, \fB\-Ur\fR
+\&\fIdoes\fR resolve references to constructors, unlike \fB\-r\fR.
+It does not work to use \fB\-Ur\fR on files that were themselves linked
+with \fB\-Ur\fR; once the constructor table has been built, it cannot
+be added to.  Use \fB\-Ur\fR only for the last partial link, and
+\&\fB\-r\fR for the others.
+.IP "\fB\*(--unique[=\fR\fI\s-1SECTION\s0\fR\fB]\fR" 4
+.IX Item "unique[=SECTION]"
+Creates a separate output section for every input section matching
+\&\fI\s-1SECTION\s0\fR, or if the optional wildcard \fI\s-1SECTION\s0\fR argument is
+missing, for every orphan input section.  An orphan section is one not
+specifically mentioned in a linker script.  You may use this option
+multiple times on the command line;  It prevents the normal merging of
+input sections with the same name, overriding output section assignments
+in a linker script.
+.IP "\fB\-v\fR" 4
+.IX Item "-v"
+.PD 0
+.IP "\fB\*(--version\fR" 4
+.IX Item "version"
+.IP "\fB\-V\fR" 4
+.IX Item "-V"
+.PD
+Display the version number for \fBld\fR.  The \fB\-V\fR option also
+lists the supported emulations.
+.IP "\fB\-x\fR" 4
+.IX Item "-x"
+.PD 0
+.IP "\fB\*(--discard-all\fR" 4
+.IX Item "discard-all"
+.PD
+Delete all local symbols.
+.IP "\fB\-X\fR" 4
+.IX Item "-X"
+.PD 0
+.IP "\fB\*(--discard-locals\fR" 4
+.IX Item "discard-locals"
+.PD
+Delete all temporary local symbols.  For most targets, this is all local
+symbols whose names begin with \fBL\fR.
+.IP "\fB\-y\fR \fIsymbol\fR" 4
+.IX Item "-y symbol"
+.PD 0
+.IP "\fB\*(--trace-symbol=\fR\fIsymbol\fR" 4
+.IX Item "trace-symbol=symbol"
+.PD
+Print the name of each linked file in which \fIsymbol\fR appears.  This
+option may be given any number of times.  On many systems it is necessary
+to prepend an underscore.
+.Sp
+This option is useful when you have an undefined symbol in your link but
+don't know where the reference is coming from.
+.IP "\fB\-Y\fR \fIpath\fR" 4
+.IX Item "-Y path"
+Add \fIpath\fR to the default library search path.  This option exists
+for Solaris compatibility.
+.IP "\fB\-z\fR \fIkeyword\fR" 4
+.IX Item "-z keyword"
+The recognized keywords are \f(CW\*(C`initfirst\*(C'\fR, \f(CW\*(C`interpose\*(C'\fR,
+\&\f(CW\*(C`loadfltr\*(C'\fR, \f(CW\*(C`nodefaultlib\*(C'\fR, \f(CW\*(C`nodelete\*(C'\fR, \f(CW\*(C`nodlopen\*(C'\fR,
+\&\f(CW\*(C`nodump\*(C'\fR, \f(CW\*(C`now\*(C'\fR and \f(CW\*(C`origin\*(C'\fR. The other keywords are
+ignored for Solaris compatibility. \f(CW\*(C`initfirst\*(C'\fR marks the object
+to be initialized first at runtime before any other objects.
+\&\f(CW\*(C`interpose\*(C'\fR marks the object that its symbol table interposes
+before all symbols but the primary executable. \f(CW\*(C`loadfltr\*(C'\fR marks
+the object that its filtees be processed immediately at runtime.
+\&\f(CW\*(C`nodefaultlib\*(C'\fR marks the object that the search for dependencies
+of this object will ignore any default library search paths.
+\&\f(CW\*(C`nodelete\*(C'\fR marks the object shouldn't be unloaded at runtime.
+\&\f(CW\*(C`nodlopen\*(C'\fR marks the object not available to \f(CW\*(C`dlopen\*(C'\fR.
+\&\f(CW\*(C`nodump\*(C'\fR marks the object can not be dumped by \f(CW\*(C`dldump\*(C'\fR.
+\&\f(CW\*(C`now\*(C'\fR marks the object with the non-lazy runtime binding.
+\&\f(CW\*(C`origin\*(C'\fR marks the object may contain \f(CW$ORIGIN\fR.
+\&\f(CW\*(C`defs\*(C'\fR disallows undefined symbols.
+.IP "\fB\-(\fR \fIarchives\fR \fB\-)\fR" 4
+.IX Item "-( archives -)"
+.PD 0
+.IP "\fB\*(--start-group\fR \fIarchives\fR \fB\*(--end-group\fR" 4
+.IX Item "start-group archives end-group"
+.PD
+The \fIarchives\fR should be a list of archive files.  They may be
+either explicit file names, or \fB\-l\fR options.
+.Sp
+The specified archives are searched repeatedly until no new undefined
+references are created.  Normally, an archive is searched only once in
+the order that it is specified on the command line.  If a symbol in that
+archive is needed to resolve an undefined symbol referred to by an
+object in an archive that appears later on the command line, the linker
+would not be able to resolve that reference.  By grouping the archives,
+they all be searched repeatedly until all possible references are
+resolved.
+.Sp
+Using this option has a significant performance cost.  It is best to use
+it only when there are unavoidable circular references between two or
+more archives.
+.IP "\fB\-assert\fR \fIkeyword\fR" 4
+.IX Item "-assert keyword"
+This option is ignored for SunOS compatibility.
+.IP "\fB\-Bdynamic\fR" 4
+.IX Item "-Bdynamic"
+.PD 0
+.IP "\fB\-dy\fR" 4
+.IX Item "-dy"
+.IP "\fB\-call_shared\fR" 4
+.IX Item "-call_shared"
+.PD
 Link against dynamic libraries.  This is only meaningful on platforms
 for which shared libraries are supported.  This option is normally the
-default on such platforms.
-
-.TP
-.B \-Bgroup
-Set the \c
-.B DF_1_GROUP
-\c
-flag in the \c
-.B DT_FLAGS_1
-\c
-entry in the dynamic section.  This causes the runtime linker to handle
-lookups in this object and its dependencies to be performed only inside
-the group.  No undefined symbols are allowed.  This option is only
-meaningful on ELF platforms which support shared libraries.
-
-.TP
-.B \-Bsymbolic
-When creating a shared library, bind references to global symbols to
-the definition within the shared library, if any.  Normally, it is
-possible for a program linked against a shared library to override the
-definition within the shared library.  This option is only meaningful
-on ELF platforms which support shared libraries.
-
-.TP
-.BI "\-c " "commandfile"
-Directs \c
-.B ld\c
-\& to read link commands from the file
-\c
-.I commandfile\c
-\&.  These commands will completely override \c
-.B ld\c
-\&'s
-default link format (rather than adding to it); \c
-.I commandfile\c
-\& must
-specify everything necessary to describe the target format.
-
-
-You may also include a script of link commands directly in the command
-line by bracketing it between `\|\c
-.B {\c
-\|' and `\|\c
-.B }\c
-\|' characters.
-
-.TP
-.B \-\-cref
+default on such platforms.  The different variants of this option are
+for compatibility with various systems.  You may use this option
+multiple times on the command line: it affects library searching for
+\&\fB\-l\fR options which follow it.
+.IP "\fB\-Bgroup\fR" 4
+.IX Item "-Bgroup"
+Set the \f(CW\*(C`DF_1_GROUP\*(C'\fR flag in the \f(CW\*(C`DT_FLAGS_1\*(C'\fR entry in the dynamic
+section.  This causes the runtime linker to handle lookups in this
+object and its dependencies to be performed only inside the group.
+\&\fB\*(--no-undefined\fR is implied.  This option is only meaningful on \s-1ELF\s0
+platforms which support shared libraries.
+.IP "\fB\-Bstatic\fR" 4
+.IX Item "-Bstatic"
+.PD 0
+.IP "\fB\-dn\fR" 4
+.IX Item "-dn"
+.IP "\fB\-non_shared\fR" 4
+.IX Item "-non_shared"
+.IP "\fB\-static\fR" 4
+.IX Item "-static"
+.PD
+Do not link against shared libraries.  This is only meaningful on
+platforms for which shared libraries are supported.  The different
+variants of this option are for compatibility with various systems.  You
+may use this option multiple times on the command line: it affects
+library searching for \fB\-l\fR options which follow it.
+.IP "\fB\-Bsymbolic\fR" 4
+.IX Item "-Bsymbolic"
+When creating a shared library, bind references to global symbols to the
+definition within the shared library, if any.  Normally, it is possible
+for a program linked against a shared library to override the definition
+within the shared library.  This option is only meaningful on \s-1ELF\s0
+platforms which support shared libraries.
+.IP "\fB\*(--check-sections\fR" 4
+.IX Item "check-sections"
+.PD 0
+.IP "\fB\*(--no-check-sections\fR" 4
+.IX Item "no-check-sections"
+.PD
+Asks the linker \fInot\fR to check section addresses after they have
+been assigned to see if there any overlaps.  Normally the linker will
+perform this check, and if it finds any overlaps it will produce
+suitable error messages.  The linker does know about, and does make
+allowances for sections in overlays.  The default behaviour can be
+restored by using the command line switch \fB\*(--check-sections\fR.
+.IP "\fB\*(--cref\fR" 4
+.IX Item "cref"
 Output a cross reference table.  If a linker map file is being
 generated, the cross reference table is printed to the map file.
 Otherwise, it is printed on the standard output.
-
-.TP
-.B \-d 
-.TP
-.B \-dc
-.TP
-.B \-dp
-These three options are equivalent; multiple forms are supported for
-compatibility with other linkers.  Use any of them to make \c
-.B ld
-assign space to common symbols even if a relocatable output file is
-specified (\c
-.B \-r\c
-\&).  The script command
-\c
-.B FORCE_COMMON_ALLOCATION\c
-\& has the same effect.
-
-.TP
-.BI "-defsym " "symbol" "\fR=\fP" expression
+.Sp
+The format of the table is intentionally simple, so that it may be
+easily processed by a script if necessary.  The symbols are printed out,
+sorted by name.  For each symbol, a list of file names is given.  If the
+symbol is defined, the first file listed is the location of the
+definition.  The remaining files contain references to the symbol.
+.IP "\fB\*(--defsym\fR \fIsymbol\fR\fB=\fR\fIexpression\fR" 4
+.IX Item "defsym symbol=expression"
 Create a global symbol in the output file, containing the absolute
-address given by \c
-.I expression\c
-\&.  You may use this option as many
+address given by \fIexpression\fR.  You may use this option as many
 times as necessary to define multiple symbols in the command line.  A
-limited form of arithmetic is supported for the \c
-.I expression\c
-\& in this
+limited form of arithmetic is supported for the \fIexpression\fR in this
 context: you may give a hexadecimal constant or the name of an existing
-symbol, or use \c
-.B +\c
-\& and \c
-.B \-\c
-\& to add or subtract hexadecimal
+symbol, or use \f(CW\*(C`+\*(C'\fR and \fB-\fR to add or subtract hexadecimal
 constants or symbols.  If you need more elaborate expressions, consider
-using the linker command language from a script.
-
-.TP
-.B \-\-demangle
-.TP
-.B \-\-no\-demangle
-These options control whether to demangle symbol names in error
-messages and other output.  When the linker is told to demangle, it
-tries to present symbol names in a readable fashion: it strips leading
-underscores if they are used by the object file format, and converts
-C++ mangled symbol names into user readable names.  The linker will
-demangle by default unless the environment variable
-.B COLLECT_NO_DEMANGLE
+using the linker command language from a script.  \fINote:\fR there should be no white
+space between \fIsymbol\fR, the equals sign (``\fB=\fR''), and
+\&\fIexpression\fR.
+.IP "\fB\*(--demangle[=\fR\fIstyle\fR\fB]\fR" 4
+.IX Item "demangle[=style]"
+.PD 0
+.IP "\fB\*(--no-demangle\fR" 4
+.IX Item "no-demangle"
+.PD
+These options control whether to demangle symbol names in error messages
+and other output.  When the linker is told to demangle, it tries to
+present symbol names in a readable fashion: it strips leading
+underscores if they are used by the object file format, and converts \*(C+
+mangled symbol names into user readable names.  Different compilers have
+different mangling styles.  The optional demangling style argument can be used
+to choose an appropriate demangling style for your compiler.  The linker will
+demangle by default unless the environment variable \fB\s-1COLLECT_NO_DEMANGLE\s0\fR
 is set.  These options may be used to override the default.
-
-.TP
-.BI "-e " "entry"\c
-\& 
-Use \c
-.I entry\c
-\& as the explicit symbol for beginning execution of your
-program, rather than the default entry point.  See the `\|\c
-.B ld\c
-\|' entry in `\|\c
-.B info\c
-\|' for a
-discussion of defaults and other ways of specifying the
-entry point.
-
-.TP
-.B \-embedded\-relocs
-This option is only meaningful when linking MIPS embedded PIC code,
-generated by the
-.B \-membedded\-pic
-option to the GNU compiler and assembler.  It causes the linker to
-create a table which may be used at runtime to relocate any data which
-was statically initialized to pointer values.  See the code in
-testsuite/ld-empic for details.
-
-.TP
-.B \-E
-.TP
-.B \-export\-dynamic
-When creating an ELF file, add all symbols to the dynamic symbol table.
-Normally, the dynamic symbol table contains only symbols which are used
-by a dynamic object.  This option is needed for some uses of
-.I dlopen.
-
-.TP
-.BI "-f " "name"
-.TP
-.BI "--auxiliary " "name"
-When creating an ELF shared object, set the internal DT_AUXILIARY field
-to the specified name.  This tells the dynamic linker that the symbol
-table of the shared object should be used as an auxiliary filter on the
-symbol table of the shared object
-.I name.
-
-.TP
-.BI "-F " "name"
-.TP
-.BI "--filter " "name"
-When creating an ELF shared object, set the internal DT_FILTER field to
-the specified name.  This tells the dynamic linker that the symbol table
-of the shared object should be used as a filter on the symbol table of
-the shared object
-.I name.
-
-.TP
-.BI "\-format " "input\-format"
-Synonym for \c
-.B \-b\c
-\& \c
-.I input\-format\c
-\&.
-
-.TP
-.B \-g
-Accepted, but ignored; provided for compatibility with other tools.
-
-.TP
-.BI "\-G " "size"\c
-Set the maximum size of objects to be optimized using the GP register
-to
-.I size
-under MIPS ECOFF.  Ignored for other object file formats.
-
-.TP
-.BI "-h " "name"
-.TP
-.BI "-soname " "name"
-When creating an ELF shared object, set the internal DT_SONAME field to
-the specified name.  When an executable is linked with a shared object
-which has a DT_SONAME field, then when the executable is run the dynamic
-linker will attempt to load the shared object specified by the DT_SONAME
-field rather than the using the file name given to the linker.
-
-.TP
-.B \-\-help
+.IP "\fB\*(--dynamic-linker\fR \fIfile\fR" 4
+.IX Item "dynamic-linker file"
+Set the name of the dynamic linker.  This is only meaningful when
+generating dynamically linked \s-1ELF\s0 executables.  The default dynamic
+linker is normally correct; don't use this unless you know what you are
+doing.
+.IP "\fB\*(--embedded-relocs\fR" 4
+.IX Item "embedded-relocs"
+This option is only meaningful when linking \s-1MIPS\s0 embedded \s-1PIC\s0 code,
+generated by the \-membedded-pic option to the \s-1GNU\s0 compiler and
+assembler.  It causes the linker to create a table which may be used at
+runtime to relocate any data which was statically initialized to pointer
+values.  See the code in testsuite/ld-empic for details.
+.IP "\fB\*(--force-exe-suffix\fR" 4
+.IX Item "force-exe-suffix"
+Make sure that an output file has a .exe suffix.
+.Sp
+If a successfully built fully linked output file does not have a
+\&\f(CW\*(C`.exe\*(C'\fR or \f(CW\*(C`.dll\*(C'\fR suffix, this option forces the linker to copy
+the output file to one of the same name with a \f(CW\*(C`.exe\*(C'\fR suffix. This
+option is useful when using unmodified Unix makefiles on a Microsoft
+Windows host, since some versions of Windows won't run an image unless
+it ends in a \f(CW\*(C`.exe\*(C'\fR suffix.
+.IP "\fB\*(--no-gc-sections\fR" 4
+.IX Item "no-gc-sections"
+.PD 0
+.IP "\fB\*(--gc-sections\fR" 4
+.IX Item "gc-sections"
+.PD
+Enable garbage collection of unused input sections.  It is ignored on
+targets that do not support this option.  This option is not compatible
+with \fB\-r\fR, nor should it be used with dynamic linking.  The default
+behaviour (of not performing this garbage collection) can be restored by
+specifying \fB\*(--no-gc-sections\fR on the command line.
+.IP "\fB\*(--help\fR" 4
+.IX Item "help"
 Print a summary of the command-line options on the standard output and exit.
-This option and
-.B \-\-version
-begin with two dashes instead of one
-for compatibility with other GNU programs.  The other options start with
-only one dash for compatibility with other linkers.
-
-.TP
-.B \-i
-Perform an incremental link (same as option \c
-.B \-r\c
-\&).
-
-.TP
-.BI "\-l" "ar"\c
-\& 
-Add an archive file \c
-.I ar\c
-\& to the list of files to link.  This 
-option may be used any number of times.  \c
-.B ld\c
-\& will search its
-path-list for occurrences of \c
-.B lib\c
-.I ar\c
-\&.a\c
-\& for every \c
-.I ar
-specified.
-
-.TP
-.BI "\-L" "searchdir"
-This command adds path \c
-.I searchdir\c
-\& to the list of paths that
-\c
-.B ld\c
-\& will search for archive libraries.  You may use this option
-any number of times.
-
-The default set of paths searched (without being specified with
-\c
-.B \-L\c
-\&) depends on what emulation mode \c
-.B ld\c
-\& is using, and in
-some cases also on how it was configured.    The
-paths can also be specified in a link script with the \c
-.B SEARCH_DIR
-command.
-
-.TP
-.B \-M 
-Print (to the standard output file) a link map\(em\&diagnostic information
-about where symbols are mapped by \c
-.B ld\c
-\&, and information on global
-common storage allocation.
-
-.TP
-.BI "\-Map " "mapfile"\c
-Print to the file
-.I mapfile
-a link map\(em\&diagnostic information
-about where symbols are mapped by \c
-.B ld\c
-\&, and information on global
-common storage allocation.
-
-.TP
-.BI "\-m " "emulation"\c
-Emulate the
-.I emulation
-linker.  You can list the available emulations with the
-.I \-\-verbose
-or
-.I \-V
-options.  This option overrides the compiled-in default, which is the
-system for which you configured
-.BR ld .
-
-.TP
-.B \-N 
-specifies readable and writable \c
-.B text\c
-\& and \c
-.B data\c
-\& sections. If
-the output format supports Unix style magic numbers, the output is
-marked as \c
-.B OMAGIC\c
-\&.
-
-When you use the `\|\c
-.B \-N\c
-\&\|' option, the linker does not page-align the
-data segment.
-
-.TP
-.B \-n 
-sets the text segment to be read only, and \c
-.B NMAGIC\c
-\& is written
-if possible.
-
-.TP
-.B \-noinhibit\-exec
+.IP "\fB\*(--target-help\fR" 4
+.IX Item "target-help"
+Print a summary of all target specific options on the standard output and exit.
+.IP "\fB\-Map\fR \fImapfile\fR" 4
+.IX Item "-Map mapfile"
+Print a link map to the file \fImapfile\fR.  See the description of the
+\&\fB\-M\fR option, above.
+.IP "\fB\*(--no-keep-memory\fR" 4
+.IX Item "no-keep-memory"
+\&\fBld\fR normally optimizes for speed over memory usage by caching the
+symbol tables of input files in memory.  This option tells \fBld\fR to
+instead optimize for memory usage, by rereading the symbol tables as
+necessary.  This may be required if \fBld\fR runs out of memory space
+while linking a large executable.
+.IP "\fB\*(--no-undefined\fR" 4
+.IX Item "no-undefined"
+.PD 0
+.IP "\fB\-z defs\fR" 4
+.IX Item "-z defs"
+.PD
+Normally when creating a non-symbolic shared library, undefined symbols
+are allowed and left to be resolved by the runtime loader.  These options
+disallow such undefined symbols.
+.IP "\fB\*(--allow-shlib-undefined\fR" 4
+.IX Item "allow-shlib-undefined"
+Allow undefined symbols in shared objects even  when \-\-no-undefined is
+set. The net result will be that undefined symbols in regular objects
+will still trigger an error, but undefined symbols in shared objects
+will be ignored.  The implementation of no_undefined makes the
+assumption that the runtime linker will choke on undefined symbols.
+However there is at least one system (BeOS) where undefined symbols in
+shared libraries is normal since the kernel patches them at load time to
+select which function is most appropriate for the current architecture.
+I.E. dynamically select an appropriate memset function.  Apparently it
+is also normal for \s-1HPPA\s0 shared libraries to have undefined symbols.
+.IP "\fB\*(--no-warn-mismatch\fR" 4
+.IX Item "no-warn-mismatch"
+Normally \fBld\fR will give an error if you try to link together input
+files that are mismatched for some reason, perhaps because they have
+been compiled for different processors or for different endiannesses.
+This option tells \fBld\fR that it should silently permit such possible
+errors.  This option should only be used with care, in cases when you
+have taken some special action that ensures that the linker errors are
+inappropriate.
+.IP "\fB\*(--no-whole-archive\fR" 4
+.IX Item "no-whole-archive"
+Turn off the effect of the \fB\*(--whole-archive\fR option for subsequent
+archive files.
+.IP "\fB\*(--noinhibit-exec\fR" 4
+.IX Item "noinhibit-exec"
+Retain the executable output file whenever it is still usable.
 Normally, the linker will not produce an output file if it encounters
-errors during the link process.  With this flag, you can specify that
-you wish the output file retained even after non-fatal errors.
-
-.TP
-.B \-no\-keep\-memory
-The linker normally optimizes for speed over memory usage by caching
-the symbol tables of input files in memory.  This option tells the
-linker to instead optimize for memory usage, by rereading the symbol
-tables as necessary.  This may be required if the linker runs out of
-memory space while linking a large executable.
-
-.TP
-.B \-no\-warn\-mismatch
-Normally the linker will give an error if you try to link together
-input files that are mismatched for some reason, perhaps because they
-have been compiled for different processors or for different
-endiannesses.  This option tells the linker that it should silently
-permit such possible errors.  This option should only be used with
-care, in cases when you have taken some special action that ensures
-that the linker errors are inappropriate.
-
-.TP
-.BI "\-o " "output"
-.I output\c
-\& is a name for the program produced by \c
-.B ld\c
-\&; if this
-option is not specified, the name `\|\c
-.B a.out\c
-\|' is used by default.  The
-script command \c
-.B OUTPUT\c
-\& can also specify the output file name.
-
-.TP
-.BI "\-O" "level"
-Generate optimized output files.  This might use significantly more
-time and therefore probably should be enabled only for generating the
-final binary.
-\c
-.I level\c
-\& is supposed to be a numeric value.  Any value greater than zero enables
-the optimizations.
-
-.TP
-.BI "\--oformat " "output\-format"
-Specify the binary format for the output object file.
-You don't usually need to specify this, as
-\c
-.B ld\c
-\& is configured to produce as a default output format the most
-usual format on each machine.  \c
-.I output-format\c
-\& is a text string, the
-name of a particular format supported by the BFD libraries.  
-The script command
-.B OUTPUT_FORMAT
-can also specify the output format, but this option overrides it.
-
-.TP
-.BI "\-R " "filename"
-Read symbol names and their addresses from \c
-.I filename\c
-\&, but do not
-relocate it or include it in the output.  This allows your output file
-to refer symbolically to absolute locations of memory defined in other
-programs.
-
-.TP
-.B \-relax
-An option with machine dependent effects.  Currently this option is only
-supported on the H8/300.
-
-On some platforms, use this option to perform global optimizations that
-become possible when the linker resolves addressing in your program, such
-as relaxing address modes and synthesizing new instructions in the
-output object file.  
-
-On platforms where this is not supported, `\|\c
-.B \-relax\c
-\&\|' is accepted, but has no effect.
-
-.TP
-.B \-r 
-Generates relocatable output\(em\&i.e., generate an output file that can in
-turn serve as input to \c
-.B ld\c
-\&.  This is often called \c
-.I partial
-linking\c
-\&.  As a side effect, in environments that support standard Unix
-magic numbers, this option also sets the output file's magic number to
-\c
-.B OMAGIC\c
-\&.
-If this option is not specified, an absolute file is produced.  When
-linking C++ programs, this option \c
-.I will not\c
-\& resolve references to
-constructors; \c
-.B \-Ur\c
-\& is an alternative. 
-
-This option does the same as \c
-.B \-i\c
-\&.
-
-.TP
-.B \-rpath\ \fIdirectory
+errors during the link process; it exits without writing an output file
+when it issues any error whatsoever.
+.IP "\fB\*(--oformat\fR \fIoutput-format\fR" 4
+.IX Item "oformat output-format"
+\&\fBld\fR may be configured to support more than one kind of object
+file.  If your \fBld\fR is configured this way, you can use the
+\&\fB\*(--oformat\fR option to specify the binary format for the output
+object file.  Even when \fBld\fR is configured to support alternative
+object formats, you don't usually need to specify this, as \fBld\fR
+should be configured to produce as a default output format the most
+usual format on each machine.  \fIoutput-format\fR is a text string, the
+name of a particular format supported by the \s-1BFD\s0 libraries.  (You can
+list the available binary formats with \fBobjdump \-i\fR.)  The script
+command \f(CW\*(C`OUTPUT_FORMAT\*(C'\fR can also specify the output format, but
+this option overrides it.  
+.IP "\fB\-qmagic\fR" 4
+.IX Item "-qmagic"
+This option is ignored for Linux compatibility.
+.IP "\fB\-Qy\fR" 4
+.IX Item "-Qy"
+This option is ignored for \s-1SVR4\s0 compatibility.
+.IP "\fB\*(--relax\fR" 4
+.IX Item "relax"
+An option with machine dependent effects.
+This option is only supported on a few targets.
+.Sp
+On some platforms, the \fB\*(--relax\fR option performs global
+optimizations that become possible when the linker resolves addressing
+in the program, such as relaxing address modes and synthesizing new
+instructions in the output object file.
+.Sp
+On some platforms these link time global optimizations may make symbolic
+debugging of the resulting executable impossible.
+This is known to be
+the case for the Matsushita \s-1MN10200\s0 and \s-1MN10300\s0 family of processors.
+.Sp
+On platforms where this is not supported, \fB\*(--relax\fR is accepted,
+but ignored.
+.IP "\fB\*(--retain-symbols-file\fR \fIfilename\fR" 4
+.IX Item "retain-symbols-file filename"
+Retain \fIonly\fR the symbols listed in the file \fIfilename\fR,
+discarding all others.  \fIfilename\fR is simply a flat file, with one
+symbol name per line.  This option is especially useful in environments
+(such as VxWorks)
+where a large global symbol table is accumulated gradually, to conserve
+run-time memory.
+.Sp
+\&\fB\*(--retain-symbols-file\fR does \fInot\fR discard undefined symbols,
+or symbols needed for relocations.
+.Sp
+You may only specify \fB\*(--retain-symbols-file\fR once in the command
+line.  It overrides \fB\-s\fR and \fB\-S\fR.
+.IP "\fB\-rpath\fR \fIdir\fR" 4
+.IX Item "-rpath dir"
 Add a directory to the runtime library search path.  This is used when
-linking an ELF executable with shared objects.  All 
-.B \-rpath
+linking an \s-1ELF\s0 executable with shared objects.  All \fB\-rpath\fR
 arguments are concatenated and passed to the runtime linker, which uses
-them to locate shared objects at runtime.  The
-.B \-rpath
-option is also used when locating shared objects which are needed by
-shared objects explicitly included in the link; see the description of
-the
-.B \-rpath\-link
-option.  If
-.B \-rpath
-is not used when linking an ELF executable, the contents of the
-environment variable
-.B LD_RUN_PATH
-will be used if it is defined.
-
-The
-.B \-rpath
-option may also be used on SunOS.  By default, on SunOS, the linker
-will form a runtime search path out of all the
-.B \-L
-options it is given.  If a
-.B \-rpath
-option is used, the runtime search path will be formed exclusively
-using the
-.B \-rpath
-options, ignoring
-the
-.B \-L
-options.  This can be useful when using gcc, which adds many
-.B \-L
-options which may be on NFS mounted filesystems.
-
-.TP
-.B \-rpath\-link\ \fIdirectory
-When using ELF or SunOS, one shared library may require another.  This
-happens when an
-.B ld\ \-shared
-link includes a shared library as one of the input files.
-
+them to locate shared objects at runtime.  The \fB\-rpath\fR option is
+also used when locating shared objects which are needed by shared
+objects explicitly included in the link; see the description of the
+\&\fB\-rpath-link\fR option.  If \fB\-rpath\fR is not used when linking an
+\&\s-1ELF\s0 executable, the contents of the environment variable
+\&\f(CW\*(C`LD_RUN_PATH\*(C'\fR will be used if it is defined.
+.Sp
+The \fB\-rpath\fR option may also be used on SunOS.  By default, on
+SunOS, the linker will form a runtime search patch out of all the
+\&\fB\-L\fR options it is given.  If a \fB\-rpath\fR option is used, the
+runtime search path will be formed exclusively using the \fB\-rpath\fR
+options, ignoring the \fB\-L\fR options.  This can be useful when using
+gcc, which adds many \fB\-L\fR options which may be on \s-1NFS\s0 mounted
+filesystems.
+.Sp
+For compatibility with other \s-1ELF\s0 linkers, if the \fB\-R\fR option is
+followed by a directory name, rather than a file name, it is treated as
+the \fB\-rpath\fR option.
+.IP "\fB\-rpath-link\fR \fI\s-1DIR\s0\fR" 4
+.IX Item "-rpath-link DIR"
+When using \s-1ELF\s0 or SunOS, one shared library may require another.  This
+happens when an \f(CW\*(C`ld \-shared\*(C'\fR link includes a shared library as one
+of the input files.
+.Sp
 When the linker encounters such a dependency when doing a non-shared,
-non-relocateable link, it will automatically try to locate the required
+non-relocatable link, it will automatically try to locate the required
 shared library and include it in the link, if it is not included
-explicitly.  In such a case, the
-.B \-rpath\-link
-option specifies the first set of directories to search.  The
-.B \-rpath\-link
-option may specify a sequence of directory names either by specifying
-a list of names separated by colons, or by appearing multiple times.
-
+explicitly.  In such a case, the \fB\-rpath-link\fR option
+specifies the first set of directories to search.  The
+\&\fB\-rpath-link\fR option may specify a sequence of directory names
+either by specifying a list of names separated by colons, or by
+appearing multiple times.
+.Sp
+This option should be used with caution as it overrides the search path
+that may have been hard compiled into a shared library. In such a case it
+is possible to use unintentionally a different search path than the
+runtime linker would do.
+.Sp
+The linker uses the following search paths to locate required shared
+libraries.
+.RS 4
+.IP "1." 4
+Any directories specified by \fB\-rpath-link\fR options.
+.IP "2." 4
+Any directories specified by \fB\-rpath\fR options.  The difference
+between \fB\-rpath\fR and \fB\-rpath-link\fR is that directories
+specified by \fB\-rpath\fR options are included in the executable and
+used at runtime, whereas the \fB\-rpath-link\fR option is only effective
+at link time. It is for the native linker only.
+.IP "3." 4
+On an \s-1ELF\s0 system, if the \fB\-rpath\fR and \f(CW\*(C`rpath\-link\*(C'\fR options
+were not used, search the contents of the environment variable
+\&\f(CW\*(C`LD_RUN_PATH\*(C'\fR. It is for the native linker only.
+.IP "4." 4
+On SunOS, if the \fB\-rpath\fR option was not used, search any
+directories specified using \fB\-L\fR options.
+.IP "5." 4
+For a native linker, the contents of the environment variable
+\&\f(CW\*(C`LD_LIBRARY_PATH\*(C'\fR.
+.IP "6." 4
+For a native \s-1ELF\s0 linker, the directories in \f(CW\*(C`DT_RUNPATH\*(C'\fR or
+\&\f(CW\*(C`DT_RPATH\*(C'\fR of a shared library are searched for shared
+libraries needed by it. The \f(CW\*(C`DT_RPATH\*(C'\fR entries are ignored if
+\&\f(CW\*(C`DT_RUNPATH\*(C'\fR entries exist.
+.IP "7." 4
+The default directories, normally \fI/lib\fR and \fI/usr/lib\fR.
+.IP "8." 4
+For a native linker on an \s-1ELF\s0 system, if the file \fI/etc/ld.so.conf\fR
+exists, the list of directories found in that file.
+.RE
+.RS 4
+.Sp
 If the required shared library is not found, the linker will issue a
 warning and continue with the link.
-
-.TP
-.B \-S 
-Omits debugger symbol information (but not all symbols) from the output file.
-
-.TP
-.B \-s 
-Omits all symbol information from the output file.
-
-.TP
-.B \-shared
-Create a shared library.  This is currently only supported on ELF and
-SunOS platforms (on SunOS it is not required, as the linker will
-automatically create a shared library when there are undefined symbols
-and the
-.B \-e
-option is not used).
-
-.TP
-.B \-sort\-common
-Normally, when
-.B ld
-places the global common symbols in the appropriate output sections,
-it sorts them by size.  First come all the one byte symbols, then all
-the two bytes, then all the four bytes, and then everything else.
-This is to prevent gaps between symbols due to
-alignment constraints.  This option disables that sorting.
-
-.TP
-.B \-split\-by\-reloc\ \fIcount
-Trys to creates extra sections in the output file so that no single
-output section in the file contains more than
-.I count
-relocations.
-This is useful when generating huge relocatable for downloading into
-certain real time kernels with the COFF object file format; since COFF
-cannot represent more than 65535 relocations in a single section.
-Note that this will fail to work with object file formats which do not
+.RE
+.IP "\fB\-shared\fR" 4
+.IX Item "-shared"
+.PD 0
+.IP "\fB\-Bshareable\fR" 4
+.IX Item "-Bshareable"
+.PD
+Create a shared library.  This is currently only supported on \s-1ELF\s0, \s-1XCOFF\s0
+and SunOS platforms.  On SunOS, the linker will automatically create a
+shared library if the \fB\-e\fR option is not used and there are
+undefined symbols in the link.
+.IP "\fB\*(--sort-common\fR" 4
+.IX Item "sort-common"
+This option tells \fBld\fR to sort the common symbols by size when it
+places them in the appropriate output sections.  First come all the one
+byte symbols, then all the two bytes, then all the four bytes, and then
+everything else.  This is to prevent gaps between symbols due to
+alignment constraints.
+.IP "\fB\*(--split-by-file [\fR\fIsize\fR\fB]\fR" 4
+.IX Item "split-by-file [size]"
+Similar to \fB\*(--split-by-reloc\fR but creates a new output section for
+each input file when \fIsize\fR is reached.  \fIsize\fR defaults to a
+size of 1 if not given.
+.IP "\fB\*(--split-by-reloc [\fR\fIcount\fR\fB]\fR" 4
+.IX Item "split-by-reloc [count]"
+Tries to creates extra sections in the output file so that no single
+output section in the file contains more than \fIcount\fR relocations.
+This is useful when generating huge relocatable files for downloading into
+certain real time kernels with the \s-1COFF\s0 object file format; since \s-1COFF\s0
+cannot represent more than 65535 relocations in a single section.  Note
+that this will fail to work with object file formats which do not
 support arbitrary sections.  The linker will not split up individual
-input sections for redistribution, so if a single input section
-contains more than
-.I count
-relocations one output section will contain that many relocations.
-
-.TP
-.B \-split\-by\-file
-Similar to
-.B \-split\-by\-reloc
-but creates a new output section for each input file.
-
-.TP
-.BI "--section-start " "sectionname" "\fR=\fP"org
+input sections for redistribution, so if a single input section contains
+more than \fIcount\fR relocations one output section will contain that
+many relocations.  \fIcount\fR defaults to a value of 32768.
+.IP "\fB\*(--stats\fR" 4
+.IX Item "stats"
+Compute and display statistics about the operation of the linker, such
+as execution time and memory usage.
+.IP "\fB\*(--traditional-format\fR" 4
+.IX Item "traditional-format"
+For some targets, the output of \fBld\fR is different in some ways from
+the output of some existing linker.  This switch requests \fBld\fR to
+use the traditional format instead.
+.Sp
+For example, on SunOS, \fBld\fR combines duplicate entries in the
+symbol string table.  This can reduce the size of an output file with
+full debugging information by over 30 percent.  Unfortunately, the SunOS
+\&\f(CW\*(C`dbx\*(C'\fR program can not read the resulting program (\f(CW\*(C`gdb\*(C'\fR has no
+trouble).  The \fB\*(--traditional-format\fR switch tells \fBld\fR to not
+combine duplicate entries.
+.IP "\fB\*(--section-start\fR \fIsectionname\fR\fB=\fR\fIorg\fR" 4
+.IX Item "section-start sectionname=org"
 Locate a section in the output file at the absolute
-address given by \c
-.I org\c
-\&.  \c
-\c
-.I org\c
-\& must be a hexadecimal integer.
-You may use this option as many
+address given by \fIorg\fR.  You may use this option as many
 times as necessary to locate multiple sections in the command
-line.  If you need more elaborate expressions, consider
-using the linker command language from a script.
-
-.TP
-.BI "\-Tbss " "org"\c
-.TP
-.BI "\-Tdata " "org"\c
-.TP
-.BI "\-Ttext " "org"\c
-Use \c
-.I org\c
-\& as the starting address for\(em\&respectively\(em\&the
-\c
-.B bss\c
-\&, \c
-.B data\c
-\&, or the \c
-.B text\c
-\& segment of the output file.
-\c
-.I org\c
-\& must be a hexadecimal integer.
-
-.TP
-.BI "\-T " "commandfile"
-Equivalent to \c
-.B \-c \c
-.I commandfile\c
-\&\c
-\&; supported for compatibility with
-other tools.  
-
-.TP
-.B \-t 
-Prints names of input files as \c
-.B ld\c
-\& processes them.
-
-.TP
-.BI "\-u " "sym"
-Forces \c
-.I sym\c
-\& to be entered in the output file as an undefined symbol.
-This may, for example, trigger linking of additional modules from
-standard libraries.  \c
-.B \-u\c
-\& may be repeated with different option
-arguments to enter additional undefined symbols.
-
-.TP
-.B \-Ur 
-For anything other than C++ programs, this option is equivalent to
-\c
-.B \-r\c
-\&: it generates relocatable output\(em\&i.e., an output file that can in
-turn serve as input to \c
-.B ld\c
-\&.  When linking C++ programs, \c
-.B \-Ur
-.I will\c
-\& resolve references to constructors, unlike \c
-.B \-r\c
-\&.
-
-.TP
-.B \-\-verbose
-Display the version number for \c
-.B ld
-and list the supported emulations.
-Display which input files can and can not be opened.
-
-.TP
-.B \-v, \-V
-Display the version number for \c
-.B ld\c
-\&.
-The
-.B \-V
-option also lists the supported emulations.
-
-.TP
-.B \-\-version
-Display the version number for \c
-.B ld
-and exit.
-
-.TP
-.B \-warn\-common
+line.
+\&\fIorg\fR must be a single hexadecimal integer;
+for compatibility with other linkers, you may omit the leading
+\&\fB0x\fR usually associated with hexadecimal values.  \fINote:\fR there
+should be no white space between \fIsectionname\fR, the equals
+sign (``\fB=\fR''), and \fIorg\fR.
+.IP "\fB\-Tbss\fR \fIorg\fR" 4
+.IX Item "-Tbss org"
+.PD 0
+.IP "\fB\-Tdata\fR \fIorg\fR" 4
+.IX Item "-Tdata org"
+.IP "\fB\-Ttext\fR \fIorg\fR" 4
+.IX Item "-Ttext org"
+.PD
+Use \fIorg\fR as the starting address for\-\-\-respectively\-\-\-the
+\&\f(CW\*(C`bss\*(C'\fR, \f(CW\*(C`data\*(C'\fR, or the \f(CW\*(C`text\*(C'\fR segment of the output file.
+\&\fIorg\fR must be a single hexadecimal integer;
+for compatibility with other linkers, you may omit the leading
+\&\fB0x\fR usually associated with hexadecimal values.
+.IP "\fB\*(--dll-verbose\fR" 4
+.IX Item "dll-verbose"
+.PD 0
+.IP "\fB\*(--verbose\fR" 4
+.IX Item "verbose"
+.PD
+Display the version number for \fBld\fR and list the linker emulations
+supported.  Display which input files can and cannot be opened.  Display
+the linker script if using a default builtin script.
+.IP "\fB\*(--version-script=\fR\fIversion-scriptfile\fR" 4
+.IX Item "version-script=version-scriptfile"
+Specify the name of a version script to the linker.  This is typically
+used when creating shared libraries to specify additional information
+about the version heirarchy for the library being created.  This option
+is only meaningful on \s-1ELF\s0 platforms which support shared libraries.
+.IP "\fB\*(--warn-common\fR" 4
+.IX Item "warn-common"
 Warn when a common symbol is combined with another common symbol or with
 a symbol definition.  Unix linkers allow this somewhat sloppy practice,
 but linkers on some other operating systems do not.  This option allows
 you to find potential problems from combining global symbols.
-
-.TP
-.B \-warn\-constructors
-Warn if any global constructors are used.  This is only useful for a
-few object file formats.  For formats like COFF or ELF, the linker can
-not detect the use of global constructors.
-
-.TP
-.B \-warn\-multiple\-gp
-Warn if the output file requires multiple global-pointer values.  This
-option is only meaningful for certain processors, such as the Alpha.
-
-.TP
-.B \-warn\-once
+Unfortunately, some C libraries use this practice, so you may get some
+warnings about symbols in the libraries as well as in your programs.
+.Sp
+There are three kinds of global symbols, illustrated here by C examples:
+.RS 4
+.IP "\fBint i = 1;\fR" 4
+.IX Item "int i = 1;"
+A definition, which goes in the initialized data section of the output
+file.
+.IP "\fBextern int i;\fR" 4
+.IX Item "extern int i;"
+An undefined reference, which does not allocate space.
+There must be either a definition or a common symbol for the
+variable somewhere.
+.IP "\fBint i;\fR" 4
+.IX Item "int i;"
+A common symbol.  If there are only (one or more) common symbols for a
+variable, it goes in the uninitialized data area of the output file.
+The linker merges multiple common symbols for the same variable into a
+single symbol.  If they are of different sizes, it picks the largest
+size.  The linker turns a common symbol into a declaration, if there is
+a definition of the same variable.
+.RE
+.RS 4
+.Sp
+The \fB\*(--warn-common\fR option can produce five kinds of warnings.
+Each warning consists of a pair of lines: the first describes the symbol
+just encountered, and the second describes the previous symbol
+encountered with the same name.  One or both of the two symbols will be
+a common symbol.
+.RS 4
+.RE
+.IP "1." 4
+Turning a common symbol into a reference, because there is already a
+definition for the symbol.
+.Sp
+.Vb 3
+\&        I<file>(I<section>): warning: common of `I<symbol>'
+\&           overridden by definition
+\&        I<file>(I<section>): warning: defined here
+.Ve
+.IP "2." 4
+Turning a common symbol into a reference, because a later definition for
+the symbol is encountered.  This is the same as the previous case,
+except that the symbols are encountered in a different order.
+.Sp
+.Vb 3
+\&        I<file>(I<section>): warning: definition of `I<symbol>'
+\&           overriding common
+\&        I<file>(I<section>): warning: common is here
+.Ve
+.IP "3." 4
+Merging a common symbol with a previous same-sized common symbol.
+.Sp
+.Vb 3
+\&        I<file>(I<section>): warning: multiple common
+\&           of `I<symbol>'
+\&        I<file>(I<section>): warning: previous common is here
+.Ve
+.IP "4." 4
+Merging a common symbol with a previous larger common symbol.
+.Sp
+.Vb 3
+\&        I<file>(I<section>): warning: common of `I<symbol>'
+\&           overridden by larger common
+\&        I<file>(I<section>): warning: larger common is here
+.Ve
+.IP "5." 4
+Merging a common symbol with a previous smaller common symbol.  This is
+the same as the previous case, except that the symbols are
+encountered in a different order.
+.Sp
+.Vb 3
+\&        I<file>(I<section>): warning: common of `I<symbol>'
+\&           overriding smaller common
+\&        I<file>(I<section>): warning: smaller common is here
+.Ve
+.RE
+.RS 4
+.RE
+.IP "\fB\*(--warn-constructors\fR" 4
+.IX Item "warn-constructors"
+Warn if any global constructors are used.  This is only useful for a few
+object file formats.  For formats like \s-1COFF\s0 or \s-1ELF\s0, the linker can not
+detect the use of global constructors.
+.IP "\fB\*(--warn-multiple-gp\fR" 4
+.IX Item "warn-multiple-gp"
+Warn if multiple global pointer values are required in the output file.
+This is only meaningful for certain processors, such as the Alpha.
+Specifically, some processors put large-valued constants in a special
+section.  A special register (the global pointer) points into the middle
+of this section, so that constants can be loaded efficiently via a
+base-register relative addressing mode.  Since the offset in
+base-register relative mode is fixed and relatively small (e.g., 16
+bits), this limits the maximum size of the constant pool.  Thus, in
+large programs, it is often necessary to use multiple global pointer
+values in order to be able to address all possible constants.  This
+option causes a warning to be issued whenever this case occurs.
+.IP "\fB\*(--warn-once\fR" 4
+.IX Item "warn-once"
 Only warn once for each undefined symbol, rather than once per module
 which refers to it.
-
-.TP
-.B \-warn\-section\-align
+.IP "\fB\*(--warn-section-align\fR" 4
+.IX Item "warn-section-align"
 Warn if the address of an output section is changed because of
 alignment.  Typically, the alignment will be set by an input section.
 The address will only be changed if it not explicitly specified; that
-is, if the SECTIONS command does not specify a start address for the
-section.
-
-.TP
-.B \-\-whole\-archive
+is, if the \f(CW\*(C`SECTIONS\*(C'\fR command does not specify a start address for
+the section.
+.IP "\fB\*(--whole-archive\fR" 4
+.IX Item "whole-archive"
 For each archive mentioned on the command line after the
-.B \-\-whole\-archive
-option, include every object file in the archive in the link, rather
-than searching the archive for the required object files.  This is
-normally used to turn an archive file into a shared library, forcing
-every object to be included in the resulting shared library.
-
-.TP
-.B \-\-no\-whole\-archive
-Turn off the effect of the
-.B \-\-whole\-archive
-option for archives which appear later on the command line.
-
-.TP
-.BI "--wrap " "symbol"
-Use a wrapper function for 
-.I symbol.
-Any undefined reference to
-.I symbol
-will be resolved to
-.BI "__wrap_" "symbol".
-Any undefined reference to
-.BI "__real_" "symbol"
-will be resolved to
-.I symbol.
-
-.TP
-.B \-X 
-Delete all temporary local symbols.  For most targets, this is all local
-symbols whose names begin with `\|\c
-.B L\c
-\|'.
-
-.TP
-.B \-x
-Delete all local symbols.
-
+\&\fB\*(--whole-archive\fR option, include every object file in the archive
+in the link, rather than searching the archive for the required object
+files.  This is normally used to turn an archive file into a shared
+library, forcing every object to be included in the resulting shared
+library.  This option may be used more than once.
+.Sp
+Two notes when using this option from gcc: First, gcc doesn't know
+about this option, so you have to use \fB\-Wl,\-whole-archive\fR.
+Second, don't forget to use \fB\-Wl,\-no-whole-archive\fR after your
+list of archives, because gcc will add its own list of archives to
+your link and you may not want this flag to affect those as well.
+.IP "\fB\*(--wrap\fR \fIsymbol\fR" 4
+.IX Item "wrap symbol"
+Use a wrapper function for \fIsymbol\fR.  Any undefined reference to
+\&\fIsymbol\fR will be resolved to \f(CW\*(C`_\|_wrap_\f(CIsymbol\f(CW\*(C'\fR.  Any
+undefined reference to \f(CW\*(C`_\|_real_\f(CIsymbol\f(CW\*(C'\fR will be resolved to
+\&\fIsymbol\fR.
+.Sp
+This can be used to provide a wrapper for a system function.  The
+wrapper function should be called \f(CW\*(C`_\|_wrap_\f(CIsymbol\f(CW\*(C'\fR.  If it
+wishes to call the system function, it should call
+\&\f(CW\*(C`_\|_real_\f(CIsymbol\f(CW\*(C'\fR.
+.Sp
+Here is a trivial example:
+.Sp
+.Vb 6
+\&        void *
+\&        __wrap_malloc (int c)
+\&        {
+\&          printf ("malloc called with %ld\en", c);
+\&          return __real_malloc (c);
+\&        }
+.Ve
+If you link other code with this file using \fB\*(--wrap malloc\fR, then
+all calls to \f(CW\*(C`malloc\*(C'\fR will call the function \f(CW\*(C`_\|_wrap_malloc\*(C'\fR
+instead.  The call to \f(CW\*(C`_\|_real_malloc\*(C'\fR in \f(CW\*(C`_\|_wrap_malloc\*(C'\fR will
+call the real \f(CW\*(C`malloc\*(C'\fR function.
+.Sp
+You may wish to provide a \f(CW\*(C`_\|_real_malloc\*(C'\fR function as well, so that
+links without the \fB\*(--wrap\fR option will succeed.  If you do this,
+you should not put the definition of \f(CW\*(C`_\|_real_malloc\*(C'\fR in the same
+file as \f(CW\*(C`_\|_wrap_malloc\*(C'\fR; if you do, the assembler may resolve the
+call before the linker has a chance to wrap it to \f(CW\*(C`malloc\*(C'\fR.
+.IP "\fB\*(--enable-new-dtags\fR" 4
+.IX Item "enable-new-dtags"
+.PD 0
+.IP "\fB\*(--disable-new-dtags\fR" 4
+.IX Item "disable-new-dtags"
+.PD
+This linker can create the new dynamic tags in \s-1ELF\s0. But the older \s-1ELF\s0
+systems may not understand them. If you specify
+\&\fB\*(--enable-new-dtags\fR, the dynamic tags will be created as needed.
+If you specify \fB\*(--disable-new-dtags\fR, no new dynamic tags will be
+created. By default, the new dynamic tags are not created. Note that
+those options are only available for \s-1ELF\s0 systems.
 .PP
-
-.SH ENVIRONMENT
-\c
-You can change the behavior of
-.B ld\c
-\& with the environment variable \c
-.B GNUTARGET\c
-\&.
-
-\c
-.B GNUTARGET\c
-\& determines the input-file object format if you don't
-use \c
-.B \-b\c
-\& (or its synonym \c
-.B \-format\c
-\&).  Its value should be one
-of the BFD names for an input format.  If there is no
-\c
-.B GNUTARGET\c
-\& in the environment, \c
-.B ld\c
-\& uses the natural format
-of the host. If \c
-.B GNUTARGET\c
-\& is set to \c
-.B default\c
-\& then BFD attempts to discover the
-input format by examining binary input files; this method often
-succeeds, but there are potential ambiguities, since there is no method
-of ensuring that the magic number used to flag object-file formats is
-unique.  However, the configuration procedure for BFD on each system
-places the conventional format for that system first in the search-list,
-so ambiguities are resolved in favor of convention.
-
+The i386 \s-1PE\s0 linker supports the \fB\-shared\fR option, which causes
+the output to be a dynamically linked library (\s-1DLL\s0) instead of a
+normal executable.  You should name the output \f(CW\*(C`*.dll\*(C'\fR when you
+use this option.  In addition, the linker fully supports the standard
+\&\f(CW\*(C`*.def\*(C'\fR files, which may be specified on the linker command line
+like an object file (in fact, it should precede archives it exports
+symbols from, to ensure that they get linked in, just like a normal
+object file).
 .PP
-
+In addition to the options common to all targets, the i386 \s-1PE\s0 linker
+support additional command line options that are specific to the i386
+\&\s-1PE\s0 target.  Options that take values may be separated from their
+values by either a space or an equals sign.
+.IP "\fB\*(--add-stdcall-alias\fR" 4
+.IX Item "add-stdcall-alias"
+If given, symbols with a stdcall suffix (@\fInn\fR) will be exported
+as-is and also with the suffix stripped.
+.IP "\fB\*(--base-file\fR \fIfile\fR" 4
+.IX Item "base-file file"
+Use \fIfile\fR as the name of a file in which to save the base
+addresses of all the relocations needed for generating DLLs with
+\&\fIdlltool\fR.
+.IP "\fB\*(--dll\fR" 4
+.IX Item "dll"
+Create a \s-1DLL\s0 instead of a regular executable.  You may also use
+\&\fB\-shared\fR or specify a \f(CW\*(C`LIBRARY\*(C'\fR in a given \f(CW\*(C`.def\*(C'\fR
+file.
+.IP "\fB\*(--enable-stdcall-fixup\fR" 4
+.IX Item "enable-stdcall-fixup"
+.PD 0
+.IP "\fB\*(--disable-stdcall-fixup\fR" 4
+.IX Item "disable-stdcall-fixup"
+.PD
+If the link finds a symbol that it cannot resolve, it will attempt to
+do \*(L"fuzzy linking\*(R" by looking for another defined symbol that differs
+only in the format of the symbol name (cdecl vs stdcall) and will
+resolve that symbol by linking to the match.  For example, the
+undefined symbol \f(CW\*(C`_foo\*(C'\fR might be linked to the function
+\&\f(CW\*(C`_foo@12\*(C'\fR, or the undefined symbol \f(CW\*(C`_bar@16\*(C'\fR might be linked
+to the function \f(CW\*(C`_bar\*(C'\fR.  When the linker does this, it prints a
+warning, since it normally should have failed to link, but sometimes
+import libraries generated from third-party dlls may need this feature
+to be usable.  If you specify \fB\*(--enable-stdcall-fixup\fR, this
+feature is fully enabled and warnings are not printed.  If you specify
+\&\fB\*(--disable-stdcall-fixup\fR, this feature is disabled and such
+mismatches are considered to be errors.
+.IP "\fB\*(--export-all-symbols\fR" 4
+.IX Item "export-all-symbols"
+If given, all global symbols in the objects used to build a \s-1DLL\s0 will
+be exported by the \s-1DLL\s0.  Note that this is the default if there
+otherwise wouldn't be any exported symbols.  When symbols are
+explicitly exported via \s-1DEF\s0 files or implicitly exported via function
+attributes, the default is to not export anything else unless this
+option is given.  Note that the symbols \f(CW\*(C`DllMain@12\*(C'\fR,
+\&\f(CW\*(C`DllEntryPoint@0\*(C'\fR, and \f(CW\*(C`impure_ptr\*(C'\fR will not be automatically
+exported.
+.IP "\fB\*(--exclude-symbols\fR \fIsymbol\fR\fB,\fR\fIsymbol\fR\fB,...\fR" 4
+.IX Item "exclude-symbols symbol,symbol,..."
+Specifies a list of symbols which should not be automatically
+exported.  The symbol names may be delimited by commas or colons.
+.IP "\fB\*(--file-alignment\fR" 4
+.IX Item "file-alignment"
+Specify the file alignment.  Sections in the file will always begin at
+file offsets which are multiples of this number.  This defaults to
+512.
+.IP "\fB\*(--heap\fR \fIreserve\fR" 4
+.IX Item "heap reserve"
+.PD 0
+.IP "\fB\*(--heap\fR \fIreserve\fR\fB,\fR\fIcommit\fR" 4
+.IX Item "heap reserve,commit"
+.PD
+Specify the amount of memory to reserve (and optionally commit) to be
+used as heap for this program.  The default is 1Mb reserved, 4K
+committed.
+.IP "\fB\*(--image-base\fR \fIvalue\fR" 4
+.IX Item "image-base value"
+Use \fIvalue\fR as the base address of your program or dll.  This is
+the lowest memory location that will be used when your program or dll
+is loaded.  To reduce the need to relocate and improve performance of
+your dlls, each should have a unique base address and not overlap any
+other dlls.  The default is 0x400000 for executables, and 0x10000000
+for dlls.
+.IP "\fB\*(--kill-at\fR" 4
+.IX Item "kill-at"
+If given, the stdcall suffixes (@\fInn\fR) will be stripped from
+symbols before they are exported.
+.IP "\fB\*(--major-image-version\fR \fIvalue\fR" 4
+.IX Item "major-image-version value"
+Sets the major number of the \*(L"image version\*(R".  Defaults to 1.
+.IP "\fB\*(--major-os-version\fR \fIvalue\fR" 4
+.IX Item "major-os-version value"
+Sets the major number of the \*(L"os version\*(R".  Defaults to 4.
+.IP "\fB\*(--major-subsystem-version\fR \fIvalue\fR" 4
+.IX Item "major-subsystem-version value"
+Sets the major number of the \*(L"subsystem version\*(R".  Defaults to 4.
+.IP "\fB\*(--minor-image-version\fR \fIvalue\fR" 4
+.IX Item "minor-image-version value"
+Sets the minor number of the \*(L"image version\*(R".  Defaults to 0.
+.IP "\fB\*(--minor-os-version\fR \fIvalue\fR" 4
+.IX Item "minor-os-version value"
+Sets the minor number of the \*(L"os version\*(R".  Defaults to 0.
+.IP "\fB\*(--minor-subsystem-version\fR \fIvalue\fR" 4
+.IX Item "minor-subsystem-version value"
+Sets the minor number of the \*(L"subsystem version\*(R".  Defaults to 0.
+.IP "\fB\*(--output-def\fR \fIfile\fR" 4
+.IX Item "output-def file"
+The linker will create the file \fIfile\fR which will contain a \s-1DEF\s0
+file corresponding to the \s-1DLL\s0 the linker is generating.  This \s-1DEF\s0 file
+(which should be called \f(CW\*(C`*.def\*(C'\fR) may be used to create an import
+library with \f(CW\*(C`dlltool\*(C'\fR or may be used as a reference to
+automatically or implicitly exported symbols.
+.IP "\fB\*(--section-alignment\fR" 4
+.IX Item "section-alignment"
+Sets the section alignment.  Sections in memory will always begin at
+addresses which are a multiple of this number.  Defaults to 0x1000.
+.IP "\fB\*(--stack\fR \fIreserve\fR" 4
+.IX Item "stack reserve"
+.PD 0
+.IP "\fB\*(--stack\fR \fIreserve\fR\fB,\fR\fIcommit\fR" 4
+.IX Item "stack reserve,commit"
+.PD
+Specify the amount of memory to reserve (and optionally commit) to be
+used as stack for this program.  The default is 32Mb reserved, 4K
+committed.
+.IP "\fB\*(--subsystem\fR \fIwhich\fR" 4
+.IX Item "subsystem which"
+.PD 0
+.IP "\fB\*(--subsystem\fR \fIwhich\fR\fB:\fR\fImajor\fR" 4
+.IX Item "subsystem which:major"
+.IP "\fB\*(--subsystem\fR \fIwhich\fR\fB:\fR\fImajor\fR\fB.\fR\fIminor\fR" 4
+.IX Item "subsystem which:major.minor"
+.PD
+Specifies the subsystem under which your program will execute.  The
+legal values for \fIwhich\fR are \f(CW\*(C`native\*(C'\fR, \f(CW\*(C`windows\*(C'\fR,
+\&\f(CW\*(C`console\*(C'\fR, and \f(CW\*(C`posix\*(C'\fR.  You may optionally set the
+subsystem version also.
+.SH "ENVIRONMENT"
+.IX Header "ENVIRONMENT"
+You can change the behavior of \fBld\fR with the environment variables
+\&\f(CW\*(C`GNUTARGET\*(C'\fR, \f(CW\*(C`LDEMULATION\*(C'\fR, and \f(CW\*(C`COLLECT_NO_DEMANGLE\*(C'\fR.
+.PP
+\&\f(CW\*(C`GNUTARGET\*(C'\fR determines the input-file object format if you don't
+use \fB\-b\fR (or its synonym \fB\*(--format\fR).  Its value should be one
+of the \s-1BFD\s0 names for an input format.  If there is no
+\&\f(CW\*(C`GNUTARGET\*(C'\fR in the environment, \fBld\fR uses the natural format
+of the target. If \f(CW\*(C`GNUTARGET\*(C'\fR is set to \f(CW\*(C`default\*(C'\fR then \s-1BFD\s0
+attempts to discover the input format by examining binary input files;
+this method often succeeds, but there are potential ambiguities, since
+there is no method of ensuring that the magic number used to specify
+object-file formats is unique.  However, the configuration procedure for
+\&\s-1BFD\s0 on each system places the conventional format for that system first
+in the search-list, so ambiguities are resolved in favor of convention.
+.PP
+\&\f(CW\*(C`LDEMULATION\*(C'\fR determines the default emulation if you don't use the
+\&\fB\-m\fR option.  The emulation can affect various aspects of linker
+behaviour, particularly the default linker script.  You can list the
+available emulations with the \fB\*(--verbose\fR or \fB\-V\fR options.  If
+the \fB\-m\fR option is not used, and the \f(CW\*(C`LDEMULATION\*(C'\fR environment
+variable is not defined, the default emulation depends upon how the
+linker was configured.
+.PP
+Normally, the linker will default to demangling symbols.  However, if
+\&\f(CW\*(C`COLLECT_NO_DEMANGLE\*(C'\fR is set in the environment, then it will
+default to not demangling symbols.  This environment variable is used in
+a similar fashion by the \f(CW\*(C`gcc\*(C'\fR linker wrapper program.  The default
+may be overridden by the \fB\*(--demangle\fR and \fB\*(--no-demangle\fR
+options.
 .SH "SEE ALSO"
-
-.BR objdump ( 1 )
-.br
-.br
-.RB "`\|" ld "\|' and `\|" binutils "\|'"
-entries in
-.B info\c
-.br
-.I 
-ld: the GNU linker\c
-, Steve Chamberlain and Roland Pesch;
-.I
-The GNU Binary Utilities\c
-, Roland H. Pesch.
-
-.SH COPYING
-Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 1998, 2000 Free Software Foundation, Inc.
+.IX Header "SEE ALSO"
+\&\fIar\fR\|(1), \fInm\fR\|(1), \fIobjcopy\fR\|(1), \fIobjdump\fR\|(1), \fIreadelf\fR\|(1) and
+the Info entries for \fIbinutils\fR and
+\&\fIld\fR.
+.SH "COPYRIGHT"
+.IX Header "COPYRIGHT"
+Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc.
 .PP
-This document is distributed under the terms of the GNU Free
-Documentation License, version 1.1.  That license is described in the
-sources for this manual page, but it is not displayed here in order to
-make this manual more consise.  Copies of this license can also be
-obtained from: http://www.gnu.org/copyleft/.
-
-\"  .SH GNU Free Documentation License
-\"    Version 1.1, March 2000
-
-\"    Copyright (C) 2000  Free Software Foundation, Inc.
-\"    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-     
-\"    Everyone is permitted to copy and distribute verbatim
-\"    copies of this license document, but changing it is
-\"    not allowed.
-\"  .PP
-\"  0. PREAMBLE
-\"  .PP
-\"  The purpose of this License is to make a manual, textbook, or other
-\"  written document "free" in the sense of freedom: to assure everyone
-\"  the effective freedom to copy and redistribute it, with or without
-\"  modifying it, either commercially or noncommercially.  Secondarily,
-\"  this License preserves for the author and publisher a way to get
-\"  credit for their work, while not being considered responsible for
-\"  modifications made by others.
-\"  .PP
-\"  This License is a kind of "copyleft", which means that derivative
-\"  works of the document must themselves be free in the same sense.  It
-\"  complements the GNU General Public License, which is a copyleft
-\"  license designed for free software.
-\"  .PP
-\"  We have designed this License in order to use it for manuals for free
-\"  software, because free software needs free documentation: a free
-\"  program should come with manuals providing the same freedoms that the
-\"  software does.  But this License is not limited to software manuals;
-\"  it can be used for any textual work, regardless of subject matter or
-\"  whether it is published as a printed book.  We recommend this License
-\"  principally for works whose purpose is instruction or reference.
-\"  .PP
-\"  1. APPLICABILITY AND DEFINITIONS
-\"  .PP
-\"  This License applies to any manual or other work that contains a
-\"  notice placed by the copyright holder saying it can be distributed
-\"  under the terms of this License.  The "Document", below, refers to any
-\"  such manual or work.  Any member of the public is a licensee, and is
-\"  addressed as "you".
-\"  .PP
-\"  A "Modified Version" of the Document means any work containing the
-\"  Document or a portion of it, either copied verbatim, or with
-\"  modifications and/or translated into another language.
-\"  .PP
-\"  A "Secondary Section" is a named appendix or a front-matter section of
-\"  the Document that deals exclusively with the relationship of the
-\"  publishers or authors of the Document to the Document's overall subject
-\"  (or to related matters) and contains nothing that could fall directly
-\"  within that overall subject.  (For example, if the Document is in part a
-\"  textbook of mathematics, a Secondary Section may not explain any
-\"  mathematics.)  The relationship could be a matter of historical
-\"  connection with the subject or with related matters, or of legal,
-\"  commercial, philosophical, ethical or political position regarding
-\"  them.
-\"  .PP
-\"  The "Invariant Sections" are certain Secondary Sections whose titles
-\"  are designated, as being those of Invariant Sections, in the notice
-\"  that says that the Document is released under this License.
-\"  .PP
-\"  The "Cover Texts" are certain short passages of text that are listed,
-\"  as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-\"  the Document is released under this License.
-\"  .PP
-\"  A "Transparent" copy of the Document means a machine-readable copy,
-\"  represented in a format whose specification is available to the
-\"  general public, whose contents can be viewed and edited directly and
-\"  straightforwardly with generic text editors or (for images composed of
-\"  pixels) generic paint programs or (for drawings) some widely available
-\"  drawing editor, and that is suitable for input to text formatters or
-\"  for automatic translation to a variety of formats suitable for input
-\"  to text formatters.  A copy made in an otherwise Transparent file
-\"  format whose markup has been designed to thwart or discourage
-\"  subsequent modification by readers is not Transparent.  A copy that is
-\"  not "Transparent" is called "Opaque".
-\"  .PP
-\"  Examples of suitable formats for Transparent copies include plain
-\"  ASCII without markup, Texinfo input format, LaTeX input format, SGML
-\"  or XML using a publicly available DTD, and standard-conforming simple
-\"  HTML designed for human modification.  Opaque formats include
-\"  PostScript, PDF, proprietary formats that can be read and edited only
-\"  by proprietary word processors, SGML or XML for which the DTD and/or
-\"  processing tools are not generally available, and the
-\"  machine-generated HTML produced by some word processors for output
-\"  purposes only.
-\"  .PP
-\"  The "Title Page" means, for a printed book, the title page itself,
-\"  plus such following pages as are needed to hold, legibly, the material
-\"  this License requires to appear in the title page.  For works in
-\"  formats which do not have any title page as such, "Title Page" means
-\"  the text near the most prominent appearance of the work's title,
-\"  preceding the beginning of the body of the text.
-\"  .PP
-\"  2. VERBATIM COPYING
-\"  .PP
-\"  You may copy and distribute the Document in any medium, either
-\"  commercially or noncommercially, provided that this License, the
-\"  copyright notices, and the license notice saying this License applies
-\"  to the Document are reproduced in all copies, and that you add no other
-\"  conditions whatsoever to those of this License.  You may not use
-\"  technical measures to obstruct or control the reading or further
-\"  copying of the copies you make or distribute.  However, you may accept
-\"  compensation in exchange for copies.  If you distribute a large enough
-\"  number of copies you must also follow the conditions in section 3.
-\"  .PP
-\"  You may also lend copies, under the same conditions stated above, and
-\"  you may publicly display copies.
-\"  .PP
-\"  3. COPYING IN QUANTITY
-\"  .PP
-\"  If you publish printed copies of the Document numbering more than 100,
-\"  and the Document's license notice requires Cover Texts, you must enclose
-\"  the copies in covers that carry, clearly and legibly, all these Cover
-\"  Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-\"  the back cover.  Both covers must also clearly and legibly identify
-\"  you as the publisher of these copies.  The front cover must present
-\"  the full title with all words of the title equally prominent and
-\"  visible.  You may add other material on the covers in addition.
-\"  Copying with changes limited to the covers, as long as they preserve
-\"  the title of the Document and satisfy these conditions, can be treated
-\"  as verbatim copying in other respects.
-\"  .PP
-\"  If the required texts for either cover are too voluminous to fit
-\"  legibly, you should put the first ones listed (as many as fit
-\"  reasonably) on the actual cover, and continue the rest onto adjacent
-\"  pages.
-\"  .PP
-\"  If you publish or distribute Opaque copies of the Document numbering
-\"  more than 100, you must either include a machine-readable Transparent
-\"  copy along with each Opaque copy, or state in or with each Opaque copy
-\"  a publicly-accessible computer-network location containing a complete
-\"  Transparent copy of the Document, free of added material, which the
-\"  general network-using public has access to download anonymously at no
-\"  charge using public-standard network protocols.  If you use the latter
-\"  option, you must take reasonably prudent steps, when you begin
-\"  distribution of Opaque copies in quantity, to ensure that this
-\"  Transparent copy will remain thus accessible at the stated location
-\"  until at least one year after the last time you distribute an Opaque
-\"  copy (directly or through your agents or retailers) of that edition to
-\"  the public.
-\"  .PP
-\"  It is requested, but not required, that you contact the authors of the
-\"  Document well before redistributing any large number of copies, to give
-\"  them a chance to provide you with an updated version of the Document.
-\"  .PP
-\"  4. MODIFICATIONS
-\"  .PP
-\"  You may copy and distribute a Modified Version of the Document under
-\"  the conditions of sections 2 and 3 above, provided that you release
-\"  the Modified Version under precisely this License, with the Modified
-\"  Version filling the role of the Document, thus licensing distribution
-\"  and modification of the Modified Version to whoever possesses a copy
-\"  of it.  In addition, you must do these things in the Modified Version:
-\"  .PP
-\"  A. Use in the Title Page (and on the covers, if any) a title distinct
-\"  from that of the Document, and from those of previous versions
-\"  (which should, if there were any, be listed in the History section
-\"  of the Document).  You may use the same title as a previous version
-\"  if the original publisher of that version gives permission.
-\"  .PP
-\"  B. List on the Title Page, as authors, one or more persons or entities
-\"  responsible for authorship of the modifications in the Modified
-\"  Version, together with at least five of the principal authors of the
-\"  Document (all of its principal authors, if it has less than five).
-\"  .PP
-\"  C. State on the Title page the name of the publisher of the
-\"  Modified Version, as the publisher.
-\"  .PP
-\"  D. Preserve all the copyright notices of the Document.
-\"  .PP
-\"  E. Add an appropriate copyright notice for your modifications
-\"  adjacent to the other copyright notices.
-\"  .PP
-\"  F. Include, immediately after the copyright notices, a license notice
-\"  giving the public permission to use the Modified Version under the
-\"  terms of this License, in the form shown in the Addendum below.
-\"  Preserve in that license notice the full lists of Invariant Sections
-\"  and required Cover Texts given in the Document's license notice.
-\"  .PP
-\"  H. Include an unaltered copy of this License.
-\"  .PP
-\"  I. Preserve the section entitled "History", and its title, and add to
-\"  it an item stating at least the title, year, new authors, and
-\"  publisher of the Modified Version as given on the Title Page.  If
-\"  there is no section entitled "History" in the Document, create one
-\"  stating the title, year, authors, and publisher of the Document as
-\"  given on its Title Page, then add an item describing the Modified
-\"  Version as stated in the previous sentence.
-\"  .PP
-\"  J. Preserve the network location, if any, given in the Document for
-\"  public access to a Transparent copy of the Document, and likewise
-\"  the network locations given in the Document for previous versions
-\"  it was based on.  These may be placed in the "History" section.
-\"  You may omit a network location for a work that was published at
-\"  least four years before the Document itself, or if the original
-\"  publisher of the version it refers to gives permission.
-\"  .PP
-\"  K. In any section entitled "Acknowledgements" or "Dedications",
-\"  preserve the section's title, and preserve in the section all the
-\"  substance and tone of each of the contributor acknowledgements
-\"  and/or dedications given therein.
-\"  .PP
-\"  L. Preserve all the Invariant Sections of the Document,
-\"  unaltered in their text and in their titles.  Section numbers
-\"  or the equivalent are not considered part of the section titles.
-\"  .PP
-\"  M. Delete any section entitled "Endorsements".  Such a section
-\"  may not be included in the Modified Version.
-\"  .PP
-\"  N. Do not retitle any existing section as "Endorsements"
-\"  or to conflict in title with any Invariant Section.
-\"  .PP
-\"  If the Modified Version includes new front-matter sections or
-\"  appendices that qualify as Secondary Sections and contain no material
-\"  copied from the Document, you may at your option designate some or all
-\"  of these sections as invariant.  To do this, add their titles to the
-\"  list of Invariant Sections in the Modified Version's license notice.
-\"  These titles must be distinct from any other section titles.
-\"  .PP
-\"  You may add a section entitled "Endorsements", provided it contains
-\"  nothing but endorsements of your Modified Version by various
-\"  parties--for example, statements of peer review or that the text has
-\"  been approved by an organization as the authoritative definition of a
-\"  standard.
-\"  .PP
-\"  You may add a passage of up to five words as a Front-Cover Text, and a
-\"  passage of up to 25 words as a Back-Cover Text, to the end of the list
-\"  of Cover Texts in the Modified Version.  Only one passage of
-\"  Front-Cover Text and one of Back-Cover Text may be added by (or
-\"  through arrangements made by) any one entity.  If the Document already
-\"  includes a cover text for the same cover, previously added by you or
-\"  by arrangement made by the same entity you are acting on behalf of,
-\"  you may not add another; but you may replace the old one, on explicit
-\"  permission from the previous publisher that added the old one.
-\"  .PP
-\"  The author(s) and publisher(s) of the Document do not by this License
-\"  give permission to use their names for publicity for or to assert or
-\"  imply endorsement of any Modified Version.
-\"  .PP
-
-\"  5. COMBINING DOCUMENTS
-\"  .PP
-\"  You may combine the Document with other documents released under this
-\"  License, under the terms defined in section 4 above for modified
-\"  versions, provided that you include in the combination all of the
-\"  Invariant Sections of all of the original documents, unmodified, and
-\"  list them all as Invariant Sections of your combined work in its
-\"  license notice.
-\"  .PP
-\"  The combined work need only contain one copy of this License, and
-\"  multiple identical Invariant Sections may be replaced with a single
-\"  copy.  If there are multiple Invariant Sections with the same name but
-\"  different contents, make the title of each such section unique by
-\"  adding at the end of it, in parentheses, the name of the original
-\"  author or publisher of that section if known, or else a unique number.
-\"  Make the same adjustment to the section titles in the list of
-\"  Invariant Sections in the license notice of the combined work.
-\"  .PP
-\"  In the combination, you must combine any sections entitled "History"
-\"  in the various original documents, forming one section entitled
-\"  "History"; likewise combine any sections entitled "Acknowledgements",
-\"  and any sections entitled "Dedications".  You must delete all sections
-\"  entitled "Endorsements."
-\"  .PP
-
-\"  6. COLLECTIONS OF DOCUMENTS
-\"  .PP
-\"  You may make a collection consisting of the Document and other documents
-\"  released under this License, and replace the individual copies of this
-\"  License in the various documents with a single copy that is included in
-\"  the collection, provided that you follow the rules of this License for
-\"  verbatim copying of each of the documents in all other respects.
-\"  .PP
-\"  You may extract a single document from such a collection, and distribute
-\"  it individually under this License, provided you insert a copy of this
-\"  License into the extracted document, and follow this License in all
-\"  other respects regarding verbatim copying of that document.
-\"  .PP
-
-\"  7. AGGREGATION WITH INDEPENDENT WORKS
-\"  .PP
-\"  A compilation of the Document or its derivatives with other separate
-\"  and independent documents or works, in or on a volume of a storage or
-\"  distribution medium, does not as a whole count as a Modified Version
-\"  of the Document, provided no compilation copyright is claimed for the
-\"  compilation.  Such a compilation is called an "aggregate", and this
-\"  License does not apply to the other self-contained works thus compiled
-\"  with the Document, on account of their being thus compiled, if they
-\"  are not themselves derivative works of the Document.
-\"  .PP
-\"  If the Cover Text requirement of section 3 is applicable to these
-\"  copies of the Document, then if the Document is less than one quarter
-\"  of the entire aggregate, the Document's Cover Texts may be placed on
-\"  covers that surround only the Document within the aggregate.
-\"  Otherwise they must appear on covers around the whole aggregate.
-\"  .PP
-
-\"  8. TRANSLATION
-\"  .PP
-\"  Translation is considered a kind of modification, so you may
-\"  distribute translations of the Document under the terms of section 4.
-\"  Replacing Invariant Sections with translations requires special
-\"  permission from their copyright holders, but you may include
-\"  translations of some or all Invariant Sections in addition to the
-\"  original versions of these Invariant Sections.  You may include a
-\"  translation of this License provided that you also include the
-\"  original English version of this License.  In case of a disagreement
-\"  between the translation and the original English version of this
-\"  License, the original English version will prevail.
-\"  .PP
-
-\"  9. TERMINATION
-\"  .PP
-\"  You may not copy, modify, sublicense, or distribute the Document except
-\"  as expressly provided for under this License.  Any other attempt to
-\"  copy, modify, sublicense or distribute the Document is void, and will
-\"  automatically terminate your rights under this License.  However,
-\"  parties who have received copies, or rights, from you under this
-\"  License will not have their licenses terminated so long as such
-\"  parties remain in full compliance.
-\"  .PP
-
-\"  10. FUTURE REVISIONS OF THIS LICENSE
-\"  .PP
-\"  The Free Software Foundation may publish new, revised versions
-\"  of the GNU Free Documentation License from time to time.  Such new
-\"  versions will be similar in spirit to the present version, but may
-\"  differ in detail to address new problems or concerns.  See
-\"  http://www.gnu.org/copyleft/.
-\"  .PP
-\"  Each version of the License is given a distinguishing version number.
-\"  If the Document specifies that a particular numbered version of this
-\"  License "or any later version" applies to it, you have the option of
-\"  following the terms and conditions either of that specified version or
-\"  of any later version that has been published (not as a draft) by the
-\"  Free Software Foundation.  If the Document does not specify a version
-\"  number of this License, you may choose any version ever published (not
-\"  as a draft) by the Free Software Foundation.
-\"  .PP
-
-\"  ADDENDUM: How to use this License for your documents
-\"  .PP
-\"  To use this License in a document you have written, include a copy of
-\"  the License in the document and put the following copyright and
-\"  license notices just after the title page:
-\"  .PP
-\"      Copyright (c)  YEAR  YOUR NAME.
-\"      Permission is granted to copy, distribute and/or
-\"      modify this document under the terms of the GNU
-\"      Free Documentation License, Version 1.1 or any later
-\"      version published by the Free Software Foundation;
-\"      with the Invariant Sections being LIST THEIR TITLES,
-\"      with the Front-Cover Texts being LIST, and with the
-\"      Back-Cover Texts being LIST.  A copy of the license
-\"      is included in the section entitled "GNU Free
-\"      Documentation License".
-\"  .PP
-\"  If you have no Invariant Sections, write "with no Invariant Sections"
-\"  instead of saying which ones are invariant.  If you have no
-\"  Front-Cover Texts, write "no Front-Cover Texts" instead of
-\"  "Front-Cover Texts being LIST"; likewise for Back-Cover Texts.
-\"  .PP
-\"  If your document contains nontrivial examples of program code, we
-\"  recommend releasing these examples in parallel under your choice of
-\"  free software license, such as the GNU General Public License,
-\"  to permit their use in free software.
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/ld.h binutils-2.11.2-m68hc1x/ld/ld.h
--- binutils-2.11.2/ld/ld.h	Fri Sep 21 20:58:42 2001
+++ binutils-2.11.2-m68hc1x/ld/ld.h	Sun Dec 16 13:54:00 2001
@@ -152,6 +152,16 @@ typedef struct {
      fpor overlaps.  */
   boolean check_section_addresses;
 
+  /* If true preprocess the linker scripts throught CPP.  */
+  boolean preprocess_scripts;
+
+  /* Preprocessor path.  */
+  char *preprocessor;
+
+  /* Preprocessor arguments (-D and -U).  */
+  char **preprocessor_args;
+  int preprocessor_nargs;
+
 } args_type;
 
 extern args_type command_line;
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/ld.texinfo binutils-2.11.2-m68hc1x/ld/ld.texinfo
--- binutils-2.11.2/ld/ld.texinfo	Fri Sep 21 20:58:42 2001
+++ binutils-2.11.2-m68hc1x/ld/ld.texinfo	Sun Dec 23 11:38:30 2001
@@ -9,6 +9,38 @@
 
 @c @smallbook
 
+@c man begin NAME
+@ifset man
+@c Configure for the generation of man pages
+@set UsesEnvVars
+@set GENERIC
+@set A29K
+@set ARC
+@set ARM
+@set D10V
+@set D30V
+@set H8/300
+@set H8/500
+@set HPPA
+@set I370
+@set I80386
+@set I860
+@set I960
+@set M32R
+@set M68HC11
+@set M680X0
+@set MCORE
+@set MIPS
+@set PDP11
+@set PJ
+@set SH
+@set SPARC
+@set C54X
+@set V850
+@set VAX
+@end ifset
+@c man end
+
 @ifinfo
 @format
 START-INFO-DIR-ENTRY
@@ -46,7 +78,7 @@ notice identical to this one except for 
 @title Using ld
 @subtitle The GNU linker
 @sp 1
-@subtitle @code{ld} version 2
+@subtitle @command{ld} version 2
 @subtitle Version @value{VERSION}
 @author Steve Chamberlain
 @author Ian Lance Taylor
@@ -63,14 +95,16 @@ notice identical to this one except for 
 @end tex
 
 @vskip 0pt plus 1filll
+@c man begin COPYRIGHT
 Copyright @copyright{} 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc.
 
-      Permission is granted to copy, distribute and/or modify this document
-      under the terms of the GNU Free Documentation License, Version 1.1
-      or any later version published by the Free Software Foundation;
-      with no Invariant Sections, with no Front-Cover Texts, and with no
-      Back-Cover Texts.  A copy of the license is included in the
-      section entitled "GNU Free Documentation License".
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.1
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts.  A copy of the license is included in the
+section entitled "GNU Free Documentation License".
+@c man end
 
 @end titlepage
 @end iftex
@@ -123,17 +157,40 @@ section entitled "GNU Free Documentation
 
 @cindex @sc{gnu} linker
 @cindex what is this?
-@code{ld} combines a number of object and archive files, relocates
+
+@ifset man
+@c man begin SYNOPSIS
+ld [ options ] objfile...
+@c man end
+
+@c man begin SEEALSO
+ar(1), nm(1), objcopy(1), objdump(1), readelf(1) and
+the Info entries for @file{binutils} and
+@file{ld}.
+@c man end
+@end ifset
+
+@c man begin DESCRIPTION
+
+@command{ld} combines a number of object and archive files, relocates
 their data and ties up symbol references. Usually the last step in
-compiling a program is to run @code{ld}.
+compiling a program is to run @command{ld}.
 
-@code{ld} accepts Linker Command Language files written in
+@command{ld} accepts Linker Command Language files written in
 a superset of AT&T's Link Editor Command Language syntax,
 to provide explicit and total control over the linking process.
 
+@ifset man
+@c For the man only
+This man page does not describe the command language; see the 
+@command{ld} entry in @code{info}, or the manual
+ld: the GNU linker, for full details on the command language and 
+on other aspects of the GNU linker. 
+@end ifset
+
 @ifclear SingleFormat
-This version of @code{ld} uses the general purpose BFD libraries
-to operate on object files. This allows @code{ld} to read, combine, and
+This version of @command{ld} uses the general purpose BFD libraries
+to operate on object files. This allows @command{ld} to read, combine, and
 write object files in many different formats---for example, COFF or
 @code{a.out}.  Different formats may be linked together to produce any
 available kind of object file.  @xref{BFD}, for more information.
@@ -142,16 +199,22 @@ available kind of object file.  @xref{BF
 Aside from its flexibility, the @sc{gnu} linker is more helpful than other
 linkers in providing diagnostic information.  Many linkers abandon
 execution immediately upon encountering an error; whenever possible,
-@code{ld} continues executing, allowing you to identify other errors
+@command{ld} continues executing, allowing you to identify other errors
 (or, in some cases, to get an output file in spite of the error).
 
+@c man end
+
 @node Invocation
 @chapter Invocation
 
-The @sc{gnu} linker @code{ld} is meant to cover a broad range of situations,
+@c man begin DESCRIPTION
+
+The @sc{gnu} linker @command{ld} is meant to cover a broad range of situations,
 and to be as compatible as possible with other linkers.  As a result,
 you have many choices to control its behavior.
 
+@c man end
+
 @ifset UsesEnvVars
 @menu
 * Options::                     Command Line Options
@@ -164,10 +227,13 @@ you have many choices to control its beh
 
 @cindex command line
 @cindex options
+
+@c man begin OPTIONS
+
 The linker supports a plethora of command-line options, but in actual
 practice few of them are used in any particular context.
 @cindex standard Unix system
-For instance, a frequent use of @code{ld} is to link standard Unix
+For instance, a frequent use of @command{ld} is to link standard Unix
 object files on a standard, supported Unix system.  On such a system, to
 link a file @code{hello.o}:
 
@@ -175,12 +241,12 @@ link a file @code{hello.o}:
 ld -o @var{output} /lib/crt0.o hello.o -lc
 @end smallexample
 
-This tells @code{ld} to produce a file called @var{output} as the
+This tells @command{ld} to produce a file called @var{output} as the
 result of linking the file @code{/lib/crt0.o} with @code{hello.o} and
 the library @code{libc.a}, which will come from the standard search
 directories.  (See the discussion of the @samp{-l} option below.)
 
-Some of the command-line options to @code{ld} may be specified at any
+Some of the command-line options to @command{ld} may be specified at any
 point in the command line.  However, options which refer to files, such
 as @samp{-l} or @samp{-T}, cause the file to be read at the point at
 which the option appears in the command line, relative to the object
@@ -251,7 +317,7 @@ silently drop the linker options, result
 Here is a table of the generic command line switches accepted by the GNU
 linker:
 
-@table @code
+@table @env
 @kindex -a@var{keyword}
 @item -a@var{keyword}
 This option is supported for HP/UX compatibility.  The @var{keyword}
@@ -266,14 +332,14 @@ to @samp{-Bdynamic}.  This option may be
 @item -A@var{architecture}
 @kindex --architecture=@var{arch}
 @itemx --architecture=@var{architecture}
-In the current release of @code{ld}, this option is useful only for the
-Intel 960 family of architectures.  In that @code{ld} configuration, the
+In the current release of @command{ld}, this option is useful only for the
+Intel 960 family of architectures.  In that @command{ld} configuration, the
 @var{architecture} argument identifies the particular architecture in
 the 960 family, enabling some safeguards and modifying the
-archive-library search path.  @xref{i960,,@code{ld} and the Intel 960
+archive-library search path.  @xref{i960,,@command{ld} and the Intel 960
 family}, for details.
 
-Future releases of @code{ld} may support similar functionality for
+Future releases of @command{ld} may support similar functionality for
 other architecture families.
 @end ifset
 
@@ -285,12 +351,12 @@ other architecture families.
 @cindex input format
 @item -b @var{input-format}
 @itemx --format=@var{input-format}
-@code{ld} may be configured to support more than one kind of object
-file.  If your @code{ld} is configured this way, you can use the
+@command{ld} may be configured to support more than one kind of object
+file.  If your @command{ld} is configured this way, you can use the
 @samp{-b} option to specify the binary format for input object files
-that follow this option on the command line.  Even when @code{ld} is
+that follow this option on the command line.  Even when @command{ld} is
 configured to support alternative object formats, you don't usually need
-to specify this, as @code{ld} should be configured to expect as a
+to specify this, as @command{ld} should be configured to expect as a
 default input format the most usual format on each machine.
 @var{input-format} is a text string, the name of a particular format
 supported by the BFD libraries.  (You can list the available binary
@@ -309,7 +375,10 @@ The default format is taken from the env
 @xref{Environment}.
 @end ifset
 You can also define the input format from a script, using the command
-@code{TARGET}; see @ref{Format Commands}.
+@code{TARGET};
+@ifclear man
+see @ref{Format Commands}.
+@end ifclear
 @end ifclear
 
 @kindex -c @var{MRI-cmdfile}
@@ -317,12 +386,18 @@ You can also define the input format fro
 @cindex compatibility, MRI
 @item -c @var{MRI-commandfile}
 @itemx --mri-script=@var{MRI-commandfile}
-For compatibility with linkers produced by MRI, @code{ld} accepts script
+For compatibility with linkers produced by MRI, @command{ld} accepts script
 files written in an alternate, restricted command language, described in
-@ref{MRI,,MRI Compatible Script Files}.  Introduce MRI script files with
+@ifclear man
+@ref{MRI,,MRI Compatible Script Files}.
+@end ifclear
+@ifset man
+the MRI Compatible Script Files section of GNU ld documentation.
+@end ifset
+Introduce MRI script files with
 the option @samp{-c}; use the @samp{-T} option to run linker
-scripts written in the general-purpose @code{ld} scripting language.
-If @var{MRI-cmdfile} does not exist, @code{ld} looks for it in the directories
+scripts written in the general-purpose @command{ld} scripting language.
+If @var{MRI-cmdfile} does not exist, @command{ld} looks for it in the directories
 specified by any @samp{-L} options.
 
 @cindex common allocation
@@ -419,12 +494,12 @@ found in the shared object @var{name}.  
 used to select a subset of the symbols provided by the object
 @var{name}.
 
-Some older linkers used the @code{-F} option throughout a compilation
+Some older linkers used the @option{-F} option throughout a compilation
 toolchain for specifying object-file format for both input and output
 object files.  The @sc{gnu} linker uses other mechanisms for this
-purpose: the @code{-b}, @code{--format}, @code{--oformat} options, the
+purpose: the @option{-b}, @option{--format}, @option{--oformat} options, the
 @code{TARGET} command in linker scripts, and the @code{GNUTARGET}
-environment variable.  The @sc{gnu} linker will ignore the @code{-F}
+environment variable.  The @sc{gnu} linker will ignore the @option{-F}
 option when not creating an ELF shared object.
 
 @cindex finalization function
@@ -479,13 +554,13 @@ function to call.
 @item -l@var{archive}
 @itemx --library=@var{archive}
 Add archive file @var{archive} to the list of files to link.  This
-option may be used any number of times.  @code{ld} will search its
+option may be used any number of times.  @command{ld} will search its
 path-list for occurrences of @code{lib@var{archive}.a} for every
 @var{archive} specified.
 
-On systems which support shared libraries, @code{ld} may also search for
+On systems which support shared libraries, @command{ld} may also search for
 libraries with extensions other than @code{.a}.  Specifically, on ELF
-and SunOS systems, @code{ld} will search a directory for a library with
+and SunOS systems, @command{ld} will search a directory for a library with
 an extension of @code{.so} before searching for one with an extension of
 @code{.a}.  By convention, a @code{.so} extension indicates a shared
 library.
@@ -497,14 +572,14 @@ command line, the linker will include th
 archive.  However, an undefined symbol in an object appearing later on
 the command line will not cause the linker to search the archive again.
 
-See the @code{-(} option for a way to force the linker to search
+See the @option{-(} option for a way to force the linker to search
 archives multiple times.
 
 You may list the same archive multiple times on the command line.
 
 @ifset GENERIC
 This type of archive searching is standard for Unix linkers.  However,
-if you are using @code{ld} on AIX, note that it is different from the
+if you are using @command{ld} on AIX, note that it is different from the
 behaviour of the AIX linker.
 @end ifset
 
@@ -513,17 +588,17 @@ behaviour of the AIX linker.
 @kindex --library-path=@var{dir}
 @item -L@var{searchdir}
 @itemx --library-path=@var{searchdir}
-Add path @var{searchdir} to the list of paths that @code{ld} will search
-for archive libraries and @code{ld} control scripts.  You may use this
+Add path @var{searchdir} to the list of paths that @command{ld} will search
+for archive libraries and @command{ld} control scripts.  You may use this
 option any number of times.  The directories are searched in the order
 in which they are specified on the command line.  Directories specified
 on the command line are searched before the default directories.  All
-@code{-L} options apply to all @code{-l} options, regardless of the
+@option{-L} options apply to all @option{-l} options, regardless of the
 order in which the options appear.
 
 @ifset UsesEnvVars
 The default set of paths searched (without being specified with
-@samp{-L}) depends on which emulation mode @code{ld} is using, and in
+@samp{-L}) depends on which emulation mode @command{ld} is using, and in
 some cases also on how it was configured.  @xref{Environment}.
 @end ifset
 
@@ -585,14 +660,14 @@ style magic numbers, mark the output as 
 @cindex naming the output file
 @item -o @var{output}
 @itemx --output=@var{output}
-Use @var{output} as the name for the program produced by @code{ld}; if this
+Use @var{output} as the name for the program produced by @command{ld}; if this
 option is not specified, the name @file{a.out} is used by default.  The
 script command @code{OUTPUT} can also specify the output file name.
 
 @kindex -O @var{level}
 @cindex generating optimized output
 @item -O @var{level}
-If @var{level} is a numeric values greater than zero @code{ld} optimizes
+If @var{level} is a numeric values greater than zero @command{ld} optimizes
 the output.  This might take significantly longer and therefore probably
 should only be enabled for the final binary.
 
@@ -613,11 +688,11 @@ in larger executables.
 @item -r
 @itemx --relocateable
 Generate relocatable output---i.e., generate an output file that can in
-turn serve as input to @code{ld}.  This is often called @dfn{partial
+turn serve as input to @command{ld}.  This is often called @dfn{partial
 linking}.  As a side effect, in environments that support standard Unix
 magic numbers, this option also sets the output file's magic number to
 @code{OMAGIC}.
-@c ; see @code{-N}.
+@c ; see @option{-N}.
 If this option is not specified, an absolute file is produced.  When
 linking C++ programs, this option @emph{will not} resolve references to
 constructors; to do that, use @samp{-Ur}.
@@ -634,9 +709,9 @@ relocate it or include it in the output.
 to refer symbolically to absolute locations of memory defined in other
 programs.  You may use this option more than once.
 
-For compatibility with other ELF linkers, if the @code{-R} option is
+For compatibility with other ELF linkers, if the @option{-R} option is
 followed by a directory name, rather than a file name, it is treated as
-the @code{-rpath} option.
+the @option{-rpath} option.
 
 @kindex -s
 @kindex --strip-all
@@ -657,7 +732,7 @@ Omit debugger symbol information (but no
 @cindex input files, displaying
 @item -t
 @itemx --trace
-Print the names of the input files as @code{ld} processes them.
+Print the names of the input files as @command{ld} processes them.
 
 @kindex -T @var{script}
 @kindex --script=@var{script}
@@ -665,15 +740,39 @@ Print the names of the input files as @c
 @item -T @var{scriptfile}
 @itemx --script=@var{scriptfile}
 Use @var{scriptfile} as the linker script.  This script replaces
-@code{ld}'s default linker script (rather than adding to it), so
+@command{ld}'s default linker script (rather than adding to it), so
 @var{commandfile} must specify everything necessary to describe the
 output file.  You must use this option if you want to use a command
 which can only appear once in a linker script, such as the
 @code{SECTIONS} or @code{MEMORY} command.  @xref{Scripts}.  If
-@var{scriptfile} does not exist in the current directory, @code{ld}
+@var{scriptfile} does not exist in the current directory, @command{ld}
 looks for it in the directories specified by any preceding @samp{-L}
 options.  Multiple @samp{-T} options accumulate.
 
+@kindex --cpp-script=@var{script}
+@cindex script files
+@itemx --cpp-script=@var{scriptfile}
+Run the C preprocessor on @var{scriptfile} to obtain the linker script.
+This option is similar to @samp{-T} option but the C preprocessor is run
+on the file.
+
+@kindex --m4-script=@var{script}
+@cindex script files
+@itemx --m4-script=@var{scriptfile}
+Run the M4 preprocessor on @var{scriptfile} to obtain the linker script.
+This option is similar to @samp{-T} option but the C preprocessor is run
+on the file.
+
+@kindex -D@var{name[=value]}
+@itemx -D@var{name[=value]}
+Pass this option to the preprocessor command when processing the linker
+script through the cpp or m4 preprocessor.
+
+@kindex -U@var{name}
+@itemx -U@var{name}
+Pass this option to the preprocessor command when processing the linker
+script through the cpp or m4 preprocessor.
+
 @kindex -u @var{symbol}
 @kindex --undefined=@var{symbol}
 @cindex undefined symbol
@@ -690,7 +789,7 @@ option is equivalent to the @code{EXTERN
 @item -Ur
 For anything other than C++ programs, this option is equivalent to
 @samp{-r}: it generates relocatable output---i.e., an output file that can in
-turn serve as input to @code{ld}.  When linking C++ programs, @samp{-Ur}
+turn serve as input to @command{ld}.  When linking C++ programs, @samp{-Ur}
 @emph{does} resolve references to constructors, unlike @samp{-r}.
 It does not work to use @samp{-Ur} on files that were themselves linked
 with @samp{-Ur}; once the constructor table has been built, it cannot
@@ -714,7 +813,7 @@ in a linker script.
 @item -v
 @itemx --version
 @itemx -V
-Display the version number for @code{ld}.  The @code{-V} option also
+Display the version number for @command{ld}.  The @option{-V} option also
 lists the supported emulations.
 
 @kindex -x
@@ -804,14 +903,14 @@ for which shared libraries are supported
 default on such platforms.  The different variants of this option are
 for compatibility with various systems.  You may use this option
 multiple times on the command line: it affects library searching for
-@code{-l} options which follow it.
+@option{-l} options which follow it.
 
 @kindex -Bgroup
 @item -Bgroup
 Set the @code{DF_1_GROUP} flag in the @code{DT_FLAGS_1} entry in the dynamic
 section.  This causes the runtime linker to handle lookups in this
 object and its dependencies to be performed only inside the group.
-@code{--no-undefined} is implied.  This option is only meaningful on ELF
+@option{--no-undefined} is implied.  This option is only meaningful on ELF
 platforms which support shared libraries.
 
 @kindex -Bstatic
@@ -826,7 +925,7 @@ Do not link against shared libraries.  T
 platforms for which shared libraries are supported.  The different
 variants of this option are for compatibility with various systems.  You
 may use this option multiple times on the command line: it affects
-library searching for @code{-l} options which follow it.
+library searching for @option{-l} options which follow it.
 
 @kindex -Bsymbolic
 @item -Bsymbolic
@@ -868,7 +967,7 @@ address given by @var{expression}.  You 
 times as necessary to define multiple symbols in the command line.  A
 limited form of arithmetic is supported for the @var{expression} in this
 context: you may give a hexadecimal constant or the name of an existing
-symbol, or use @code{+} and @code{-} to add or subtract hexadecimal
+symbol, or use @code{+} and @option{-} to add or subtract hexadecimal
 constants or symbols.  If you need more elaborate expressions, consider
 using the linker command language from a script (@pxref{Assignments,,
 Assignment: Symbol Definitions}).  @emph{Note:} there should be no white
@@ -947,10 +1046,10 @@ Print a link map to the file @var{mapfil
 @cindex memory usage
 @kindex --no-keep-memory
 @item --no-keep-memory
-@code{ld} normally optimizes for speed over memory usage by caching the
-symbol tables of input files in memory.  This option tells @code{ld} to
+@command{ld} normally optimizes for speed over memory usage by caching the
+symbol tables of input files in memory.  This option tells @command{ld} to
 instead optimize for memory usage, by rereading the symbol tables as
-necessary.  This may be required if @code{ld} runs out of memory space
+necessary.  This may be required if @command{ld} runs out of memory space
 while linking a large executable.
 
 @kindex --no-undefined
@@ -976,17 +1075,17 @@ is also normal for HPPA shared libraries
 
 @kindex --no-warn-mismatch
 @item --no-warn-mismatch
-Normally @code{ld} will give an error if you try to link together input
+Normally @command{ld} will give an error if you try to link together input
 files that are mismatched for some reason, perhaps because they have
 been compiled for different processors or for different endiannesses.
-This option tells @code{ld} that it should silently permit such possible
+This option tells @command{ld} that it should silently permit such possible
 errors.  This option should only be used with care, in cases when you
 have taken some special action that ensures that the linker errors are
 inappropriate.
 
 @kindex --no-whole-archive
 @item --no-whole-archive
-Turn off the effect of the @code{--whole-archive} option for subsequent
+Turn off the effect of the @option{--whole-archive} option for subsequent
 archive files.
 
 @cindex output file after errors
@@ -1000,11 +1099,11 @@ when it issues any error whatsoever.
 @ifclear SingleFormat
 @kindex --oformat
 @item --oformat @var{output-format}
-@code{ld} may be configured to support more than one kind of object
-file.  If your @code{ld} is configured this way, you can use the
+@command{ld} may be configured to support more than one kind of object
+file.  If your @command{ld} is configured this way, you can use the
 @samp{--oformat} option to specify the binary format for the output
-object file.  Even when @code{ld} is configured to support alternative
-object formats, you don't usually need to specify this, as @code{ld}
+object file.  Even when @command{ld} is configured to support alternative
+object formats, you don't usually need to specify this, as @command{ld}
 should be configured to produce as a default output format the most
 usual format on each machine.  @var{output-format} is a text string, the
 name of a particular format supported by the BFD libraries.  (You can
@@ -1030,10 +1129,10 @@ An option with machine dependent effects
 This option is only supported on a few targets.
 @end ifset
 @ifset H8300
-@xref{H8/300,,@code{ld} and the H8/300}.
+@xref{H8/300,,@command{ld} and the H8/300}.
 @end ifset
 @ifset I960
-@xref{i960,, @code{ld} and the Intel 960 family}.
+@xref{i960,, @command{ld} and the Intel 960 family}.
 @end ifset
 
 
@@ -1078,26 +1177,26 @@ line.  It overrides @samp{-s} and @samp{
 @cindex runtime library search path
 @kindex -rpath
 Add a directory to the runtime library search path.  This is used when
-linking an ELF executable with shared objects.  All @code{-rpath}
+linking an ELF executable with shared objects.  All @option{-rpath}
 arguments are concatenated and passed to the runtime linker, which uses
-them to locate shared objects at runtime.  The @code{-rpath} option is
+them to locate shared objects at runtime.  The @option{-rpath} option is
 also used when locating shared objects which are needed by shared
 objects explicitly included in the link; see the description of the
-@code{-rpath-link} option.  If @code{-rpath} is not used when linking an
+@option{-rpath-link} option.  If @option{-rpath} is not used when linking an
 ELF executable, the contents of the environment variable
 @code{LD_RUN_PATH} will be used if it is defined.
 
-The @code{-rpath} option may also be used on SunOS.  By default, on
+The @option{-rpath} option may also be used on SunOS.  By default, on
 SunOS, the linker will form a runtime search patch out of all the
-@code{-L} options it is given.  If a @code{-rpath} option is used, the
-runtime search path will be formed exclusively using the @code{-rpath}
-options, ignoring the @code{-L} options.  This can be useful when using
-gcc, which adds many @code{-L} options which may be on NFS mounted
+@option{-L} options it is given.  If a @option{-rpath} option is used, the
+runtime search path will be formed exclusively using the @option{-rpath}
+options, ignoring the @option{-L} options.  This can be useful when using
+gcc, which adds many @option{-L} options which may be on NFS mounted
 filesystems.
 
-For compatibility with other ELF linkers, if the @code{-R} option is
+For compatibility with other ELF linkers, if the @option{-R} option is
 followed by a directory name, rather than a file name, it is treated as
-the @code{-rpath} option.
+the @option{-rpath} option.
 @end ifset
 
 @ifset GENERIC
@@ -1111,9 +1210,9 @@ of the input files.
 When the linker encounters such a dependency when doing a non-shared,
 non-relocatable link, it will automatically try to locate the required
 shared library and include it in the link, if it is not included
-explicitly.  In such a case, the @code{-rpath-link} option
+explicitly.  In such a case, the @option{-rpath-link} option
 specifies the first set of directories to search.  The
-@code{-rpath-link} option may specify a sequence of directory names
+@option{-rpath-link} option may specify a sequence of directory names
 either by specifying a list of names separated by colons, or by
 appearing multiple times.
 
@@ -1126,20 +1225,20 @@ The linker uses the following search pat
 libraries.
 @enumerate
 @item
-Any directories specified by @code{-rpath-link} options.
+Any directories specified by @option{-rpath-link} options.
 @item
-Any directories specified by @code{-rpath} options.  The difference
-between @code{-rpath} and @code{-rpath-link} is that directories
-specified by @code{-rpath} options are included in the executable and
-used at runtime, whereas the @code{-rpath-link} option is only effective
+Any directories specified by @option{-rpath} options.  The difference
+between @option{-rpath} and @option{-rpath-link} is that directories
+specified by @option{-rpath} options are included in the executable and
+used at runtime, whereas the @option{-rpath-link} option is only effective
 at link time. It is for the native linker only.
 @item
-On an ELF system, if the @code{-rpath} and @code{rpath-link} options
+On an ELF system, if the @option{-rpath} and @code{rpath-link} options
 were not used, search the contents of the environment variable
 @code{LD_RUN_PATH}. It is for the native linker only.
 @item
-On SunOS, if the @code{-rpath} option was not used, search any
-directories specified using @code{-L} options.
+On SunOS, if the @option{-rpath} option was not used, search any
+directories specified using @option{-L} options.
 @item
 For a native linker, the contents of the environment variable
 @code{LD_LIBRARY_PATH}.
@@ -1166,12 +1265,12 @@ warning and continue with the link.
 @cindex shared libraries
 Create a shared library.  This is currently only supported on ELF, XCOFF
 and SunOS platforms.  On SunOS, the linker will automatically create a
-shared library if the @code{-e} option is not used and there are
+shared library if the @option{-e} option is not used and there are
 undefined symbols in the link.
 
 @item --sort-common
 @kindex --sort-common
-This option tells @code{ld} to sort the common symbols by size when it
+This option tells @command{ld} to sort the common symbols by size when it
 places them in the appropriate output sections.  First come all the one
 byte symbols, then all the two bytes, then all the four bytes, and then
 everything else.  This is to prevent gaps between symbols due to
@@ -1179,7 +1278,7 @@ alignment constraints.
 
 @kindex --split-by-file
 @item --split-by-file [@var{size}]
-Similar to @code{--split-by-reloc} but creates a new output section for
+Similar to @option{--split-by-reloc} but creates a new output section for
 each input file when @var{size} is reached.  @var{size} defaults to a
 size of 1 if not given.
 
@@ -1204,16 +1303,16 @@ as execution time and memory usage.
 @kindex --traditional-format
 @cindex traditional format
 @item --traditional-format
-For some targets, the output of @code{ld} is different in some ways from
-the output of some existing linker.  This switch requests @code{ld} to
+For some targets, the output of @command{ld} is different in some ways from
+the output of some existing linker.  This switch requests @command{ld} to
 use the traditional format instead.
 
 @cindex dbx
-For example, on SunOS, @code{ld} combines duplicate entries in the
+For example, on SunOS, @command{ld} combines duplicate entries in the
 symbol string table.  This can reduce the size of an output file with
 full debugging information by over 30 percent.  Unfortunately, the SunOS
 @code{dbx} program can not read the resulting program (@code{gdb} has no
-trouble).  The @samp{--traditional-format} switch tells @code{ld} to not
+trouble).  The @samp{--traditional-format} switch tells @command{ld} to not
 combine duplicate entries.
 
 @kindex --section-start @var{sectionname}=@var{org}
@@ -1245,7 +1344,7 @@ for compatibility with other linkers, yo
 @cindex verbose
 @item --dll-verbose
 @itemx --verbose
-Display the version number for @code{ld} and list the linker emulations
+Display the version number for @command{ld} and list the linker emulations
 supported.  Display which input files can and cannot be opened.  Display
 the linker script if using a default builtin script.
 
@@ -1384,15 +1483,15 @@ the section (@pxref{SECTIONS}).
 @cindex including an entire archive
 @item --whole-archive
 For each archive mentioned on the command line after the
-@code{--whole-archive} option, include every object file in the archive
+@option{--whole-archive} option, include every object file in the archive
 in the link, rather than searching the archive for the required object
 files.  This is normally used to turn an archive file into a shared
 library, forcing every object to be included in the resulting shared
 library.  This option may be used more than once.
 
 Two notes when using this option from gcc: First, gcc doesn't know
-about this option, so you have to use @code{-Wl,-whole-archive}.
-Second, don't forget to use @code{-Wl,-no-whole-archive} after your
+about this option, so you have to use @option{-Wl,-whole-archive}.
+Second, don't forget to use @option{-Wl,-no-whole-archive} after your
 list of archives, because gcc will add its own list of archives to
 your link and you may not want this flag to affect those as well.
 
@@ -1419,13 +1518,13 @@ __wrap_malloc (int c)
 @}
 @end smallexample
 
-If you link other code with this file using @code{--wrap malloc}, then
+If you link other code with this file using @option{--wrap malloc}, then
 all calls to @code{malloc} will call the function @code{__wrap_malloc}
 instead.  The call to @code{__real_malloc} in @code{__wrap_malloc} will
 call the real @code{malloc} function.
 
 You may wish to provide a @code{__real_malloc} function as well, so that
-links without the @code{--wrap} option will succeed.  If you do this,
+links without the @option{--wrap} option will succeed.  If you do this,
 you should not put the definition of @code{__real_malloc} in the same
 file as @code{__wrap_malloc}; if you do, the assembler may resolve the
 call before the linker has a chance to wrap it to @code{malloc}.
@@ -1436,16 +1535,20 @@ call before the linker has a chance to w
 @itemx --disable-new-dtags
 This linker can create the new dynamic tags in ELF. But the older ELF
 systems may not understand them. If you specify
-@code{--enable-new-dtags}, the dynamic tags will be created as needed.
-If you specify @code{--disable-new-dtags}, no new dynamic tags will be
+@option{--enable-new-dtags}, the dynamic tags will be created as needed.
+If you specify @option{--disable-new-dtags}, no new dynamic tags will be
 created. By default, the new dynamic tags are not created. Note that
 those options are only available for ELF systems.
 
 @end table
 
+@c man end
+
 @subsection Options specific to i386 PE targets
 
-The i386 PE linker supports the @code{-shared} option, which causes
+@c man begin OPTIONS
+
+The i386 PE linker supports the @option{-shared} option, which causes
 the output to be a dynamically linked library (DLL) instead of a
 normal executable.  You should name the output @code{*.dll} when you
 use this option.  In addition, the linker fully supports the standard
@@ -1459,7 +1562,7 @@ support additional command line options 
 PE target.  Options that take values may be separated from their
 values by either a space or an equals sign.
 
-@table @code
+@table @env
 
 @kindex --add-stdcall-alias
 @item --add-stdcall-alias
@@ -1475,7 +1578,7 @@ addresses of all the relocations needed 
 @kindex --dll
 @item --dll
 Create a DLL instead of a regular executable.  You may also use
-@code{-shared} or specify a @code{LIBRARY} in a given @code{.def}
+@option{-shared} or specify a @code{LIBRARY} in a given @code{.def}
 file.
 
 @kindex --enable-stdcall-fixup
@@ -1491,9 +1594,9 @@ undefined symbol @code{_foo} might be li
 to the function @code{_bar}.  When the linker does this, it prints a
 warning, since it normally should have failed to link, but sometimes
 import libraries generated from third-party dlls may need this feature
-to be usable.  If you specify @code{--enable-stdcall-fixup}, this
+to be usable.  If you specify @option{--enable-stdcall-fixup}, this
 feature is fully enabled and warnings are not printed.  If you specify
-@code{--disable-stdcall-fixup}, this feature is disabled and such
+@option{--disable-stdcall-fixup}, this feature is disabled and such
 mismatches are considered to be errors.
 
 @cindex DLLs, creating
@@ -1600,11 +1703,15 @@ subsystem version also.
 
 @end table
 
+@c man end
+
 @ifset UsesEnvVars
 @node Environment
 @section Environment Variables
 
-You can change the behavior of @code{ld} with the environment variables
+@c man begin ENVIRONMENT
+
+You can change the behavior of @command{ld} with the environment variables
 @code{GNUTARGET}, @code{LDEMULATION}, and @code{COLLECT_NO_DEMANGLE}.
 
 @kindex GNUTARGET
@@ -1612,7 +1719,7 @@ You can change the behavior of @code{ld}
 @code{GNUTARGET} determines the input-file object format if you don't
 use @samp{-b} (or its synonym @samp{--format}).  Its value should be one
 of the BFD names for an input format (@pxref{BFD}).  If there is no
-@code{GNUTARGET} in the environment, @code{ld} uses the natural format
+@code{GNUTARGET} in the environment, @command{ld} uses the natural format
 of the target. If @code{GNUTARGET} is set to @code{default} then BFD
 attempts to discover the input format by examining binary input files;
 this method often succeeds, but there are potential ambiguities, since
@@ -1631,7 +1738,6 @@ available emulations with the @samp{--ve
 the @samp{-m} option is not used, and the @code{LDEMULATION} environment
 variable is not defined, the default emulation depends upon how the
 linker was configured.
-@end ifset
 
 @kindex COLLECT_NO_DEMANGLE
 @cindex demangling, default
@@ -1642,6 +1748,9 @@ a similar fashion by the @code{gcc} link
 may be overridden by the @samp{--demangle} and @samp{--no-demangle}
 options.
 
+@c man end
+@end ifset
+
 @node Scripts
 @chapter Linker Scripts
 
@@ -1676,6 +1785,7 @@ Linker Scripts}.
 * Basic Script Concepts::	Basic Linker Script Concepts
 * Script Format::		Linker Script Format
 * Simple Example::		Simple Linker Script Example
+* Preprocessing::		Linker Script Preprocessing
 * Simple Commands::		Simple Linker Script Commands
 * Assignments::			Assigning Values to Symbols
 * SECTIONS::			SECTIONS Command
@@ -1828,6 +1938,54 @@ sections.
 
 That's it!  That's a simple and complete linker script.
 
+@node Linker Script Preprocessing
+@section Linker Script Preprocessing
+@cindex linker script preprocessing
+
+Preprocessing is useful to design configurable linker scripts that will 
+be tuned for a particular target or board at link time.  Depending on
+the preprocessor, the configurable linker script contains macros or
+variables whose final expansion and value can be controlled from the
+@command{ld} command line.  For this, the linker script can be
+preprocessed with the C preprocessor, the M4 preprocessor or 
+another preprocessor.
+
+The preprocessor is run on the configurable linker script and the output 
+is read by the linker as the final linker script.  The preprocessor is
+passed a number of @option{-D}, @option{-U} and @option{-I} options.
+The @option{-D} and @option{-U} options are directly specified from the
+@command{ld} command line.  Several @option{-D} options are automatically
+passed based on some other linker options.  The @option{-I} options are formed
+using the linker search directories.  A first set corresponds to the
+builtin search directories and a second set corresponds to the directories
+specified with @option{-L} option.
+
+The table below summarizes the preprocessor options passed according
+to the linker options:
+
+@table @samp
+@item -A@var{arch}
+-DLD_LINK_ARCH=@var{arch}
+
+@item -b@var{target}
+-DLD_LINK_TARGET='@var{target}'
+
+@item -L@var{path}
+-I@var{path}
+
+@item -r
+-DLD_LINK_RELOCATE
+
+@item -R
+-DLD_LINK_RELOCATE -DLD_BUILD_CTORS
+
+@end table
+
+The preprocessor command is either @command{gcc -E -xc-header} when
+the @option{--cpp-script} option is specified, or it is @command{m4}
+when the @option{--m4-script} option is specified.  Alternatively, it
+can be any command by using the @option{--preprocessor} option.
+
 @node Simple Commands
 @section Simple Linker Script Commands
 @cindex linker script simple commands
@@ -1883,7 +2041,7 @@ Several linker script commands deal with
 @cindex including a linker script
 Include the linker script @var{filename} at this point.  The file will
 be searched for in the current directory, and in any directory specified
-with the @code{-L} option.  You can nest calls to @code{INCLUDE} up to
+with the @option{-L} option.  You can nest calls to @code{INCLUDE} up to
 10 levels deep.
 
 @item INPUT(@var{file}, @var{file}, @dots{})
@@ -1907,7 +2065,7 @@ it is not found, the linker will search 
 search path.  See the description of @samp{-L} in @ref{Options,,Command
 Line Options}.
 
-If you use @samp{INPUT (-l@var{file})}, @code{ld} will transform the
+If you use @samp{INPUT (-l@var{file})}, @command{ld} will transform the
 name to @code{lib@var{file}.a}, as with the command line argument
 @samp{-l}.
 
@@ -1942,7 +2100,7 @@ output file other than the usual default
 @cindex archive search path in linker script
 @cindex search path in linker script
 The @code{SEARCH_DIR} command adds @var{path} to the list of paths where
-@code{ld} looks for archive libraries.  Using
+@command{ld} looks for archive libraries.  Using
 @code{SEARCH_DIR(@var{path})} is exactly like using @samp{-L @var{path}}
 on the command line (@pxref{Options,,Command Line Options}).  If both
 are used, then the linker will search both paths.  Paths specified using
@@ -2030,13 +2188,13 @@ command has the same effect as the @samp
 @kindex FORCE_COMMON_ALLOCATION
 @cindex common allocation in linker script
 This command has the same effect as the @samp{-d} command-line option:
-to make @code{ld} assign space to common symbols even if a relocatable
+to make @command{ld} assign space to common symbols even if a relocatable
 output file is specified (@samp{-r}).
 
 @item NOCROSSREFS(@var{section} @var{section} @dots{})
 @kindex NOCROSSREFS(@var{sections})
 @cindex cross references
-This command may be used to tell @code{ld} to issue an error about any
+This command may be used to tell @command{ld} to issue an error about any
 references among certain output sections.
 
 In certain types of programs, particularly on embedded systems when
@@ -2046,7 +2204,7 @@ errors.  For example, it would be an err
 a function defined in the other section.
 
 The @code{NOCROSSREFS} command takes a list of output section names.  If
-@code{ld} detects any cross references between the sections, it reports
+@command{ld} detects any cross references between the sections, it reports
 an error and returns a non-zero exit status.  Note that the
 @code{NOCROSSREFS} command uses output section names, not input section
 names.
@@ -3937,17 +4095,17 @@ read.  This can affect archive searching
 @chapter Machine Dependent Features
 
 @cindex machine dependencies
-@code{ld} has additional features on some platforms; the following
-sections describe them.  Machines where @code{ld} has no additional
+@command{ld} has additional features on some platforms; the following
+sections describe them.  Machines where @command{ld} has no additional
 functionality are not listed.
 
 @menu
-* H8/300::                      @code{ld} and the H8/300
-* i960::                        @code{ld} and the Intel 960 family
-* ARM::				@code{ld} and the ARM family
-* HPPA ELF32::                  @code{ld} and HPPA 32-bit ELF
+* H8/300::                      @command{ld} and the H8/300
+* i960::                        @command{ld} and the Intel 960 family
+* ARM::				@command{ld} and the ARM family
+* HPPA ELF32::                  @command{ld} and HPPA 32-bit ELF
 @ifset TICOFF
-* TI COFF::                     @code{ld} and TI COFF
+* TI COFF::                     @command{ld} and TI COFF
 @end ifset
 @end menu
 @end ifset
@@ -3960,16 +4118,16 @@ functionality are not listed.
 @end ifclear
 
 @node H8/300
-@section @code{ld} and the H8/300
+@section @command{ld} and the H8/300
 
 @cindex H8/300 support
-For the H8/300, @code{ld} can perform these global optimizations when
+For the H8/300, @command{ld} can perform these global optimizations when
 you specify the @samp{--relax} command-line option.
 
 @table @emph
 @cindex relaxing on H8/300
 @item relaxing address modes
-@code{ld} finds all @code{jsr} and @code{jmp} instructions whose
+@command{ld} finds all @code{jsr} and @code{jmp} instructions whose
 targets are within eight bits, and turns them into eight-bit
 program-counter relative @code{bsr} and @code{bra} instructions,
 respectively.
@@ -3977,7 +4135,7 @@ respectively.
 @cindex synthesizing on H8/300
 @item synthesizing instructions
 @c FIXME: specifically mov.b, or any mov instructions really?
-@code{ld} finds all @code{mov.b} instructions which use the
+@command{ld} finds all @code{mov.b} instructions which use the
 sixteen-bit absolute address form, but refer to the top
 page of memory, and changes them to use the eight-bit address form.
 (That is: the linker turns @samp{mov.b @code{@@}@var{aa}:16} into
@@ -3995,9 +4153,9 @@ top page of memory).
 @c This stuff is pointless to say unless you're especially concerned
 @c with Hitachi chips; don't enable it for generic case, please.
 @node Hitachi
-@chapter @code{ld} and other Hitachi chips
+@chapter @command{ld} and other Hitachi chips
 
-@code{ld} also supports the H8/300H, the H8/500, and the Hitachi SH.  No
+@command{ld} also supports the H8/300H, the H8/500, and the Hitachi SH.  No
 special features, commands, or command-line options are required for
 these chips.
 @end ifset
@@ -4009,7 +4167,7 @@ these chips.
 @end ifclear
 
 @node i960
-@section @code{ld} and the Intel 960 family
+@section @command{ld} and the Intel 960 family
 
 @cindex i960 support
 
@@ -4021,7 +4179,7 @@ linker's search strategy for archive lib
 libraries specific to each particular architecture, by including in the
 search loop names suffixed with the string identifying the architecture.
 
-For example, if your @code{ld} command line included @w{@samp{-ACA}} as
+For example, if your @command{ld} command line included @w{@samp{-ACA}} as
 well as @w{@samp{-ltry}}, the linker would look (in its built-in search
 paths, and in any paths you specify with @samp{-L}) for a library with
 the names
@@ -4044,13 +4202,13 @@ the 960 architecture family allows combi
 use will add another pair of name variants to search for when @w{@samp{-l}}
 specifies a library.
 
-@cindex @code{--relax} on i960
+@cindex @option{--relax} on i960
 @cindex relaxing on i960
-@code{ld} supports the @samp{--relax} option for the i960 family.  If
-you specify @samp{--relax}, @code{ld} finds all @code{balx} and
+@command{ld} supports the @samp{--relax} option for the i960 family.  If
+you specify @samp{--relax}, @command{ld} finds all @code{balx} and
 @code{calx} instructions whose targets are within 24 bits, and turns
 them into 24-bit program-counter relative @code{bal} and @code{cal}
-instructions, respectively.  @code{ld} also turns @code{cal}
+instructions, respectively.  @command{ld} also turns @code{cal}
 instructions into @code{bal} instructions when it determines that the
 target subroutine is a leaf routine (that is, the target subroutine does
 not itself call any subroutines).
@@ -4065,11 +4223,11 @@ not itself call any subroutines).
 @end ifclear
 
 @node ARM
-@section @code{ld}'s support for interworking between ARM and Thumb code
+@section @command{ld}'s support for interworking between ARM and Thumb code
 
 @cindex ARM interworking support
 @kindex --support-old-code
-For the ARM, @code{ld} will generate code stubs to allow functions calls
+For the ARM, @command{ld} will generate code stubs to allow functions calls
 betweem ARM and Thumb code.  These stubs only work with code that has
 been compiled and assembled with the @samp{-mthumb-interwork} command
 line option.  If it is necessary to link with old ARM object files or
@@ -4090,18 +4248,18 @@ branched to using a BX instruction, and 
 executing in Thumb mode straight away.
 
 @node HPPA ELF32
-@section @code{ld} and HPPA 32-bit ELF support
+@section @command{ld} and HPPA 32-bit ELF support
 @cindex HPPA multiple sub-space stubs
 @kindex --multi-subspace
-When generating a shared library, @code{ld} will by default generate
+When generating a shared library, @command{ld} will by default generate
 import stubs suitable for use with a single sub-space application.
-The @samp{--multi-subspace} switch causes @code{ld} to generate export
+The @samp{--multi-subspace} switch causes @command{ld} to generate export
 stubs, and different (larger) import stubs suitable for use with
 multiple sub-spaces.
 
 @cindex HPPA stub grouping
 @kindex --stub-group-size=@var{N}
-Long branch stubs and import/export stubs are placed by @code{ld} in
+Long branch stubs and import/export stubs are placed by @command{ld} in
 stub sections located between groups of input sections.
 @samp{--stub-group-size} specifies the maximum size of a group of input
 sections handled by one stub section.  Since branch offsets are signed,
@@ -4112,7 +4270,7 @@ prediction) that stub sections only serv
 A negative value for @samp{N} chooses this scheme, ensuring that
 branches to stubs always use a negative offset.  Two special values of
 @samp{N} are recognized, @samp{1} and @samp{-1}.  These both instruct
-@code{ld} to automatically size input section groups for the branch types
+@command{ld} to automatically size input section groups for the branch types
 detected, with the same behaviour regarding stub placement as other
 positive or negative values of @samp{N} respectively.
 
@@ -4123,13 +4281,13 @@ large, it may not be possible for a bran
 
 @ifset TICOFF
 @node TI COFF
-@section @code{ld}'s support for various TI COFF versions
+@section @command{ld}'s support for various TI COFF versions
 @cindex TI COFF versions
 @kindex --format=@var{version}
 The @samp{--format} switch allows selection of one of the various
 TI COFF versions.  The latest of this writing is 2; versions 0 and 1 are
 also supported.  The TI COFF versions also vary in header byte-order
-format; @code{ld} will read any version or byte order, but the output
+format; @command{ld} will read any version or byte order, but the output
 header format depends on the default specified by the specific target.
 @end ifset
 
@@ -4182,16 +4340,16 @@ conversion and during output. @xref{BFD 
 
 @node Reporting Bugs
 @chapter Reporting Bugs
-@cindex bugs in @code{ld}
-@cindex reporting bugs in @code{ld}
+@cindex bugs in @command{ld}
+@cindex reporting bugs in @command{ld}
 
-Your bug reports play an essential role in making @code{ld} reliable.
+Your bug reports play an essential role in making @command{ld} reliable.
 
 Reporting a bug may help you by bringing a solution to your problem, or
 it may not.  But in any case the principal function of a bug report is
-to help the entire community by making the next version of @code{ld}
+to help the entire community by making the next version of @command{ld}
 work better.  Bug reports are your contribution to the maintenance of
-@code{ld}.
+@command{ld}.
 
 In order for a bug report to serve its purpose, you must include the
 information that enables us to fix the bug.
@@ -4213,37 +4371,37 @@ If you are not sure whether you have fou
 @cindex crash of linker
 @item
 If the linker gets a fatal signal, for any input whatever, that is a
-@code{ld} bug.  Reliable linkers never crash.
+@command{ld} bug.  Reliable linkers never crash.
 
 @cindex error on valid input
 @item
-If @code{ld} produces an error message for valid input, that is a bug.
+If @command{ld} produces an error message for valid input, that is a bug.
 
 @cindex invalid input
 @item
-If @code{ld} does not produce an error message for invalid input, that
+If @command{ld} does not produce an error message for invalid input, that
 may be a bug.  In the general case, the linker can not verify that
 object files are correct.
 
 @item
 If you are an experienced user of linkers, your suggestions for
-improvement of @code{ld} are welcome in any case.
+improvement of @command{ld} are welcome in any case.
 @end itemize
 
 @node Bug Reporting
 @section How to report bugs
 @cindex bug reports
-@cindex @code{ld} bugs, reporting
+@cindex @command{ld} bugs, reporting
 
 A number of companies and individuals offer support for @sc{gnu}
-products.  If you obtained @code{ld} from a support organization, we
+products.  If you obtained @command{ld} from a support organization, we
 recommend you contact that organization first.
 
 You can find contact information for many support companies and
 individuals in the file @file{etc/SERVICE} in the @sc{gnu} Emacs
 distribution.
 
-Otherwise, send bug reports for @code{ld} to
+Otherwise, send bug reports for @command{ld} to
 @samp{bug-binutils@@gnu.org}.
 
 The fundamental principle of reporting bugs usefully is this:
@@ -4273,14 +4431,14 @@ To enable us to fix the bug, you should 
 
 @itemize @bullet
 @item
-The version of @code{ld}.  @code{ld} announces it if you start it with
+The version of @command{ld}.  @command{ld} announces it if you start it with
 the @samp{--version} argument.
 
 Without this, we will not know whether there is any point in looking for
-the bug in the current version of @code{ld}.
+the bug in the current version of @command{ld}.
 
 @item
-Any patches you may have applied to the @code{ld} source, including any
+Any patches you may have applied to the @command{ld} source, including any
 patches made to the @code{BFD} library.
 
 @item
@@ -4288,7 +4446,7 @@ The type of machine you are using, and t
 version number.
 
 @item
-What compiler (and its version) was used to compile @code{ld}---e.g.
+What compiler (and its version) was used to compile @command{ld}---e.g.
 ``@code{gcc-2.7}''.
 
 @item
@@ -4317,14 +4475,14 @@ how @code{gas} or @code{gcc} were config
 A description of what behavior you observe that you believe is
 incorrect.  For example, ``It gets a fatal signal.''
 
-Of course, if the bug is that @code{ld} gets a fatal signal, then we
+Of course, if the bug is that @command{ld} gets a fatal signal, then we
 will certainly notice it.  But if the bug is incorrect output, we might
 not notice unless it is glaringly wrong.  You might as well not give us
 a chance to make a mistake.
 
 Even if the problem you experience is a fatal signal, you should still
 say so explicitly.  Suppose something strange is going on, such as, your
-copy of @code{ld} is out of synch, or you have encountered a bug in the
+copy of @command{ld} is out of synch, or you have encountered a bug in the
 C library on your system.  (This has happened!)  Your copy might crash
 and ours would not.  If you told us to expect a crash, then when ours
 fails to crash, we would know that the bug was not happening for us.  If
@@ -4332,10 +4490,10 @@ you had not told us to expect a crash, t
 any conclusion from our observations.
 
 @item
-If you wish to suggest changes to the @code{ld} source, send us context
+If you wish to suggest changes to the @command{ld} source, send us context
 diffs, as generated by @code{diff} with the @samp{-u}, @samp{-c}, or
 @samp{-p} option.  Always send diffs from the old file to the new file.
-If you even discuss something in the @code{ld} source, refer to it by
+If you even discuss something in the @command{ld} source, refer to it by
 context, not by line number.
 
 The line numbers in our development sources will not match those in your
@@ -4373,7 +4531,7 @@ the necessary information, such as the t
 a patch is all we need.  We might see problems with your patch and decide
 to fix the problem another way, or we might not understand it at all.
 
-Sometimes with a program as complicated as @code{ld} it is very hard to
+Sometimes with a program as complicated as @command{ld} it is very hard to
 construct an example that will make the program follow a certain path
 through the code.  If you do not send us the example, we will not be
 able to construct one, so we will not be able to verify that the bug is
@@ -4393,12 +4551,12 @@ things without first using the debugger 
 @node MRI
 @appendix MRI Compatible Script Files
 @cindex MRI compatibility
-To aid users making the transition to @sc{gnu} @code{ld} from the MRI
-linker, @code{ld} can use MRI compatible linker scripts as an
+To aid users making the transition to @sc{gnu} @command{ld} from the MRI
+linker, @command{ld} can use MRI compatible linker scripts as an
 alternative to the more general-purpose linker scripting language
 described in @ref{Scripts}.  MRI compatible linker scripts have a much
 simpler command set than the scripting language otherwise used with
-@code{ld}.  @sc{gnu} @code{ld} supports the most commonly used MRI
+@command{ld}.  @sc{gnu} @command{ld} supports the most commonly used MRI
 linker commands; these commands are described here.
 
 In general, MRI scripts aren't of much use with the @code{a.out} object
@@ -4411,7 +4569,7 @@ You can specify a file containing an MRI
 Each command in an MRI-compatible script occupies its own line; each
 command line starts with the keyword that identifies the command (though
 blank lines are also allowed for punctuation).  If a line of an
-MRI-compatible script begins with an unrecognized keyword, @code{ld}
+MRI-compatible script begins with an unrecognized keyword, @command{ld}
 issues a warning message, but continues processing the script.
 
 Lines beginning with @samp{*} are comments.
@@ -4424,7 +4582,7 @@ The following list shows only the upper-
 @cindex @code{ABSOLUTE} (MRI)
 @item ABSOLUTE @var{secname}
 @itemx ABSOLUTE @var{secname}, @var{secname}, @dots{} @var{secname}
-Normally, @code{ld} includes in the output file all sections from all
+Normally, @command{ld} includes in the output file all sections from all
 the input files.  However, in an MRI-compatible script, you can use the
 @code{ABSOLUTE} command to restrict the sections that will be present in
 your output program.  If the @code{ABSOLUTE} command is used at all in a
@@ -4479,7 +4637,7 @@ COFF (the @samp{coff-m68k} variant in BF
 @cindex @code{LIST} (MRI)
 @item LIST @var{anything}@dots{}
 Print (to the standard output file) a link map, as produced by the
-@code{ld} command-line option @samp{-M}.
+@command{ld} command-line option @samp{-M}.
 
 The keyword @code{LIST} may be followed by anything on the
 same line, with no change in its effect.
@@ -4488,19 +4646,19 @@ same line, with no change in its effect.
 @item LOAD @var{filename}
 @itemx LOAD @var{filename}, @var{filename}, @dots{} @var{filename}
 Include one or more object file @var{filename} in the link; this has the
-same effect as specifying @var{filename} directly on the @code{ld}
+same effect as specifying @var{filename} directly on the @command{ld}
 command line.
 
 @cindex @code{NAME} (MRI)
 @item NAME @var{output-name}
-@var{output-name} is the name for the program produced by @code{ld}; the
+@var{output-name} is the name for the program produced by @command{ld}; the
 MRI-compatible command @code{NAME} is equivalent to the command-line
 option @samp{-o} or the general script language command @code{OUTPUT}.
 
 @cindex @code{ORDER} (MRI)
 @item ORDER @var{secname}, @var{secname}, @dots{} @var{secname}
 @itemx ORDER @var{secname} @var{secname} @var{secname}
-Normally, @code{ld} orders the sections in its output file in the
+Normally, @command{ld} orders the sections in its output file in the
 order in which they first appear in the input files.  In an MRI-compatible
 script, you can override this ordering with the @code{ORDER} command.  The
 sections you list with @code{ORDER} will appear first in your output
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/ldfile.c binutils-2.11.2-m68hc1x/ld/ldfile.c
--- binutils-2.11.2/ld/ldfile.c	Fri Sep 21 20:58:42 2001
+++ binutils-2.11.2-m68hc1x/ld/ldfile.c	Sun Dec 23 11:39:45 2001
@@ -23,6 +23,7 @@ Software Foundation, 59 Temple Place - S
 
 #include "bfd.h"
 #include "sysdep.h"
+#include "libiberty.h"
 #include "bfdlink.h"
 #include "ld.h"
 #include "ldmisc.h"
@@ -37,6 +38,50 @@ Software Foundation, 59 Temple Place - S
 
 #include <ctype.h>
 
+#include <fcntl.h>
+#include <sys/wait.h>
+
+#ifdef HAVE_SYS_WAIT_H
+#include <sys/wait.h>
+#else /* ! HAVE_SYS_WAIT_H */
+#if ! defined (_WIN32) || defined (__CYGWIN__)
+#ifndef WIFEXITED
+#define WIFEXITED(w)	(((w)&0377) == 0)
+#endif
+#ifndef WIFSIGNALED
+#define WIFSIGNALED(w)	(((w)&0377) != 0177 && ((w)&~0377) == 0)
+#endif
+#ifndef WTERMSIG
+#define WTERMSIG(w)	((w) & 0177)
+#endif
+#ifndef WEXITSTATUS
+#define WEXITSTATUS(w)	(((w) >> 8) & 0377)
+#endif
+#else /* defined (_WIN32) && ! defined (__CYGWIN__) */
+#ifndef WIFEXITED
+#define WIFEXITED(w)	(((w) & 0xff) == 0)
+#endif
+#ifndef WIFSIGNALED
+#define WIFSIGNALED(w)	(((w) & 0xff) != 0 && ((w) & 0xff) != 0x7f)
+#endif
+#ifndef WTERMSIG
+#define WTERMSIG(w)	((w) & 0x7f)
+#endif
+#ifndef WEXITSTATUS
+#define WEXITSTATUS(w)	(((w) & 0xff00) >> 8)
+#endif
+#endif /* defined (_WIN32) && ! defined (__CYGWIN__) */
+#endif /* ! HAVE_SYS_WAIT_H */
+
+#ifndef STDOUT_FILENO
+#define STDOUT_FILENO 1
+#endif
+ 
+#if defined (_WIN32) && ! defined (__CYGWIN__)
+#define popen _popen
+#define pclose _pclose
+#endif
+
 const char *ldfile_input_filename;
 boolean ldfile_assumed_script = false;
 const char *ldfile_output_machine_name = "";
@@ -302,12 +347,14 @@ try_open (name, exten)
 }
 
 /* Try to open NAME; if that fails, look for it in any directories
-   specified with -L, without and with EXTEND apppended.  */
+   specified with -L, without and with EXTEND appended.  Return in
+   PATH the path of the file that was opened successfully.  */
 
 FILE *
-ldfile_find_command_file (name, extend)
+ldfile_find_command_file (name, extend, path)
      const char *name;
      const char *extend;
+     char **path;
 {
   search_dirs_type *search;
   FILE *result;
@@ -326,19 +373,228 @@ ldfile_find_command_file (name, extend)
 
 	  result = try_open (buffer, extend);
 	  if (result)
-	    break;
+            {
+              *path = xstrdup (buffer);
+              break;
+            }
 	}
     }
+  else
+    {
+      *path = xstrdup (name);
+    }
 
   return result;
 }
 
+/* List of temporary files that must be removed before exiting.  */
+
+static char **temp_files;
+static int nb_temp_files;
+
+/* Remove all temporary files created as the result of the
+   pre-processor pass on the linker scripts.  */
+
+static void
+remove_temporary_files ()
+{
+  int i;
+  
+  if (temp_files == 0)
+    return;
+
+  for (i = 0; i < nb_temp_files; i++)
+    if (temp_files[i])
+      {
+        unlink (temp_files[i]);
+        free (temp_files[i]);
+      }
+
+  free (temp_files);
+  temp_files = 0;
+}
+
+/* Get a temporary file name and record it in the list of files
+   to be removed before exiting.  EXT is the extension of the
+   temporary file.  */
+
+static char *
+get_temporary_file (char *ext)
+{
+  char *file;
+
+  file = make_temp_file (ext);
+  if (temp_files == 0)
+    {
+      temp_files = (char**) xmalloc (sizeof (char*));
+      nb_temp_files = 1;
+      temp_files[0] = file;
+      atexit (remove_temporary_files);
+    }
+  else
+    {
+      temp_files = (char**) xrealloc (temp_files,
+				      (nb_temp_files + 1) * sizeof (char*));
+      temp_files[nb_temp_files] = file;
+      nb_temp_files++;
+    }
+  return file;
+}
+
+      
+/* Run `cmd' and redirect the output to `redir'.  */
+
+static void
+run_cmd (cmd, file, redir)
+     char *cmd;
+     char *file;
+     const char *redir;
+{
+  char *s;
+  int pid, wait_status;
+  int i, j;
+  const char **argv;
+  char *errmsg_fmt, *errmsg_arg;
+  char *temp_base = choose_temp_base ();
+  int redir_handle = -1;
+  int stdout_save = -1;
+  search_dirs_type *search;
+  int in_quote;
+  char sep;
+
+  /* Keep the original cmd string unmodified.  */
+  cmd = xstrdup (cmd);
+  
+  /* Count the args.  */
+  i = command_line.preprocessor_nargs;
+  
+  for (s = cmd; *s; s++)
+    if (*s == ' ')
+      i++;
+
+  argv = alloca (sizeof (char *) * (i + 3));
+
+  /* Split the command string and fill up the argv[].  */
+  i = 0;
+  s = cmd;
+  while (1)
+    {
+      while (*s == ' ' && *s != 0)
+	s++;
+      
+      if (*s == 0)
+	break;
+      
+      in_quote = (*s == '\'' || *s == '"');
+      sep = (in_quote) ? *s++ : ' ';
+      argv[i++] = s;
+      
+      while (*s != sep && *s != 0)
+	s++;
+      
+      if (*s == 0)
+	break;
+      
+      *s++ = 0;
+      
+      if (in_quote)
+        s++;
+    }
+
+  /* Add any preprocessor option we got.  */
+  for (j = 0; j < command_line.preprocessor_nargs; j++, i++)
+    argv[i] = command_line.preprocessor_args[j];
+
+  argv[i++] = file;
+  argv[i++] = NULL;
+
+  /* Show what we are goind to execute.  */
+  if (trace_files || version_printed)
+    {
+      for (i = 0; argv[i]; i++)
+	{
+	  if (i != 0)
+	      printf (" ");
+
+	  printf ("%s", argv[i]);
+	}
+      printf ("\n");
+    }
+  
+  /* Setup the redirection.  We can't use the usual fork/exec and redirect
+     since we may be running on non-POSIX Windows host.  */
+
+  fflush (stdout);
+  fflush (stderr);
+
+  /* Open temporary output file.  */
+  redir_handle = open (redir, O_WRONLY | O_TRUNC | O_CREAT, 0666);
+  if (redir_handle == -1)
+    einfo (_("%P%F: can't open temporary file `%s': %E\n"), redir);
+
+  /* Duplicate the stdout file handle so it can be restored later.  */
+  stdout_save = dup (STDOUT_FILENO);
+  if (stdout_save == -1)
+    einfo (_("%P%F: can't redirect stdout: `%s': %E\n"), redir);
+
+  /* Redirect stdout to our output file.  */
+  dup2 (redir_handle, STDOUT_FILENO);
+
+  pid = pexecute (argv[0], (char * const *) argv, program_name, temp_base,
+		  &errmsg_fmt, &errmsg_arg, PEXECUTE_ONE | PEXECUTE_SEARCH);
+
+  /* Restore stdout to its previous setting.  */
+  dup2 (stdout_save, STDOUT_FILENO);
+
+  /* Close reponse file.  */
+  close (redir_handle);
+
+  if (pid == -1)
+    {
+      einfo (_("%P%F: %s %s: %E\n"), errmsg_fmt, errmsg_arg);
+      return;
+    }
+
+  pid = pwait (pid, &wait_status, 0);
+  
+  if (pid == -1)
+    {
+      einfo (_("%P%F: wait: %E\n"));
+    }
+  else if (WIFSIGNALED (wait_status))
+    {
+      einfo (_("%P%F: subprocess %s got fatal signal %d\n"), argv[0],
+	     WTERMSIG (wait_status));
+    }
+  else if (WIFEXITED (wait_status) && (WEXITSTATUS (wait_status) != 0))
+    {
+      einfo (_("%P%F: %s exited with status %d\n"), argv[0], 
+	     WEXITSTATUS (wait_status));
+    }
+  free (cmd);
+}
+
 void
 ldfile_open_command_file (name)
      const char *name;
 {
   FILE *ldlex_input_stack;
-  ldlex_input_stack = ldfile_find_command_file (name, "");
+  char *path;
+  
+  ldlex_input_stack = ldfile_find_command_file (name, "", &path);
+
+  /* Preprocess the linker script throught some cpp command.
+     It is preprocessed in a temporary file that we then use
+     for the input.  */
+  if (command_line.preprocess_scripts && ldlex_input_stack)
+    {
+      char *temp_file;
+
+      temp_file = get_temporary_file ("");
+      fclose (ldlex_input_stack);
+      run_cmd (command_line.preprocessor, path, temp_file);
+      ldlex_input_stack = fopen (temp_file, "r");
+    }
 
   if (ldlex_input_stack == (FILE *) NULL)
     {
@@ -347,6 +603,7 @@ ldfile_open_command_file (name)
     }
 
   lex_push_file (ldlex_input_stack, name);
+  free (path);
 
   ldfile_input_filename = name;
   lineno = 1;
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/ldfile.h binutils-2.11.2-m68hc1x/ld/ldfile.h
--- binutils-2.11.2/ld/ldfile.h	Fri Sep 21 20:58:42 2001
+++ binutils-2.11.2-m68hc1x/ld/ldfile.h	Sun Dec 23 11:40:06 2001
@@ -48,7 +48,7 @@ extern void ldfile_open_file PARAMS ((st
 extern boolean ldfile_try_open_bfd
   PARAMS ((const char *, struct lang_input_statement_struct *));
 extern FILE *ldfile_find_command_file
-  PARAMS ((const char *name, const char *extend));
+  PARAMS ((const char *name, const char *extend, char **path));
 extern void ldfile_set_output_arch PARAMS ((CONST char *));
 extern boolean ldfile_open_file_search
   PARAMS ((const char *arch, struct lang_input_statement_struct *,
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/ldlex.l binutils-2.11.2-m68hc1x/ld/ldlex.l
--- binutils-2.11.2/ld/ldlex.l	Fri Sep 21 20:58:42 2001
+++ binutils-2.11.2-m68hc1x/ld/ldlex.l	Sun Dec 16 13:54:00 2001
@@ -36,6 +36,7 @@ This was written by steve chamberlain
 #endif /* MPW */
 
 #include "bfd.h"
+#include "libiberty.h"
 #include "sysdep.h"
 #include "ld.h"
 #include "ldgram.h"
@@ -83,6 +84,7 @@ static void yy_input PARAMS ((char *, in
 
 static void comment PARAMS ((void));
 static void lex_warn_invalid PARAMS ((char *where, char *what));
+static void lex_cpp_line PARAMS ((void));
 
 /* STATES 
 	EXPRESSION	definitely in an expression
@@ -407,9 +409,11 @@ V_IDENTIFIER [*?.$_a-zA-Z]([*?.$_a-zA-Z0
 
 <VERS_START,VERS_NODE,VERS_SCRIPT>[ \t\r]+   	{ /* Eat up whitespace */ }
 
+<SCRIPT,BOTH,EXPRESSION>^#[ \t]*[0-9]*.*    { lex_cpp_line (); }
+
 <<EOF>> {
   include_stack_ptr--;
-    
+
   if (include_stack_ptr == 0) 
   {
     yyterminate();
@@ -637,6 +641,42 @@ comment ()
       break;
     }
   }
+}
+
+/* Parse a CPP # line/file specification.  */
+static void
+lex_cpp_line ()
+{
+  char *p;
+  
+  if (command_line.preprocess_scripts == 0)
+    {
+      lex_warn_invalid (" in script", yytext);
+      return;
+    }
+
+  /* Get line number.  */
+  p = yytext;
+  while (*p == ' ' || *p == '\t')
+    p++;
+
+  lineno = strtol (p, &p, 10);
+  while (*p == ' ' || *p == '\t')
+    p++;
+
+  /* Get file name if specified.  */
+  if (*p == '"')
+    {
+      char *s;
+      
+      p++;
+      s = strchr (p, '"');
+      if (s)
+	{
+	  *s = 0;
+	  ldfile_input_filename = xstrdup (p);
+	}
+    }
 }
 
 /* Warn the user about a garbage character WHAT in the input
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/lexsup.c binutils-2.11.2-m68hc1x/ld/lexsup.c
--- binutils-2.11.2/ld/lexsup.c	Fri Sep 21 20:58:42 2001
+++ binutils-2.11.2-m68hc1x/ld/lexsup.c	Sun Dec 16 13:54:36 2001
@@ -61,10 +61,19 @@ static int is_num PARAMS ((const char *,
 static void set_default_dirlist PARAMS ((char *dirlist_ptr));
 static void set_section_start PARAMS ((char *sect, char *valstr));
 static void help PARAMS ((void));
+static void prep_collect_option PARAMS ((const char*, ...));
 
 /* Non-zero if we are processing a --defsym from the command line.  */
 int parsing_defsym = 0;
 
+#ifndef DEFAULT_CPP_PREPROCESSOR
+# define DEFAULT_CPP_PREPROCESSOR "gcc -E -xc-header"
+#endif
+
+#ifndef DEFAULT_M4_PREPROCESSOR
+# define DEFAULT_M4_PREPROCESSOR "m4"
+#endif
+
 /* Codes used for the long options with no short synonyms.  150 isn't
    special; it's just an arbitrary non-ASCII char value.  */
 
@@ -129,6 +138,11 @@ int parsing_defsym = 0;
 #define OPTION_UNIQUE			(OPTION_SECTION_START + 1)
 #define OPTION_TARGET_HELP              (OPTION_UNIQUE + 1)
 #define OPTION_ALLOW_SHLIB_UNDEFINED	(OPTION_TARGET_HELP + 1)
+#define OPTION_DEFINE                   (OPTION_ALLOW_SHLIB_UNDEFINED + 1)
+#define OPTION_UNDEF                    (OPTION_DEFINE + 1)
+#define OPTION_PREPROCESSOR             (OPTION_UNDEF + 1)
+#define OPTION_CPP_SCRIPT               (OPTION_PREPROCESSOR + 1)
+#define OPTION_M4_SCRIPT                (OPTION_CPP_SCRIPT + 1)
 
 /* The long options.  This structure is used for both the option
    parsing and the help text.  */
@@ -235,6 +249,20 @@ static const struct ld_option ld_options
       't', NULL, N_("Trace file opens"), TWO_DASHES },
   { {"script", required_argument, NULL, 'T'},
       'T', N_("FILE"), N_("Read linker script"), TWO_DASHES },
+  { {"cpp-script", required_argument, NULL, OPTION_CPP_SCRIPT},
+      '\0', N_("FILE"), N_("Read linker script throught the C preprocessor"),
+      TWO_DASHES },
+  { {"m4-script", required_argument, NULL, OPTION_M4_SCRIPT},
+      '\0', N_("FILE"), N_("Read linker script throught the M4 preprocessor"),
+      TWO_DASHES },
+  { {"preprocessor", required_argument, NULL, OPTION_PREPROCESSOR},
+      '\0', N_("CMD"), N_("Preprocessor command"), TWO_DASHES },
+  { {NULL, required_argument, NULL, OPTION_DEFINE},
+      'D', N_("NAME[=VALUE]"), N_("Define a symbol for the preprocessor"),
+      TWO_DASHES },
+  { {NULL, required_argument, NULL, OPTION_UNDEF},
+      'U', N_("NAME"), N_("Undefine a preprocessor define"),
+      TWO_DASHES },
   { {"undefined", required_argument, NULL, 'u'},
       'u', N_("SYMBOL"), N_("Start with undefined reference to SYMBOL"), TWO_DASHES },
   { {"unique", optional_argument, NULL, OPTION_UNIQUE},
@@ -599,9 +627,11 @@ parse_args (argc, argv)
 	  break;
 	case 'A':
 	  ldfile_add_arch (optarg);
+          prep_collect_option ("-DLD_LINK_ARCH='", optarg, "'", NULL);
 	  break;
 	case 'b':
 	  lang_add_target (optarg);
+          prep_collect_option ("-DLD_LINK_TARGET='", optarg, "'", NULL);
 	  break;
 	case 'c':
 	  ldfile_open_command_file (optarg);
@@ -712,6 +742,7 @@ parse_args (argc, argv)
 	  break;
 	case 'L':
 	  ldfile_add_library_path (optarg, true);
+          prep_collect_option ("-I", optarg, NULL);
 	  break;
 	case 'l':
 	  lang_add_input_file (optarg, lang_input_file_is_l_enum,
@@ -785,6 +816,7 @@ parse_args (argc, argv)
 	  config.magic_demand_paged = false;
 	  config.text_read_only = false;
 	  config.dynamic_link = false;
+          prep_collect_option ("-DLD_LINK_RELOCATE", NULL);
 	  break;
 	case 'R':
 	  /* The GNU linker traditionally uses -R to mean to include
@@ -961,6 +993,8 @@ parse_args (argc, argv)
 	  config.magic_demand_paged = false;
 	  config.text_read_only = false;
 	  config.dynamic_link = false;
+          prep_collect_option ("-DLD_LINK_RELOCATE", NULL);
+          prep_collect_option ("-DLD_BUILD_CTORS", NULL);
 	  break;
 	case 'u':
 	  ldlang_add_undef (optarg);
@@ -1124,6 +1158,43 @@ the GNU General Public License.  This pr
 	case OPTION_FINI:
 	  link_info.fini_function = optarg;
 	  break;
+
+	  /* Collect options to pass to the pre-processor when it
+	     is executed on linker scripts.  */
+        case 'D':
+	case OPTION_DEFINE:
+        case 'U':
+	case OPTION_UNDEF:
+          prep_collect_option (optc == 'D' || optc == OPTION_DEFINE
+                               ? "-D" : "-U",
+                               optarg, NULL);
+	  break;
+
+          /* Run the pre-processor on linker scripts before reading them.  */
+	case OPTION_PREPROCESSOR:
+	  command_line.preprocess_scripts = 1;
+	  command_line.preprocessor = optarg;
+	  break;
+
+        case OPTION_CPP_SCRIPT:
+          if (command_line.preprocessor == NULL)
+            command_line.preprocessor = DEFAULT_CPP_PREPROCESSOR;
+
+          command_line.preprocess_scripts = 1;
+	  ldfile_open_command_file (optarg);
+	  parser_input = input_script;
+	  yyparse ();
+          break;
+
+        case OPTION_M4_SCRIPT:
+          if (command_line.preprocessor == NULL)
+            command_line.preprocessor = DEFAULT_M4_PREPROCESSOR;
+
+          command_line.preprocess_scripts = 1;
+	  ldfile_open_command_file (optarg);
+	  parser_input = input_script;
+	  yyparse ();
+          break;
 	}
     }
 
@@ -1133,6 +1204,49 @@ the GNU General Public License.  This pr
   if (default_dirlist != NULL)
     set_default_dirlist (default_dirlist);
 
+}
+
+/* Collect options for the pre-processor when it is run on linker scripts.  */
+static void
+prep_collect_option (const char *opt, ...)
+{
+  char *s;
+  size_t len;
+  va_list argp;
+
+  len = strlen (opt) + 1;
+  s = xstrdup (opt);
+  va_start (argp, opt);
+  while (1)
+    {
+      opt = va_arg (argp, const char*);
+      if (opt == NULL)
+        break;
+
+      len += strlen (opt);
+      s = (char*) xrealloc (s, len);
+      strcat (s, opt);
+    }
+  va_end (argp);
+  if (command_line.preprocessor_args == NULL)
+    {
+      command_line.preprocessor_args =
+        (char**) xmalloc (2 * sizeof (char*));
+      command_line.preprocessor_args[0] = s;
+      command_line.preprocessor_args[1] = NULL;
+      command_line.preprocessor_nargs = 1;
+    }
+  else
+    {
+      int cnt = command_line.preprocessor_nargs + 1;
+	      
+      command_line.preprocessor_args =
+        (char**) xrealloc (command_line.preprocessor_args,
+                           (cnt + 1) * sizeof (char*));
+      command_line.preprocessor_args[cnt-1] = s;
+      command_line.preprocessor_args[cnt] = NULL;
+      command_line.preprocessor_nargs = cnt;
+    }
 }
 
 /* Add the (colon-separated) elements of DIRLIST_PTR to the
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/scripttempl/elfm68hc11.sc binutils-2.11.2-m68hc1x/ld/scripttempl/elfm68hc11.sc
--- binutils-2.11.2/ld/scripttempl/elfm68hc11.sc	Sat Sep  2 22:43:22 2000
+++ binutils-2.11.2-m68hc1x/ld/scripttempl/elfm68hc11.sc	Thu Jan  3 16:41:33 2002
@@ -26,7 +26,7 @@ test "$LD_FLAG" = "N" && DATA_ADDR=.
 
 CTOR=".ctors ${CONSTRUCTING-0} : 
   {
-    ${CONSTRUCTING+ __CTOR_LIST__ = .; }
+    ${CONSTRUCTING+ PROVIDE (__CTOR_LIST__ = .); }
     ${CONSTRUCTING+${CTOR_START}}
     *(.ctors)
     /* We don't want to include the .ctor section from
@@ -39,20 +39,20 @@ CTOR=".ctors ${CONSTRUCTING-0} : 
     KEEP (*(.ctors)) */
 
     ${CONSTRUCTING+${CTOR_END}}
-    ${CONSTRUCTING+ __CTOR_END__ = .; }
-  } ${RELOCATING+ > ${DATA_MEMORY}}"
+    ${CONSTRUCTING+ PROVIDE(__CTOR_END__ = .); }
+  } ${RELOCATING+ > ${TEXT_MEMORY}}"
 
 DTOR="  .dtors	${CONSTRUCTING-0} :
   {
-    ${CONSTRUCTING+ __DTOR_LIST__ = .; }
+    ${CONSTRUCTING+ PROVIDE(__DTOR_LIST__ = .); }
     *(.dtors)
     /*
     KEEP (*crtbegin.o(.dtors))
     KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))
     KEEP (*(SORT(.dtors.*)))
     KEEP (*(.dtors)) */
-    ${CONSTRUCTING+ __DTOR_END__ = .; }
-  } ${RELOCATING+ > ${DATA_MEMORY}}"
+    ${CONSTRUCTING+ PROVIDE(__DTOR_END__ = .); }
+  } ${RELOCATING+ > ${TEXT_MEMORY}}"
 
 
 VECTORS="
@@ -100,6 +100,7 @@ MEMORY
   page0 (rwx) : ORIGIN = 0x0, LENGTH = 256
   text  (rx)  : ORIGIN = ${ROM_START_ADDR}, LENGTH = ${ROM_SIZE}
   data        : ORIGIN = ${RAM_START_ADDR}, LENGTH = ${RAM_SIZE}
+  eeprom      : ORIGIN = ${EEPROM_START_ADDR}, LENGTH = ${EEPROM_SIZE}
 }
 
 /* Setup the stack on the top of the data memory bank.  */
@@ -117,6 +118,15 @@ STARTUP_CODE="
     *(.install4)	/* Section that calls the main.  */
 "
 
+FINISH_CODE="
+    /* Finish code.  */
+    *(.fini0)		/* Beginning of finish code (_exit symbol).  */
+    *(.fini1)		/* Place holder for applications.  */
+    *(.fini2)		/* C++ destructors.  */
+    *(.fini3)		/* Place holder for applications.  */
+    *(.fini4)		/* Runtime exit.  */
+"
+
 PRE_COMPUTE_DATA_SIZE="
 /* SCz: this does not work yet... This is supposed to force the loading
    of _map_data.o (from libgcc.a) when the .data section is not empty.
@@ -137,6 +147,14 @@ INSTALL_RELOC="
   .install4 0 : { *(.install4) }
 "
 
+FINISH_RELOC="
+  .fini0 0 : { *(.fini0) }
+  .fini1 0 : { *(.fini1) }
+  .fini2 0 : { *(.fini2) }
+  .fini3 0 : { *(.fini3) }
+  .fini4 0 : { *(.fini4) }
+"
+
 BSS_DATA_RELOC="
   .data1 0 : { *(.data1) }
 
@@ -148,6 +166,10 @@ BSS_DATA_RELOC="
   .scommon 0 : { *(.scommon) }
 "
 
+SOFT_REGS_RELOC="
+  .softregs 0 : { *(.softregs) }
+"
+
 cat <<EOF
 ${RELOCATING+/* Linker script for 68HC11 executable (PROM).  */}
 ${RELOCATING-/* Linker script for 68HC11 object file (ld -r).  */}
@@ -170,15 +192,83 @@ SECTIONS
   .gnu.version_d	${RELOCATING-0} : { *(.gnu.version_d) }
   .gnu.version_r	${RELOCATING-0} : { *(.gnu.version_r) }
 
-  .rela.text		${RELOCATING-0} : { *(.rela.text) *(.rela.gnu.linkonce.t*) }
-  .rela.data		${RELOCATING-0} : { *(.rela.data) *(.rela.gnu.linkonce.d*) }
-  .rela.rodata		${RELOCATING-0} : { *(.rela.rodata) *(.rela.gnu.linkonce.r*) }
+  .rel.text    ${RELOCATING-0} :
+    {
+      *(.rel.text)
+      ${RELOCATING+*(.rel.text.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.t.*)}
+    }
+  .rela.text   ${RELOCATING-0} :
+    {
+      *(.rela.text)
+      ${RELOCATING+*(.rela.text.*)}
+      ${RELOCATING+*(.rela.gnu.linkonce.t.*)}
+    }
+  .rel.data    ${RELOCATING-0} :
+    {
+      *(.rel.data)
+      ${RELOCATING+*(.rel.data.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.d.*)}
+    }
+  .rela.data   ${RELOCATING-0} :
+    {
+      *(.rela.data)
+      ${RELOCATING+*(.rela.data.*)}
+      ${RELOCATING+*(.rela.gnu.linkonce.d.*)}
+    }
+  .rel.rodata  ${RELOCATING-0} :
+    {
+      *(.rel.rodata)
+      ${RELOCATING+*(.rel.rodata.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.r.*)}
+    }
+  .rela.rodata ${RELOCATING-0} :
+    {
+      *(.rela.rodata)
+      ${RELOCATING+*(.rela.rodata.*)}
+      ${RELOCATING+*(.rela.gnu.linkonce.r.*)}
+    }
+  .rel.sdata   ${RELOCATING-0} :
+    {
+      *(.rel.sdata)
+      ${RELOCATING+*(.rel.sdata.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.s.*)}
+    }
+  .rela.sdata   ${RELOCATING-0} :
+    {
+      *(.rela.sdata)
+      ${RELOCATING+*(.rela.sdata.*)}
+      ${RELOCATING+*(.rela.gnu.linkonce.s.*)}
+    }
+  .rel.sbss    ${RELOCATING-0} :
+    { 
+      *(.rel.sbss)
+      ${RELOCATING+*(.rel.sbss.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.sb.*)}
+    }
+  .rela.sbss   ${RELOCATING-0} :
+    {
+      *(.rela.sbss)
+      ${RELOCATING+*(.rela.sbss.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.sb.*)}
+    }
+  .rel.bss     ${RELOCATING-0} : 
+    { 
+      *(.rel.bss)
+      ${RELOCATING+*(.rel.bss.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.b.*)}
+    }
+  .rela.bss    ${RELOCATING-0} : 
+    { 
+      *(.rela.bss)
+      ${RELOCATING+*(.rela.bss.*)}
+      ${RELOCATING+*(.rela.gnu.linkonce.b.*)}
+    }
   .rela.stext		${RELOCATING-0} : { *(.rela.stest) }
   .rela.etext		${RELOCATING-0} : { *(.rela.etest) }
   .rela.sdata		${RELOCATING-0} : { *(.rela.sdata) }
   .rela.edata		${RELOCATING-0} : { *(.rela.edata) }
   .rela.eit_v		${RELOCATING-0} : { *(.rela.eit_v) }
-  .rela.sbss		${RELOCATING-0} : { *(.rela.sbss) }
   .rela.ebss		${RELOCATING-0} : { *(.rela.ebss) }
   .rela.srodata		${RELOCATING-0} : { *(.rela.srodata) }
   .rela.erodata		${RELOCATING-0} : { *(.rela.erodata) }
@@ -187,16 +277,12 @@ SECTIONS
   .rela.dtors		${RELOCATING-0} : { *(.rela.dtors) }
   .rela.init		${RELOCATING-0} : { *(.rela.init) }
   .rela.fini		${RELOCATING-0} : { *(.rela.fini) }
-  .rela.bss		${RELOCATING-0} : { *(.rela.bss) }
   .rela.plt		${RELOCATING-0} : { *(.rela.plt) }
 
-  .rel.data		${RELOCATING-0} : { *(.rel.data) *(.rel.gnu.linkonce.d*) }
-  .rel.rodata		${RELOCATING-0} : { *(.rel.rodata) *(.rel.gnu.linkonce.r*) }
   .rel.stext		${RELOCATING-0} : { *(.rel.stest) }
   .rel.etext		${RELOCATING-0} : { *(.rel.etest) }
   .rel.sdata		${RELOCATING-0} : { *(.rel.sdata) }
   .rel.edata		${RELOCATING-0} : { *(.rel.edata) }
-  .rel.sbss		${RELOCATING-0} : { *(.rel.sbss) }
   .rel.ebss		${RELOCATING-0} : { *(.rel.ebss) }
   .rel.eit_v		${RELOCATING-0} : { *(.rel.eit_v) }
   .rel.srodata		${RELOCATING-0} : { *(.rel.srodata) }
@@ -206,7 +292,6 @@ SECTIONS
   .rel.dtors		${RELOCATING-0} : { *(.rel.dtors) }
   .rel.init		${RELOCATING-0} : { *(.rel.init) }
   .rel.fini		${RELOCATING-0} : { *(.rel.fini) }
-  .rel.bss		${RELOCATING-0} : { *(.rel.bss) }
   .rel.plt		${RELOCATING-0} : { *(.rel.plt) }
 
   /* Concatenate .page0 sections.  Put them in the page0 memory bank
@@ -214,6 +299,7 @@ SECTIONS
   .page0 :
   {
     *(.page0)
+    ${RELOCATING+*(.softregs)}
   } ${RELOCATING+ > page0}
 
   /* Start of text section.  */
@@ -228,6 +314,7 @@ SECTIONS
   } ${RELOCATING+=${NOP-0}}
 
   ${RELOCATING-${INSTALL_RELOC}}
+  ${RELOCATING-${FINISH_RELOC}}
 
   .text ${RELOCATING-0}:
   {
@@ -236,10 +323,12 @@ SECTIONS
 
     ${RELOCATING+*(.init)}
     *(.text)
-    *(.fini)
+    ${RELOCATING+*(.text.*)}
     /* .gnu.warning sections are handled specially by elf32.em.  */
     *(.gnu.warning)
-    *(.gnu.linkonce.t*)
+    ${RELOCATING+*(.gnu.linkonce.t.*)}
+
+    ${RELOCATING+${FINISH_CODE}}
 
     ${RELOCATING+_etext = .;}
     ${RELOCATING+PROVIDE (etext = .);}
@@ -248,13 +337,14 @@ SECTIONS
 
   .eh_frame ${RELOCATING-0} :
   {
-    *(.eh_frame)
+    KEEP (*(.eh_frame))
   } ${RELOCATING+ > ${TEXT_MEMORY}}
 
   .rodata  ${RELOCATING-0} :
   {
     *(.rodata)
-    *(.gnu.linkonce.r*)
+    ${RELOCATING+*(.rodata.*)}
+    ${RELOCATING+*(.gnu.linkonce.r*)}
   } ${RELOCATING+ > ${TEXT_MEMORY}}
 
   .rodata1 ${RELOCATING-0} :
@@ -262,6 +352,15 @@ SECTIONS
     *(.rodata1)
   } ${RELOCATING+ > ${TEXT_MEMORY}}
 
+  /* Constructor and destructor tables are in ROM.  */
+  ${RELOCATING+${CTOR}}
+  ${RELOCATING+${DTOR}}
+
+  .jcr ${RELOCATING-0} :
+  {
+    KEEP (*(.jcr))
+  } ${RELOCATING+ > ${TEXT_MEMORY}}
+
   /* Start of the data section image in ROM.  */
   ${RELOCATING+__data_image = .;}
   ${RELOCATING+PROVIDE (__data_image = .);}
@@ -278,8 +377,9 @@ SECTIONS
     ${RELOCATING+${DATA_START_SYMBOLS}}
     ${RELOCATING+*(.sdata)}
     *(.data)
+    ${RELOCATING+*(.data.*)}
     ${RELOCATING+*(.data1)}
-    *(.gnu.linkonce.d*)
+    ${RELOCATING+*(.gnu.linkonce.d.*)}
     ${CONSTRUCTING+CONSTRUCTORS}
 
     ${RELOCATING+_edata  =  .;}
@@ -299,6 +399,7 @@ SECTIONS
 
   /* Relocation for some bss and data sections.  */
   ${RELOCATING-${BSS_DATA_RELOC}}
+  ${RELOCATING-${SOFT_REGS_RELOC}}
 
   .bss ${RELOCATING-0} :
   {
@@ -308,14 +409,19 @@ SECTIONS
 
     *(.dynbss)
     *(.bss)
+    ${RELOCATING+*(.bss.*)}
+    ${RELOCATING+*(.gnu.linkonce.b.*)}
     *(COMMON)
     ${RELOCATING+PROVIDE (_end = .);}
   } ${RELOCATING+ > ${DATA_MEMORY}}
   ${RELOCATING+__bss_size = SIZEOF(.bss);}
   ${RELOCATING+PROVIDE (__bss_size = SIZEOF(.bss));}
 
-  ${RELOCATING+${CTOR}}
-  ${RELOCATING+${DTOR}}
+  .eeprom ${RELOCATING-0} :
+  {
+    *(.eeprom)
+    *(.eeprom.*)
+  } ${RELOCATING+ > ${EEPROM_MEMORY}}
 
   ${RELOCATING+${VECTORS}}
 
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/scripttempl/elfm68hc12.sc binutils-2.11.2-m68hc1x/ld/scripttempl/elfm68hc12.sc
--- binutils-2.11.2/ld/scripttempl/elfm68hc12.sc	Sat Sep  2 22:43:22 2000
+++ binutils-2.11.2-m68hc1x/ld/scripttempl/elfm68hc12.sc	Thu Jan  3 16:43:27 2002
@@ -26,7 +26,7 @@ test "$LD_FLAG" = "N" && DATA_ADDR=.
 
 CTOR=".ctors ${CONSTRUCTING-0} : 
   {
-    ${CONSTRUCTING+ __CTOR_LIST__ = .; }
+    ${CONSTRUCTING+ PROVIDE (__CTOR_LIST__ = .); }
     ${CONSTRUCTING+${CTOR_START}}
     *(.ctors)
     /* We don't want to include the .ctor section from
@@ -39,20 +39,20 @@ CTOR=".ctors ${CONSTRUCTING-0} : 
     KEEP (*(.ctors)) */
 
     ${CONSTRUCTING+${CTOR_END}}
-    ${CONSTRUCTING+ __CTOR_END__ = .; }
-  } ${RELOCATING+ > ${DATA_MEMORY}}"
+    ${CONSTRUCTING+ PROVIDE(__CTOR_END__ = .); }
+  } ${RELOCATING+ > ${TEXT_MEMORY}}"
 
 DTOR="  .dtors	${CONSTRUCTING-0} :
   {
-    ${CONSTRUCTING+ __DTOR_LIST__ = .; }
+    ${CONSTRUCTING+ PROVIDE(__DTOR_LIST__ = .); }
     *(.dtors)
     /*
     KEEP (*crtbegin.o(.dtors))
     KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))
     KEEP (*(SORT(.dtors.*)))
     KEEP (*(.dtors)) */
-    ${CONSTRUCTING+ __DTOR_END__ = .; }
-  } ${RELOCATING+ > ${DATA_MEMORY}}"
+    ${CONSTRUCTING+ PROVIDE(__DTOR_END__ = .); }
+  } ${RELOCATING+ > ${TEXT_MEMORY}}"
 
 
 VECTORS="
@@ -117,6 +117,15 @@ STARTUP_CODE="
     *(.install4)	/* Section that calls the main.  */
 "
 
+FINISH_CODE="
+    /* Finish code.  */
+    *(.fini0)		/* Beginning of finish code (_exit symbol).  */
+    *(.fini1)		/* Place holder for applications.  */
+    *(.fini2)		/* C++ destructors.  */
+    *(.fini3)		/* Place holder for applications.  */
+    *(.fini4)		/* Runtime exit.  */
+"
+
 PRE_COMPUTE_DATA_SIZE="
 /* SCz: this does not work yet... This is supposed to force the loading
    of _map_data.o (from libgcc.a) when the .data section is not empty.
@@ -137,6 +146,14 @@ INSTALL_RELOC="
   .install4 0 : { *(.install4) }
 "
 
+FINISH_RELOC="
+  .fini0 0 : { *(.fini0) }
+  .fini1 0 : { *(.fini1) }
+  .fini2 0 : { *(.fini2) }
+  .fini3 0 : { *(.fini3) }
+  .fini4 0 : { *(.fini4) }
+"
+
 BSS_DATA_RELOC="
   .data1 0 : { *(.data1) }
 
@@ -148,6 +165,10 @@ BSS_DATA_RELOC="
   .scommon 0 : { *(.scommon) }
 "
 
+SOFT_REGS_RELOC="
+  .softregs 0 : { *(.softregs) }
+"
+
 cat <<EOF
 ${RELOCATING+/* Linker script for 68HC12 executable (PROM).  */}
 ${RELOCATING-/* Linker script for 68HC12 object file (ld -r).  */}
@@ -170,15 +191,83 @@ SECTIONS
   .gnu.version_d	${RELOCATING-0} : { *(.gnu.version_d) }
   .gnu.version_r	${RELOCATING-0} : { *(.gnu.version_r) }
 
-  .rela.text		${RELOCATING-0} : { *(.rela.text) *(.rela.gnu.linkonce.t*) }
-  .rela.data		${RELOCATING-0} : { *(.rela.data) *(.rela.gnu.linkonce.d*) }
-  .rela.rodata		${RELOCATING-0} : { *(.rela.rodata) *(.rela.gnu.linkonce.r*) }
+  .rel.text    ${RELOCATING-0} :
+    {
+      *(.rel.text)
+      ${RELOCATING+*(.rel.text.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.t.*)}
+    }
+  .rela.text   ${RELOCATING-0} :
+    {
+      *(.rela.text)
+      ${RELOCATING+*(.rela.text.*)}
+      ${RELOCATING+*(.rela.gnu.linkonce.t.*)}
+    }
+  .rel.data    ${RELOCATING-0} :
+    {
+      *(.rel.data)
+      ${RELOCATING+*(.rel.data.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.d.*)}
+    }
+  .rela.data   ${RELOCATING-0} :
+    {
+      *(.rela.data)
+      ${RELOCATING+*(.rela.data.*)}
+      ${RELOCATING+*(.rela.gnu.linkonce.d.*)}
+    }
+  .rel.rodata  ${RELOCATING-0} :
+    {
+      *(.rel.rodata)
+      ${RELOCATING+*(.rel.rodata.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.r.*)}
+    }
+  .rela.rodata ${RELOCATING-0} :
+    {
+      *(.rela.rodata)
+      ${RELOCATING+*(.rela.rodata.*)}
+      ${RELOCATING+*(.rela.gnu.linkonce.r.*)}
+    }
+  .rel.sdata   ${RELOCATING-0} :
+    {
+      *(.rel.sdata)
+      ${RELOCATING+*(.rel.sdata.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.s.*)}
+    }
+  .rela.sdata   ${RELOCATING-0} :
+    {
+      *(.rela.sdata)
+      ${RELOCATING+*(.rela.sdata.*)}
+      ${RELOCATING+*(.rela.gnu.linkonce.s.*)}
+    }
+  .rel.sbss    ${RELOCATING-0} :
+    { 
+      *(.rel.sbss)
+      ${RELOCATING+*(.rel.sbss.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.sb.*)}
+    }
+  .rela.sbss   ${RELOCATING-0} :
+    {
+      *(.rela.sbss)
+      ${RELOCATING+*(.rela.sbss.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.sb.*)}
+    }
+  .rel.bss     ${RELOCATING-0} : 
+    { 
+      *(.rel.bss)
+      ${RELOCATING+*(.rel.bss.*)}
+      ${RELOCATING+*(.rel.gnu.linkonce.b.*)}
+    }
+  .rela.bss    ${RELOCATING-0} : 
+    { 
+      *(.rela.bss)
+      ${RELOCATING+*(.rela.bss.*)}
+      ${RELOCATING+*(.rela.gnu.linkonce.b.*)}
+    }
   .rela.stext		${RELOCATING-0} : { *(.rela.stest) }
   .rela.etext		${RELOCATING-0} : { *(.rela.etest) }
   .rela.sdata		${RELOCATING-0} : { *(.rela.sdata) }
   .rela.edata		${RELOCATING-0} : { *(.rela.edata) }
   .rela.eit_v		${RELOCATING-0} : { *(.rela.eit_v) }
-  .rela.sbss		${RELOCATING-0} : { *(.rela.sbss) }
   .rela.ebss		${RELOCATING-0} : { *(.rela.ebss) }
   .rela.srodata		${RELOCATING-0} : { *(.rela.srodata) }
   .rela.erodata		${RELOCATING-0} : { *(.rela.erodata) }
@@ -187,16 +276,12 @@ SECTIONS
   .rela.dtors		${RELOCATING-0} : { *(.rela.dtors) }
   .rela.init		${RELOCATING-0} : { *(.rela.init) }
   .rela.fini		${RELOCATING-0} : { *(.rela.fini) }
-  .rela.bss		${RELOCATING-0} : { *(.rela.bss) }
   .rela.plt		${RELOCATING-0} : { *(.rela.plt) }
 
-  .rel.data		${RELOCATING-0} : { *(.rel.data) *(.rel.gnu.linkonce.d*) }
-  .rel.rodata		${RELOCATING-0} : { *(.rel.rodata) *(.rel.gnu.linkonce.r*) }
   .rel.stext		${RELOCATING-0} : { *(.rel.stest) }
   .rel.etext		${RELOCATING-0} : { *(.rel.etest) }
   .rel.sdata		${RELOCATING-0} : { *(.rel.sdata) }
   .rel.edata		${RELOCATING-0} : { *(.rel.edata) }
-  .rel.sbss		${RELOCATING-0} : { *(.rel.sbss) }
   .rel.ebss		${RELOCATING-0} : { *(.rel.ebss) }
   .rel.eit_v		${RELOCATING-0} : { *(.rel.eit_v) }
   .rel.srodata		${RELOCATING-0} : { *(.rel.srodata) }
@@ -206,7 +291,6 @@ SECTIONS
   .rel.dtors		${RELOCATING-0} : { *(.rel.dtors) }
   .rel.init		${RELOCATING-0} : { *(.rel.init) }
   .rel.fini		${RELOCATING-0} : { *(.rel.fini) }
-  .rel.bss		${RELOCATING-0} : { *(.rel.bss) }
   .rel.plt		${RELOCATING-0} : { *(.rel.plt) }
 
   /* Concatenate .page0 sections.  Put them in the page0 memory bank
@@ -228,6 +312,7 @@ SECTIONS
   } ${RELOCATING+=${NOP-0}}
 
   ${RELOCATING-${INSTALL_RELOC}}
+  ${RELOCATING-${FINISH_RELOC}}
 
   .text ${RELOCATING-0}:
   {
@@ -236,10 +321,12 @@ SECTIONS
 
     ${RELOCATING+*(.init)}
     *(.text)
-    *(.fini)
+    ${RELOCATING+*(.text.*)}
     /* .gnu.warning sections are handled specially by elf32.em.  */
     *(.gnu.warning)
-    *(.gnu.linkonce.t*)
+    ${RELOCATING+*(.gnu.linkonce.t.*)}
+
+    ${RELOCATING+${FINISH_CODE}}
 
     ${RELOCATING+_etext = .;}
     ${RELOCATING+PROVIDE (etext = .);}
@@ -248,13 +335,14 @@ SECTIONS
 
   .eh_frame ${RELOCATING-0} :
   {
-    *(.eh_frame)
+    KEEP (*(.eh_frame))
   } ${RELOCATING+ > ${TEXT_MEMORY}}
 
   .rodata  ${RELOCATING-0} :
   {
     *(.rodata)
-    *(.gnu.linkonce.r*)
+    ${RELOCATING+*(.rodata.*)}
+    ${RELOCATING+*(.gnu.linkonce.r*)}
   } ${RELOCATING+ > ${TEXT_MEMORY}}
 
   .rodata1 ${RELOCATING-0} :
@@ -262,6 +350,15 @@ SECTIONS
     *(.rodata1)
   } ${RELOCATING+ > ${TEXT_MEMORY}}
 
+  /* Constructor and destructor tables are in ROM.  */
+  ${RELOCATING+${CTOR}}
+  ${RELOCATING+${DTOR}}
+
+  .jcr ${RELOCATING-0} :
+  {
+    KEEP (*(.jcr))
+  } ${RELOCATING+ > ${TEXT_MEMORY}}
+
   /* Start of the data section image in ROM.  */
   ${RELOCATING+__data_image = .;}
   ${RELOCATING+PROVIDE (__data_image = .);}
@@ -278,8 +375,9 @@ SECTIONS
     ${RELOCATING+${DATA_START_SYMBOLS}}
     ${RELOCATING+*(.sdata)}
     *(.data)
+    ${RELOCATING+*(.data.*)}
     ${RELOCATING+*(.data1)}
-    *(.gnu.linkonce.d*)
+    ${RELOCATING+*(.gnu.linkonce.d.*)}
     ${CONSTRUCTING+CONSTRUCTORS}
 
     ${RELOCATING+_edata  =  .;}
@@ -299,23 +397,30 @@ SECTIONS
 
   /* Relocation for some bss and data sections.  */
   ${RELOCATING-${BSS_DATA_RELOC}}
+  ${RELOCATING-${SOFT_REGS_RELOC}}
 
   .bss ${RELOCATING-0} :
   {
     ${RELOCATING+__bss_start = .;}
+    ${RELOCATING+*(.softregs)}
     ${RELOCATING+*(.sbss)}
     ${RELOCATING+*(.scommon)}
 
     *(.dynbss)
     *(.bss)
+    ${RELOCATING+*(.bss.*)}
+    ${RELOCATING+*(.gnu.linkonce.b.*)}
     *(COMMON)
     ${RELOCATING+PROVIDE (_end = .);}
   } ${RELOCATING+ > ${DATA_MEMORY}}
   ${RELOCATING+__bss_size = SIZEOF(.bss);}
   ${RELOCATING+PROVIDE (__bss_size = SIZEOF(.bss));}
 
-  ${RELOCATING+${CTOR}}
-  ${RELOCATING+${DTOR}}
+  .eeprom ${RELOCATING-0} :
+  {
+    *(.eeprom)
+    *(.eeprom.*)
+  } ${RELOCATING+ > ${EEPROM_MEMORY}}
 
   ${RELOCATING+${VECTORS}}
 
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ChangeLog.M68HC11 binutils-2.11.2-m68hc1x/ld/testsuite/ChangeLog.M68HC11
--- binutils-2.11.2/ld/testsuite/ChangeLog.M68HC11	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ChangeLog.M68HC11	Sun Jan 20 20:08:34 2002
@@ -0,0 +1,36 @@
+2002-01-20  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* ld-m68hc11/relax-group.s: New test for relaxation of groups of insns.
+	ld-m68hc11/relax-group.d: Likewise.
+
+2001-12-16  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	Merge 2001-06-13  Hans-Peter Nilsson  <hp@bitrange.com> from CVS:
+
+	* config/default.exp (AS, GASP, OBJDUMP, NM, NMFLAGS, OBJCOPY,
+	OBJCOPYFLAGS, READELF, READELFFLAGS, LD, LDFLAGS): Provide
+	default.
+
+	* lib/ld-lib.exp (run_dump_test): Import from gas testsuite.  Add
+	new options "ld", "source", "xfail", "target", "notarget" and
+	"error".  Support the runtest_file_p "*.exp=testname" feature.
+	(slurp_options, regexp_diff, file_contents, verbose_eval): Import
+	from gas testsuite.
+
+2001-11-26  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* ld-m68hc11/m68hc11.exp: Specific tests for 68HC11/68HC12.
+	* ld-m68hc11/adj-jump.d: New test for linker relaxation.
+	* ld-m68hc11/adj-jump.s: Likewise.
+	* ld-m68hc11/adj-brset.s: Likewise.
+	* ld-m68hc11/adj-brset.d: Likewise.
+	* ld-m68hc11/relax-direct.s: Likewise.
+	* ld-m68hc11/relax-direct.d: Likewise.
+
+2001-03-13  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* ld-cpp-scripts/cpp-checks.exp: New file, test cpp/m4 preprocessor
+	scripts.
+	* ld-cpp-scripts/asm.s: New file.
+	* ld-cpp-scripts/script.m4: New file to test m4 prep-scripts.
+	* ld-cpp-scripts/script.cpp: New file to test cpp prep-scripts.
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/config/default.exp binutils-2.11.2-m68hc1x/ld/testsuite/config/default.exp
--- binutils-2.11.2/ld/testsuite/config/default.exp	Fri Sep 21 20:58:42 2001
+++ binutils-2.11.2-m68hc1x/ld/testsuite/config/default.exp	Sun Dec 16 12:53:49 2001
@@ -170,3 +170,55 @@ proc ld_exec { target output } {
 	default_ld_exec $target $output
 }
 
+# From gas-defs.exp, to support run_dump_test.
+if ![info exists AS] then {
+    set AS $as
+}
+
+if ![info exists GASP] then {
+    set GASP [findfile $base_dir/../gas/gasp-new $base_dir/../gas/gasp-new [transform gasp]]
+}
+
+if ![info exists ASFLAGS] then {
+    set ASFLAGS ""
+}
+
+if ![info exists OBJDUMP] then {
+    set OBJDUMP $objdump
+}
+
+if ![info exists OBJDUMPFLAGS] then {
+    set OBJDUMPFLAGS {}
+}
+
+if ![info exists NM] then {
+    set NM $nm
+}
+
+if ![info exists NMFLAGS] then {
+    set NMFLAGS {}
+}
+
+if ![info exists OBJCOPY] then {
+    set OBJCOPY $objcopy
+}
+
+if ![info exists OBJCOPYFLAGS] then {
+    set OBJCOPYFLAGS {}
+}
+
+if ![info exists READELF] then {
+    set READELF [findfile $base_dir/../binutils/readelf]
+}
+
+if ![info exists READELFFLAGS] then {
+    set READELFFLAGS {}
+}
+
+if ![info exists LD] then {
+    set LD [findfile $base_dir/ld-new ./ld-new [transform ld]]
+}
+
+if ![info exists LDFLAGS] then {
+    set LDFLAGS {}
+}
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ld-cpp-scripts/asm.s binutils-2.11.2-m68hc1x/ld/testsuite/ld-cpp-scripts/asm.s
--- binutils-2.11.2/ld/testsuite/ld-cpp-scripts/asm.s	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ld-cpp-scripts/asm.s	Sun Dec 16 13:54:00 2001
@@ -0,0 +1,11 @@
+ .text
+	.global foo
+foo:
+	.long 0x12345678
+
+ .data
+	.global bar
+bar:
+	.long 0x87654321
+
+	.lcomm dummy, 0x12
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ld-cpp-scripts/cpp-checks.exp binutils-2.11.2-m68hc1x/ld/testsuite/ld-cpp-scripts/cpp-checks.exp
--- binutils-2.11.2/ld/testsuite/ld-cpp-scripts/cpp-checks.exp	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ld-cpp-scripts/cpp-checks.exp	Sun Dec 16 13:54:00 2001
@@ -0,0 +1,111 @@
+# Expect script for LD cpp/m4-scripts
+#   Copyright (C) 2001 Free Software Foundation
+#
+# This file is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+
+set testname "CPP/M4 script"
+set test "check prep_script"
+
+# Prepare the test running the assembler on asm.s
+proc cppm4check_prepare {} {
+    global as
+    global srcdir
+    global subdir
+    global test
+
+    if { ![ld_assemble $as $srcdir/$subdir/asm.s tmpdir/asm.o]} {
+	unresolved $test
+	return 0
+    } else {
+	return 1
+    }
+}
+
+# Run the linker with --cpp-script/--m4-script option and check the result
+# of the link with objdump --header
+proc prep_script_check { script mode outres } {
+    global ldflags
+    global ld
+    global srcdir
+    global subdir
+    global objdump
+    global testname
+    global exec_output
+    global test
+
+    if [regexp ".cpp$" $script] {
+	set testname "cpp script $mode"
+	set ldflags "$mode --cpp-script $srcdir/$subdir/$script"
+    } else {
+	set testname "m4 script $mode"
+	set ldflags "$mode --m4-script $srcdir/$subdir/$script"
+    }
+    set test "check ld-prep-script $ldflags"
+    if ![ld_simple_link $ld tmpdir/asm.x "$ldflags tmpdir/asm.o"] {
+	fail $test
+	return;
+    }
+    pass $test
+
+    verbose -log "$objdump -h tmpdir/asm.x"
+    catch "exec $objdump -h tmpdir/asm.x" exec_output
+    set exec_output [prune_warnings $exec_output]
+    verbose -log $exec_output
+
+    if [regexp $outres $exec_output] {
+	pass $testname
+    } else {
+	fail $testname
+    }
+}
+
+if {[cppm4check_prepare] == 1} then {
+   # Linker script configured for a first board 'Board1'
+   # Text = 0x2000, Data = 0x6000, Bss = 0x8000, LMA == VMA
+   set pattern ".text\[ \t\]*0*4\[ \t\]*0*2000\[ \t\]*0*2000.*.data\[ \t\]*0*4\[ \t\]*0*6000\[ \t\]*0*6000.*.bss\[ \t\]*0*18\[ \t\]*0*8000\[ \t\]*0*8000.*"
+   prep_script_check "script.cpp" "-DBoard1" $pattern
+   prep_script_check "script.m4" "-DBoard1" $pattern
+
+   # Next test to verify that -Ur can be passed with -Uname option
+   # -Ur makes ld pass a -DLD_LINK_RELOCATE to the pre-processor
+   prep_script_check "script.cpp" "-Ur -ULD_LINK_RELOCATE -DBoard1" $pattern
+   prep_script_check "script.m4" "-Ur -ULD_LINK_RELOCATE -DBoard1" $pattern
+
+   # Linker script configured for a second board 'Board2'
+   # Text = 0xE000, Data = 0x8000, Bss = 0x6000, LMA == VMA
+   set pattern ".text\[ \t\]*0*4\[ \t\]*0*e000\[ \t\]*0*e000.*.data\[ \t\]*0*4\[ \t\]*0*8000\[ \t\]*0*8000.*.bss\[ \t\]*0*18\[ \t\]*0*6000\[ \t\]*0*6000.*"
+   prep_script_check "script.cpp" "-DBoard2" $pattern
+   prep_script_check "script.m4" "-DBoard2" $pattern
+
+   # Third board with ROM and RAM (data section loaded from ROM)
+   # Text = 0xF000, Data = {vma=0x1000, lma=0xF004}, Bss = 0x1004
+   set pattern ".text\[ \t\]*0*4\[ \t\]*0*f000\[ \t\]*0*f000.*.data\[ \t\]*0*4\[ \t\]*0*1000\[ \t\]*0*f004.*.bss\[ \t\]*0*1c\[ \t\]*0*1004\[ \t\]*0*1004.*"
+   prep_script_check "script.cpp" "-DBoard3" $pattern
+   prep_script_check "script.m4" "-DBoard3" $pattern
+
+   # Link to produce a relocatable (linker script configures according
+   # to LD_LINK_RELOCATE define passed by ld)
+   # Text = 0, Data = 0, Bss = 0
+   set pattern ".text\[ \t\]*0*4\[ \t\]*0*0\[ \t\]*0*0.*.data\[ \t\]*0*4\[ \t\]*0*0\[ \t\]*0*0.*.bss\[ \t\]*0*18\[ \t\]*0*0\[ \t\]*0*0.*"
+   prep_script_check "script.cpp" "-r -DBoard3" $pattern
+   prep_script_check "script.m4" "-r -DBoard3" $pattern
+
+   # Same test with -Ur
+   prep_script_check "script.cpp" "-Ur -DBoard3" $pattern
+   prep_script_check "script.m4" "-Ur -DBoard3" $pattern
+}
+
+
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ld-cpp-scripts/script.cpp binutils-2.11.2-m68hc1x/ld/testsuite/ld-cpp-scripts/script.cpp
--- binutils-2.11.2/ld/testsuite/ld-cpp-scripts/script.cpp	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ld-cpp-scripts/script.cpp	Sun Dec 16 13:54:00 2001
@@ -0,0 +1,124 @@
+/* script.cpp -- Linker script for cpp-check.exp
+   Copyright (C) 2001 Free Software Foundation.
+
+   This file is part of GAS, the GNU Assembler.
+
+   GAS is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2, or (at your option)
+   any later version.
+
+   GAS is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with GAS; see the file COPYING.  If not, write to
+   the Free Software Foundation, 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.
+
+*/
+
+#ifdef LD_LINK_RELOCATE
+# define TEXT_ADDR 0
+# define DATA_ADDR 0
+# define BSS_ADDR 0
+# define TEXT_LMA_ADDR
+# define DATA_LMA_ADDR
+# define BSS_LMA_ADDR
+#else
+
+/* Define layout for first board.  */
+#ifdef Board1
+# define TEXT_ADDR 0x2000
+# define TEXT_SIZE 0x3000
+# define DATA_ADDR 0x6000
+# define DATA_SIZE 0x2000
+# define BSS_ADDR  0x8000
+#endif
+
+/* Layout for second test board.  */
+#ifdef Board2
+# define TEXT_ADDR 0xE000
+# define TEXT_SIZE 0x2000
+# define DATA_ADDR 0x8000
+# define DATA_SIZE 0x2000
+# define BSS_ADDR  0x6000
+#endif
+
+/* Third board use LMA != VMA for data section
+   (simulate a program put in ROM).  */
+#ifdef Board3
+# define ROM_START 0xF000
+# define ROM_SIZE  0x1000
+# define RAM_START 0x1000
+# define RAM_SIZE  0x1000
+#endif
+#endif /* !LINK_RELOCATE */
+
+#ifdef ROM_START
+MEMORY
+{
+  text  (rx)  : ORIGIN = ROM_START, LENGTH = ROM_SIZE
+  data        : ORIGIN = RAM_START, LENGTH = RAM_SIZE
+}
+#define NEED_SYMBOLS
+#define TEXT_ADDR
+#define TEXT_LMA_ADDR
+#define DATA_ADDR
+#define DATA_LMA_ADDR AT(_tend)
+#define BSS_ADDR      _dend
+#define BSS_LMA_ADDR
+#define PLACE_TEXT > text
+#define PLACE_DATA > data
+#define PLACE_BSS  > bss
+
+#else
+#define PLACE_TEXT
+#define PLACE_DATA
+#define PLACE_BSS
+#endif
+
+#ifndef DATA_LMA_ADDR
+# define DATA_LMA_ADDR AT(DATA_ADDR)
+#endif
+
+#ifndef TEXT_LMA_ADDR
+# define TEXT_LMA_ADDR AT (TEXT_ADDR)
+#endif
+
+#ifndef BSS_LMA_ADDR
+# define BSS_LMA_ADDR AT (BSS_ADDR)
+#endif
+
+#ifndef BSS_ADDR
+# define BSS_ADDR DATA_ADDR + DATA_SIZE/2
+#endif
+
+#ifdef NEED_SYMBOLS
+# define DEF_SYMBOL(NAME) NAME = .; PROVIDE(NAME = .);
+#else
+# define DEF_SYMBOL(NAME)
+#endif
+
+
+SECTIONS {
+    .text TEXT_ADDR : TEXT_LMA_ADDR
+    {
+	EXCLUDE_FILE(v.o)*(.text)
+    } PLACE_TEXT
+    DEF_SYMBOL(_tend)
+
+    .data DATA_ADDR : DATA_LMA_ADDR
+    { 
+        *(.data)
+    } PLACE_DATA
+    DEF_SYMBOL(_dend)
+
+    .bss  BSS_ADDR : BSS_LMA_ADDR
+    { 
+        *(.bss)  
+    } PLACE_BSS
+    DEF_SYMBOL(_bend)
+}
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ld-cpp-scripts/script.m4 binutils-2.11.2-m68hc1x/ld/testsuite/ld-cpp-scripts/script.m4
--- binutils-2.11.2/ld/testsuite/ld-cpp-scripts/script.m4	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ld-cpp-scripts/script.m4	Sun Dec 16 13:54:00 2001
@@ -0,0 +1,111 @@
+dnl script.m4 -- Linker script for cpp-check.exp
+dnl   Copyright (C) 2001 Free Software Foundation.
+dnl
+dnl   This file is part of GAS, the GNU Assembler.
+dnl
+dnl   GAS is free software; you can redistribute it and/or modify
+dnl   it under the terms of the GNU General Public License as published by
+dnl   the Free Software Foundation; either version 2, or (at your option)
+dnl   any later version.
+dnl
+dnl   GAS is distributed in the hope that it will be useful,
+dnl   but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+dnl   GNU General Public License for more details.
+dnl
+dnl   You should have received a copy of the GNU General Public License
+dnl   along with GAS; see the file COPYING.  If not, write to
+dnl   the Free Software Foundation, 59 Temple Place - Suite 330,
+dnl   Boston, MA 02111-1307, USA.
+dnl
+dnl
+
+changequote([, ])
+
+dnl Macro to define the board memory banks
+dnl Usage: LD_MEMORY()
+define(LD_MEMORY,[
+MEMORY
+{
+  text  (rx)  : ORIGIN = ROM_ADDR, LENGTH = ROM_SIZE
+  data        : ORIGIN = RAM_ADDR, LENGTH = RAM_SIZE
+}])
+
+dnl Define a memory region identified by `NAME_ADDR', `NAME_SIZE'
+dnl Usage: LD_REGION(NAME,ADDR,SIZE)
+define(LD_REGION,[define($1_[ADDR],$2)define($1_[SIZE],$3)])
+
+dnl Define the characteristics of a board
+dnl Usage: LD_BOARD(TEXT_ADDR,TEXT_SIZE,DATA_ADDR,DATA_SIZE,BSS_ADDR,BSS_SIZE)
+define(LD_BOARD,
+   [define(LD_USE_LMA,0)
+    dnl Put sections at specific addresses
+    LD_REGION(TEXT,$1,$2)
+    LD_REGION(DATA,$3,$4)
+    LD_REGION(BSS,$5)
+])
+
+dnl Define the characteristics of a board
+dnl Usage: LD_ROM_BOARD(ROM_ADDR,ROM_SIZE,RAM_ADDR,RAM_SIZE)
+define(LD_ROM_BOARD,
+   [define(LD_USE_LMA,1)
+    dnl Put sections in memory banks (LMA != VMA for data section)
+    LD_REGION(ROM,$1,$2)
+    LD_REGION(RAM,$3,$4)
+    define([TEXT_ADDR],)
+    define([TEXT_SIZE],)
+    define([DATA_ADDR],)
+    define([BSS_ADDR],_dend)
+    define([TEXT_NAME],text)
+    define([DATA_NAME],data)
+    define([BSS_NAME],data)
+    define([TEXT_LMA_ADDR],)
+    define([DATA_LMA_ADDR],[AT(_tend)])
+    define([BSS_LMA_ADDR],)
+    LD_MEMORY
+])
+
+dnl Define several boards
+dnl   NAME          Text            Data            Bss
+ifdef([Board1], [LD_BOARD(0x2000, 0x3000, 0x6000, 0x2000, 0x8000)])
+ifdef([Board2], [LD_BOARD(0xE000, 0x2000, 0x8000, 0x2000, 0x6000)])
+
+dnl   NAME                    Rom             Ram
+ifdef([Board3], [LD_ROM_BOARD(0xF000, 0x1000, 0x1000, 0x1000)])
+
+dnl Define a symbol equal to '.' during final link
+dnl Usage: LD_SYMBOL(NAME)
+define(LD_SYMBOL,[dnl
+    $1 = .;
+    PROVIDE($1 = .);
+])
+
+define(LD_SECTION_VMA,[$1_ADDR])
+define(LD_SECTION_LMA,[ifelse(LD_USE_LMA,1,[$1_LMA_ADDR],[])])
+define(LD_PLACE_SECTION,[ifelse(LD_USE_LMA,1,[> $1_NAME],[])])
+
+dnl Generic definition of a section
+dnl Usage: LD_SECTION(NAME,ID,CONTENT,END_SYMBOL)
+dnl
+define(LD_FINAL_SECTION,
+[$1 LD_SECTION_VMA($2) : LD_SECTION_LMA($2)
+    {
+       $3
+    } LD_PLACE_SECTION($2)
+    LD_SYMBOL($4)])
+
+define(LD_RELOCATABLE_SECTION,
+[$1 0 :
+    {
+       $2
+    }
+])
+
+define(LD_SECTION,ifdef([LD_LINK_RELOCATE],[LD_RELOCATABLE_SECTION($1,$3)],
+[LD_FINAL_SECTION($1,$2,$3,$4)]))
+
+SECTIONS {
+    LD_SECTION(.text,TEXT,*(.text),_tend)
+    LD_SECTION(.data,DATA,*(.data),_dend)
+    LD_SECTION(.bss,BSS,*(.bss),_bend)
+}
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ld-m68hc11/adj-brset.d binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/adj-brset.d
--- binutils-2.11.2/ld/testsuite/ld-m68hc11/adj-brset.d	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/adj-brset.d	Sun Nov  4 20:32:29 2001
@@ -0,0 +1,32 @@
+#source: adj-brset.s
+#as: -m68hc11
+#ld: --relax
+#objdump: -d --prefix-addresses -r
+#target: m6811-*-* m6812-*-*
+
+.*: +file format elf32\-m68hc11
+
+Disassembly of section .text:
+00008000 <_start> brclr	140,x \#\$c8 0000804a <L8>
+00008004 <L1> addd	\*00000004 <_toto>
+00008006 <L1\+0x2> brclr	20,x \#\$03 00008004 <L1>
+0000800a <L1\+0x6> brclr	90,x \#\$63 0000801a <L3>
+0000800e <L2> addd	\*00000004 <_toto>
+00008010 <L2\+0x2> brclr	19,y \#\$04 0000800e <L2>
+00008015 <L2\+0x7> brclr	91,y \#\$62 00008024 <L4>
+0000801a <L3> addd	\*00000004 <_toto>
+0000801c <L3\+0x2> brset	18,x \#\$05 0000801a <L3>
+00008020 <L3\+0x6> brset	92,x \#\$61 00008030 <L5>
+00008024 <L4> addd	\*00000004 <_toto>
+00008026 <L4\+0x2> brset	17,y \#\$06 00008024 <L4>
+0000802b <L4\+0x7> brset	93,y \#\$60 00008030 <L5>
+00008030 <L5> addd	\*00000004 <_toto>
+00008032 <L5\+0x2> brset	\*00000032 <_table> \#\$07 00008030 <L5>
+00008036 <L5\+0x6> brset	\*0000003c <_table\+0xa> \#\$5f 00008044 <L7>
+0000803a <L6> addd	\*00000004 <_toto>
+0000803c <L6\+0x2> brclr	\*00000033 <_table\+0x1> \#\$08 0000803a <L6>
+00008040 <L6\+0x6> brset	\*0000003d <_table\+0xb> \#\$5e 0000804a <L8>
+00008044 <L7> addd	\*00000004 <_toto>
+00008046 <L7\+0x2> brclr	\*00000033 <_table\+0x1> \#\$08 0000803a <L6>
+0000804a <L8> brclr	140,x \#\$c8 00008000 <_start>
+0000804e <L8\+0x4> rts
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ld-m68hc11/adj-brset.s binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/adj-brset.s
--- binutils-2.11.2/ld/testsuite/ld-m68hc11/adj-brset.s	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/adj-brset.s	Sat Dec 15 16:51:41 2001
@@ -0,0 +1,51 @@
+;;; Test 68HC11 linker relaxation and fixup of brclr/brset branches
+;;; 
+	.sect .text
+	.globl _start
+_start:
+start:
+	brclr	140,x#200,L8	; Branch adjustment covers the whole test
+;;; The 'addd' is relaxed and we win 1 byte.  The next brclr/brset
+;;; branch must be fixed and reduced by 1.  We check for different
+;;; addressing modes because the instruction has different opcode and
+;;; different lengths.
+L1:
+	addd	_toto
+	brclr	20,x,#3,L1
+	brclr	90,x,#99,L3	; Likewise with forward branch
+L2:
+	addd	_toto
+	brclr	19,y,#4,L2
+	brclr	91,y,#98,L4
+L3:
+	addd	_toto
+	brset	18,x,#5,L3
+	brset	92,x,#97,L5
+L4:
+	addd	_toto
+	brset	17,y,#6,L4
+	brset	93,y,#96,L5
+L5:
+	addd	_toto
+	brset	*_table,#7,L5
+	brset	*_table+10,#95,L7
+L6:
+	addd	_toto
+	brclr	*_table+1,#8,L6
+	brset	*_table+11,#94,L8
+L7:
+	addd	_toto
+	brclr	*_table+1,#8,L6
+L8:
+	brclr	140,x#200,_start ; Branch adjustment covers the whole test
+	rts
+
+	.sect	.page0
+_bar:
+	.long	0
+_toto:
+	.long	0
+	.skip	32
+stack:
+	.skip	10
+_table:
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ld-m68hc11/adj-jump.d binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/adj-jump.d
--- binutils-2.11.2/ld/testsuite/ld-m68hc11/adj-jump.d	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/adj-jump.d	Mon Nov 26 23:16:44 2001
@@ -0,0 +1,60 @@
+#source: adj-jump.s
+#as: -m68hc11
+#ld: --relax
+#objdump: -d --prefix-addresses -r
+#target: m6811-*-* m6812-*-*
+
+.*: +file format elf32\-m68hc11
+
+Disassembly of section .text:
+0+8000 <_start> bra	0+8074 <L3>
+	...
+0+8016 <_start\+0x16> bra	0+8074 <L3>
+0+8018 <L1> addd	0,x
+0+801a <L1\+0x2> bne	0+8018 <L1>
+0+801c <L1\+0x4> addd	\*0+0004 <_toto>
+0+801e <L1\+0x6> beq	0+8018 <L1>
+0+8020 <L1\+0x8> addd	\*0+0005 <_toto\+0x1>
+0+8022 <L1\+0xa> bne	0+8018 <L1>
+0+8024 <L1\+0xc> bgt	0+8018 <L1>
+0+8026 <L1\+0xe> bge	0+8018 <L1>
+0+8028 <L1\+0x10> beq	0+8018 <L1>
+0+802a <L1\+0x12> ble	0+8018 <L1>
+0+802c <L1\+0x14> blt	0+8018 <L1>
+0+802e <L1\+0x16> bhi	0+8018 <L1>
+0+8030 <L1\+0x18> bcc	0+8018 <L1>
+0+8032 <L1\+0x1a> beq	0+8018 <L1>
+0+8034 <L1\+0x1c> bls	0+8018 <L1>
+0+8036 <L1\+0x1e> bcs	0+8018 <L1>
+0+8038 <L1\+0x20> bcs	0+8018 <L1>
+0+803a <L1\+0x22> bmi	0+8018 <L1>
+0+803c <L1\+0x24> bvs	0+8018 <L1>
+0+803e <L1\+0x26> bcc	0+8018 <L1>
+0+8040 <L1\+0x28> bpl	0+8018 <L1>
+0+8042 <L1\+0x2a> bvc	0+8018 <L1>
+0+8044 <L1\+0x2c> bne	0+8018 <L1>
+0+8046 <L1\+0x2e> brn	0+8018 <L1>
+0+8048 <L1\+0x30> bra	0+8018 <L1>
+0+804a <L1\+0x32> addd	\*0+0004 <_toto>
+0+804c <L1\+0x34> addd	\*0+0004 <_toto>
+0+804e <L1\+0x36> addd	\*0+0004 <_toto>
+0+8050 <L1\+0x38> addd	\*0+0004 <_toto>
+0+8052 <L1\+0x3a> addd	\*0+0004 <_toto>
+0+8054 <L1\+0x3c> addd	\*0+0004 <_toto>
+0+8056 <L1\+0x3e> addd	\*0+0004 <_toto>
+0+8058 <L1\+0x40> addd	\*0+0004 <_toto>
+0+805a <L1\+0x42> addd	\*0+0004 <_toto>
+0+805c <L1\+0x44> addd	\*0+0004 <_toto>
+0+805e <L1\+0x46> addd	\*0+0004 <_toto>
+0+8060 <L1\+0x48> addd	\*0+0004 <_toto>
+0+8062 <L1\+0x4a> addd	\*0+0004 <_toto>
+0+8064 <L1\+0x4c> addd	\*0+0004 <_toto>
+0+8066 <L1\+0x4e> addd	\*0+0004 <_toto>
+0+8068 <L2> bra	0+8000 <_start>
+0+806a <L2\+0x2> bne	0+8068 <L2>
+0+806c <L2\+0x4> beq	0+8074 <L3>
+0+806e <L2\+0x6> addd	\*0+0004 <_toto>
+0+8070 <L2\+0x8> beq	0+8074 <L3>
+0+8072 <L2\+0xa> addd	\*0+0004 <_toto>
+0+8074 <L3> addd	\*0+0004 <_toto>
+0+8076 <L3\+0x2> rts
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ld-m68hc11/adj-jump.s binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/adj-jump.s
--- binutils-2.11.2/ld/testsuite/ld-m68hc11/adj-jump.s	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/adj-jump.s	Fri Jan  4 12:18:10 2002
@@ -0,0 +1,74 @@
+;;; Test 68HC11 linker relaxation and fixup of bcc/bra branches
+;;; 
+	.sect .text
+	.globl _start
+_start:
+	;; Next 'bra' is assembled as a 'jmp'.  It is relaxed to 'bra L3'
+	;; during a second pass of relax.
+	bra	L3
+	.skip	20
+	;; Next 'jmp' must be relaxed to a 'bra' during the first pass.
+	;; The branch offset must then be adjusted by consecutive relax.
+	jmp	L3
+L1:
+	addd	0,x
+	bne	L1		; Branch not adjusted
+	addd	_toto
+	beq	L1		; Backward branch, adjust -1
+	addd	_toto+1
+	jbne	L1		; Backward branch, adjust -2
+	bgt	L1		; All possible backward branchs, adjust -2
+	bge	L1
+	beq	L1
+	ble	L1
+	blt	L1
+	bhi	L1
+	bhs	L1
+	beq	L1
+	bls	L1
+	blo	L1
+	bcs	L1
+	bmi	L1
+	bvs	L1
+	bcc	L1
+	bpl	L1
+	bvc	L1
+	bne	L1
+	brn	L1
+	bra	L1
+	;; Relax several insn to reduce block by 15
+	addd	_toto
+	addd	_toto
+	addd	_toto
+	addd	_toto
+	addd	_toto
+	addd	_toto
+	addd	_toto
+	addd	_toto
+	addd	_toto
+	addd	_toto
+	addd	_toto
+	addd	_toto
+	addd	_toto
+	addd	_toto
+	addd	_toto
+L2:
+	jmp	_start		; -> relax to bra _start
+	bne	L2		; Backward branch, adjust -1
+	beq	L3		; Forward branch, adjust -2
+	addd	_toto
+	beq	L3		; Forward branch, adjust -1
+	addd	_toto
+L3:
+	addd	_toto
+	rts
+
+	.sect	.page0
+_bar:
+	.long	0
+_toto:
+	.long	0
+	.skip	32
+stack:
+	.skip	10
+_table:
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ld-m68hc11/m68hc11.exp binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/m68hc11.exp
--- binutils-2.11.2/ld/testsuite/ld-m68hc11/m68hc11.exp	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/m68hc11.exp	Mon Nov 26 23:47:00 2001
@@ -0,0 +1,32 @@
+# Expect script for run_dump_test based ld-m68hc11 tests.
+#   Copyright 2001 Free Software Foundation, Inc.
+#
+# This file is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# Written by Hans-Peter Nilsson (hp@bitrange.com)
+# (adapted from ld-sh/rd-sh.exp)
+
+# Test 68HC11 relaxing.  This tests the assembler as well as the linker.
+
+if ![istarget m6811-*-*] {
+    return
+}
+
+set rd_test_list [lsort [glob -nocomplain $srcdir/$subdir/*.d]]
+foreach shtest $rd_test_list {
+    # We need to strip the ".d", but can leave the dirname.
+    verbose [file rootname $shtest]
+    run_dump_test [file rootname $shtest]
+}
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ld-m68hc11/relax-direct.d binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/relax-direct.d
--- binutils-2.11.2/ld/testsuite/ld-m68hc11/relax-direct.d	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/relax-direct.d	Fri Jan  4 12:23:08 2002
@@ -0,0 +1,63 @@
+#source: relax-direct.s
+#as: -m68hc11
+#ld: --relax
+#objdump: -d --prefix-addresses -r
+#target: m6811-*-* m6812-*-*
+
+.*: +file format elf32-m68hc11
+
+Disassembly of section .text:
+0+8000 <_start> lds	\*0+0028 <stack>
+0+8002 <_start\+0x2> ldd	\*0+0+ <__bss_size>
+0+8004 <_start\+0x4> beq	0+800f <F1>
+0+8006 <_start\+0x6> bne	0+800b <_start\+0xb>
+0+8008 <_start\+0x8> jmp	0+8138 <F2>
+0+800b <_start\+0xb> std	\*0+0+ <__bss_size>
+0+800d <_start\+0xd> jsr	\*0+0+ <__bss_size>
+0+800f <F1> addd	\*0+0004 <_toto>
+0+8011 <F1\+0x2> bne	0+8000 <_start>
+0+8013 <F1\+0x4> addd	\*0+00cc <_table\+0x9a>
+0+8015 <F1\+0x6> addd	0+0114 <_stack_top\+0x1a>
+0+8018 <F1\+0x9> adca	\*0+0034 <_table\+0x2>
+0+801a <F1\+0xb> adcb	\*0+0035 <_table\+0x3>
+0+801c <F1\+0xd> adda	\*0+0036 <_table\+0x4>
+0+801e <F1\+0xf> addb	\*0+0037 <_table\+0x5>
+0+8020 <F1\+0x11> addd	\*0+0038 <_table\+0x6>
+0+8022 <F1\+0x13> anda	\*0+0039 <_table\+0x7>
+0+8024 <F1\+0x15> andb	\*0+003a <_table\+0x8>
+0+8026 <F1\+0x17> cmpa	\*0+003b <_table\+0x9>
+0+8028 <F1\+0x19> cmpb	\*0+003c <_table\+0xa>
+0+802a <F1\+0x1b> cpd	\*0+003d <_table\+0xb>
+0+802d <F1\+0x1e> cpx	\*0+003e <_table\+0xc>
+0+802f <F1\+0x20> cpy	\*0+003f <_table\+0xd>
+0+8032 <F1\+0x23> eora	\*0+0040 <_table\+0xe>
+0+8034 <F1\+0x25> eorb	\*0+0041 <_table\+0xf>
+0+8036 <F1\+0x27> jsr	\*0+0042 <_table\+0x10>
+0+8038 <F1\+0x29> ldaa	\*0+0043 <_table\+0x11>
+0+803a <F1\+0x2b> ldab	\*0+0044 <_table\+0x12>
+0+803c <F1\+0x2d> ldd	\*0+0045 <_table\+0x13>
+0+803e <F1\+0x2f> lds	\*0+0046 <_table\+0x14>
+0+8040 <F1\+0x31> ldx	\*0+0047 <_table\+0x15>
+0+8042 <F1\+0x33> ldy	\*0+0048 <_table\+0x16>
+0+8045 <F1\+0x36> oraa	\*0+0049 <_table\+0x17>
+0+8047 <F1\+0x38> orab	\*0+004a <_table\+0x18>
+0+8049 <F1\+0x3a> sbcb	\*0+004b <_table\+0x19>
+0+804b <F1\+0x3c> sbca	\*0+004c <_table\+0x1a>
+0+804d <F1\+0x3e> staa	\*0+004d <_table\+0x1b>
+0+804f <F1\+0x40> stab	\*0+004e <_table\+0x1c>
+0+8051 <F1\+0x42> std	\*0+004f <_table\+0x1d>
+0+8053 <F1\+0x44> sts	\*0+0050 <_table\+0x1e>
+0+8055 <F1\+0x46> stx	\*0+0051 <_table\+0x1f>
+0+8057 <F1\+0x48> sty	\*0+0052 <_table\+0x20>
+0+805a <F1\+0x4b> suba	\*0+0053 <_table\+0x21>
+0+805c <F1\+0x4d> subb	\*0+0054 <_table\+0x22>
+0+805e <F1\+0x4f> subd	\*0+0055 <_table\+0x23>
+0+8060 <F1\+0x51> bne	0+8000 <_start>
+0+8062 <F1\+0x53> bra	0+800f <F1>
+0+8064 <F1\+0x55> rts
+0+8065 <no_relax> addd	0+0136 <_stack_top\+0x3c>
+0+8068 <no_relax\+0x3> std	0+0122 <_stack_top\+0x28>
+0+806b <no_relax\+0x6> tst	0+0005 <_toto\+0x1>
+0+806e <no_relax\+0x9> bne	0+8065 <no_relax>
+	...
+0+8138 <F2> jmp	0+8000 <_start>
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ld-m68hc11/relax-direct.s binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/relax-direct.s
--- binutils-2.11.2/ld/testsuite/ld-m68hc11/relax-direct.s	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/relax-direct.s	Fri Jan  4 12:19:21 2002
@@ -0,0 +1,84 @@
+;;; Test 68HC11 linker relaxation from extended addressing to direct
+;;; addressing modes
+;;; 
+	.sect .text
+	.globl _start
+_start:
+start:	
+	lds	stack
+	ldd	_bar
+	beq	F1
+	beq	F2
+	std	_bar
+	jsr	_bar
+F1:
+	addd	_toto
+	bne	start
+	;; All the following instructions will be relaxed and win 1 byte
+	;; for each.
+	addd	_toto+200
+	addd	stack+256-20
+	adca	_table+2
+	adcb	_table+3
+	adda	_table+4
+	addb	_table+5
+	addd	_table+6
+	anda	_table+7
+	andb	_table+8
+	cmpa	_table+9
+	cmpb	_table+10
+	cpd	_table+11
+	cpx	_table+12
+	cpy	_table+13
+	eora	_table+14
+	eorb	_table+15
+	jsr	_table+16
+	ldaa	_table+17
+	ldab	_table+18
+	ldd	_table+19
+	lds	_table+20
+	ldx	_table+21
+	ldy	_table+22
+	oraa	_table+23
+	orab	_table+24
+	sbcb	_table+25
+	sbca	_table+26
+	staa	_table+27
+	stab	_table+28
+	std	_table+29
+	sts	_table+30
+	stx	_table+31
+	sty	_table+32
+	suba	_table+33
+	subb	_table+34
+	subd	_table+35
+	;; 'bne' is assembled as far branch and must relax to 
+	;; a relative 8-bit branch.
+	bne	_start
+	;; Likewise for next branch
+	bra	F1
+	rts
+
+;;; The following instructions will not be relaxed
+no_relax:
+	addd	_stack_top+60
+	std	_stack_top+40
+	;; 'tst' does not support direct addressing mode.
+	tst	_toto+1
+	bne	no_relax
+	.skip	200
+F2:
+	bra	_start
+
+	.sect	.page0
+_bar:
+	.long	0
+_toto:
+	.long	0
+	.skip	32
+stack:
+	.skip	10
+_table:
+	.skip	200
+_stack_top:
+
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ld-m68hc11/relax-group.d binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/relax-group.d
--- binutils-2.11.2/ld/testsuite/ld-m68hc11/relax-group.d	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/relax-group.d	Sun Jan 20 20:07:02 2002
@@ -0,0 +1,63 @@
+#source: relax-group.s
+#as: -m68hc11
+#ld: --relax
+#objdump: -d --prefix-addresses -r
+#target: m6811-*-* m6812-*-*
+
+.*: +file format elf32-m68hc11
+
+Disassembly of section .text:
+0+8000 <_start> bset	\*0+0+ <__bss_size> #\$04
+0+8003 <L1x> bset	\*0+0+ <__bss_size> #\$04
+0+8006 <L1y> bset	\*0+0003 <__bss_size\+0x3> #\$04
+0+8009 <L1y\+0x3> bset	\*0+0004 <table4> #\$08
+0+800c <L2x> bset	\*0+0003 <__bss_size\+0x3> #\$04
+0+800f <L2x\+0x3> bset	\*0+0004 <table4> #\$08
+0+8012 <L2y> bset	\*0+0006 <table4\+0x2> #\$04
+0+8015 <L2y\+0x3> bset	\*0+0007 <table4\+0x3> #\$08
+0+8018 <L2y\+0x6> bset	\*0+0008 <table8> #\$0c
+0+801b <L2y\+0x9> bset	\*0+0009 <table8\+0x1> #\$0c
+0+801e <L2y\+0xc> bset	\*0+000a <table8\+0x2> #\$0c
+0+8021 <L2y\+0xf> bset	\*0+000b <table8\+0x3> #\$0c
+0+8024 <L3x> bset	\*0+0006 <table4\+0x2> #\$04
+0+8027 <L3x\+0x3> bset	\*0+0007 <table4\+0x3> #\$08
+0+802a <L3x\+0x6> bset	\*0+0008 <table8> #\$0c
+0+802d <L3x\+0x9> bset	\*0+0009 <table8\+0x1> #\$0c
+0+8030 <L3x\+0xc> bset	\*0+000a <table8\+0x2> #\$0c
+0+8033 <L3x\+0xf> bset	\*0+000b <table8\+0x3> #\$0c
+0+8036 <L3y> bra	0+8000 <_start>
+0+8038 <L3y\+0x2> ldx	#0+00fe <end_table\+0xe8>
+0+803b <L3y\+0x5> bset	\*0+00fe <end_table\+0xe8> #\$04
+0+803e <L3y\+0x8> bset	\*0+00ff <end_table\+0xe9> #\$08
+0+8041 <L3y\+0xb> bset	2,x #\$0c
+0+8044 <L3y\+0xe> bset	3,x #\$0c
+0+8047 <L3y\+0x11> bset	4,x #\$0c
+0+804a <L3y\+0x14> bset	5,x #\$0c
+0+804d <L4x> ldy	#0+00fe <end_table\+0xe8>
+0+8051 <L4x\+0x4> bset	\*0+00fe <end_table\+0xe8> #\$04
+0+8054 <L4x\+0x7> bset	\*0+00ff <end_table\+0xe9> #\$08
+0+8057 <L4x\+0xa> bset	2,y #\$0c
+0+805b <L4x\+0xe> bset	3,y #\$0c
+0+805f <L4x\+0x12> bset	4,y #\$0c
+0+8063 <L4x\+0x16> bset	5,y #\$0c
+0+8067 <L4y> bclr	\*0+000a <table8\+0x2> #\$04
+0+806a <L4y\+0x3> bclr	\*0+000b <table8\+0x3> #\$08
+0+806d <L5x> bclr	\*0+001a <end_table\+0x4> #\$04
+0+8070 <L5x\+0x3> bclr	\*0+001b <end_table\+0x5> #\$08
+0+8073 <L5y> brset	\*0+0008 <table8> #\$04 0+8073 <L5y>
+0+8077 <L6x> brset	\*0+0008 <table8> #\$04 0+8077 <L6x>
+0+807b <L7x> brset	\*0+0008 <table8> #\$04 0+8094 <brend>
+0+807f <L8x> brset	\*0+0008 <table8> #\$04 0+8094 <brend>
+0+8083 <L8y> brclr	\*0+0008 <table8> #\$04 0+8083 <L8y>
+0+8087 <L9x> brclr	\*0+0008 <table8> #\$04 0+8087 <L9x>
+0+808b <L9y> brclr	\*0+0008 <table8> #\$04 0+8094 <brend>
+0+808f <L10x> brclr	\*0+0008 <table8> #\$04 0+8094 <brend>
+0+8093 <L10y> nop
+0+8094 <brend> bset	0,x #\$04
+0+8097 <w2> ldx	#0+0+ <__bss_size>
+0+809a <w3> ldy	#0+0008 <table8>
+0+809e <w4> rts
+0+809f <w5> ldx	#0+0+ <__bss_size>
+0+80a2 <w5\+0x3> bset	0,x #\$05
+0+80a5 <w5\+0x6> jmp	0+8000 <_start>
+0+80a8 <w5\+0x9> rts
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/ld-m68hc11/relax-group.s binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/relax-group.s
--- binutils-2.11.2/ld/testsuite/ld-m68hc11/relax-group.s	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/ld/testsuite/ld-m68hc11/relax-group.s	Sun Jan 20 20:07:16 2002
@@ -0,0 +1,161 @@
+;;; Test 68HC11 linker relaxation (group relax)
+;;; 
+	.sect .text
+	.globl _start
+_start:
+;;;
+;;; The following group of instructions are adjusted.
+;;;
+	.relax	L1x
+	ldx	#table
+	bset	0,x #4
+L1x:
+	.relax	L1y
+	ldy	#table
+	bset	0,y #4
+L1y:
+	.relax	L2x
+	ldx	#table+3
+	bset	0,x #4
+	bset	1,x #8
+L2x:
+	.relax	L2y
+	ldy	#table+3
+	bset	0,y #4
+	bset	1,y #8
+L2y:
+	.relax	L3x
+	ldx	#table+6
+	bset	0,x #4
+	bset	1,x #8
+	bset	2,x #12
+	bset	3,x #12
+	bset	4,x #12
+	bset	5,x #12
+L3x:
+	.relax	L3y
+	ldy	#table+6
+	bset	0,y #4
+	bset	1,y #8
+	bset	2,y #12
+	bset	3,y #12
+	bset	4,y #12
+	bset	5,y #12
+L3y:
+	;; Next branch is always relative.  It must be adjusted while
+	;; above instructions are relaxed.
+	bra	_start
+;;;
+;;; This group has the first two bset insn relaxable while the
+;;; others are not.  The ldx/ldy must not be removed.
+;;; 
+	.relax	L4x
+	ldx	#table+0xfe
+	bset	0,x #4
+	bset	1,x #8
+	bset	2,x #12
+	bset	3,x #12
+	bset	4,x #12
+	bset	5,x #12
+L4x:
+	.relax	L4y
+	ldy	#table+0xfe
+	bset	0,y #4
+	bset	1,y #8
+	bset	2,y #12
+	bset	3,y #12
+	bset	4,y #12
+	bset	5,y #12
+L4y:
+;;;
+;;; Relax group for bclr
+;;; 
+	.relax	L5x
+	ldx	#table+10
+	bclr	0,x #4
+	bclr	1,x #8
+L5x:
+	.relax	L5y
+	ldy	#table+16
+	bclr	10,y #4
+	bclr	11,y #8
+L5y:
+;;;
+;;; Relax group for brset (with backward branch)
+;;; 
+	.relax	L6x
+	ldx	#table+8
+	brset	0,x #4 L5y
+L6x:
+	.relax	L7x
+	ldy	#table+8
+	brset	0,y #4 L6x
+L7x:
+;;;
+;;; Relax group for brset (with forward branch)
+;;; 
+	.relax	L8x
+	ldx	#table+8
+	brset	0,x #4 brend
+L8x:
+	.relax	L8y
+	ldy	#table+8
+	brset	0,y #4 brend
+L8y:
+;;;
+;;; Relax group for brclr (with backward branch)
+;;; 
+	.relax	L9x
+	ldx	#table+8
+	brclr	0,x #4 L8y
+L9x:
+	.relax	L9y
+	ldy	#table+8
+	brclr	0,y #4 L9x
+L9y:
+;;;
+;;; Relax group for brclr (with forward branch)
+;;; 
+	.relax	L10x
+	ldx	#table+8
+	brclr	0,x #4 brend
+L10x:
+	.relax	L10y
+	ldy	#table+8
+	brclr	0,y #4 brend
+L10y:
+	nop
+brend:
+;;;
+;;; The following are wrong use of .relax groups.
+;;;
+	.relax	w1
+w1:
+	.relax	w2
+	bset	0,x #4
+w2:
+	.relax w3
+	ldx	#table
+w3:
+	.relax w4
+	ldy	#table+8
+w4:
+	.relax w5
+	rts
+w5:
+;;;
+;;; Next insn is not in a .relax group
+	ldx	#table
+	bset	0,x #5
+	bra	_start
+	rts
+
+	.sect .page0
+	.globl table
+table:	.long 0
+table4:	.long 0
+table8:	.long 0
+	.skip	10
+end_table:
+	.long 0
+
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/ld/testsuite/lib/ld-lib.exp binutils-2.11.2-m68hc1x/ld/testsuite/lib/ld-lib.exp
--- binutils-2.11.2/ld/testsuite/lib/ld-lib.exp	Fri Sep 21 20:58:42 2001
+++ binutils-2.11.2-m68hc1x/ld/testsuite/lib/ld-lib.exp	Sun Dec 16 12:50:26 2001
@@ -393,6 +393,537 @@ proc simple_diff { file_1 file_2 } {
     }
 }
 
+# run_dump_test FILE 
+# Copied from gas testsuite, tweaked and further extended.
+#
+# Assemble a .s file, then run some utility on it and check the output.
+# 
+# There should be an assembly language file named FILE.s in the test
+# suite directory, and a pattern file called FILE.d.  `run_dump_test'
+# will assemble FILE.s, run some tool like `objdump', `objcopy', or
+# `nm' on the .o file to produce textual output, and then analyze that
+# with regexps.  The FILE.d file specifies what program to run, and
+# what to expect in its output.
+#
+# The FILE.d file begins with zero or more option lines, which specify
+# flags to pass to the assembler, the program to run to dump the
+# assembler's output, and the options it wants.  The option lines have
+# the syntax:
+# 
+#         # OPTION: VALUE
+# 
+# OPTION is the name of some option, like "name" or "objdump", and
+# VALUE is OPTION's value.  The valid options are described below.
+# Whitespace is ignored everywhere, except within VALUE.  The option
+# list ends with the first line that doesn't match the above syntax
+# (hmm, not great for error detection).
+#
+# The interesting options are:
+# 
+#   name: TEST-NAME
+#	The name of this test, passed to DejaGNU's `pass' and `fail'
+#       commands.  If omitted, this defaults to FILE, the root of the
+#       .s and .d files' names.
+# 
+#   as: FLAGS
+#	When assembling, pass FLAGS to the assembler.
+#       If assembling several files, you can pass different assembler
+#       options in the "source" directives.  See below.
+#
+#   ld: FLAGS
+#       Link assembled files using FLAGS, in the order of the "source"
+#       directives, when using multiple files.
+#
+#   objcopy_linked_file: FLAGS
+#	Run objcopy on the linked file with the specified flags.
+#	This lets you transform the linked file using objcopy, before the
+#	result is analyzed by an analyzer program specified below (which
+#	may in turn *also* be objcopy).
+#
+#   PROG: PROGRAM-NAME
+#       The name of the program to run to analyze the .o file produced
+#       by the assembler or the linker output.  This can be omitted;
+#       run_dump_test will guess which program to run by seeing which of
+#       the flags options below is present.
+#
+#   objdump: FLAGS
+#   nm: FLAGS
+#   objcopy: FLAGS
+#	Use the specified program to analyze the assembler or linker
+#       output file, and pass it FLAGS, in addition to the output name.
+#
+#   source: SOURCE [FLAGS]
+#	Assemble the file SOURCE.s using the flags in the "as" directive
+#       and the (optional) FLAGS.  If omitted, the source defaults to
+#       FILE.s.
+#       This is useful if several .d files want to share a .s file.
+#       More than one "source" directive can be given, which is useful
+#       when testing linking.
+#
+#   xfail: TARGET
+#       The test is expected to fail on TARGET.  This may occur more than
+#       once.
+#
+#   target: TARGET
+#       Only run the test for TARGET.  This may occur more than once; the
+#       target being tested must match at least one.
+#
+#   notarget: TARGET
+#       Do not run the test for TARGET.  This may occur more than once;
+#       the target being tested must not match any of them.
+#
+#   error: REGEX
+#	An error with message matching REGEX must be emitted for the test
+#	to pass.  The PROG, objdump, nm and objcopy options have no
+#	meaning and need not supplied if this is present.
+#
+# Each option may occur at most once unless otherwise mentioned.
+#
+# After the option lines come regexp lines.  `run_dump_test' calls
+# `regexp_diff' to compare the output of the dumping tool against the
+# regexps in FILE.d.  `regexp_diff' is defined later in this file; see
+# further comments there.
+
+proc run_dump_test { name } {
+    global subdir srcdir
+    global OBJDUMP NM AS OBJCOPY READELF LD
+    global OBJDUMPFLAGS NMFLAGS ASFLAGS OBJCOPYFLAGS READELFFLAGS LDFLAGS
+    global host_triplet runtests
+
+    if [string match "*/*" $name] {
+	set file $name
+	set name [file tail $name]
+    } else {
+	set file "$srcdir/$subdir/$name"
+    }
+
+    if ![runtest_file_p $runtests $name] then {
+	return
+    }
+
+    set opt_array [slurp_options "${file}.d"]
+    if { $opt_array == -1 } {
+	perror "error reading options from $file.d"
+	unresolved $subdir/$name
+	return
+    }
+    set dumpfile tmpdir/dump.out
+    set run_ld 0
+    set run_objcopy 0
+    set opts(as) {}
+    set opts(ld) {}
+    set opts(xfail) {}
+    set opts(target) {}
+    set opts(notarget) {}
+    set opts(objdump) {}
+    set opts(nm) {}
+    set opts(objcopy) {}
+    set opts(readelf) {}
+    set opts(name) {}
+    set opts(PROG) {}
+    set opts(source) {}
+    set opts(error) {}
+    set opts(objcopy_linked_file) {}
+    set asflags(${file}.s) {}
+
+    foreach i $opt_array {
+	set opt_name [lindex $i 0]
+	set opt_val [lindex $i 1]
+	if ![info exists opts($opt_name)] {
+	    perror "unknown option $opt_name in file $file.d"
+	    unresolved $subdir/$name
+	    return
+	}
+
+	switch -- $opt_name {
+	    xfail {}
+	    target {}
+	    notarget {}
+	    source {
+		# Move any source-specific as-flags to a separate array to
+		# simplify processing.
+		if { [llength $opt_val] > 1 } {
+		    set asflags([lindex $opt_val 0]) [lrange $opt_val 1 end]
+		    set opt_val [lindex $opt_val 0]
+		} else {
+		    set asflags($opt_val) {}
+		}
+	    }
+	    default {
+		if [string length $opts($opt_name)] {
+		    perror "option $opt_name multiply set in $file.d"
+		    unresolved $subdir/$name
+		    return
+		}
+
+		# A single "# ld:" with no options should do the right thing.
+		if { $opt_name == "ld" } {
+		    set run_ld 1
+		}
+		# Likewise objcopy_linked_file.
+		if { $opt_name == "objcopy_linked_file" } {
+		    set run_objcopy 1
+		}
+	    }
+	}
+	set opts($opt_name) [concat $opts($opt_name) $opt_val]
+    }
+
+    # Decide early whether we should run the test for this target.
+    if { [llength $opts(target)] > 0 } {
+	set targmatch 0
+	foreach targ $opts(target) {
+	    if [istarget $targ] {
+		set targmatch 1
+		break
+	    }
+	}
+	if { $targmatch == 0 } {
+	    return
+	}
+    }
+    foreach targ $opts(notarget) {
+	if [istarget $targ] {
+	    return
+	}
+    }
+
+    if {$opts(PROG) != ""} {
+	switch -- $opts(PROG) {
+	    objdump
+		{ set program objdump }
+	    nm
+		{ set program nm }
+	    objcopy
+		{ set program objcopy }
+	    readelf
+		{ set program readelf }
+	    default
+		{ perror "unrecognized program option $opts(PROG) in $file.d"
+		  unresolved $subdir/$name
+		  return }
+	}
+    } elseif { $opts(error) != "" } {
+	# It's meaningless to require an output-testing method when we
+	# expect an error.  For simplicity, we fake an arbitrary method.
+	set program "nm"
+    } else {
+	# Guess which program to run, by seeing which option was specified.
+	set program ""
+	foreach p {objdump objcopy nm readelf} {
+	    if {$opts($p) != ""} {
+		if {$program != ""} {
+		    perror "ambiguous dump program in $file.d"
+		    unresolved $subdir/$name
+		    return
+		} else {
+		    set program $p
+		}
+	    }
+	}
+	if {$program == ""} {
+	    perror "dump program unspecified in $file.d"
+	    unresolved $subdir/$name
+	    return
+	}
+    }
+
+    set progopts1 $opts($program)
+    eval set progopts \$[string toupper $program]FLAGS
+    eval set binary \$[string toupper $program]
+    if { $opts(name) == "" } {
+	set testname "$subdir/$name"
+    } else {
+	set testname $opts(name)
+    }
+
+    if { $opts(source) == "" } {
+	set sourcefiles [list ${file}.s]
+    } else {
+	set sourcefiles {}
+	foreach sf $opts(source) {
+	    lappend sourcefiles "$srcdir/$subdir/$sf"
+	    # Must have asflags indexed on source name.
+	    set asflags($srcdir/$subdir/$sf) $asflags($sf)
+	}
+    }
+
+    # Time to setup xfailures.
+    foreach targ $opts(xfail) {
+	setup_xfail $targ
+    }
+
+    # Assemble each file.
+    set objfiles {}
+    for { set i 0 } { $i < [llength $sourcefiles] } { incr i } {
+	set sourcefile [lindex $sourcefiles $i]
+
+	set objfile "tmpdir/dump$i.o"
+	lappend objfiles $objfile
+	set cmd "$AS $ASFLAGS $opts(as) $asflags($sourcefile) -o $objfile $sourcefile"
+
+	send_log "$cmd\n"
+	set cmdret [catch "exec $cmd" comp_output]
+	set comp_output [prune_warnings $comp_output]
+
+	# We accept errors at assembly stage too, unless we're supposed to
+	# link something.
+	if { $cmdret != 0 || ![string match "" $comp_output] } then {
+	    send_log "$comp_output\n"
+	    verbose "$comp_output" 3
+	    if { $opts(error) != "" && $run_ld == 0 } {
+		if [regexp $opts(error) $comp_output] {
+		    pass $testname
+		    return
+		}
+	    }
+	    fail $testname
+	    return
+	}
+    }
+
+    # Perhaps link the file(s).
+    if { $run_ld } {
+	set objfile "tmpdir/dump"
+	set cmd "$LD $LDFLAGS $opts(ld) -o $objfile $objfiles"
+
+	send_log "$cmd\n"
+	set cmdret [catch "exec $cmd" comp_output]
+	set comp_output [prune_warnings $comp_output]
+
+	if { $cmdret != 0 || ![string match "" $comp_output] } then {
+	    verbose -log "failed with: <$comp_output>, expected: <$opts(error)>"
+	    send_log "$comp_output\n"
+	    verbose "$comp_output" 3
+	    if { $opts(error) != "" && $run_objcopy == 0 } {
+		if [regexp $opts(error) $comp_output] {
+		    pass $testname
+		    return
+		}
+	    }
+	    fail $testname
+	    return
+	}
+
+	if { $run_objcopy } {
+	    set infile $objfile
+	    set objfile "tmpdir/dump1"
+
+	    # Note that we don't use OBJCOPYFLAGS here; any flags must be
+	    # explicitly specified.
+	    set cmd "$OBJCOPY $opts(objcopy_linked_file) $infile $objfile"
+
+	    send_log "$cmd\n"
+	    set cmdret [catch "exec $cmd" comp_output]
+	    set comp_output [prune_warnings $comp_output]
+
+	    if { $cmdret != 0 || ![string match "" $comp_output] } then {
+		verbose -log "failed with: <$comp_output>, expected: <$opts(error)>"
+		send_log "$comp_output\n"
+		verbose "$comp_output" 3
+		if { $opts(error) != "" } {
+		    if [regexp $opts(error) $comp_output] {
+			pass $testname
+			return
+		    }
+		}
+		fail $testname
+		return
+	    }
+	}
+    } else {
+	set objfile "tmpdir/dump0.o"
+    }
+
+    # We must not have expected failure if we get here.
+    if { $opts(error) != "" } {
+	fail $testname
+	return
+    }
+
+    if { [which $binary] == 0 } {
+	untested $testname
+	return
+    }
+
+    if { $progopts1 == "" } { set $progopts1 "-r" }
+    verbose "running $binary $progopts $progopts1" 3
+
+    # Objcopy, unlike the other two, won't send its output to stdout,
+    # so we have to run it specially.
+    if { $program == "objcopy" } {
+	set cmd "$binary $progopts $progopts1 $objfile $dumpfile"
+	send_log "$cmd\n"
+	catch "exec $cmd" comp_output
+	set comp_output [prune_warnings $comp_output]
+	if ![string match "" $comp_output] then {
+	    send_log "$comp_output\n"
+	    fail $testname
+	    return
+	}
+    } else {
+	set cmd "$binary $progopts $progopts1 $objfile > $dumpfile"
+	send_log "$cmd\n"
+	catch "exec $cmd" comp_output
+	set comp_output [prune_warnings $comp_output]
+	if ![string match "" $comp_output] then {
+	    send_log "$comp_output\n"
+	    fail $testname
+	    return
+	}
+    }
+
+    verbose_eval {[file_contents $dumpfile]} 3
+    if { [regexp_diff $dumpfile "${file}.d"] } then {
+	fail $testname
+	verbose "output is [file_contents $dumpfile]" 2
+	return
+    }
+
+    pass $testname
+}
+
+proc slurp_options { file } {
+    if [catch { set f [open $file r] } x] {
+	#perror "couldn't open `$file': $x"
+	perror "$x"
+	return -1
+    }
+    set opt_array {}
+    # whitespace expression
+    set ws  {[ 	]*}
+    set nws {[^ 	]*}
+    # whitespace is ignored anywhere except within the options list;
+    # option names are alphabetic plus underscore only.
+    set pat "^#${ws}(\[a-zA-Z_\]*)$ws:${ws}(.*)$ws\$"
+    while { [gets $f line] != -1 } {
+	set line [string trim $line]
+	# Whitespace here is space-tab.
+	if [regexp $pat $line xxx opt_name opt_val] {
+	    # match!
+	    lappend opt_array [list $opt_name $opt_val]
+	} else {
+	    break
+	}
+    }
+    close $f
+    return $opt_array
+}
+
+# regexp_diff, copied from gas, based on simple_diff above.
+#	compares two files line-by-line
+#	file1 contains strings, file2 contains regexps and #-comments
+#	blank lines are ignored in either file
+#	returns non-zero if differences exist
+#
+proc regexp_diff { file_1 file_2 } {
+
+    set eof -1
+    set end_1 0
+    set end_2 0
+    set differences 0
+    set diff_pass 0
+
+    if [file exists $file_1] then {
+	set file_a [open $file_1 r]
+    } else {
+	warning "$file_1 doesn't exist"
+	return 1
+    }
+
+    if [file exists $file_2] then {
+	set file_b [open $file_2 r]
+    } else {
+	fail "$file_2 doesn't exist"
+	close $file_a
+	return 1
+    }
+
+    verbose " Regexp-diff'ing: $file_1 $file_2" 2
+
+    while { 1 } {
+	set line_a ""
+	set line_b ""
+	while { [string length $line_a] == 0 } {
+	    if { [gets $file_a line_a] == $eof } {
+		set end_1 1
+		break
+	    }
+	}
+	while { [string length $line_b] == 0 || [string match "#*" $line_b] } {
+	    if [ string match "#pass" $line_b ] {
+		set end_2 1
+		set diff_pass 1
+		break
+	    } elseif [ string match "#..." $line_b ] {
+		if { [gets $file_b line_b] == $eof } {
+		    set end_2 1
+		    break
+		}
+		verbose "looking for \"^$line_b$\"" 3
+		while { ![regexp "^$line_b$" "$line_a"] } {
+		    verbose "skipping    \"$line_a\"" 3
+		    if { [gets $file_a line_a] == $eof } {
+			set end_1 1
+			break
+		    }
+		}
+		break
+	    }
+	    if { [gets $file_b line_b] == $eof } {
+		set end_2 1
+		break
+	    }
+	}
+
+        if { $diff_pass } { 
+            break 
+        } elseif { $end_1 && $end_2 } { 
+            break
+        } elseif { $end_1 } {
+            send_log "extra regexps in $file_2 starting with \"^$line_b$\"\nEOF from $file_1\n"
+            verbose "extra regexps in $file_2 starting with \"^$line_b$\"\nEOF from $file_1" 3
+            set differences 1
+            break
+        } elseif { $end_2 } {
+            send_log "extra lines in $file_1 starting with \"^$line_a$\"\nEOF from $file_2\n"
+            verbose "extra lines in $file_1 starting with \"^$line_a$\"\nEOF from $file_2\n" 3
+            set differences 1
+            break
+        } else {
+            verbose "regexp \"^$line_b$\"\nline   \"$line_a\"" 3
+            if ![regexp "^$line_b$" "$line_a"] {
+		send_log "regexp_diff match failure\n"
+		send_log "regexp \"^$line_b$\"\nline   \"$line_a\"\n"
+		set differences 1
+            }
+        }
+    }
+
+    if { $differences == 0 && !$diff_pass && [eof $file_a] != [eof $file_b] } {
+	send_log "$file_1 and $file_2 are different lengths\n"
+	verbose "$file_1 and $file_2 are different lengths" 3
+	set differences 1
+    }
+
+    close $file_a
+    close $file_b
+
+    return $differences
+}
+
+proc file_contents { filename } {
+    set file [open $filename r]
+    set contents [read $file]
+    close $file
+    return $contents
+}
+
+proc verbose_eval { expr { level 1 } } {
+    global verbose
+    if $verbose>$level then { eval verbose "$expr" $level }
+}
+
 # This definition is taken from an unreleased version of DejaGnu.  Once
 # that version gets released, and has been out in the world for a few
 # months at least, it may be safe to delete this copy.
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/opcodes/ChangeLog.M68HC11 binutils-2.11.2-m68hc1x/opcodes/ChangeLog.M68HC11
--- binutils-2.11.2/opcodes/ChangeLog.M68HC11	Thu Jan  1 01:00:00 1970
+++ binutils-2.11.2-m68hc1x/opcodes/ChangeLog.M68HC11	Sun Dec 16 12:22:26 2001
@@ -0,0 +1,4 @@
+2001-11-01  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+	* m68hc11-dis.c (print_insn): Fix disassembly of movb with a
+	constant as source.
diff --exclude-from=exclude.lst -Nrup binutils-2.11.2/opcodes/m68hc11-dis.c binutils-2.11.2-m68hc1x/opcodes/m68hc11-dis.c
--- binutils-2.11.2/opcodes/m68hc11-dis.c	Fri Sep 21 20:58:42 2001
+++ binutils-2.11.2-m68hc1x/opcodes/m68hc11-dis.c	Sun Dec 16 12:22:07 2001
@@ -1,5 +1,5 @@
 /* m68hc11-dis.c -- Motorola 68HC11 & 68HC12 disassembly
-   Copyright 1999, 2000 Free Software Foundation, Inc.
+   Copyright 1999, 2000, 2001 Free Software Foundation, Inc.
    Written by Stephane Carrez (stcarrez@worldnet.fr)
 
 This program is free software; you can redistribute it and/or modify
@@ -36,6 +36,14 @@ static const char *const reg_dst_table[]
 
 #define OP_PAGE_MASK (M6811_OP_PAGE2|M6811_OP_PAGE3|M6811_OP_PAGE4)
 
+/* Prototypes for local functions.  */
+static int read_memory
+  PARAMS ((bfd_vma, bfd_byte *, int, struct disassemble_info *));
+static int print_indexed_operand
+  PARAMS ((bfd_vma, struct disassemble_info *, int));
+static int print_insn
+  PARAMS ((bfd_vma, struct disassemble_info *, int));
+
 static int
 read_memory (memaddr, buffer, size, info)
      bfd_vma memaddr;
@@ -358,14 +366,35 @@ print_insn (memaddr, info, arch)
 	  (*info->fprintf_func) (info->stream, "\t");
 	}
 
-      /* The movb and movw must be handled in a special way...  */
-      offset = 0;
-      if (format & (M6812_OP_IDX_P2 | M6812_OP_IND16_P2))
-	{
-	  if ((format & M6812_OP_IDX_P2)
-	      && (format & (M6811_OP_IMM8 | M6811_OP_IMM16 | M6811_OP_IND16)))
-	    offset = 1;
-	}
+      /* The movb and movw must be handled in a special way...
+         The source constant 'ii' is not always at the same place.
+         This is the same for the destination for the post-indexed byte.
+         The 'offset' is used to do the appropriate correction.
+
+                                   offset          offset
+                              for constant     for destination
+         movb   18 OB ii hh ll       0          0
+                18 08 xb ii          1          -1
+                18 0C hh ll hh ll    0          0
+                18 09 xb hh ll       1          -1
+                18 0D xb hh ll       0          0
+                18 0A xb xb          0          0
+
+         movw   18 03 jj kk hh ll    0          0
+                18 00 xb jj kk       1          -1
+                18 04 hh ll hh ll    0          0
+                18 01 xb hh ll       1          -1
+                18 05 xb hh ll       0          0
+                18 02 xb xb          0          0
+
+         After the source operand is read, the position 'pos' is incremented
+         this explains the negative offset for destination.
+
+         movb/movw above are the only instructions with this matching
+         format.  */
+      offset = ((format & M6812_OP_IDX_P2)
+                && (format & (M6811_OP_IMM8 | M6811_OP_IMM16 |
+                              M6811_OP_IND16)));
 
       /* Operand with one more byte: - immediate, offset,
          direct-low address.  */
@@ -379,7 +408,10 @@ print_insn (memaddr, info, arch)
 	    }
 
 	  pos++;
-	  offset = -1;
+
+          /* This movb/movw is special (see above).  */
+          offset = -offset;
+
 	  if (format & M6811_OP_IMM8)
 	    {
 	      (*info->fprintf_func) (info->stream, "#%d", (int) buffer[0]);