gdb: add target_ops::supports_displaced_step
[deliverable/binutils-gdb.git] / bfd / ecoffswap.h
index 00155917cf8bd12a5fb128ee5f2b0c4f7772e016..24292c8a96913d20baf60e5748a1b4f6cdf7bb0a 100644 (file)
@@ -1,22 +1,24 @@
 /* Generic ECOFF swapping routines, for BFD.
 /* Generic ECOFF swapping routines, for BFD.
-   Copyright 1992, 1993 Free Software Foundation, Inc.
+   Copyright (C) 1992-2020 Free Software Foundation, Inc.
    Written by Cygnus Support.
 
    Written by Cygnus Support.
 
-This file is part of BFD, the Binary File Descriptor library.
+   This file is part of BFD, the Binary File Descriptor library.
 
 
-This program 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 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 3 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.
+   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., 51 Franklin Street - Fifth Floor, Boston,
+   MA 02110-1301, USA.  */
 
 
-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.  */
 
 /* NOTE: This is a header file, but it contains executable routines.
    This is done this way because these routines are substantially
 
 /* NOTE: This is a header file, but it contains executable routines.
    This is done this way because these routines are substantially
@@ -27,10 +29,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
    on them in gdb by naming the including source file; e.g.,
    'coff-mips.c':ecoff_swap_hdr_in.
 
    on them in gdb by naming the including source file; e.g.,
    'coff-mips.c':ecoff_swap_hdr_in.
 
-   Before including this header file, one of ECOFF_32 or ECOFF_64 must
-   be defined.  These are checked when swapping information that
-   depends upon the target size.  This code works for 32 bit and 64
-   bit ECOFF, but may need to be generalized in the future.
+   Before including this header file, one of ECOFF_32, ECOFF_64,
+   ECOFF_SIGNED_32 or ECOFF_SIGNED_64 must be defined.  These are
+   checked when swapping information that depends upon the target
+   size.  This code works for 32 bit and 64 bit ECOFF, but may need to
+   be generalized in the future.
 
    Some header file which defines the external forms of these
    structures must also be included before including this header file.
 
    Some header file which defines the external forms of these
    structures must also be included before including this header file.
@@ -43,302 +46,306 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
    with the proper byte sex and such.  */
 
 #ifdef ECOFF_32
    with the proper byte sex and such.  */
 
 #ifdef ECOFF_32
-#define ecoff_get_off bfd_h_get_32
-#define ecoff_put_off bfd_h_put_32
+#define ECOFF_GET_OFF H_GET_32
+#define ECOFF_PUT_OFF H_PUT_32
 #endif
 #ifdef ECOFF_64
 #endif
 #ifdef ECOFF_64
-#define ecoff_get_off bfd_h_get_64
-#define ecoff_put_off bfd_h_put_64
+#define ECOFF_GET_OFF H_GET_64
+#define ECOFF_PUT_OFF H_PUT_64
+#endif
+#ifdef ECOFF_SIGNED_32
+#define ECOFF_GET_OFF H_GET_S32
+#define ECOFF_PUT_OFF H_PUT_S32
+#endif
+#ifdef ECOFF_SIGNED_64
+#define ECOFF_GET_OFF H_GET_S64
+#define ECOFF_PUT_OFF H_PUT_S64
 #endif
 
 /* ECOFF auxiliary information swapping routines.  These are the same
    for all ECOFF targets, so they are defined in ecofflink.c.  */
 
 extern void _bfd_ecoff_swap_tir_in
 #endif
 
 /* ECOFF auxiliary information swapping routines.  These are the same
    for all ECOFF targets, so they are defined in ecofflink.c.  */
 
 extern void _bfd_ecoff_swap_tir_in
-  PARAMS ((int, const struct tir_ext *, TIR *));
+  (int, const struct tir_ext *, TIR *);
 extern void _bfd_ecoff_swap_tir_out
 extern void _bfd_ecoff_swap_tir_out
-  PARAMS ((int, const TIR *, struct tir_ext *));
+  (int, const TIR *, struct tir_ext *);
 extern void _bfd_ecoff_swap_rndx_in
 extern void _bfd_ecoff_swap_rndx_in
-  PARAMS ((int, const struct rndx_ext *, RNDXR *));
+  (int, const struct rndx_ext *, RNDXR *);
 extern void _bfd_ecoff_swap_rndx_out
 extern void _bfd_ecoff_swap_rndx_out
-  PARAMS ((int, const RNDXR *, struct rndx_ext *));
+  (int, const RNDXR *, struct rndx_ext *);
 
 /* Prototypes for functions defined in this file.  */
 
 
 /* Prototypes for functions defined in this file.  */
 
-static void ecoff_swap_hdr_in PARAMS ((bfd *, PTR, HDRR *));
-static void ecoff_swap_hdr_out PARAMS ((bfd *, const HDRR *, PTR));
-static void ecoff_swap_fdr_in PARAMS ((bfd *, PTR, FDR *));
-static void ecoff_swap_fdr_out PARAMS ((bfd *, const FDR *, PTR));
-static void ecoff_swap_pdr_in PARAMS ((bfd *, PTR, PDR *));
-static void ecoff_swap_pdr_out PARAMS ((bfd *, const PDR *, PTR));
-static void ecoff_swap_sym_in PARAMS ((bfd *, PTR, SYMR *));
-static void ecoff_swap_sym_out PARAMS ((bfd *, const SYMR *, PTR));
-static void ecoff_swap_ext_in PARAMS ((bfd *, PTR, EXTR *));
-static void ecoff_swap_ext_out PARAMS ((bfd *, const EXTR *, PTR));
-static void ecoff_swap_rfd_in PARAMS ((bfd *, PTR, RFDT *));
-static void ecoff_swap_rfd_out PARAMS ((bfd *, const RFDT *, PTR));
-static void ecoff_swap_opt_in PARAMS ((bfd *, PTR, OPTR *));
-static void ecoff_swap_opt_out PARAMS ((bfd *, const OPTR *, PTR));
-static void ecoff_swap_dnr_in PARAMS ((bfd *, PTR, DNR *));
-static void ecoff_swap_dnr_out PARAMS ((bfd *, const DNR *, PTR));
+static void ecoff_swap_hdr_in (bfd *, void *, HDRR *);
+static void ecoff_swap_hdr_out (bfd *, const HDRR *, void *);
+static void ecoff_swap_fdr_in (bfd *, void *, FDR *);
+static void ecoff_swap_fdr_out (bfd *, const FDR *, void *);
+static void ecoff_swap_pdr_in (bfd *, void *, PDR *);
+static void ecoff_swap_pdr_out (bfd *, const PDR *, void *);
+static void ecoff_swap_sym_in (bfd *, void *, SYMR *);
+static void ecoff_swap_sym_out (bfd *, const SYMR *, void *);
+static void ecoff_swap_ext_in (bfd *, void *, EXTR *);
+static void ecoff_swap_ext_out (bfd *, const EXTR *, void *);
+static void ecoff_swap_rfd_in (bfd *, void *, RFDT *);
+static void ecoff_swap_rfd_out (bfd *, const RFDT *, void *);
+static void ecoff_swap_opt_in (bfd *, void *, OPTR *);
+static void ecoff_swap_opt_out (bfd *, const OPTR *, void *);
+static void ecoff_swap_dnr_in (bfd *, void *, DNR *);
+static void ecoff_swap_dnr_out (bfd *, const DNR *, void *);
 
 /* Swap in the symbolic header.  */
 
 static void
 
 /* Swap in the symbolic header.  */
 
 static void
-ecoff_swap_hdr_in (abfd, ext_copy, intern)
-     bfd *abfd;
-     PTR ext_copy;
-     HDRR *intern;
+ecoff_swap_hdr_in (bfd *abfd, void * ext_copy, HDRR *intern)
 {
   struct hdr_ext ext[1];
 
   *ext = *(struct hdr_ext *) ext_copy;
 
 {
   struct hdr_ext ext[1];
 
   *ext = *(struct hdr_ext *) ext_copy;
 
-  intern->magic         = bfd_h_get_signed_16 (abfd, (bfd_byte *)ext->h_magic);
-  intern->vstamp        = bfd_h_get_signed_16 (abfd, (bfd_byte *)ext->h_vstamp);
-  intern->ilineMax      = bfd_h_get_32 (abfd, (bfd_byte *)ext->h_ilineMax);
-  intern->cbLine        = ecoff_get_off (abfd, (bfd_byte *)ext->h_cbLine);
-  intern->cbLineOffset  = ecoff_get_off (abfd, (bfd_byte *)ext->h_cbLineOffset);
-  intern->idnMax        = bfd_h_get_32 (abfd, (bfd_byte *)ext->h_idnMax);
-  intern->cbDnOffset    = ecoff_get_off (abfd, (bfd_byte *)ext->h_cbDnOffset);
-  intern->ipdMax        = bfd_h_get_32 (abfd, (bfd_byte *)ext->h_ipdMax);
-  intern->cbPdOffset    = ecoff_get_off (abfd, (bfd_byte *)ext->h_cbPdOffset);
-  intern->isymMax       = bfd_h_get_32 (abfd, (bfd_byte *)ext->h_isymMax);
-  intern->cbSymOffset   = ecoff_get_off (abfd, (bfd_byte *)ext->h_cbSymOffset);
-  intern->ioptMax       = bfd_h_get_32 (abfd, (bfd_byte *)ext->h_ioptMax);
-  intern->cbOptOffset   = ecoff_get_off (abfd, (bfd_byte *)ext->h_cbOptOffset);
-  intern->iauxMax       = bfd_h_get_32 (abfd, (bfd_byte *)ext->h_iauxMax);
-  intern->cbAuxOffset   = ecoff_get_off (abfd, (bfd_byte *)ext->h_cbAuxOffset);
-  intern->issMax        = bfd_h_get_32 (abfd, (bfd_byte *)ext->h_issMax);
-  intern->cbSsOffset    = ecoff_get_off (abfd, (bfd_byte *)ext->h_cbSsOffset);
-  intern->issExtMax     = bfd_h_get_32 (abfd, (bfd_byte *)ext->h_issExtMax);
-  intern->cbSsExtOffset = ecoff_get_off (abfd, (bfd_byte *)ext->h_cbSsExtOffset);
-  intern->ifdMax        = bfd_h_get_32 (abfd, (bfd_byte *)ext->h_ifdMax);
-  intern->cbFdOffset    = ecoff_get_off (abfd, (bfd_byte *)ext->h_cbFdOffset);
-  intern->crfd          = bfd_h_get_32 (abfd, (bfd_byte *)ext->h_crfd);
-  intern->cbRfdOffset   = ecoff_get_off (abfd, (bfd_byte *)ext->h_cbRfdOffset);
-  intern->iextMax       = bfd_h_get_32 (abfd, (bfd_byte *)ext->h_iextMax);
-  intern->cbExtOffset   = ecoff_get_off (abfd, (bfd_byte *)ext->h_cbExtOffset);
+  intern->magic                = H_GET_S16     (abfd, ext->h_magic);
+  intern->vstamp       = H_GET_S16     (abfd, ext->h_vstamp);
+  intern->ilineMax     = H_GET_32      (abfd, ext->h_ilineMax);
+  intern->cbLine       = ECOFF_GET_OFF (abfd, ext->h_cbLine);
+  intern->cbLineOffset = ECOFF_GET_OFF (abfd, ext->h_cbLineOffset);
+  intern->idnMax       = H_GET_32      (abfd, ext->h_idnMax);
+  intern->cbDnOffset   = ECOFF_GET_OFF (abfd, ext->h_cbDnOffset);
+  intern->ipdMax       = H_GET_32      (abfd, ext->h_ipdMax);
+  intern->cbPdOffset   = ECOFF_GET_OFF (abfd, ext->h_cbPdOffset);
+  intern->isymMax      = H_GET_32      (abfd, ext->h_isymMax);
+  intern->cbSymOffset  = ECOFF_GET_OFF (abfd, ext->h_cbSymOffset);
+  intern->ioptMax      = H_GET_32      (abfd, ext->h_ioptMax);
+  intern->cbOptOffset  = ECOFF_GET_OFF (abfd, ext->h_cbOptOffset);
+  intern->iauxMax      = H_GET_32      (abfd, ext->h_iauxMax);
+  intern->cbAuxOffset  = ECOFF_GET_OFF (abfd, ext->h_cbAuxOffset);
+  intern->issMax       = H_GET_32      (abfd, ext->h_issMax);
+  intern->cbSsOffset   = ECOFF_GET_OFF (abfd, ext->h_cbSsOffset);
+  intern->issExtMax    = H_GET_32      (abfd, ext->h_issExtMax);
+  intern->cbSsExtOffset = ECOFF_GET_OFF (abfd, ext->h_cbSsExtOffset);
+  intern->ifdMax       = H_GET_32      (abfd, ext->h_ifdMax);
+  intern->cbFdOffset   = ECOFF_GET_OFF (abfd, ext->h_cbFdOffset);
+  intern->crfd         = H_GET_32      (abfd, ext->h_crfd);
+  intern->cbRfdOffset  = ECOFF_GET_OFF (abfd, ext->h_cbRfdOffset);
+  intern->iextMax      = H_GET_32      (abfd, ext->h_iextMax);
+  intern->cbExtOffset  = ECOFF_GET_OFF (abfd, ext->h_cbExtOffset);
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 /* Swap out the symbolic header.  */
 
 static void
 #endif
 }
 
 /* Swap out the symbolic header.  */
 
 static void
-ecoff_swap_hdr_out (abfd, intern_copy, ext_ptr)
-     bfd *abfd;
-     const HDRR *intern_copy;
-     PTR ext_ptr;
+ecoff_swap_hdr_out (bfd *abfd, const HDRR *intern_copy, void * ext_ptr)
 {
   struct hdr_ext *ext = (struct hdr_ext *) ext_ptr;
   HDRR intern[1];
 
   *intern = *intern_copy;
 
 {
   struct hdr_ext *ext = (struct hdr_ext *) ext_ptr;
   HDRR intern[1];
 
   *intern = *intern_copy;
 
-  bfd_h_put_signed_16 (abfd, intern->magic, (bfd_byte *)ext->h_magic);
-  bfd_h_put_signed_16 (abfd, intern->vstamp, (bfd_byte *)ext->h_vstamp);
-  bfd_h_put_32 (abfd, intern->ilineMax, (bfd_byte *)ext->h_ilineMax);
-  ecoff_put_off (abfd, intern->cbLine, (bfd_byte *)ext->h_cbLine);
-  ecoff_put_off (abfd, intern->cbLineOffset, (bfd_byte *)ext->h_cbLineOffset);
-  bfd_h_put_32 (abfd, intern->idnMax, (bfd_byte *)ext->h_idnMax);
-  ecoff_put_off (abfd, intern->cbDnOffset, (bfd_byte *)ext->h_cbDnOffset);
-  bfd_h_put_32 (abfd, intern->ipdMax, (bfd_byte *)ext->h_ipdMax);
-  ecoff_put_off (abfd, intern->cbPdOffset, (bfd_byte *)ext->h_cbPdOffset);
-  bfd_h_put_32 (abfd, intern->isymMax, (bfd_byte *)ext->h_isymMax);
-  ecoff_put_off (abfd, intern->cbSymOffset, (bfd_byte *)ext->h_cbSymOffset);
-  bfd_h_put_32 (abfd, intern->ioptMax, (bfd_byte *)ext->h_ioptMax);
-  ecoff_put_off (abfd, intern->cbOptOffset, (bfd_byte *)ext->h_cbOptOffset);
-  bfd_h_put_32 (abfd, intern->iauxMax, (bfd_byte *)ext->h_iauxMax);
-  ecoff_put_off (abfd, intern->cbAuxOffset, (bfd_byte *)ext->h_cbAuxOffset);
-  bfd_h_put_32 (abfd, intern->issMax, (bfd_byte *)ext->h_issMax);
-  ecoff_put_off (abfd, intern->cbSsOffset, (bfd_byte *)ext->h_cbSsOffset);
-  bfd_h_put_32 (abfd, intern->issExtMax, (bfd_byte *)ext->h_issExtMax);
-  ecoff_put_off (abfd, intern->cbSsExtOffset, (bfd_byte *)ext->h_cbSsExtOffset);
-  bfd_h_put_32 (abfd, intern->ifdMax, (bfd_byte *)ext->h_ifdMax);
-  ecoff_put_off (abfd, intern->cbFdOffset, (bfd_byte *)ext->h_cbFdOffset);
-  bfd_h_put_32 (abfd, intern->crfd, (bfd_byte *)ext->h_crfd);
-  ecoff_put_off (abfd, intern->cbRfdOffset, (bfd_byte *)ext->h_cbRfdOffset);
-  bfd_h_put_32 (abfd, intern->iextMax, (bfd_byte *)ext->h_iextMax);
-  ecoff_put_off (abfd, intern->cbExtOffset, (bfd_byte *)ext->h_cbExtOffset);
+  H_PUT_S16    (abfd, intern->magic,         ext->h_magic);
+  H_PUT_S16    (abfd, intern->vstamp,        ext->h_vstamp);
+  H_PUT_32     (abfd, intern->ilineMax,      ext->h_ilineMax);
+  ECOFF_PUT_OFF (abfd, intern->cbLine,       ext->h_cbLine);
+  ECOFF_PUT_OFF (abfd, intern->cbLineOffset,  ext->h_cbLineOffset);
+  H_PUT_32     (abfd, intern->idnMax,        ext->h_idnMax);
+  ECOFF_PUT_OFF (abfd, intern->cbDnOffset,    ext->h_cbDnOffset);
+  H_PUT_32     (abfd, intern->ipdMax,        ext->h_ipdMax);
+  ECOFF_PUT_OFF (abfd, intern->cbPdOffset,    ext->h_cbPdOffset);
+  H_PUT_32     (abfd, intern->isymMax,       ext->h_isymMax);
+  ECOFF_PUT_OFF (abfd, intern->cbSymOffset,   ext->h_cbSymOffset);
+  H_PUT_32     (abfd, intern->ioptMax,       ext->h_ioptMax);
+  ECOFF_PUT_OFF (abfd, intern->cbOptOffset,   ext->h_cbOptOffset);
+  H_PUT_32     (abfd, intern->iauxMax,       ext->h_iauxMax);
+  ECOFF_PUT_OFF (abfd, intern->cbAuxOffset,   ext->h_cbAuxOffset);
+  H_PUT_32     (abfd, intern->issMax,        ext->h_issMax);
+  ECOFF_PUT_OFF (abfd, intern->cbSsOffset,    ext->h_cbSsOffset);
+  H_PUT_32     (abfd, intern->issExtMax,     ext->h_issExtMax);
+  ECOFF_PUT_OFF (abfd, intern->cbSsExtOffset, ext->h_cbSsExtOffset);
+  H_PUT_32     (abfd, intern->ifdMax,        ext->h_ifdMax);
+  ECOFF_PUT_OFF (abfd, intern->cbFdOffset,    ext->h_cbFdOffset);
+  H_PUT_32     (abfd, intern->crfd,          ext->h_crfd);
+  ECOFF_PUT_OFF (abfd, intern->cbRfdOffset,   ext->h_cbRfdOffset);
+  H_PUT_32     (abfd, intern->iextMax,       ext->h_iextMax);
+  ECOFF_PUT_OFF (abfd, intern->cbExtOffset,   ext->h_cbExtOffset);
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 /* Swap in the file descriptor record.  */
 
 static void
 #endif
 }
 
 /* Swap in the file descriptor record.  */
 
 static void
-ecoff_swap_fdr_in (abfd, ext_copy, intern)
-     bfd *abfd;
-     PTR ext_copy;
-     FDR *intern;
+ecoff_swap_fdr_in (bfd *abfd, void * ext_copy, FDR *intern)
 {
   struct fdr_ext ext[1];
 
   *ext = *(struct fdr_ext *) ext_copy;
 {
   struct fdr_ext ext[1];
 
   *ext = *(struct fdr_ext *) ext_copy;
-  
-  intern->adr           = ecoff_get_off (abfd, (bfd_byte *)ext->f_adr);
-  intern->rss           = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_rss);
-  intern->issBase       = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_issBase);
-  intern->cbSs          = ecoff_get_off (abfd, (bfd_byte *)ext->f_cbSs);
-  intern->isymBase      = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_isymBase);
-  intern->csym          = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_csym);
-  intern->ilineBase     = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_ilineBase);
-  intern->cline         = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_cline);
-  intern->ioptBase      = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_ioptBase);
-  intern->copt          = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_copt);
-#ifdef ECOFF_32
-  intern->ipdFirst      = bfd_h_get_16 (abfd, (bfd_byte *)ext->f_ipdFirst);
-  intern->cpd           = bfd_h_get_16 (abfd, (bfd_byte *)ext->f_cpd);
+
+  intern->adr          = ECOFF_GET_OFF (abfd, ext->f_adr);
+  intern->rss          = H_GET_32 (abfd, ext->f_rss);
+#if defined (ECOFF_64) || defined (ECOFF_SIGNED_64)
+  if (intern->rss == (signed long) 0xffffffff)
+    intern->rss = -1;
 #endif
 #endif
-#ifdef ECOFF_64
-  intern->ipdFirst      = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_ipdFirst);
-  intern->cpd           = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_cpd);
-#endif
-  intern->iauxBase      = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_iauxBase);
-  intern->caux          = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_caux);
-  intern->rfdBase       = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_rfdBase);
-  intern->crfd          = bfd_h_get_32 (abfd, (bfd_byte *)ext->f_crfd);
-
-  /* now the fun stuff... */
-  if (bfd_header_big_endian (abfd)) {
-    intern->lang        = (ext->f_bits1[0] & FDR_BITS1_LANG_BIG)
-                                       >> FDR_BITS1_LANG_SH_BIG;
-    intern->fMerge      = 0 != (ext->f_bits1[0] & FDR_BITS1_FMERGE_BIG);
-    intern->fReadin     = 0 != (ext->f_bits1[0] & FDR_BITS1_FREADIN_BIG);
-    intern->fBigendian  = 0 != (ext->f_bits1[0] & FDR_BITS1_FBIGENDIAN_BIG);
-    intern->glevel      = (ext->f_bits2[0] & FDR_BITS2_GLEVEL_BIG)
-                                       >> FDR_BITS2_GLEVEL_SH_BIG;
-  } else {
-    intern->lang        = (ext->f_bits1[0] & FDR_BITS1_LANG_LITTLE)
-                                       >> FDR_BITS1_LANG_SH_LITTLE;
-    intern->fMerge      = 0 != (ext->f_bits1[0] & FDR_BITS1_FMERGE_LITTLE);
-    intern->fReadin     = 0 != (ext->f_bits1[0] & FDR_BITS1_FREADIN_LITTLE);
-    intern->fBigendian  = 0 != (ext->f_bits1[0] & FDR_BITS1_FBIGENDIAN_LITTLE);
-    intern->glevel      = (ext->f_bits2[0] & FDR_BITS2_GLEVEL_LITTLE)
-                                       >> FDR_BITS2_GLEVEL_SH_LITTLE;
-  }
+  intern->issBase      = H_GET_32 (abfd, ext->f_issBase);
+  intern->cbSs         = ECOFF_GET_OFF (abfd, ext->f_cbSs);
+  intern->isymBase     = H_GET_32 (abfd, ext->f_isymBase);
+  intern->csym         = H_GET_32 (abfd, ext->f_csym);
+  intern->ilineBase    = H_GET_32 (abfd, ext->f_ilineBase);
+  intern->cline                = H_GET_32 (abfd, ext->f_cline);
+  intern->ioptBase     = H_GET_32 (abfd, ext->f_ioptBase);
+  intern->copt         = H_GET_32 (abfd, ext->f_copt);
+#if defined (ECOFF_32) || defined (ECOFF_SIGNED_32)
+  intern->ipdFirst     = H_GET_16 (abfd, ext->f_ipdFirst);
+  intern->cpd          = H_GET_16 (abfd, ext->f_cpd);
+#endif
+#if defined (ECOFF_64) || defined (ECOFF_SIGNED_64)
+  intern->ipdFirst     = H_GET_32 (abfd, ext->f_ipdFirst);
+  intern->cpd          = H_GET_32 (abfd, ext->f_cpd);
+#endif
+  intern->iauxBase     = H_GET_32 (abfd, ext->f_iauxBase);
+  intern->caux         = H_GET_32 (abfd, ext->f_caux);
+  intern->rfdBase      = H_GET_32 (abfd, ext->f_rfdBase);
+  intern->crfd         = H_GET_32 (abfd, ext->f_crfd);
+
+  /* Now the fun stuff...  */
+  if (bfd_header_big_endian (abfd))
+    {
+      intern->lang       = ((ext->f_bits1[0] & FDR_BITS1_LANG_BIG)
+                           >> FDR_BITS1_LANG_SH_BIG);
+      intern->fMerge     = 0 != (ext->f_bits1[0] & FDR_BITS1_FMERGE_BIG);
+      intern->fReadin    = 0 != (ext->f_bits1[0] & FDR_BITS1_FREADIN_BIG);
+      intern->fBigendian = 0 != (ext->f_bits1[0] & FDR_BITS1_FBIGENDIAN_BIG);
+      intern->glevel     = ((ext->f_bits2[0] & FDR_BITS2_GLEVEL_BIG)
+                           >> FDR_BITS2_GLEVEL_SH_BIG);
+    }
+  else
+    {
+      intern->lang       = ((ext->f_bits1[0] & FDR_BITS1_LANG_LITTLE)
+                           >> FDR_BITS1_LANG_SH_LITTLE);
+      intern->fMerge     = 0 != (ext->f_bits1[0] & FDR_BITS1_FMERGE_LITTLE);
+      intern->fReadin    = 0 != (ext->f_bits1[0] & FDR_BITS1_FREADIN_LITTLE);
+      intern->fBigendian = 0 != (ext->f_bits1[0] & FDR_BITS1_FBIGENDIAN_LITTLE);
+      intern->glevel     = ((ext->f_bits2[0] & FDR_BITS2_GLEVEL_LITTLE)
+                           >> FDR_BITS2_GLEVEL_SH_LITTLE);
+    }
   intern->reserved = 0;
 
   intern->reserved = 0;
 
-  intern->cbLineOffset  = ecoff_get_off (abfd, (bfd_byte *)ext->f_cbLineOffset);
-  intern->cbLine        = ecoff_get_off (abfd, (bfd_byte *)ext->f_cbLine);
+  intern->cbLineOffset = ECOFF_GET_OFF (abfd, ext->f_cbLineOffset);
+  intern->cbLine       = ECOFF_GET_OFF (abfd, ext->f_cbLine);
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 /* Swap out the file descriptor record.  */
 
 static void
 #endif
 }
 
 /* Swap out the file descriptor record.  */
 
 static void
-ecoff_swap_fdr_out (abfd, intern_copy, ext_ptr)
-     bfd *abfd;
-     const FDR *intern_copy;
-     PTR ext_ptr;
+ecoff_swap_fdr_out (bfd *abfd, const FDR *intern_copy, void * ext_ptr)
 {
   struct fdr_ext *ext = (struct fdr_ext *) ext_ptr;
   FDR intern[1];
 
 {
   struct fdr_ext *ext = (struct fdr_ext *) ext_ptr;
   FDR intern[1];
 
-  *intern = *intern_copy;      /* Make it reasonable to do in-place.  */
-  
-  ecoff_put_off (abfd, intern->adr, (bfd_byte *)ext->f_adr);
-  bfd_h_put_32 (abfd, intern->rss, (bfd_byte *)ext->f_rss);
-  bfd_h_put_32 (abfd, intern->issBase, (bfd_byte *)ext->f_issBase);
-  ecoff_put_off (abfd, intern->cbSs, (bfd_byte *)ext->f_cbSs);
-  bfd_h_put_32 (abfd, intern->isymBase, (bfd_byte *)ext->f_isymBase);
-  bfd_h_put_32 (abfd, intern->csym, (bfd_byte *)ext->f_csym);
-  bfd_h_put_32 (abfd, intern->ilineBase, (bfd_byte *)ext->f_ilineBase);
-  bfd_h_put_32 (abfd, intern->cline, (bfd_byte *)ext->f_cline);
-  bfd_h_put_32 (abfd, intern->ioptBase, (bfd_byte *)ext->f_ioptBase);
-  bfd_h_put_32 (abfd, intern->copt, (bfd_byte *)ext->f_copt);
-#ifdef ECOFF_32
-  bfd_h_put_16 (abfd, intern->ipdFirst, (bfd_byte *)ext->f_ipdFirst);
-  bfd_h_put_16 (abfd, intern->cpd, (bfd_byte *)ext->f_cpd);
+  /* Make it reasonable to do in-place.  */
+  *intern = *intern_copy;
+
+  ECOFF_PUT_OFF (abfd, intern->adr,       ext->f_adr);
+  H_PUT_32      (abfd, intern->rss,       ext->f_rss);
+  H_PUT_32      (abfd, intern->issBase,   ext->f_issBase);
+  ECOFF_PUT_OFF (abfd, intern->cbSs,      ext->f_cbSs);
+  H_PUT_32      (abfd, intern->isymBase,  ext->f_isymBase);
+  H_PUT_32      (abfd, intern->csym,      ext->f_csym);
+  H_PUT_32      (abfd, intern->ilineBase, ext->f_ilineBase);
+  H_PUT_32      (abfd, intern->cline,     ext->f_cline);
+  H_PUT_32      (abfd, intern->ioptBase,  ext->f_ioptBase);
+  H_PUT_32      (abfd, intern->copt,      ext->f_copt);
+#if defined (ECOFF_32) || defined (ECOFF_SIGNED_32)
+  H_PUT_16      (abfd, intern->ipdFirst,  ext->f_ipdFirst);
+  H_PUT_16      (abfd, intern->cpd,       ext->f_cpd);
 #endif
 #endif
-#ifdef ECOFF_64
-  bfd_h_put_32 (abfd, intern->ipdFirst, (bfd_byte *)ext->f_ipdFirst);
-  bfd_h_put_32 (abfd, intern->cpd, (bfd_byte *)ext->f_cpd);
-#endif
-  bfd_h_put_32 (abfd, intern->iauxBase, (bfd_byte *)ext->f_iauxBase);
-  bfd_h_put_32 (abfd, intern->caux, (bfd_byte *)ext->f_caux);
-  bfd_h_put_32 (abfd, intern->rfdBase, (bfd_byte *)ext->f_rfdBase);
-  bfd_h_put_32 (abfd, intern->crfd, (bfd_byte *)ext->f_crfd);
-
-  /* now the fun stuff... */
-  if (bfd_header_big_endian (abfd)) {
-    ext->f_bits1[0] = (((intern->lang << FDR_BITS1_LANG_SH_BIG)
-                       & FDR_BITS1_LANG_BIG)
-                      | (intern->fMerge ? FDR_BITS1_FMERGE_BIG : 0)
-                      | (intern->fReadin ? FDR_BITS1_FREADIN_BIG : 0)
-                      | (intern->fBigendian ? FDR_BITS1_FBIGENDIAN_BIG : 0));
-    ext->f_bits2[0] = ((intern->glevel << FDR_BITS2_GLEVEL_SH_BIG)
-                      & FDR_BITS2_GLEVEL_BIG);
-    ext->f_bits2[1] = 0;
-    ext->f_bits2[2] = 0;
-  } else {
-    ext->f_bits1[0] = (((intern->lang << FDR_BITS1_LANG_SH_LITTLE)
-                       & FDR_BITS1_LANG_LITTLE)
-                      | (intern->fMerge ? FDR_BITS1_FMERGE_LITTLE : 0)
-                      | (intern->fReadin ? FDR_BITS1_FREADIN_LITTLE : 0)
-                      | (intern->fBigendian ? FDR_BITS1_FBIGENDIAN_LITTLE : 0));
-    ext->f_bits2[0] = ((intern->glevel << FDR_BITS2_GLEVEL_SH_LITTLE)
-                      & FDR_BITS2_GLEVEL_LITTLE);
-    ext->f_bits2[1] = 0;
-    ext->f_bits2[2] = 0;
-  }
-
-  ecoff_put_off (abfd, intern->cbLineOffset, (bfd_byte *)ext->f_cbLineOffset);
-  ecoff_put_off (abfd, intern->cbLine, (bfd_byte *)ext->f_cbLine);
+#if defined (ECOFF_64) || defined (ECOFF_SIGNED_64)
+  H_PUT_32      (abfd, intern->ipdFirst,  ext->f_ipdFirst);
+  H_PUT_32      (abfd, intern->cpd,       ext->f_cpd);
+#endif
+  H_PUT_32      (abfd, intern->iauxBase,  ext->f_iauxBase);
+  H_PUT_32      (abfd, intern->caux,      ext->f_caux);
+  H_PUT_32      (abfd, intern->rfdBase,   ext->f_rfdBase);
+  H_PUT_32      (abfd, intern->crfd,      ext->f_crfd);
+
+  /* Now the fun stuff...  */
+  if (bfd_header_big_endian (abfd))
+    {
+      ext->f_bits1[0] = (((intern->lang << FDR_BITS1_LANG_SH_BIG)
+                         & FDR_BITS1_LANG_BIG)
+                        | (intern->fMerge ? FDR_BITS1_FMERGE_BIG : 0)
+                        | (intern->fReadin ? FDR_BITS1_FREADIN_BIG : 0)
+                        | (intern->fBigendian ? FDR_BITS1_FBIGENDIAN_BIG : 0));
+      ext->f_bits2[0] = ((intern->glevel << FDR_BITS2_GLEVEL_SH_BIG)
+                        & FDR_BITS2_GLEVEL_BIG);
+      ext->f_bits2[1] = 0;
+      ext->f_bits2[2] = 0;
+    }
+  else
+    {
+      ext->f_bits1[0] = (((intern->lang << FDR_BITS1_LANG_SH_LITTLE)
+                         & FDR_BITS1_LANG_LITTLE)
+                        | (intern->fMerge ? FDR_BITS1_FMERGE_LITTLE : 0)
+                        | (intern->fReadin ? FDR_BITS1_FREADIN_LITTLE : 0)
+                        | (intern->fBigendian ? FDR_BITS1_FBIGENDIAN_LITTLE : 0));
+      ext->f_bits2[0] = ((intern->glevel << FDR_BITS2_GLEVEL_SH_LITTLE)
+                        & FDR_BITS2_GLEVEL_LITTLE);
+      ext->f_bits2[1] = 0;
+      ext->f_bits2[2] = 0;
+    }
+
+  ECOFF_PUT_OFF (abfd, intern->cbLineOffset, ext->f_cbLineOffset);
+  ECOFF_PUT_OFF (abfd, intern->cbLine, ext->f_cbLine);
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 #endif
 }
 
-#ifndef MPW_C
-
 /* Swap in the procedure descriptor record.  */
 
 static void
 /* Swap in the procedure descriptor record.  */
 
 static void
-ecoff_swap_pdr_in (abfd, ext_copy, intern)
-     bfd *abfd;
-     PTR ext_copy;
-     PDR *intern;
+ecoff_swap_pdr_in (bfd *abfd, void * ext_copy, PDR *intern)
 {
   struct pdr_ext ext[1];
 
   *ext = *(struct pdr_ext *) ext_copy;
 
 {
   struct pdr_ext ext[1];
 
   *ext = *(struct pdr_ext *) ext_copy;
 
-  memset ((PTR) intern, 0, sizeof (*intern));
-
-  intern->adr           = ecoff_get_off (abfd, (bfd_byte *)ext->p_adr);
-  intern->isym          = bfd_h_get_32 (abfd, (bfd_byte *)ext->p_isym);
-  intern->iline         = bfd_h_get_32 (abfd, (bfd_byte *)ext->p_iline);
-  intern->regmask       = bfd_h_get_32 (abfd, (bfd_byte *)ext->p_regmask);
-  intern->regoffset     = bfd_h_get_signed_32 (abfd,
-                                              (bfd_byte *)ext->p_regoffset);
-  intern->iopt          = bfd_h_get_signed_32 (abfd, (bfd_byte *)ext->p_iopt);
-  intern->fregmask      = bfd_h_get_32 (abfd, (bfd_byte *)ext->p_fregmask);
-  intern->fregoffset    = bfd_h_get_signed_32 (abfd,
-                                              (bfd_byte *)ext->p_fregoffset);
-  intern->frameoffset   = bfd_h_get_signed_32 (abfd,
-                                              (bfd_byte *)ext->p_frameoffset);
-  intern->framereg      = bfd_h_get_16 (abfd, (bfd_byte *)ext->p_framereg);
-  intern->pcreg         = bfd_h_get_16 (abfd, (bfd_byte *)ext->p_pcreg);
-  intern->lnLow         = bfd_h_get_32 (abfd, (bfd_byte *)ext->p_lnLow);
-  intern->lnHigh        = bfd_h_get_32 (abfd, (bfd_byte *)ext->p_lnHigh);
-  intern->cbLineOffset  = ecoff_get_off (abfd, (bfd_byte *)ext->p_cbLineOffset);
-
-#ifdef ECOFF_64
-  intern->gp_prologue = bfd_h_get_8 (abfd, (bfd_byte *) ext->p_gp_prologue);
+  memset ((void *) intern, 0, sizeof (*intern));
+
+  intern->adr          = ECOFF_GET_OFF (abfd, ext->p_adr);
+  intern->isym         = H_GET_32 (abfd, ext->p_isym);
+  intern->iline                = H_GET_32 (abfd, ext->p_iline);
+  intern->regmask      = H_GET_32 (abfd, ext->p_regmask);
+  intern->regoffset    = H_GET_S32 (abfd, ext->p_regoffset);
+  intern->iopt         = H_GET_S32 (abfd, ext->p_iopt);
+  intern->fregmask     = H_GET_32 (abfd, ext->p_fregmask);
+  intern->fregoffset   = H_GET_S32 (abfd, ext->p_fregoffset);
+  intern->frameoffset  = H_GET_S32 (abfd, ext->p_frameoffset);
+  intern->framereg     = H_GET_16 (abfd, ext->p_framereg);
+  intern->pcreg                = H_GET_16 (abfd, ext->p_pcreg);
+  intern->lnLow                = H_GET_32 (abfd, ext->p_lnLow);
+  intern->lnHigh       = H_GET_32 (abfd, ext->p_lnHigh);
+  intern->cbLineOffset = ECOFF_GET_OFF (abfd, ext->p_cbLineOffset);
+
+#if defined (ECOFF_64) || defined (ECOFF_SIGNED_64)
+  if (intern->isym == (signed long) 0xffffffff)
+    intern->isym = -1;
+  if (intern->iline == (signed long) 0xffffffff)
+    intern->iline = -1;
+
+  intern->gp_prologue = H_GET_8 (abfd, ext->p_gp_prologue);
   if (bfd_header_big_endian (abfd))
     {
       intern->gp_used = 0 != (ext->p_bits1[0] & PDR_BITS1_GP_USED_BIG);
   if (bfd_header_big_endian (abfd))
     {
       intern->gp_used = 0 != (ext->p_bits1[0] & PDR_BITS1_GP_USED_BIG);
@@ -359,45 +366,44 @@ ecoff_swap_pdr_in (abfd, ext_copy, intern)
                          | ((ext->p_bits2[0] & PDR_BITS2_RESERVED_LITTLE)
                             << PDR_BITS2_RESERVED_SH_LEFT_LITTLE));
     }
                          | ((ext->p_bits2[0] & PDR_BITS2_RESERVED_LITTLE)
                             << PDR_BITS2_RESERVED_SH_LEFT_LITTLE));
     }
-  intern->localoff = bfd_h_get_8 (abfd, (bfd_byte *) ext->p_localoff);
-#endif  
+  intern->localoff = H_GET_8 (abfd, ext->p_localoff);
+#endif
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 /* Swap out the procedure descriptor record.  */
 
 static void
 #endif
 }
 
 /* Swap out the procedure descriptor record.  */
 
 static void
-ecoff_swap_pdr_out (abfd, intern_copy, ext_ptr)
-     bfd *abfd;
-     const PDR *intern_copy;
-     PTR ext_ptr;
+ecoff_swap_pdr_out (bfd *abfd, const PDR *intern_copy, void * ext_ptr)
 {
   struct pdr_ext *ext = (struct pdr_ext *) ext_ptr;
   PDR intern[1];
 
 {
   struct pdr_ext *ext = (struct pdr_ext *) ext_ptr;
   PDR intern[1];
 
-  *intern = *intern_copy;      /* Make it reasonable to do in-place.  */
-  
-  ecoff_put_off (abfd, intern->adr, (bfd_byte *)ext->p_adr);
-  bfd_h_put_32 (abfd, intern->isym, (bfd_byte *)ext->p_isym);
-  bfd_h_put_32 (abfd, intern->iline, (bfd_byte *)ext->p_iline);
-  bfd_h_put_32 (abfd, intern->regmask, (bfd_byte *)ext->p_regmask);
-  bfd_h_put_32 (abfd, intern->regoffset, (bfd_byte *)ext->p_regoffset);
-  bfd_h_put_32 (abfd, intern->iopt, (bfd_byte *)ext->p_iopt);
-  bfd_h_put_32 (abfd, intern->fregmask, (bfd_byte *)ext->p_fregmask);
-  bfd_h_put_32 (abfd, intern->fregoffset, (bfd_byte *)ext->p_fregoffset);
-  bfd_h_put_32 (abfd, intern->frameoffset, (bfd_byte *)ext->p_frameoffset);
-  bfd_h_put_16 (abfd, intern->framereg, (bfd_byte *)ext->p_framereg);
-  bfd_h_put_16 (abfd, intern->pcreg, (bfd_byte *)ext->p_pcreg);
-  bfd_h_put_32 (abfd, intern->lnLow, (bfd_byte *)ext->p_lnLow);
-  bfd_h_put_32 (abfd, intern->lnHigh, (bfd_byte *)ext->p_lnHigh);
-  ecoff_put_off (abfd, intern->cbLineOffset, (bfd_byte *)ext->p_cbLineOffset);
+  /* Make it reasonable to do in-place.  */
+  *intern = *intern_copy;
+
+  ECOFF_PUT_OFF (abfd, intern->adr,         ext->p_adr);
+  H_PUT_32     (abfd, intern->isym,         ext->p_isym);
+  H_PUT_32     (abfd, intern->iline,        ext->p_iline);
+  H_PUT_32     (abfd, intern->regmask,      ext->p_regmask);
+  H_PUT_32     (abfd, intern->regoffset,    ext->p_regoffset);
+  H_PUT_32     (abfd, intern->iopt,         ext->p_iopt);
+  H_PUT_32     (abfd, intern->fregmask,     ext->p_fregmask);
+  H_PUT_32     (abfd, intern->fregoffset,   ext->p_fregoffset);
+  H_PUT_32     (abfd, intern->frameoffset,  ext->p_frameoffset);
+  H_PUT_16     (abfd, intern->framereg,     ext->p_framereg);
+  H_PUT_16     (abfd, intern->pcreg,        ext->p_pcreg);
+  H_PUT_32     (abfd, intern->lnLow,        ext->p_lnLow);
+  H_PUT_32     (abfd, intern->lnHigh,       ext->p_lnHigh);
+  ECOFF_PUT_OFF (abfd, intern->cbLineOffset, ext->p_cbLineOffset);
+
+#if defined (ECOFF_64) || defined (ECOFF_SIGNED_64)
+  H_PUT_8       (abfd, intern->gp_prologue,  ext->p_gp_prologue);
 
 
-#ifdef ECOFF_64
-  bfd_h_put_8 (abfd, intern->gp_prologue, (bfd_byte *) ext->p_gp_prologue);
   if (bfd_header_big_endian (abfd))
     {
       ext->p_bits1[0] = ((intern->gp_used ? PDR_BITS1_GP_USED_BIG : 0)
   if (bfd_header_big_endian (abfd))
     {
       ext->p_bits1[0] = ((intern->gp_used ? PDR_BITS1_GP_USED_BIG : 0)
@@ -420,318 +426,242 @@ ecoff_swap_pdr_out (abfd, intern_copy, ext_ptr)
                          PDR_BITS2_RESERVED_SH_LEFT_LITTLE)
                         & PDR_BITS2_RESERVED_LITTLE);
     }
                          PDR_BITS2_RESERVED_SH_LEFT_LITTLE)
                         & PDR_BITS2_RESERVED_LITTLE);
     }
-  bfd_h_put_8 (abfd, intern->localoff, (bfd_byte *) ext->p_localoff);
-#endif  
-
-#ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  H_PUT_8 (abfd, intern->localoff, ext->p_localoff);
 #endif
 #endif
-}
-
-#else /* MPW_C */
-/* Same routines, but with ECOFF_64 code removed, so ^&%$#&! MPW C doesn't
-   corrupt itself and then freak out. */
-/* Swap in the procedure descriptor record.  */
-
-static void
-ecoff_swap_pdr_in (abfd, ext_copy, intern)
-     bfd *abfd;
-     PTR ext_copy;
-     PDR *intern;
-{
-  struct pdr_ext ext[1];
-
-  *ext = *(struct pdr_ext *) ext_copy;
-  
-  intern->adr           = ecoff_get_off (abfd, (bfd_byte *)ext->p_adr);
-  intern->isym          = bfd_h_get_32 (abfd, (bfd_byte *)ext->p_isym);
-  intern->iline         = bfd_h_get_32 (abfd, (bfd_byte *)ext->p_iline);
-  intern->regmask       = bfd_h_get_32 (abfd, (bfd_byte *)ext->p_regmask);
-  intern->regoffset     = bfd_h_get_signed_32 (abfd,
-                                              (bfd_byte *)ext->p_regoffset);
-  intern->iopt          = bfd_h_get_signed_32 (abfd, (bfd_byte *)ext->p_iopt);
-  intern->fregmask      = bfd_h_get_32 (abfd, (bfd_byte *)ext->p_fregmask);
-  intern->fregoffset    = bfd_h_get_signed_32 (abfd,
-                                              (bfd_byte *)ext->p_fregoffset);
-  intern->frameoffset   = bfd_h_get_signed_32 (abfd,
-                                              (bfd_byte *)ext->p_frameoffset);
-  intern->framereg      = bfd_h_get_16 (abfd, (bfd_byte *)ext->p_framereg);
-  intern->pcreg         = bfd_h_get_16 (abfd, (bfd_byte *)ext->p_pcreg);
-  intern->lnLow         = bfd_h_get_32 (abfd, (bfd_byte *)ext->p_lnLow);
-  intern->lnHigh        = bfd_h_get_32 (abfd, (bfd_byte *)ext->p_lnHigh);
-  intern->cbLineOffset  = ecoff_get_off (abfd, (bfd_byte *)ext->p_cbLineOffset);
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 #endif
 }
 
-/* Swap out the procedure descriptor record.  */
-
-static void
-ecoff_swap_pdr_out (abfd, intern_copy, ext_ptr)
-     bfd *abfd;
-     const PDR *intern_copy;
-     PTR ext_ptr;
-{
-  struct pdr_ext *ext = (struct pdr_ext *) ext_ptr;
-  PDR intern[1];
-
-  *intern = *intern_copy;      /* Make it reasonable to do in-place.  */
-  
-  ecoff_put_off (abfd, intern->adr, (bfd_byte *)ext->p_adr);
-  bfd_h_put_32 (abfd, intern->isym, (bfd_byte *)ext->p_isym);
-  bfd_h_put_32 (abfd, intern->iline, (bfd_byte *)ext->p_iline);
-  bfd_h_put_32 (abfd, intern->regmask, (bfd_byte *)ext->p_regmask);
-  bfd_h_put_32 (abfd, intern->regoffset, (bfd_byte *)ext->p_regoffset);
-  bfd_h_put_32 (abfd, intern->iopt, (bfd_byte *)ext->p_iopt);
-  bfd_h_put_32 (abfd, intern->fregmask, (bfd_byte *)ext->p_fregmask);
-  bfd_h_put_32 (abfd, intern->fregoffset, (bfd_byte *)ext->p_fregoffset);
-  bfd_h_put_32 (abfd, intern->frameoffset, (bfd_byte *)ext->p_frameoffset);
-  bfd_h_put_16 (abfd, intern->framereg, (bfd_byte *)ext->p_framereg);
-  bfd_h_put_16 (abfd, intern->pcreg, (bfd_byte *)ext->p_pcreg);
-  bfd_h_put_32 (abfd, intern->lnLow, (bfd_byte *)ext->p_lnLow);
-  bfd_h_put_32 (abfd, intern->lnHigh, (bfd_byte *)ext->p_lnHigh);
-  ecoff_put_off (abfd, intern->cbLineOffset, (bfd_byte *)ext->p_cbLineOffset);
-
-#ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
-#endif
-}
-#endif /* MPW_C */
-
 /* Swap in a symbol record.  */
 
 static void
 /* Swap in a symbol record.  */
 
 static void
-ecoff_swap_sym_in (abfd, ext_copy, intern)
-     bfd *abfd;
-     PTR ext_copy;
-     SYMR *intern;
+ecoff_swap_sym_in (bfd *abfd, void * ext_copy, SYMR *intern)
 {
   struct sym_ext ext[1];
 
   *ext = *(struct sym_ext *) ext_copy;
 {
   struct sym_ext ext[1];
 
   *ext = *(struct sym_ext *) ext_copy;
-  
-  intern->iss           = bfd_h_get_32 (abfd, (bfd_byte *)ext->s_iss);
-  intern->value         = ecoff_get_off (abfd, (bfd_byte *)ext->s_value);
-
-  /* now the fun stuff... */
-  if (bfd_header_big_endian (abfd)) {
-    intern->st          =  (ext->s_bits1[0] & SYM_BITS1_ST_BIG)
-                                          >> SYM_BITS1_ST_SH_BIG;
-    intern->sc          = ((ext->s_bits1[0] & SYM_BITS1_SC_BIG)
-                                          << SYM_BITS1_SC_SH_LEFT_BIG)
-                       | ((ext->s_bits2[0] & SYM_BITS2_SC_BIG)
-                                          >> SYM_BITS2_SC_SH_BIG);
-    intern->reserved    = 0 != (ext->s_bits2[0] & SYM_BITS2_RESERVED_BIG);
-    intern->index       = ((ext->s_bits2[0] & SYM_BITS2_INDEX_BIG)
-                                          << SYM_BITS2_INDEX_SH_LEFT_BIG)
-                       | (ext->s_bits3[0] << SYM_BITS3_INDEX_SH_LEFT_BIG)
-                       | (ext->s_bits4[0] << SYM_BITS4_INDEX_SH_LEFT_BIG);
-  } else {
-    intern->st          =  (ext->s_bits1[0] & SYM_BITS1_ST_LITTLE)
-                                          >> SYM_BITS1_ST_SH_LITTLE;
-    intern->sc          = ((ext->s_bits1[0] & SYM_BITS1_SC_LITTLE)
-                                          >> SYM_BITS1_SC_SH_LITTLE)
-                       | ((ext->s_bits2[0] & SYM_BITS2_SC_LITTLE)
-                                          << SYM_BITS2_SC_SH_LEFT_LITTLE);
-    intern->reserved    = 0 != (ext->s_bits2[0] & SYM_BITS2_RESERVED_LITTLE);
-    intern->index       = ((ext->s_bits2[0] & SYM_BITS2_INDEX_LITTLE)
-                                          >> SYM_BITS2_INDEX_SH_LITTLE)
-                       | (ext->s_bits3[0] << SYM_BITS3_INDEX_SH_LEFT_LITTLE)
-                       | ((unsigned int) ext->s_bits4[0]
-                          << SYM_BITS4_INDEX_SH_LEFT_LITTLE);
-  }
+
+  intern->iss          = H_GET_32 (abfd, ext->s_iss);
+  intern->value                = ECOFF_GET_OFF (abfd, ext->s_value);
+
+#if defined (ECOFF_64) || defined (ECOFF_SIGNED_64)
+  if (intern->iss == (signed long) 0xffffffff)
+    intern->iss = -1;
+#endif
+
+  /* Now the fun stuff...  */
+  if (bfd_header_big_endian (abfd))
+    {
+      intern->st         =  (ext->s_bits1[0] & SYM_BITS1_ST_BIG)
+                                            >> SYM_BITS1_ST_SH_BIG;
+      intern->sc         = ((ext->s_bits1[0] & SYM_BITS1_SC_BIG)
+                                            << SYM_BITS1_SC_SH_LEFT_BIG)
+                         | ((ext->s_bits2[0] & SYM_BITS2_SC_BIG)
+                                            >> SYM_BITS2_SC_SH_BIG);
+      intern->reserved   = 0 != (ext->s_bits2[0] & SYM_BITS2_RESERVED_BIG);
+      intern->index      = ((ext->s_bits2[0] & SYM_BITS2_INDEX_BIG)
+                                            << SYM_BITS2_INDEX_SH_LEFT_BIG)
+                         | (ext->s_bits3[0] << SYM_BITS3_INDEX_SH_LEFT_BIG)
+                         | (ext->s_bits4[0] << SYM_BITS4_INDEX_SH_LEFT_BIG);
+    }
+  else
+    {
+      intern->st         =  (ext->s_bits1[0] & SYM_BITS1_ST_LITTLE)
+                                            >> SYM_BITS1_ST_SH_LITTLE;
+      intern->sc         = ((ext->s_bits1[0] & SYM_BITS1_SC_LITTLE)
+                                            >> SYM_BITS1_SC_SH_LITTLE)
+                         | ((ext->s_bits2[0] & SYM_BITS2_SC_LITTLE)
+                                            << SYM_BITS2_SC_SH_LEFT_LITTLE);
+      intern->reserved   = 0 != (ext->s_bits2[0] & SYM_BITS2_RESERVED_LITTLE);
+      intern->index      = ((ext->s_bits2[0] & SYM_BITS2_INDEX_LITTLE)
+                                            >> SYM_BITS2_INDEX_SH_LITTLE)
+                         | (ext->s_bits3[0] << SYM_BITS3_INDEX_SH_LEFT_LITTLE)
+                         | ((unsigned int) ext->s_bits4[0]
+                            << SYM_BITS4_INDEX_SH_LEFT_LITTLE);
+    }
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 /* Swap out a symbol record.  */
 
 static void
 #endif
 }
 
 /* Swap out a symbol record.  */
 
 static void
-ecoff_swap_sym_out (abfd, intern_copy, ext_ptr)
-     bfd *abfd;
-     const SYMR *intern_copy;
-     PTR ext_ptr;
+ecoff_swap_sym_out (bfd *abfd, const SYMR *intern_copy, void * ext_ptr)
 {
   struct sym_ext *ext = (struct sym_ext *) ext_ptr;
   SYMR intern[1];
 
 {
   struct sym_ext *ext = (struct sym_ext *) ext_ptr;
   SYMR intern[1];
 
-  *intern = *intern_copy;      /* Make it reasonable to do in-place.  */
-  
-  bfd_h_put_32 (abfd, intern->iss, (bfd_byte *)ext->s_iss);
-  ecoff_put_off (abfd, intern->value, (bfd_byte *)ext->s_value);
-
-  /* now the fun stuff... */
-  if (bfd_header_big_endian (abfd)) {
-    ext->s_bits1[0] = (((intern->st << SYM_BITS1_ST_SH_BIG)
-                       & SYM_BITS1_ST_BIG)
-                      | ((intern->sc >> SYM_BITS1_SC_SH_LEFT_BIG)
-                         & SYM_BITS1_SC_BIG));
-    ext->s_bits2[0] = (((intern->sc << SYM_BITS2_SC_SH_BIG)
-                       & SYM_BITS2_SC_BIG)
-                      | (intern->reserved ? SYM_BITS2_RESERVED_BIG : 0)
-                      | ((intern->index >> SYM_BITS2_INDEX_SH_LEFT_BIG)
-                         & SYM_BITS2_INDEX_BIG));
-    ext->s_bits3[0] = (intern->index >> SYM_BITS3_INDEX_SH_LEFT_BIG) & 0xff;
-    ext->s_bits4[0] = (intern->index >> SYM_BITS4_INDEX_SH_LEFT_BIG) & 0xff;
-  } else {
-    ext->s_bits1[0] = (((intern->st << SYM_BITS1_ST_SH_LITTLE)
-                       & SYM_BITS1_ST_LITTLE)
-                      | ((intern->sc << SYM_BITS1_SC_SH_LITTLE)
-                         & SYM_BITS1_SC_LITTLE));
-    ext->s_bits2[0] = (((intern->sc >> SYM_BITS2_SC_SH_LEFT_LITTLE)
-                       & SYM_BITS2_SC_LITTLE)
-                      | (intern->reserved ? SYM_BITS2_RESERVED_LITTLE : 0)
-                      | ((intern->index << SYM_BITS2_INDEX_SH_LITTLE)
-                         & SYM_BITS2_INDEX_LITTLE));
-    ext->s_bits3[0] = (intern->index >> SYM_BITS3_INDEX_SH_LEFT_LITTLE) & 0xff;
-    ext->s_bits4[0] = (intern->index >> SYM_BITS4_INDEX_SH_LEFT_LITTLE) & 0xff;
-  }
+  /* Make it reasonable to do in-place.  */
+  *intern = *intern_copy;
+
+  H_PUT_32 (abfd, intern->iss, ext->s_iss);
+  ECOFF_PUT_OFF (abfd, intern->value, ext->s_value);
+
+  /* Now the fun stuff...  */
+  if (bfd_header_big_endian (abfd))
+    {
+      ext->s_bits1[0] = (((intern->st << SYM_BITS1_ST_SH_BIG)
+                         & SYM_BITS1_ST_BIG)
+                        | ((intern->sc >> SYM_BITS1_SC_SH_LEFT_BIG)
+                           & SYM_BITS1_SC_BIG));
+      ext->s_bits2[0] = (((intern->sc << SYM_BITS2_SC_SH_BIG)
+                         & SYM_BITS2_SC_BIG)
+                        | (intern->reserved ? SYM_BITS2_RESERVED_BIG : 0)
+                        | ((intern->index >> SYM_BITS2_INDEX_SH_LEFT_BIG)
+                           & SYM_BITS2_INDEX_BIG));
+      ext->s_bits3[0] = (intern->index >> SYM_BITS3_INDEX_SH_LEFT_BIG) & 0xff;
+      ext->s_bits4[0] = (intern->index >> SYM_BITS4_INDEX_SH_LEFT_BIG) & 0xff;
+    }
+  else
+    {
+      ext->s_bits1[0] = (((intern->st << SYM_BITS1_ST_SH_LITTLE)
+                         & SYM_BITS1_ST_LITTLE)
+                        | ((intern->sc << SYM_BITS1_SC_SH_LITTLE)
+                           & SYM_BITS1_SC_LITTLE));
+      ext->s_bits2[0] = (((intern->sc >> SYM_BITS2_SC_SH_LEFT_LITTLE)
+                         & SYM_BITS2_SC_LITTLE)
+                        | (intern->reserved ? SYM_BITS2_RESERVED_LITTLE : 0)
+                        | ((intern->index << SYM_BITS2_INDEX_SH_LITTLE)
+                           & SYM_BITS2_INDEX_LITTLE));
+      ext->s_bits3[0] = (intern->index >> SYM_BITS3_INDEX_SH_LEFT_LITTLE) & 0xff;
+      ext->s_bits4[0] = (intern->index >> SYM_BITS4_INDEX_SH_LEFT_LITTLE) & 0xff;
+    }
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 /* Swap in an external symbol record.  */
 
 static void
 #endif
 }
 
 /* Swap in an external symbol record.  */
 
 static void
-ecoff_swap_ext_in (abfd, ext_copy, intern)
-     bfd *abfd;
-     PTR ext_copy;
-     EXTR *intern;
+ecoff_swap_ext_in (bfd *abfd, void * ext_copy, EXTR *intern)
 {
   struct ext_ext ext[1];
 
   *ext = *(struct ext_ext *) ext_copy;
 {
   struct ext_ext ext[1];
 
   *ext = *(struct ext_ext *) ext_copy;
-  
-  /* now the fun stuff... */
-  if (bfd_header_big_endian (abfd)) {
-    intern->jmptbl      = 0 != (ext->es_bits1[0] & EXT_BITS1_JMPTBL_BIG);
-    intern->cobol_main  = 0 != (ext->es_bits1[0] & EXT_BITS1_COBOL_MAIN_BIG);
-    intern->weakext     = 0 != (ext->es_bits1[0] & EXT_BITS1_WEAKEXT_BIG);
-  } else {
-    intern->jmptbl      = 0 != (ext->es_bits1[0] & EXT_BITS1_JMPTBL_LITTLE);
-    intern->cobol_main  = 0 != (ext->es_bits1[0] & EXT_BITS1_COBOL_MAIN_LITTLE);
-    intern->weakext     = 0 != (ext->es_bits1[0] & EXT_BITS1_WEAKEXT_LITTLE);
-  }
+
+  /* Now the fun stuff...  */
+  if (bfd_header_big_endian (abfd))
+    {
+      intern->jmptbl      = 0 != (ext->es_bits1[0] & EXT_BITS1_JMPTBL_BIG);
+      intern->cobol_main  = 0 != (ext->es_bits1[0] & EXT_BITS1_COBOL_MAIN_BIG);
+      intern->weakext     = 0 != (ext->es_bits1[0] & EXT_BITS1_WEAKEXT_BIG);
+    }
+  else
+    {
+      intern->jmptbl      = 0 != (ext->es_bits1[0] & EXT_BITS1_JMPTBL_LITTLE);
+      intern->cobol_main  = 0 != (ext->es_bits1[0] & EXT_BITS1_COBOL_MAIN_LITTLE);
+      intern->weakext     = 0 != (ext->es_bits1[0] & EXT_BITS1_WEAKEXT_LITTLE);
+    }
   intern->reserved = 0;
 
   intern->reserved = 0;
 
-#ifdef ECOFF_32
-  intern->ifd           = bfd_h_get_signed_16 (abfd, (bfd_byte *)ext->es_ifd);
+#if defined (ECOFF_32) || defined (ECOFF_SIGNED_32)
+  intern->ifd = H_GET_S16 (abfd, ext->es_ifd);
 #endif
 #endif
-#ifdef ECOFF_64
-  intern->ifd           = bfd_h_get_signed_32 (abfd, (bfd_byte *)ext->es_ifd);
+#if defined (ECOFF_64) || defined (ECOFF_SIGNED_64)
+  intern->ifd = H_GET_S32 (abfd, ext->es_ifd);
 #endif
 
   ecoff_swap_sym_in (abfd, &ext->es_asym, &intern->asym);
 
 #ifdef TEST
 #endif
 
   ecoff_swap_sym_in (abfd, &ext->es_asym, &intern->asym);
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 /* Swap out an external symbol record.  */
 
 static void
 #endif
 }
 
 /* Swap out an external symbol record.  */
 
 static void
-ecoff_swap_ext_out (abfd, intern_copy, ext_ptr)
-     bfd *abfd;
-     const EXTR *intern_copy;
-     PTR ext_ptr;
+ecoff_swap_ext_out (bfd *abfd, const EXTR *intern_copy, void * ext_ptr)
 {
   struct ext_ext *ext = (struct ext_ext *) ext_ptr;
   EXTR intern[1];
 
 {
   struct ext_ext *ext = (struct ext_ext *) ext_ptr;
   EXTR intern[1];
 
-  *intern = *intern_copy;      /* Make it reasonable to do in-place.  */
-  
-  /* now the fun stuff... */
-  if (bfd_header_big_endian (abfd)) {
-    ext->es_bits1[0] = ((intern->jmptbl ? EXT_BITS1_JMPTBL_BIG : 0)
-                       | (intern->cobol_main ? EXT_BITS1_COBOL_MAIN_BIG : 0)
-                       | (intern->weakext ? EXT_BITS1_WEAKEXT_BIG : 0));
-    ext->es_bits2[0] = 0;
-#ifdef ECOFF_64
-    ext->es_bits2[1] = 0;
-    ext->es_bits2[2] = 0;
-#endif
-  } else {
-    ext->es_bits1[0] = ((intern->jmptbl ? EXT_BITS1_JMPTBL_LITTLE : 0)
-                       | (intern->cobol_main ? EXT_BITS1_COBOL_MAIN_LITTLE : 0)
-                       | (intern->weakext ? EXT_BITS1_WEAKEXT_LITTLE : 0));
-    ext->es_bits2[0] = 0;
-#ifdef ECOFF_64
-    ext->es_bits2[1] = 0;
-    ext->es_bits2[2] = 0;
+  /* Make it reasonable to do in-place.  */
+  *intern = *intern_copy;
+
+  /* Now the fun stuff...  */
+  if (bfd_header_big_endian (abfd))
+    {
+      ext->es_bits1[0] = ((intern->jmptbl ? EXT_BITS1_JMPTBL_BIG : 0)
+                         | (intern->cobol_main ? EXT_BITS1_COBOL_MAIN_BIG : 0)
+                         | (intern->weakext ? EXT_BITS1_WEAKEXT_BIG : 0));
+      ext->es_bits2[0] = 0;
+#if defined (ECOFF_64) || defined (ECOFF_SIGNED_64)
+      ext->es_bits2[1] = 0;
+      ext->es_bits2[2] = 0;
+#endif
+    }
+  else
+    {
+      ext->es_bits1[0] = ((intern->jmptbl ? EXT_BITS1_JMPTBL_LITTLE : 0)
+                         | (intern->cobol_main ? EXT_BITS1_COBOL_MAIN_LITTLE : 0)
+                         | (intern->weakext ? EXT_BITS1_WEAKEXT_LITTLE : 0));
+      ext->es_bits2[0] = 0;
+#if defined (ECOFF_64) || defined (ECOFF_SIGNED_64)
+      ext->es_bits2[1] = 0;
+      ext->es_bits2[2] = 0;
 #endif
 #endif
-  }
+    }
 
 
-#ifdef ECOFF_32
-  bfd_h_put_signed_16 (abfd, intern->ifd, (bfd_byte *)ext->es_ifd);
+#if defined (ECOFF_32) || defined (ECOFF_SIGNED_32)
+  H_PUT_S16 (abfd, intern->ifd, ext->es_ifd);
 #endif
 #endif
-#ifdef ECOFF_64
-  bfd_h_put_signed_32 (abfd, intern->ifd, (bfd_byte *)ext->es_ifd);
+#if defined (ECOFF_64) || defined (ECOFF_SIGNED_64)
+  H_PUT_S32 (abfd, intern->ifd, ext->es_ifd);
 #endif
 
   ecoff_swap_sym_out (abfd, &intern->asym, &ext->es_asym);
 
 #ifdef TEST
 #endif
 
   ecoff_swap_sym_out (abfd, &intern->asym, &ext->es_asym);
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 /* Swap in a relative file descriptor.  */
 
 static void
 #endif
 }
 
 /* Swap in a relative file descriptor.  */
 
 static void
-ecoff_swap_rfd_in (abfd, ext_ptr, intern)
-     bfd *abfd;
-     PTR ext_ptr;
-     RFDT *intern;
+ecoff_swap_rfd_in (bfd *abfd, void * ext_ptr, RFDT *intern)
 {
   struct rfd_ext *ext = (struct rfd_ext *) ext_ptr;
 
 {
   struct rfd_ext *ext = (struct rfd_ext *) ext_ptr;
 
-  *intern = bfd_h_get_32 (abfd, (bfd_byte *)ext->rfd);
+  *intern = H_GET_32 (abfd, ext->rfd);
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 /* Swap out a relative file descriptor.  */
 
 static void
 #endif
 }
 
 /* Swap out a relative file descriptor.  */
 
 static void
-ecoff_swap_rfd_out (abfd, intern, ext_ptr)
-     bfd *abfd;
-     const RFDT *intern;
-     PTR ext_ptr;
+ecoff_swap_rfd_out (bfd *abfd, const RFDT *intern, void * ext_ptr)
 {
   struct rfd_ext *ext = (struct rfd_ext *) ext_ptr;
 
 {
   struct rfd_ext *ext = (struct rfd_ext *) ext_ptr;
 
-  bfd_h_put_32 (abfd, *intern, (bfd_byte *)ext->rfd);
+  H_PUT_32 (abfd, *intern, ext->rfd);
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 /* Swap in an optimization symbol.  */
 
 static void
 #endif
 }
 
 /* Swap in an optimization symbol.  */
 
 static void
-ecoff_swap_opt_in (abfd, ext_copy, intern)
-     bfd *abfd;
-     PTR ext_copy;
-     OPTR *intern;
+ecoff_swap_opt_in (bfd *abfd, void * ext_copy, OPTR * intern)
 {
   struct opt_ext ext[1];
 
 {
   struct opt_ext ext[1];
 
@@ -758,26 +688,24 @@ ecoff_swap_opt_in (abfd, ext_copy, intern)
   _bfd_ecoff_swap_rndx_in (bfd_header_big_endian (abfd),
                           &ext->o_rndx, &intern->rndx);
 
   _bfd_ecoff_swap_rndx_in (bfd_header_big_endian (abfd),
                           &ext->o_rndx, &intern->rndx);
 
-  intern->offset = bfd_h_get_32 (abfd, (bfd_byte *) ext->o_offset);
+  intern->offset = H_GET_32 (abfd, ext->o_offset);
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 /* Swap out an optimization symbol.  */
 
 static void
 #endif
 }
 
 /* Swap out an optimization symbol.  */
 
 static void
-ecoff_swap_opt_out (abfd, intern_copy, ext_ptr)
-     bfd *abfd;
-     const OPTR *intern_copy;
-     PTR ext_ptr;
+ecoff_swap_opt_out (bfd *abfd, const OPTR *intern_copy, void * ext_ptr)
 {
   struct opt_ext *ext = (struct opt_ext *) ext_ptr;
   OPTR intern[1];
 
 {
   struct opt_ext *ext = (struct opt_ext *) ext_ptr;
   OPTR intern[1];
 
-  *intern = *intern_copy;      /* Make it reasonable to do in-place.  */
+  /* Make it reasonable to do in-place.  */
+  *intern = *intern_copy;
 
   if (bfd_header_big_endian (abfd))
     {
 
   if (bfd_header_big_endian (abfd))
     {
@@ -797,53 +725,48 @@ ecoff_swap_opt_out (abfd, intern_copy, ext_ptr)
   _bfd_ecoff_swap_rndx_out (bfd_header_big_endian (abfd),
                            &intern->rndx, &ext->o_rndx);
 
   _bfd_ecoff_swap_rndx_out (bfd_header_big_endian (abfd),
                            &intern->rndx, &ext->o_rndx);
 
-  bfd_h_put_32 (abfd, intern->value, (bfd_byte *) ext->o_offset);
+  H_PUT_32 (abfd, intern->value, ext->o_offset);
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 /* Swap in a dense number.  */
 
 static void
 #endif
 }
 
 /* Swap in a dense number.  */
 
 static void
-ecoff_swap_dnr_in (abfd, ext_copy, intern)
-     bfd *abfd;
-     PTR ext_copy;
-     DNR *intern;
+ecoff_swap_dnr_in (bfd *abfd, void * ext_copy, DNR *intern)
 {
   struct dnr_ext ext[1];
 
   *ext = *(struct dnr_ext *) ext_copy;
 
 {
   struct dnr_ext ext[1];
 
   *ext = *(struct dnr_ext *) ext_copy;
 
-  intern->rfd = bfd_h_get_32 (abfd, (bfd_byte *) ext->d_rfd);
-  intern->index = bfd_h_get_32 (abfd, (bfd_byte *) ext->d_index);
+  intern->rfd = H_GET_32 (abfd, ext->d_rfd);
+  intern->index = H_GET_32 (abfd, ext->d_index);
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 
 /* Swap out a dense number.  */
 
 static void
 #endif
 }
 
 /* Swap out a dense number.  */
 
 static void
-ecoff_swap_dnr_out (abfd, intern_copy, ext_ptr)
-     bfd *abfd;
-     const DNR *intern_copy;
-     PTR ext_ptr;
+ecoff_swap_dnr_out (bfd *abfd, const DNR *intern_copy, void * ext_ptr)
 {
   struct dnr_ext *ext = (struct dnr_ext *) ext_ptr;
   DNR intern[1];
 
 {
   struct dnr_ext *ext = (struct dnr_ext *) ext_ptr;
   DNR intern[1];
 
-  *intern = *intern_copy;      /* Make it reasonable to do in-place.  */
+  /* Make it reasonable to do in-place.  */
+  *intern = *intern_copy;
 
 
-  bfd_h_put_32 (abfd, intern->rfd, (bfd_byte *) ext->d_rfd);
-  bfd_h_put_32 (abfd, intern->index, (bfd_byte *) ext->d_index);
+  H_PUT_32 (abfd, intern->rfd, ext->d_rfd);
+  H_PUT_32 (abfd, intern->index, ext->d_index);
 
 #ifdef TEST
 
 #ifdef TEST
-  if (memcmp ((char *)ext, (char *)intern, sizeof (*intern)) != 0)
-    abort();
+  if (memcmp ((char *) ext, (char *) intern, sizeof (*intern)) != 0)
+    abort ();
 #endif
 }
 #endif
 }
This page took 0.04466 seconds and 4 git commands to generate.