X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=bfd%2Fcoffswap.h;h=7c0be221075f3668fa9d227bbd67964d363528cc;hb=b326e6b0deed5d5ad22767c2800f490f61b37824;hp=9a81c8b487318bc375a81f0648808604cffbe055;hpb=53e09e0aaf3d13e4b893744e2fe79edde7edfd20;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/coffswap.h b/bfd/coffswap.h index 9a81c8b487..7c0be22107 100644 --- a/bfd/coffswap.h +++ b/bfd/coffswap.h @@ -1,14 +1,12 @@ /* Generic COFF swapping routines, for BFD. - Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1999, 2000, - 2001, 2002, 2005 - Free Software Foundation, Inc. + Copyright (C) 1990-2020 Free Software Foundation, Inc. Written by Cygnus Support. 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 + 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, @@ -18,7 +16,8 @@ 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 02110-1301, USA. */ + Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, + MA 02110-1301, USA. */ /* This file contains routines used to swap COFF data. It is a header file because the details of swapping depend on the details of the @@ -265,9 +264,6 @@ coff_swap_filehdr_in (bfd * abfd, void * src, void * dst) filehdr_dst->f_nsyms = H_GET_32 (abfd, filehdr_src->f_nsyms); filehdr_dst->f_opthdr = H_GET_16 (abfd, filehdr_src->f_opthdr); filehdr_dst->f_flags = H_GET_16 (abfd, filehdr_src->f_flags); -#ifdef TIC80_TARGET_ID - filehdr_dst->f_target_id = H_GET_16 (abfd, filehdr_src->f_target_id); -#endif #ifdef COFF_ADJUST_FILEHDR_IN_POST COFF_ADJUST_FILEHDR_IN_POST (abfd, src, dst); @@ -290,9 +286,6 @@ coff_swap_filehdr_out (bfd *abfd, void * in, void * out) H_PUT_32 (abfd, filehdr_in->f_nsyms, filehdr_out->f_nsyms); H_PUT_16 (abfd, filehdr_in->f_opthdr, filehdr_out->f_opthdr); H_PUT_16 (abfd, filehdr_in->f_flags, filehdr_out->f_flags); -#ifdef TIC80_TARGET_ID - H_PUT_16 (abfd, filehdr_in->f_target_id, filehdr_out->f_target_id); -#endif #ifdef COFF_ADJUST_FILEHDR_OUT_POST COFF_ADJUST_FILEHDR_OUT_POST (abfd, in, out); @@ -323,7 +316,7 @@ coff_swap_sym_in (bfd * abfd, void * ext1, void * in1) } in->n_value = H_GET_32 (abfd, ext->e_value); - in->n_scnum = H_GET_16 (abfd, ext->e_scnum); + in->n_scnum = (short) H_GET_16 (abfd, ext->e_scnum); if (sizeof (ext->e_type) == 2) in->n_type = H_GET_16 (abfd, ext->e_type); else @@ -381,7 +374,7 @@ static void coff_swap_aux_in (bfd *abfd, void * ext1, int type, - int class, + int in_class, int indx, int numaux, void * in1) @@ -390,10 +383,10 @@ coff_swap_aux_in (bfd *abfd, union internal_auxent *in = (union internal_auxent *) in1; #ifdef COFF_ADJUST_AUX_IN_PRE - COFF_ADJUST_AUX_IN_PRE (abfd, ext1, type, class, indx, numaux, in1); + COFF_ADJUST_AUX_IN_PRE (abfd, ext1, type, in_class, indx, numaux, in1); #endif - switch (class) + switch (in_class) { case C_FILE: if (ext->x_file.x_fname[0] == 0) @@ -430,7 +423,7 @@ coff_swap_aux_in (bfd *abfd, in->x_scn.x_nlinno = GET_SCN_NLINNO (abfd, ext); /* PE defines some extra fields; we zero them out for - safety. */ + safety. */ in->x_scn.x_checksum = 0; in->x_scn.x_associated = 0; in->x_scn.x_comdat = 0; @@ -445,7 +438,8 @@ coff_swap_aux_in (bfd *abfd, in->x_sym.x_tvndx = H_GET_16 (abfd, ext->x_sym.x_tvndx); #endif - if (class == C_BLOCK || class == C_FCN || ISFCN (type) || ISTAG (class)) + if (in_class == C_BLOCK || in_class == C_FCN || ISFCN (type) + || ISTAG (in_class)) { in->x_sym.x_fcnary.x_fcn.x_lnnoptr = GET_FCN_LNNOPTR (abfd, ext); in->x_sym.x_fcnary.x_fcn.x_endndx.l = GET_FCN_ENDNDX (abfd, ext); @@ -476,7 +470,7 @@ coff_swap_aux_in (bfd *abfd, end: ; #ifdef COFF_ADJUST_AUX_IN_POST - COFF_ADJUST_AUX_IN_POST (abfd, ext1, type, class, indx, numaux, in1); + COFF_ADJUST_AUX_IN_POST (abfd, ext1, type, in_class, indx, numaux, in1); #endif } @@ -484,7 +478,7 @@ static unsigned int coff_swap_aux_out (bfd * abfd, void * inp, int type, - int class, + int in_class, int indx ATTRIBUTE_UNUSED, int numaux ATTRIBUTE_UNUSED, void * extp) @@ -493,12 +487,12 @@ coff_swap_aux_out (bfd * abfd, AUXENT *ext = (AUXENT *) extp; #ifdef COFF_ADJUST_AUX_OUT_PRE - COFF_ADJUST_AUX_OUT_PRE (abfd, inp, type, class, indx, numaux, extp); + COFF_ADJUST_AUX_OUT_PRE (abfd, inp, type, in_class, indx, numaux, extp); #endif memset (ext, 0, AUXESZ); - switch (class) + switch (in_class) { case C_FILE: if (in->x_file.x_fname[0] == 0) @@ -536,7 +530,8 @@ coff_swap_aux_out (bfd * abfd, H_PUT_16 (abfd, in->x_sym.x_tvndx, ext->x_sym.x_tvndx); #endif - if (class == C_BLOCK || class == C_FCN || ISFCN (type) || ISTAG (class)) + if (in_class == C_BLOCK || in_class == C_FCN || ISFCN (type) + || ISTAG (in_class)) { PUT_FCN_LNNOPTR (abfd, in->x_sym.x_fcnary.x_fcn.x_lnnoptr, ext); PUT_FCN_ENDNDX (abfd, in->x_sym.x_fcnary.x_fcn.x_endndx.l, ext); @@ -566,7 +561,7 @@ coff_swap_aux_out (bfd * abfd, end: #ifdef COFF_ADJUST_AUX_OUT_POST - COFF_ADJUST_AUX_OUT_POST (abfd, inp, type, class, indx, numaux, extp); + COFF_ADJUST_AUX_OUT_POST (abfd, inp, type, in_class, indx, numaux, extp); #endif return AUXESZ; } @@ -617,17 +612,6 @@ coff_swap_aouthdr_in (bfd * abfd, void * aouthdr_ext1, void * aouthdr_int1) aouthdr_int->data_start = GET_AOUTHDR_DATA_START (abfd, aouthdr_ext->data_start); -#ifdef I960 - aouthdr_int->tagentries = H_GET_32 (abfd, aouthdr_ext->tagentries); -#endif - -#ifdef APOLLO_M68 - H_PUT_32 (abfd, aouthdr_int->o_inlib, aouthdr_ext->o_inlib); - H_PUT_32 (abfd, aouthdr_int->o_sri, aouthdr_ext->o_sri); - H_PUT_32 (abfd, aouthdr_int->vid[0], aouthdr_ext->vid); - H_PUT_32 (abfd, aouthdr_int->vid[1], aouthdr_ext->vid + 4); -#endif - #ifdef RS6000COFF_C #ifdef XCOFF64 aouthdr_int->o_toc = H_GET_64 (abfd, aouthdr_ext->o_toc); @@ -688,10 +672,6 @@ coff_swap_aouthdr_out (bfd * abfd, void * in, void * out) PUT_AOUTHDR_DATA_START (abfd, aouthdr_in->data_start, aouthdr_out->data_start); -#ifdef I960 - H_PUT_32 (abfd, aouthdr_in->tagentries, aouthdr_out->tagentries); -#endif - #ifdef RS6000COFF_C #ifdef XCOFF64 H_PUT_64 (abfd, aouthdr_in->o_toc, aouthdr_out->o_toc); @@ -745,6 +725,7 @@ coff_swap_aouthdr_out (bfd * abfd, void * in, void * out) return AOUTSZ; } +ATTRIBUTE_UNUSED static void coff_swap_scnhdr_in (bfd * abfd, void * ext, void * in) { @@ -766,14 +747,12 @@ coff_swap_scnhdr_in (bfd * abfd, void * ext, void * in) scnhdr_int->s_flags = GET_SCNHDR_FLAGS (abfd, scnhdr_ext->s_flags); scnhdr_int->s_nreloc = GET_SCNHDR_NRELOC (abfd, scnhdr_ext->s_nreloc); scnhdr_int->s_nlnno = GET_SCNHDR_NLNNO (abfd, scnhdr_ext->s_nlnno); -#ifdef I960 - scnhdr_int->s_align = GET_SCNHDR_ALIGN (abfd, scnhdr_ext->s_align); -#endif #ifdef COFF_ADJUST_SCNHDR_IN_POST COFF_ADJUST_SCNHDR_IN_POST (abfd, ext, in); #endif } +ATTRIBUTE_UNUSED static unsigned int coff_swap_scnhdr_out (bfd * abfd, void * in, void * out) { @@ -793,10 +772,6 @@ coff_swap_scnhdr_out (bfd * abfd, void * in, void * out) PUT_SCNHDR_RELPTR (abfd, scnhdr_int->s_relptr, scnhdr_ext->s_relptr); PUT_SCNHDR_LNNOPTR (abfd, scnhdr_int->s_lnnoptr, scnhdr_ext->s_lnnoptr); PUT_SCNHDR_FLAGS (abfd, scnhdr_int->s_flags, scnhdr_ext->s_flags); -#if defined(M88) - H_PUT_32 (abfd, scnhdr_int->s_nlnno, scnhdr_ext->s_nlnno); - H_PUT_32 (abfd, scnhdr_int->s_nreloc, scnhdr_ext->s_nreloc); -#else if (scnhdr_int->s_nlnno <= MAX_SCNHDR_NLNNO) PUT_SCNHDR_NLNNO (abfd, scnhdr_int->s_nlnno, scnhdr_ext->s_nlnno); else @@ -805,10 +780,10 @@ coff_swap_scnhdr_out (bfd * abfd, void * in, void * out) memcpy (buf, scnhdr_int->s_name, sizeof (scnhdr_int->s_name)); buf[sizeof (scnhdr_int->s_name)] = '\0'; - (*_bfd_error_handler) - (_("%s: warning: %s: line number overflow: 0x%lx > 0xffff"), - bfd_get_filename (abfd), - buf, scnhdr_int->s_nlnno); + _bfd_error_handler + /* xgettext:c-format */ + (_("%pB: warning: %s: line number overflow: 0x%lx > 0xffff"), + abfd, buf, scnhdr_int->s_nlnno); PUT_SCNHDR_NLNNO (abfd, 0xffff, scnhdr_ext->s_nlnno); } @@ -820,18 +795,14 @@ coff_swap_scnhdr_out (bfd * abfd, void * in, void * out) memcpy (buf, scnhdr_int->s_name, sizeof (scnhdr_int->s_name)); buf[sizeof (scnhdr_int->s_name)] = '\0'; - (*_bfd_error_handler) (_("%s: %s: reloc overflow: 0x%lx > 0xffff"), - bfd_get_filename (abfd), - buf, scnhdr_int->s_nreloc); + /* xgettext:c-format */ + _bfd_error_handler (_("%pB: %s: reloc overflow: 0x%lx > 0xffff"), + abfd, buf, scnhdr_int->s_nreloc); bfd_set_error (bfd_error_file_truncated); PUT_SCNHDR_NRELOC (abfd, 0xffff, scnhdr_ext->s_nreloc); ret = 0; } -#endif -#ifdef I960 - PUT_SCNHDR_ALIGN (abfd, scnhdr_int->s_align, scnhdr_ext->s_align); -#endif #ifdef COFF_ADJUST_SCNHDR_OUT_POST COFF_ADJUST_SCNHDR_OUT_POST (abfd, in, out); #endif