Sync with HEAD

This commit is contained in:
christos 2019-05-26 20:13:49 +00:00
parent 699b0f9210
commit 99e23f81b2
6256 changed files with 148532 additions and 138335 deletions

View File

@ -1,4 +1,4 @@
# $NetBSD: Makefile,v 1.6 2017/11/28 18:09:41 christos Exp $
# $NetBSD: Makefile,v 1.7 2019/05/26 20:13:49 christos Exp $
.include "Makefile.inc"

View File

@ -1,3 +1,3 @@
# $NetBSD: Makefile.gdb_arch,v 1.2 2017/11/28 18:09:41 christos Exp $
# $NetBSD: Makefile.gdb_arch,v 1.3 2019/05/26 20:13:49 christos Exp $
GDB_MACHINE_ARCH= ${MACHINE_ARCH:C/^e//:C/e?armv?[4-7]?h?f?/arm/}

View File

@ -1,4 +1,4 @@
# $NetBSD: Makefile.inc,v 1.9 2017/11/28 18:09:41 christos Exp $
# $NetBSD: Makefile.inc,v 1.10 2019/05/26 20:13:49 christos Exp $
USE_LIBEDIT=no
USE_TUI=yes

View File

@ -1,4 +1,4 @@
# $NetBSD: Makefile,v 1.6 2017/11/28 18:09:41 christos Exp $
# $NetBSD: Makefile,v 1.7 2019/05/26 20:13:49 christos Exp $
.include "../Makefile.inc"

View File

@ -1,5 +1,6 @@
# $NetBSD: Makefile,v 1.7 2017/11/28 18:09:42 christos Exp $
# $NetBSD: Makefile,v 1.8 2019/05/26 20:13:49 christos Exp $
NOCTF=
.include <bsd.own.mk>
.include "../Makefile.inc"
@ -82,10 +83,16 @@ DPADD+= ${LIBOPCODESDIR}/libopcodes.a \
${LIBTERMINFO} \
${LIBIBERTYDIR}/libiberty.a
LDADD+= -lexpat -llzma -lz -lcurses -lintl -lm -lkvm
DPADD+= ${LIBEXPAT} ${LIBLZMA} ${LIBZ} ${LIBCURSES} ${LIBINTL} ${LIBM} ${LIBKVM}
LDADD+= -lexpat -llzma -lz -lcurses -lintl -lm -lkvm -lutil
DPADD+= ${LIBEXPAT} ${LIBLZMA} ${LIBZ} ${LIBCURSES} ${LIBINTL} ${LIBM} ${LIBKVM} ${LIBUTIL}
.include <bsd.prog.mk>
# Force c++
CWARNFLAGS.clang+= -Wno-deprecated
HOST_CC:= ${HOST_CXX}
CC:= ${CXX}
CFLAGS:= ${CXXFLAGS} -std=gnu++11 -Wno-error=stack-protector
.PATH: ${DIST}/gdb ${DIST}/gdb/mi ${DIST}/gdb/cli ${DIST}/gdb/tui \
${DIST}/gdb/signals ${DIST}/gdb/doc ${.CURDIR}/../arch/${GDB_MACHINE_ARCH}

View File

@ -1,5 +1,5 @@
# $NetBSD: Makefile,v 1.7 2017/11/28 18:09:42 christos Exp $
# $NetBSD: Makefile,v 1.8 2019/05/26 20:13:49 christos Exp $
NOCTF=
.include "../Makefile.inc"
GDBARCHDIR=${.CURDIR}/../../lib/libgdb/arch/${GDB_MACHINE_ARCH}
@ -25,6 +25,11 @@ NOMAN= # defined
.include <bsd.prog.mk>
# Force c++
CWARNFLAGS.clang+= -Wno-deprecated
HOST_CC:= ${HOST_CXX}
CC:= ${CXX}
CFLAGS:= ${CXXFLAGS} -std=gnu++11 -Wno-error=stack-protector
LIBOPCODESDIR!= cd ${.CURDIR}/../../lib/libopcodes && ${PRINTOBJDIR}
LIBBFDDIR!= cd ${.CURDIR}/../../lib/libbfd && ${PRINTOBJDIR}
@ -68,8 +73,8 @@ DPADD+= ${LIBOPCODESDIR}/libopcodes.a \
${LIBTERMINFO} \
${LIBIBERTYDIR}/libiberty.a
LDADD+= -lexpat -llzma -lz -lcurses -lintl -lm -lkvm
DPADD+= ${LIBEXPAT} ${LIBLZMA} ${LIBZ} ${LIBCURSES} ${LIBINTL} ${LIBM} ${LIBKVM}
LDADD+= -lexpat -llzma -lz -lcurses -lintl -lm -lkvm -lutil
DPADD+= ${LIBEXPAT} ${LIBLZMA} ${LIBZ} ${LIBCURSES} ${LIBINTL} ${LIBM} ${LIBKVM} ${LIBUTIL}
.PATH: ${DIST}/gdb ${DIST}/gdb/mi ${DIST}/gdb/cli ${DIST}/gdb/tui \
${DIST}/gdb/signals ${DIST}/gdb/doc ${.CURDIR}/../arch/${GDB_MACHINE_ARCH}

View File

@ -1,4 +1,4 @@
# $NetBSD: Makefile,v 1.6 2017/11/28 18:09:42 christos Exp $
# $NetBSD: Makefile,v 1.7 2019/05/26 20:13:49 christos Exp $
NOMAN= # defined

View File

@ -1,3 +1,98 @@
2017-04-13 Andrew Jenner <andrew@codesourcery.com>
* config.sub: Sync with master version in config project.
2017-04-03 Andrew Jenner <andrew@codesourcery.com>
* config.sub: Handle ia16 in $basic_machine.
bfd/
* config.bfd: Handle ia16.
gas/
* configure.tgt: Handle ia16.
ld/
* configure.tgt: Handle ia16.
2017-03-22 Nick Clifton <nickc@redhat.com>
* config.sub: Sync with master version in config project.
* config.guess: Likewise.
2017-01-23 Nick Clifton <nickc@redhat.com>
* configure.ac: Update year in copyright notice.
Sync from FSF GCC mainline, bringing in the following patches.
* Makefile.def: Likewise.
* Makefile.tpl: Likewise.
* configure: Regenerate.
* Makefile.in: Regenerate.
2016-12-21 Jakub Jelinek <jakub@redhat.com>
* configure.ac: Don't bootstrap libmpx unless --with-build-config
includes bootstrap-mpx.
2016-12-01 Matthias Klose <doko@ubuntu.com>
* configure.ac: Don't use pkg-config to check for bdw-gc.
2016-11-30 Matthias Klose <doko@ubuntu.com>
* Makefile.def: Remove reference to boehm-gc target module.
* configure.ac: Include pkg.m4, check for --with-target-bdw-gc
options and for the bdw-gc pkg-config module.
2016-11-15 Matthias Klose <doko@ubuntu.com>
* config-ml.in: Remove references to GCJ.
* configure.ac: Likewise.
2016-09-30 Jakub Jelinek <jakub@redhat.com>
* configure.ac: Add target-libffi to target_libraries.
Readd libgcj target disablings, modified to only target-libffi.
Readd target addition of go to unsupported languages.
2016-09-30 Andrew Haley <aph@redhat.com>
* Makefile.def: Remove libjava.
* Makefile.tpl: Likewise.
* configure.ac: Likewise.
2016-09-26 Anton Kolesov <Anton.Kolesov@synopsys.com>
* configure.ac: Disable "sim" directory for arc*-*-*.
2016-09-12 Maciej W. Rozycki <macro@imgtec.com>
* configure.ac: Check for the minimum in-tree MPFR version
handled.
2016-12-31 Alan Modra <amodra@gmail.com>
* config.sub: Import from upstream.
2016-12-08 Alan Modra <amodra@gmail.com>
* configure: Regenerate.
2016-12-02 Josh Conner <joshconner@google.com>
* configure.ac: Add fuchsia to targets that use ELF.
* configure: Regenerated.
2016-11-07 Doug Evans <dje@google.com>
* config.sub: Sync with upstream version 2016-11-03.
git://git.sv.gnu.org/config.git
* config.guess: Sync with upstream version 2016-10-02.
2016-09-27 Simon Marchi <simon.marchi@polymtl.ca>
* .gitignore: Add archives and make stamps.
2016-07-20 Yan-Ting Lin <currygt52@gmail.com>
* configure.ac (nds32*-*-*): Remove entry to enable gdb.

View File

@ -4,7 +4,7 @@ AutoGen definitions Makefile.tpl;
// Makefile.in is generated from Makefile.tpl by 'autogen Makefile.def'.
// This file was originally written by Nathanael Nerode.
//
// Copyright 2002-2013 Free Software Foundation
// Copyright 2002-2017 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
@ -50,6 +50,7 @@ host_modules= { module= gcc; bootstrap=true;
host_modules= { module= gmp; lib_path=.libs; bootstrap=true;
// Work around in-tree gmp configure bug with missing flex.
extra_configure_flags='--disable-shared LEX="touch lex.yy.c"';
extra_make_flags='AM_CFLAGS="-DNO_ASM"';
no_install= true;
// none-*-* disables asm optimizations, bootstrap-testing
// the compiler more thoroughly.
@ -57,11 +58,11 @@ host_modules= { module= gmp; lib_path=.libs; bootstrap=true;
// gmp's configure will complain if given anything
// different from host for target.
target="none-${host_vendor}-${host_os}"; };
host_modules= { module= mpfr; lib_path=.libs; bootstrap=true;
host_modules= { module= mpfr; lib_path=src/.libs; bootstrap=true;
extra_configure_flags='--disable-shared @extra_mpfr_configure_flags@';
extra_make_flags='AM_CFLAGS="-DNO_ASM"';
no_install= true; };
host_modules= { module= mpc; lib_path=.libs; bootstrap=true;
host_modules= { module= mpc; lib_path=src/.libs; bootstrap=true;
extra_configure_flags='--disable-shared @extra_mpc_gmp_configure_flags@ @extra_mpc_mpfr_configure_flags@';
no_install= true; };
host_modules= { module= isl; lib_path=.libs; bootstrap=true;
@ -164,10 +165,7 @@ target_modules = { module= libtermcap; no_check=true;
target_modules = { module= winsup; };
target_modules = { module= libgloss; no_check=true; };
target_modules = { module= libffi; no_install=true; };
target_modules = { module= libjava; raw_cxx=true;
extra_configure_flags="$(EXTRA_CONFIGARGS_LIBJAVA)"; };
target_modules = { module= zlib; };
target_modules = { module= boehm-gc; };
target_modules = { module= rda; };
target_modules = { module= libada; };
target_modules = { module= libgomp; bootstrap= true; lib_path=.libs; };
@ -281,7 +279,6 @@ flags_to_pass = { flag= CPPFLAGS_FOR_TARGET ; };
flags_to_pass = { flag= CXXFLAGS_FOR_TARGET ; };
flags_to_pass = { flag= DLLTOOL_FOR_TARGET ; };
flags_to_pass = { flag= FLAGS_FOR_TARGET ; };
flags_to_pass = { flag= GCJ_FOR_TARGET ; };
flags_to_pass = { flag= GFORTRAN_FOR_TARGET ; };
flags_to_pass = { flag= GOC_FOR_TARGET ; };
flags_to_pass = { flag= GOCFLAGS_FOR_TARGET ; };
@ -533,7 +530,6 @@ dependencies = { module=all-m4; on=all-build-texinfo; };
// Target modules. These can also have dependencies on the language
// environment (e.g. on libstdc++). By default target modules depend
// on libgcc and newlib/libgloss.
lang_env_dependencies = { module=libjava; cxx=true; };
lang_env_dependencies = { module=libitm; cxx=true; };
lang_env_dependencies = { module=libffi; cxx=true; };
lang_env_dependencies = { module=libcilkrts; cxx=true; };
@ -546,7 +542,6 @@ lang_env_dependencies = { module=libgcc; no_gcc=true; no_c=true; };
// a dependency on libgcc for native targets to configure.
lang_env_dependencies = { module=libiberty; no_c=true; };
dependencies = { module=configure-target-boehm-gc; on=all-target-libstdc++-v3; };
dependencies = { module=configure-target-fastjar; on=configure-target-zlib; };
dependencies = { module=all-target-fastjar; on=all-target-zlib; };
dependencies = { module=configure-target-libgo; on=configure-target-libffi; };
@ -554,15 +549,6 @@ dependencies = { module=configure-target-libgo; on=all-target-libstdc++-v3; };
dependencies = { module=all-target-libgo; on=all-target-libbacktrace; };
dependencies = { module=all-target-libgo; on=all-target-libffi; };
dependencies = { module=all-target-libgo; on=all-target-libatomic; };
dependencies = { module=configure-target-libjava; on=configure-target-zlib; };
dependencies = { module=configure-target-libjava; on=configure-target-boehm-gc; };
dependencies = { module=configure-target-libjava; on=configure-target-libffi; };
dependencies = { module=all-target-libjava; on=all-fastjar; };
dependencies = { module=all-target-libjava; on=all-target-zlib; };
dependencies = { module=all-target-libjava; on=all-target-boehm-gc; };
dependencies = { module=all-target-libjava; on=all-target-libffi; };
dependencies = { module=configure-target-libobjc; on=configure-target-boehm-gc; };
dependencies = { module=all-target-libobjc; on=all-target-boehm-gc; };
dependencies = { module=configure-target-libstdc++-v3; on=configure-target-libgomp; };
dependencies = { module=configure-target-liboffloadmic; on=configure-target-libgomp; };
dependencies = { module=configure-target-libsanitizer; on=all-target-libstdc++-v3; };
@ -584,7 +570,6 @@ dependencies = { module=install-target-libcilkrts; on=install-target-libstdc++-v
dependencies = { module=install-target-libcilkrts; on=install-target-libgcc; };
dependencies = { module=install-target-liboffloadmic; on=install-target-libstdc++-v3; };
dependencies = { module=install-target-liboffloadmic; on=install-target-libgcc; };
dependencies = { module=install-target-libjava; on=install-target-libgcc; };
dependencies = { module=install-target-libitm; on=install-target-libgcc; };
dependencies = { module=install-target-libobjc; on=install-target-libgcc; };
dependencies = { module=install-target-libstdc++-v3; on=install-target-libgcc; };
@ -609,8 +594,6 @@ languages = { language=c++; gcc-check-target=check-c++;
languages = { language=fortran; gcc-check-target=check-fortran;
lib-check-target=check-target-libquadmath;
lib-check-target=check-target-libgfortran; };
languages = { language=java; gcc-check-target=check-java;
lib-check-target=check-target-libjava; };
languages = { language=ada; gcc-check-target=check-ada;
lib-check-target=check-target-libada; };
languages = { language=objc; gcc-check-target=check-objc;

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ in
# Makefile for directory with subdirs to build.
# Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
# 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
# 2011, 2012, 2013, 2014, 2015, 2016
# 2011, 2012, 2013, 2014, 2015, 2016, 2017
# Free Software Foundation
#
# This file is free software; you can redistribute it and/or modify
@ -157,7 +157,6 @@ BUILD_EXPORTS = \
CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
CXX="$(CXX_FOR_BUILD)"; export CXX; \
CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \
GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \
GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \
GOC="$(GOC_FOR_BUILD)"; export GOC; \
GOCFLAGS="$(GOCFLAGS_FOR_BUILD)"; export GOCFLAGS; \
@ -195,7 +194,6 @@ HOST_EXPORTS = \
CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
CXX="$(CXX)"; export CXX; \
CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
GCJ="$(GCJ)"; export GCJ; \
GFORTRAN="$(GFORTRAN)"; export GFORTRAN; \
GOC="$(GOC)"; export GOC; \
AR="$(AR)"; export AR; \
@ -283,7 +281,6 @@ BASE_TARGET_EXPORTS = \
CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \
CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
GCJ="$(GCJ_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GCJ; \
GFORTRAN="$(GFORTRAN_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GFORTRAN; \
GOC="$(GOC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GOC; \
DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
@ -326,8 +323,6 @@ HOST_ISLVER = @islver@
HOST_LIBELFLIBS = @libelflibs@
HOST_LIBELFINC = @libelfinc@
EXTRA_CONFIGARGS_LIBJAVA = @EXTRA_CONFIGARGS_LIBJAVA@
# ----------------------------------------------
# Programs producing files for the BUILD machine
# ----------------------------------------------
@ -351,7 +346,6 @@ CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
CXXFLAGS_FOR_BUILD = @CXXFLAGS_FOR_BUILD@
CXX_FOR_BUILD = @CXX_FOR_BUILD@
DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
GCJ_FOR_BUILD = @GCJ_FOR_BUILD@
GFORTRAN_FOR_BUILD = @GFORTRAN_FOR_BUILD@
GOC_FOR_BUILD = @GOC_FOR_BUILD@
LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@
@ -383,6 +377,8 @@ MAKEINFO = @MAKEINFO@
EXPECT = @EXPECT@
RUNTEST = @RUNTEST@
AUTO_PROFILE = gcc-auto-profile -c 1000000
# This just becomes part of the MAKEINFO definition passed down to
# sub-makes. It lets flags be given on the command line while still
# using the makeinfo from the object tree.
@ -419,6 +415,8 @@ CXXFLAGS = @CXXFLAGS@
LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
GOCFLAGS = $(CFLAGS)
CREATE_GCOV = create_gcov
TFLAGS =
# Defaults for all stages; some are overridden below.
@ -463,6 +461,12 @@ STAGEprofile_TFLAGS = $(STAGE2_TFLAGS)
STAGEfeedback_CFLAGS = $(STAGE3_CFLAGS) -fprofile-use
STAGEfeedback_TFLAGS = $(STAGE3_TFLAGS)
STAGEautoprofile_CFLAGS = $(STAGE2_CFLAGS) -g
STAGEautoprofile_TFLAGS = $(STAGE2_TFLAGS)
STAGEautofeedback_CFLAGS = $(STAGE3_CFLAGS)
STAGEautofeedback_TFLAGS = $(STAGE3_TFLAGS)
do-compare = @do_compare@
do-compare3 = $(do-compare)
@ -481,7 +485,6 @@ CC_FOR_TARGET=$(STAGE_CC_WRAPPER) @CC_FOR_TARGET@
GCC_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCC_FOR_TARGET@
CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @CXX_FOR_TARGET@
RAW_CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @RAW_CXX_FOR_TARGET@
GCJ_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCJ_FOR_TARGET@
GFORTRAN_FOR_TARGET=$(STAGE_CC_WRAPPER) @GFORTRAN_FOR_TARGET@
GOC_FOR_TARGET=$(STAGE_CC_WRAPPER) @GOC_FOR_TARGET@
DLLTOOL_FOR_TARGET=@DLLTOOL_FOR_TARGET@
@ -607,7 +610,6 @@ EXTRA_HOST_FLAGS = \
'CC=$(CC)' \
'CXX=$(CXX)' \
'DLLTOOL=$(DLLTOOL)' \
'GCJ=$(GCJ)' \
'GFORTRAN=$(GFORTRAN)' \
'GOC=$(GOC)' \
'LD=$(LD)' \
@ -618,7 +620,8 @@ EXTRA_HOST_FLAGS = \
'READELF=$(READELF)' \
'STRIP=$(STRIP)' \
'WINDRES=$(WINDRES)' \
'WINDMC=$(WINDMC)'
'WINDMC=$(WINDMC)' \
'CREATE_GCOV=$(CREATE_GCOV)'
FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS)
@ -662,7 +665,6 @@ EXTRA_TARGET_FLAGS = \
$$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \
'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
'GCJ=$$(GCJ_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
'GFORTRAN=$$(GFORTRAN_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
'GOC=$$(GOC_FOR_TARGET) $$(XGCC_FLAGS_FOR_TARGET) $$(TFLAGS)' \
'GOCFLAGS=$$(GOCFLAGS_FOR_TARGET)' \
@ -1148,6 +1150,7 @@ all-stage[+id+]-[+prefix+][+module+]: configure-stage[+id+]-[+prefix+][+module+]
[+exports+][+ IF prev +] \
[+poststage1_exports+][+ ENDIF prev +] [+extra_exports+] \
cd [+subdir+]/[+module+] && \
[+autoprofile+] \
$(MAKE) $(BASE_FLAGS_TO_PASS)[+ IF prefix +] \
CFLAGS="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
@ -1161,7 +1164,7 @@ all-stage[+id+]-[+prefix+][+module+]: configure-stage[+id+]-[+prefix+][+module+]
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
[+args+] [+IF prev +][+poststage1_args+][+ ELSE prev +] \
[+stage1_args+][+ ENDIF prev +] [+extra_make_flags+] \
TFLAGS="$(STAGE[+id+]_TFLAGS)" \
TFLAGS="$(STAGE[+id+]_TFLAGS)" [+profile_data+] \
$(TARGET-stage[+id+]-[+prefix+][+module+])
maybe-clean-stage[+id+]-[+prefix+][+module+]: clean-stage[+id+]-[+prefix+][+module+]

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
See ../binutils/MAINTAINERS
Copyright (C) 2012-2016 Free Software Foundation, Inc.
Copyright (C) 2012-2017 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright

View File

@ -1,6 +1,6 @@
## Process this file with automake to generate Makefile.in
#
# Copyright (C) 2012-2016 Free Software Foundation, Inc.
# Copyright (C) 2012-2017 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
@ -147,7 +147,9 @@ ALL_MACHINES = \
cpu-pj.lo \
cpu-plugin.lo \
cpu-powerpc.lo \
cpu-pru.lo \
cpu-rs6000.lo \
cpu-riscv.lo \
cpu-rl78.lo \
cpu-rx.lo \
cpu-s390.lo \
@ -167,6 +169,7 @@ ALL_MACHINES = \
cpu-vax.lo \
cpu-visium.lo \
cpu-w65.lo \
cpu-wasm32.lo \
cpu-we32k.lo \
cpu-xc16x.lo \
cpu-xgate.lo \
@ -234,7 +237,9 @@ ALL_MACHINES_CFILES = \
cpu-pj.c \
cpu-plugin.c \
cpu-powerpc.c \
cpu-pru.c \
cpu-rs6000.c \
cpu-riscv.c \
cpu-rl78.c \
cpu-rx.c \
cpu-s390.c \
@ -253,6 +258,7 @@ ALL_MACHINES_CFILES = \
cpu-v850_rh850.c \
cpu-vax.c \
cpu-visium.c \
cpu-wasm32.c \
cpu-w65.c \
cpu-we32k.c \
cpu-xc16x.c \
@ -315,6 +321,7 @@ BFD32_BACKENDS = \
elf-m10200.lo \
elf-m10300.lo \
elf-nacl.lo \
elf-properties.lo \
elf-strtab.lo \
elf-vxworks.lo \
elf.lo \
@ -363,6 +370,7 @@ BFD32_BACKENDS = \
elf32-or1k.lo \
elf32-pj.lo \
elf32-ppc.lo \
elf32-pru.lo \
elf32-rl78.lo \
elf32-rx.lo \
elf32-s390.lo \
@ -378,6 +386,7 @@ BFD32_BACKENDS = \
elf32-v850.lo \
elf32-vax.lo \
elf32-visium.lo \
elf32-wasm32.lo \
elf32-xc16x.lo \
elf32-xgate.lo \
elf32-xstormy16.lo \
@ -451,6 +460,7 @@ BFD32_BACKENDS = \
versados.lo \
vms-lib.lo \
vms-misc.lo \
wasm-module.lo \
xcofflink.lo \
xsym.lo \
xtensa-isa.lo \
@ -507,6 +517,7 @@ BFD32_BACKENDS_CFILES = \
elf-m10200.c \
elf-m10300.c \
elf-nacl.c \
elf-properties.c \
elf-strtab.c \
elf-vxworks.c \
elf.c \
@ -555,6 +566,7 @@ BFD32_BACKENDS_CFILES = \
elf32-or1k.c \
elf32-pj.c \
elf32-ppc.c \
elf32-pru.c \
elf32-rl78.c \
elf32-rx.c \
elf32-s390.c \
@ -570,6 +582,7 @@ BFD32_BACKENDS_CFILES = \
elf32-v850.c \
elf32-vax.c \
elf32-visium.c \
elf32-wasm32.c \
elf32-xc16x.c \
elf32-xgate.c \
elf32-xstormy16.c \
@ -642,6 +655,7 @@ BFD32_BACKENDS_CFILES = \
versados.c \
vms-lib.c \
vms-misc.c \
wasm-module.c \
xcofflink.c \
xsym.c \
xtensa-isa.c \
@ -671,18 +685,21 @@ BFD64_BACKENDS = \
elf64-hppa.lo \
elf64-ia64.lo \
elf64-ia64-vms.lo \
elfxx-ia64.lo \
elfn32-mips.lo \
elf64-mips.lo \
elfxx-mips.lo \
elf64-mmix.lo \
elf64-ppc.lo \
elf32-riscv.lo \
elf64-riscv.lo \
elfxx-riscv.lo \
elf64-s390.lo \
elf64-sh64.lo \
elf64-sparc.lo \
elf64-tilegx.lo \
elf64-x86-64.lo \
elf64.lo \
elfn32-mips.lo \
elfxx-ia64.lo \
elfxx-mips.lo \
mach-o-aarch64.lo \
mach-o-x86-64.lo \
mmo.lo \
@ -722,6 +739,7 @@ BFD64_BACKENDS_CFILES = \
elfxx-aarch64.c \
elfxx-ia64.c \
elfxx-mips.c \
elfxx-riscv.c \
mach-o-aarch64.c \
mach-o-x86-64.c \
mmo.c \
@ -785,7 +803,9 @@ SOURCE_CFILES = \
BUILD_CFILES = \
elf32-aarch64.c elf64-aarch64.c \
elf32-ia64.c elf64-ia64.c peigen.c pepigen.c pex64igen.c
elf32-ia64.c elf64-ia64.c \
elf32-riscv.c elf64-riscv.c \
peigen.c pepigen.c pex64igen.c
CFILES = $(SOURCE_CFILES) $(BUILD_CFILES)
@ -955,6 +975,18 @@ elf64-ia64.c : elfnn-ia64.c
$(SED) -e s/NN/64/g < $(srcdir)/elfnn-ia64.c > elf64-ia64.new
mv -f elf64-ia64.new elf64-ia64.c
elf32-riscv.c : elfnn-riscv.c
rm -f elf32-riscv.c
echo "#line 1 \"$(srcdir)/elfnn-riscv.c\"" > elf32-riscv.new
sed -e s/NN/32/g < $(srcdir)/elfnn-riscv.c >> elf32-riscv.new
mv -f elf32-riscv.new elf32-riscv.c
elf64-riscv.c : elfnn-riscv.c
rm -f elf64-riscv.c
echo "#line 1 \"$(srcdir)/elfnn-riscv.c\"" > elf64-riscv.new
sed -e s/NN/64/g < $(srcdir)/elfnn-riscv.c >> elf64-riscv.new
mv -f elf64-riscv.new elf64-riscv.c
peigen.c : peXXigen.c
rm -f peigen.c
$(SED) -e s/XX/pe/g < $(srcdir)/peXXigen.c > peigen.new
@ -997,12 +1029,13 @@ stmp-bfd-h: bfd-in3.h
rm -f bfd-tmp.h
touch stmp-bfd-h
BFD_H_FILES = bfd-in.h init.c opncls.c libbfd.c section.c archures.c \
reloc.c syms.c bfd.c bfdio.c bfdwin.c \
archive.c corefile.c targets.c format.c compress.c
BFD_H_FILES = bfd-in.h init.c opncls.c libbfd.c \
bfdio.c bfdwin.c section.c archures.c reloc.c \
syms.c bfd.c archive.c corefile.c targets.c format.c \
linker.c simple.c compress.c
BFD64_H_FILES = archive64.c
LIBBFD_H_FILES = libbfd-in.h init.c libbfd.c bfdio.c bfdwin.c \
cache.c reloc.c archures.c elf.c
LIBBFD_H_FILES = libbfd-in.h libbfd.c bfdio.c bfdwin.c \
cache.c reloc.c archures.c linker.c
LIBCOFF_H_FILES = libcoff-in.h coffcode.h
# Could really use a "copy-if-change"...

View File

@ -16,7 +16,7 @@
@SET_MAKE@
#
# Copyright (C) 2012-2016 Free Software Foundation, Inc.
# Copyright (C) 2012-2017 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
@ -288,6 +288,7 @@ TDEFINES = @TDEFINES@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
WARN_CFLAGS = @WARN_CFLAGS@
WARN_CFLAGS_FOR_BUILD = @WARN_CFLAGS_FOR_BUILD@
WARN_WRITE_STRINGS = @WARN_WRITE_STRINGS@
XGETTEXT = @XGETTEXT@
abs_builddir = @abs_builddir@
@ -479,7 +480,9 @@ ALL_MACHINES = \
cpu-pj.lo \
cpu-plugin.lo \
cpu-powerpc.lo \
cpu-pru.lo \
cpu-rs6000.lo \
cpu-riscv.lo \
cpu-rl78.lo \
cpu-rx.lo \
cpu-s390.lo \
@ -499,6 +502,7 @@ ALL_MACHINES = \
cpu-vax.lo \
cpu-visium.lo \
cpu-w65.lo \
cpu-wasm32.lo \
cpu-we32k.lo \
cpu-xc16x.lo \
cpu-xgate.lo \
@ -566,7 +570,9 @@ ALL_MACHINES_CFILES = \
cpu-pj.c \
cpu-plugin.c \
cpu-powerpc.c \
cpu-pru.c \
cpu-rs6000.c \
cpu-riscv.c \
cpu-rl78.c \
cpu-rx.c \
cpu-s390.c \
@ -585,6 +591,7 @@ ALL_MACHINES_CFILES = \
cpu-v850_rh850.c \
cpu-vax.c \
cpu-visium.c \
cpu-wasm32.c \
cpu-w65.c \
cpu-we32k.c \
cpu-xc16x.c \
@ -648,6 +655,7 @@ BFD32_BACKENDS = \
elf-m10200.lo \
elf-m10300.lo \
elf-nacl.lo \
elf-properties.lo \
elf-strtab.lo \
elf-vxworks.lo \
elf.lo \
@ -696,6 +704,7 @@ BFD32_BACKENDS = \
elf32-or1k.lo \
elf32-pj.lo \
elf32-ppc.lo \
elf32-pru.lo \
elf32-rl78.lo \
elf32-rx.lo \
elf32-s390.lo \
@ -711,6 +720,7 @@ BFD32_BACKENDS = \
elf32-v850.lo \
elf32-vax.lo \
elf32-visium.lo \
elf32-wasm32.lo \
elf32-xc16x.lo \
elf32-xgate.lo \
elf32-xstormy16.lo \
@ -784,6 +794,7 @@ BFD32_BACKENDS = \
versados.lo \
vms-lib.lo \
vms-misc.lo \
wasm-module.lo \
xcofflink.lo \
xsym.lo \
xtensa-isa.lo \
@ -840,6 +851,7 @@ BFD32_BACKENDS_CFILES = \
elf-m10200.c \
elf-m10300.c \
elf-nacl.c \
elf-properties.c \
elf-strtab.c \
elf-vxworks.c \
elf.c \
@ -888,6 +900,7 @@ BFD32_BACKENDS_CFILES = \
elf32-or1k.c \
elf32-pj.c \
elf32-ppc.c \
elf32-pru.c \
elf32-rl78.c \
elf32-rx.c \
elf32-s390.c \
@ -903,6 +916,7 @@ BFD32_BACKENDS_CFILES = \
elf32-v850.c \
elf32-vax.c \
elf32-visium.c \
elf32-wasm32.c \
elf32-xc16x.c \
elf32-xgate.c \
elf32-xstormy16.c \
@ -975,6 +989,7 @@ BFD32_BACKENDS_CFILES = \
versados.c \
vms-lib.c \
vms-misc.c \
wasm-module.c \
xcofflink.c \
xsym.c \
xtensa-isa.c \
@ -1005,18 +1020,21 @@ BFD64_BACKENDS = \
elf64-hppa.lo \
elf64-ia64.lo \
elf64-ia64-vms.lo \
elfxx-ia64.lo \
elfn32-mips.lo \
elf64-mips.lo \
elfxx-mips.lo \
elf64-mmix.lo \
elf64-ppc.lo \
elf32-riscv.lo \
elf64-riscv.lo \
elfxx-riscv.lo \
elf64-s390.lo \
elf64-sh64.lo \
elf64-sparc.lo \
elf64-tilegx.lo \
elf64-x86-64.lo \
elf64.lo \
elfn32-mips.lo \
elfxx-ia64.lo \
elfxx-mips.lo \
mach-o-aarch64.lo \
mach-o-x86-64.lo \
mmo.lo \
@ -1056,6 +1074,7 @@ BFD64_BACKENDS_CFILES = \
elfxx-aarch64.c \
elfxx-ia64.c \
elfxx-mips.c \
elfxx-riscv.c \
mach-o-aarch64.c \
mach-o-x86-64.c \
mmo.c \
@ -1121,7 +1140,9 @@ SOURCE_CFILES = \
BUILD_CFILES = \
elf32-aarch64.c elf64-aarch64.c \
elf32-ia64.c elf64-ia64.c peigen.c pepigen.c pex64igen.c
elf32-ia64.c elf64-ia64.c \
elf32-riscv.c elf64-riscv.c \
peigen.c pepigen.c pex64igen.c
CFILES = $(SOURCE_CFILES) $(BUILD_CFILES)
SOURCE_HFILES = \
@ -1169,13 +1190,14 @@ noinst_LIBRARIES = libbfd.a
libbfd_a_SOURCES =
BFD_H_DEPS = $(INCDIR)/ansidecl.h $(INCDIR)/symcat.h
LOCAL_H_DEPS = libbfd.h sysdep.h config.h
BFD_H_FILES = bfd-in.h init.c opncls.c libbfd.c section.c archures.c \
reloc.c syms.c bfd.c bfdio.c bfdwin.c \
archive.c corefile.c targets.c format.c compress.c
BFD_H_FILES = bfd-in.h init.c opncls.c libbfd.c \
bfdio.c bfdwin.c section.c archures.c reloc.c \
syms.c bfd.c archive.c corefile.c targets.c format.c \
linker.c simple.c compress.c
BFD64_H_FILES = archive64.c
LIBBFD_H_FILES = libbfd-in.h init.c libbfd.c bfdio.c bfdwin.c \
cache.c reloc.c archures.c elf.c
LIBBFD_H_FILES = libbfd-in.h libbfd.c bfdio.c bfdwin.c \
cache.c reloc.c archures.c linker.c
LIBCOFF_H_FILES = libcoff-in.h coffcode.h
MOSTLYCLEANFILES = ofiles stamp-ofiles
@ -1410,6 +1432,8 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-pj.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-plugin.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-powerpc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-pru.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-riscv.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-rl78.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-rs6000.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-rx.Plo@am__quote@
@ -1430,6 +1454,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-vax.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-visium.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-w65.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-wasm32.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-we32k.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-xc16x.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-xgate.Plo@am__quote@
@ -1448,6 +1473,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf-m10200.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf-m10300.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf-nacl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf-properties.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf-strtab.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf-vxworks.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf.Plo@am__quote@
@ -1499,6 +1525,8 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-or1k.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-pj.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-ppc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-pru.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-riscv.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-rl78.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-rx.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-s390.Plo@am__quote@
@ -1516,6 +1544,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-v850.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-vax.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-visium.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-wasm32.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-xc16x.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-xgate.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-xstormy16.Plo@am__quote@
@ -1530,6 +1559,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-mips.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-mmix.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-ppc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-riscv.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-s390.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-sh64.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-sparc.Plo@am__quote@
@ -1541,6 +1571,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfxx-aarch64.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfxx-ia64.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfxx-mips.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfxx-riscv.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfxx-sparc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfxx-tilegx.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/epoc-pe-arm.Plo@am__quote@
@ -1645,6 +1676,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vms-alpha.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vms-lib.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vms-misc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wasm-module.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcofflink.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xsym.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xtensa-isa.Plo@am__quote@
@ -2078,6 +2110,18 @@ elf64-ia64.c : elfnn-ia64.c
$(SED) -e s/NN/64/g < $(srcdir)/elfnn-ia64.c > elf64-ia64.new
mv -f elf64-ia64.new elf64-ia64.c
elf32-riscv.c : elfnn-riscv.c
rm -f elf32-riscv.c
echo "#line 1 \"$(srcdir)/elfnn-riscv.c\"" > elf32-riscv.new
sed -e s/NN/32/g < $(srcdir)/elfnn-riscv.c >> elf32-riscv.new
mv -f elf32-riscv.new elf32-riscv.c
elf64-riscv.c : elfnn-riscv.c
rm -f elf64-riscv.c
echo "#line 1 \"$(srcdir)/elfnn-riscv.c\"" > elf64-riscv.new
sed -e s/NN/64/g < $(srcdir)/elfnn-riscv.c >> elf64-riscv.new
mv -f elf64-riscv.new elf64-riscv.c
peigen.c : peXXigen.c
rm -f peigen.c
$(SED) -e s/XX/pe/g < $(srcdir)/peXXigen.c > peigen.new

View File

@ -82,7 +82,7 @@ TARGETNAME
The name of the target, for run-time lookups.
Usually "a.out-<target>"
Copyright (C) 2012-2016 Free Software Foundation, Inc.
Copyright (C) 2012-2017 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright

View File

@ -48,7 +48,7 @@ gcc manual.
Bug reports without patches will be remembered, but they may never get
fixed until somebody volunteers to fix them.
Copyright (C) 2012-2016 Free Software Foundation, Inc.
Copyright (C) 2012-2017 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright

View File

@ -20,7 +20,7 @@ Things that still need to be done: -*- Text -*-
o - upgrade the reloc handling as per Steve's suggestion.
Copyright (C) 2012-2016 Free Software Foundation, Inc.
Copyright (C) 2012-2017 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright

View File

@ -1,5 +1,5 @@
dnl
dnl Copyright (C) 2012-2016 Free Software Foundation, Inc.
dnl Copyright (C) 2012-2017 Free Software Foundation, Inc.
dnl
dnl This file is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by

View File

@ -1,7 +1,7 @@
/* BFD back-end for AIX on PS/2 core files.
This was based on trad-core.c, which was written by John Gilmore of
Cygnus Support.
Copyright (C) 1988-2016 Free Software Foundation, Inc.
Copyright (C) 1988-2017 Free Software Foundation, Inc.
Written by Minh Tran-Le <TRANLE@INTELLICORP.COM>.
Converted to back end form by Ian Lance Taylor <ian@cygnus.com>.

View File

@ -1,5 +1,5 @@
/* IBM RS/6000 "XCOFF" back-end for BFD.
Copyright (C) 2001-2016 Free Software Foundation, Inc.
Copyright (C) 2001-2017 Free Software Foundation, Inc.
Written by Tom Rix
Contributed by Red Hat Inc.

View File

@ -1,5 +1,5 @@
/* BFD back-end for a.out.adobe binaries.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support. Based on bout.c.
This file is part of BFD, the Binary File Descriptor library.
@ -121,7 +121,8 @@ aout_adobe_callback (bfd *abfd)
goto no_more_sections;
default:
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B: Unknown section type in a.out.adobe file: %x\n"),
abfd, ext->e_type[0]);
goto no_more_sections;

View File

@ -1,5 +1,5 @@
/* BFD back-end for raw ARM a.out binaries.
Copyright (C) 1994-2016 Free Software Foundation, Inc.
Copyright (C) 1994-2017 Free Software Foundation, Inc.
Contributed by Richard Earnshaw (rwe@pegasus.esprit.ec.org)
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD backend for CRIS a.out binaries.
Copyright (C) 2000-2016 Free Software Foundation, Inc.
Copyright (C) 2000-2017 Free Software Foundation, Inc.
Contributed by Axis Communications AB.
Written by Hans-Peter Nilsson.
@ -196,8 +196,9 @@ MY (swap_ext_reloc_out) (bfd *abfd,
We may change this later, but assert this for the moment. */
if (r_type > 2)
{
(*_bfd_error_handler) (_("%s: Invalid relocation type exported: %d"),
bfd_get_filename (abfd), r_type);
/* xgettext:c-format */
_bfd_error_handler (_("%B: Invalid relocation type exported: %d"),
abfd, r_type);
bfd_set_error (bfd_error_wrong_format);
}
@ -239,8 +240,9 @@ MY (swap_ext_reloc_in) (bfd *abfd,
if (r_type > 2)
{
(*_bfd_error_handler) (_("%B: Invalid relocation type imported: %d"),
abfd, r_type);
/* xgettext:c-format */
_bfd_error_handler (_("%B: Invalid relocation type imported: %d"),
abfd, r_type);
bfd_set_error (bfd_error_wrong_format);
}
@ -249,7 +251,8 @@ MY (swap_ext_reloc_in) (bfd *abfd,
if (r_extern && r_index > symcount)
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B: Bad relocation record imported: %d"), abfd, r_index);
bfd_set_error (bfd_error_wrong_format);

View File

@ -1,5 +1,5 @@
/* BFD back-end for ns32k a.out-ish binaries.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Contributed by Ian Dall (idall@eleceng.adelaide.edu.au).
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD backend for sparc little-endian aout binaries.
Copyright (C) 1996-2016 Free Software Foundation, Inc.
Copyright (C) 1996-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* Define a target vector and some small routines for a variant of a.out.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@ -373,7 +373,7 @@ MY_bfd_final_link (bfd *abfd, struct bfd_link_info *info)
_bfd_archive_bsd_construct_extended_name_table
#endif
#ifndef MY_write_armap
#define MY_write_armap bsd_write_armap
#define MY_write_armap _bfd_bsd_write_armap
#endif
#ifndef MY_read_ar_hdr
#define MY_read_ar_hdr _bfd_generic_read_ar_hdr

View File

@ -1,5 +1,5 @@
/* BFD back-end for TMS320C30 a.out binaries.
Copyright (C) 1998-2016 Free Software Foundation, Inc.
Copyright (C) 1998-2017 Free Software Foundation, Inc.
Contributed by Steven Haworth (steve@pm.cse.rmit.edu.au)
This file is part of BFD, the Binary File Descriptor library.
@ -828,7 +828,7 @@ tic30_aout_set_arch_mach (bfd *abfd,
_bfd_archive_bsd_construct_extended_name_table
#endif
#ifndef MY_write_armap
#define MY_write_armap bsd_write_armap
#define MY_write_armap _bfd_bsd_write_armap
#endif
#ifndef MY_read_ar_hdr
#define MY_read_ar_hdr _bfd_generic_read_ar_hdr

View File

@ -1,5 +1,5 @@
/* BFD backend for SunOS style a.out with flags set to 0
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for 32-bit a.out files.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for 64-bit a.out files.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* A.out "format 1" file handling code for BFD.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@ -75,8 +75,9 @@
#define MY_bfd_merge_private_bfd_data sunos_merge_private_bfd_data
static bfd_boolean
sunos_merge_private_bfd_data (bfd *ibfd, bfd *obfd)
sunos_merge_private_bfd_data (bfd *ibfd, struct bfd_link_info *info)
{
bfd *obfd = info->output_bfd;
if (bfd_get_flavour (ibfd) != bfd_target_aout_flavour
|| bfd_get_flavour (obfd) != bfd_target_aout_flavour)
return TRUE;

View File

@ -1,5 +1,5 @@
/* BFD semi-generic back-end for a.out binaries.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@ -1277,9 +1277,10 @@ NAME (aout, set_section_contents) (bfd *abfd,
(section->vma - obj_textsec (abfd)->vma);
else
{
(*_bfd_error_handler)
(_("%s: can not represent section `%s' in a.out object file format"),
bfd_get_filename (abfd), bfd_get_section_name (abfd, section));
_bfd_error_handler
/* xgettext:c-format */
(_("%B: can not represent section `%A' in a.out object file format"),
abfd, section);
bfd_set_error (bfd_error_nonrepresentable_section);
return FALSE;
}
@ -1577,9 +1578,11 @@ translate_to_native_sym_flags (bfd *abfd,
{
/* This case occurs, e.g., for the *DEBUG* section of a COFF
file. */
(*_bfd_error_handler)
(_("%s: can not represent section for symbol `%s' in a.out object file format"),
bfd_get_filename (abfd),
_bfd_error_handler
/* xgettext:c-format */
(_("%B: can not represent section for symbol `%s' in a.out "
"object file format"),
abfd,
cache_ptr->name != NULL ? cache_ptr->name : _("*unknown*"));
bfd_set_error (bfd_error_nonrepresentable_section);
return FALSE;
@ -1611,9 +1614,10 @@ translate_to_native_sym_flags (bfd *abfd,
sym_pointer->e_type[0] |= N_TEXT;
else
{
(*_bfd_error_handler)
(_("%s: can not represent section `%s' in a.out object file format"),
bfd_get_filename (abfd), bfd_get_section_name (abfd, sec));
_bfd_error_handler
/* xgettext:c-format */
(_("%B: can not represent section `%A' in a.out object file format"),
abfd, sec);
bfd_set_error (bfd_error_nonrepresentable_section);
return FALSE;
}
@ -1951,6 +1955,7 @@ NAME (aout, swap_std_reloc_out) (bfd *abfd,
PUT_WORD (abfd, g->address, natptr->r_address);
BFD_ASSERT (g->howto != NULL);
r_length = g->howto->size ; /* Size as a power of two. */
r_pcrel = (int) g->howto->pc_relative; /* Relative to PC? */
/* XXX This relies on relocs coming from a.out files. */
@ -2389,16 +2394,39 @@ NAME (aout, squirt_out_relocs) (bfd *abfd, asection *section)
for (natptr = native;
count != 0;
--count, natptr += each_size, ++generic)
MY_swap_ext_reloc_out (abfd, *generic,
(struct reloc_ext_external *) natptr);
{
/* PR 20921: If the howto field has not been initialised then skip
this reloc.
PR 20929: Similarly for the symbol field. */
if ((*generic)->howto == NULL
|| (*generic)->sym_ptr_ptr == NULL)
{
bfd_set_error (bfd_error_invalid_operation);
_bfd_error_handler (_("\
%B: attempt to write out unknown reloc type"), abfd);
return FALSE;
}
MY_swap_ext_reloc_out (abfd, *generic,
(struct reloc_ext_external *) natptr);
}
}
else
{
for (natptr = native;
count != 0;
--count, natptr += each_size, ++generic)
MY_swap_std_reloc_out (abfd, *generic,
(struct reloc_std_external *) natptr);
{
if ((*generic)->howto == NULL
|| (*generic)->sym_ptr_ptr == NULL)
{
bfd_set_error (bfd_error_invalid_operation);
_bfd_error_handler (_("\
%B: attempt to write out unknown reloc type"), abfd);
return FALSE;
}
MY_swap_std_reloc_out (abfd, *generic,
(struct reloc_std_external *) natptr);
}
}
if (bfd_bwrite ((void *) native, natsize, abfd) != natsize)
@ -2662,7 +2690,7 @@ NAME (aout, find_nearest_line) (bfd *abfd,
char *buf;
*filename_ptr = abfd->filename;
*functionname_ptr = 0;
*functionname_ptr = NULL;
*line_ptr = 0;
if (disriminator_ptr)
*disriminator_ptr = 0;
@ -2807,9 +2835,17 @@ NAME (aout, find_nearest_line) (bfd *abfd,
*filename_ptr = main_file_name;
else
{
sprintf (buf, "%s%s", directory_name, main_file_name);
*filename_ptr = buf;
buf += filelen + 1;
if (buf == NULL)
/* PR binutils/20891: In a corrupt input file both
main_file_name and directory_name can be empty... */
* filename_ptr = NULL;
else
{
snprintf (buf, filelen + 1, "%s%s", directory_name,
main_file_name);
*filename_ptr = buf;
buf += filelen + 1;
}
}
}
@ -2818,6 +2854,12 @@ NAME (aout, find_nearest_line) (bfd *abfd,
const char *function = func->name;
char *colon;
if (buf == NULL)
{
/* PR binutils/20892: In a corrupt input file func can be empty. */
* functionname_ptr = NULL;
return TRUE;
}
/* The caller expects a symbol name. We actually have a
function name, without the leading underscore. Put the
underscore back in, so that the caller gets a symbol name. */
@ -3013,10 +3055,9 @@ aout_link_add_symbols (bfd *abfd, struct bfd_link_info *info)
continue;
/* PR 19629: Corrupt binaries can contain illegal string offsets. */
if (GET_WORD (abfd, p->e_strx) > obj_aout_external_string_size (abfd))
if (GET_WORD (abfd, p->e_strx) >= obj_aout_external_string_size (abfd))
return FALSE;
name = strings + GET_WORD (abfd, p->e_strx);
value = GET_WORD (abfd, p->e_value);
flags = BSF_GLOBAL;
string = NULL;
@ -3072,10 +3113,12 @@ aout_link_add_symbols (bfd *abfd, struct bfd_link_info *info)
case N_INDR | N_EXT:
/* An indirect symbol. The next symbol is the symbol
which this one really is. */
BFD_ASSERT (p + 1 < pend);
/* See PR 20925 for a reproducer. */
if (p + 1 >= pend)
return FALSE;
++p;
/* PR 19629: Corrupt binaries can contain illegal string offsets. */
if (GET_WORD (abfd, p->e_strx) > obj_aout_external_string_size (abfd))
if (GET_WORD (abfd, p->e_strx) >= obj_aout_external_string_size (abfd))
return FALSE;
string = strings + GET_WORD (abfd, p->e_strx);
section = bfd_ind_section_ptr;
@ -3111,7 +3154,7 @@ aout_link_add_symbols (bfd *abfd, struct bfd_link_info *info)
++p;
string = name;
/* PR 19629: Corrupt binaries can contain illegal string offsets. */
if (GET_WORD (abfd, p->e_strx) > obj_aout_external_string_size (abfd))
if (GET_WORD (abfd, p->e_strx) >= obj_aout_external_string_size (abfd))
return FALSE;
name = strings + GET_WORD (abfd, p->e_strx);
section = bfd_und_section_ptr;
@ -5374,10 +5417,10 @@ NAME (aout, final_link) (bfd *abfd,
and call get_reloc_upper_bound and canonicalize_reloc to
work out the number of relocs needed, and then multiply
by the reloc size. */
(*_bfd_error_handler)
(_("%s: relocatable link from %s to %s not supported"),
bfd_get_filename (abfd),
sub->xvec->name, abfd->xvec->name);
_bfd_error_handler
/* xgettext:c-format */
(_("%B: relocatable link from %s to %s not supported"),
abfd, sub->xvec->name, abfd->xvec->name);
bfd_set_error (bfd_error_invalid_operation);
goto error_return;
}

View File

@ -1,5 +1,5 @@
/* BFD back-end for archive files (libraries).
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support. Mostly Gumby Henkel-Wallace's fault.
This file is part of BFD, the Binary File Descriptor library.
@ -2289,7 +2289,7 @@ _bfd_write_archive_contents (bfd *arch)
{
if (bfd_update_armap_timestamp (arch))
break;
(*_bfd_error_handler)
_bfd_error_handler
(_("Warning: writing archive was slow: rewriting timestamp\n"));
}
while (++tries < 6);
@ -2401,9 +2401,9 @@ _bfd_compute_and_write_armap (bfd *arch, unsigned int elength)
}
if (strcmp (syms[src_count]->name, "__gnu_lto_slim") == 0)
(*_bfd_error_handler)
(_("%s: plugin needed to handle lto object"),
bfd_get_filename (current));
_bfd_error_handler
(_("%B: plugin needed to handle lto object"),
current);
namelen = strlen (syms[src_count]->name);
amt = sizeof (char *);
map[orl_count].name = (char **) bfd_alloc (arch, amt);
@ -2455,11 +2455,11 @@ _bfd_compute_and_write_armap (bfd *arch, unsigned int elength)
}
bfd_boolean
bsd_write_armap (bfd *arch,
unsigned int elength,
struct orl *map,
unsigned int orl_count,
int stridx)
_bfd_bsd_write_armap (bfd *arch,
unsigned int elength,
struct orl *map,
unsigned int orl_count,
int stridx)
{
int padit = stridx & 1;
unsigned int ranlibsize = orl_count * BSD_SYMDEF_SIZE;
@ -2679,11 +2679,11 @@ _bfd_archive_bsd_update_armap_timestamp (bfd *arch)
symbol name n-1 */
bfd_boolean
coff_write_armap (bfd *arch,
unsigned int elength,
struct orl *map,
unsigned int symbol_count,
int stridx)
_bfd_coff_write_armap (bfd *arch,
unsigned int elength,
struct orl *map,
unsigned int symbol_count,
int stridx)
{
/* The size of the ranlib is the number of exported symbols in the
archive * the number of bytes in an int, + an int for the count. */

View File

@ -1,5 +1,5 @@
/* Support for 64-bit archives.
Copyright (C) 1996-2016 Free Software Foundation, Inc.
Copyright (C) 1996-2017 Free Software Foundation, Inc.
Ian Lance Taylor, Cygnus Support
Linker support added by Mark Mitchell, CodeSourcery, LLC.
<mark@codesourcery.com>

View File

@ -1,5 +1,5 @@
/* BFD library support routines for architectures.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Hacked by John Gilmore and Steve Chamberlain of Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@ -457,6 +457,9 @@ DESCRIPTION
.#define bfd_mach_cris_v0_v10 255
.#define bfd_mach_cris_v32 32
.#define bfd_mach_cris_v10_v32 1032
. bfd_arch_riscv,
.#define bfd_mach_riscv32 132
.#define bfd_mach_riscv64 164
. bfd_arch_rl78,
.#define bfd_mach_rl78 0x75
. bfd_arch_rx, {* Renesas RX. *}
@ -525,6 +528,10 @@ DESCRIPTION
.#define bfd_mach_nios2r2 2
. bfd_arch_visium, {* Visium *}
.#define bfd_mach_visium 1
. bfd_arch_wasm32, {* WebAssembly *}
.#define bfd_mach_wasm32 1
. bfd_arch_pru, {* PRU *}
.#define bfd_mach_pru 0
. bfd_arch_last
. };
*/
@ -628,6 +635,8 @@ extern const bfd_arch_info_type bfd_pj_arch;
extern const bfd_arch_info_type bfd_plugin_arch;
extern const bfd_arch_info_type bfd_powerpc_archs[];
#define bfd_powerpc_arch bfd_powerpc_archs[0]
extern const bfd_arch_info_type bfd_pru_arch;
extern const bfd_arch_info_type bfd_riscv_arch;
extern const bfd_arch_info_type bfd_rs6000_arch;
extern const bfd_arch_info_type bfd_rl78_arch;
extern const bfd_arch_info_type bfd_rx_arch;
@ -647,6 +656,7 @@ extern const bfd_arch_info_type bfd_v850_arch;
extern const bfd_arch_info_type bfd_v850_rh850_arch;
extern const bfd_arch_info_type bfd_vax_arch;
extern const bfd_arch_info_type bfd_visium_arch;
extern const bfd_arch_info_type bfd_wasm32_arch;
extern const bfd_arch_info_type bfd_w65_arch;
extern const bfd_arch_info_type bfd_we32k_arch;
extern const bfd_arch_info_type bfd_xstormy16_arch;
@ -717,8 +727,10 @@ static const bfd_arch_info_type * const bfd_archures_list[] =
&bfd_or1k_arch,
&bfd_pdp11_arch,
&bfd_powerpc_arch,
&bfd_rs6000_arch,
&bfd_pru_arch,
&bfd_riscv_arch,
&bfd_rl78_arch,
&bfd_rs6000_arch,
&bfd_rx_arch,
&bfd_s390_arch,
&bfd_score_arch,
@ -737,6 +749,7 @@ static const bfd_arch_info_type * const bfd_archures_list[] =
&bfd_vax_arch,
&bfd_visium_arch,
&bfd_w65_arch,
&bfd_wasm32_arch,
&bfd_we32k_arch,
&bfd_xstormy16_arch,
&bfd_xtensa_arch,

View File

@ -1,5 +1,5 @@
/* BFD back-end for NetBSD/ARM a.out-ish binaries.
Copyright (C) 1999-2016 Free Software Foundation, Inc.
Copyright (C) 1999-2017 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,6 +1,6 @@
/* Main header file for the bfd library -- portable access to object files.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Contributed by Cygnus Support.
@ -34,6 +34,7 @@ extern "C" {
#include "ansidecl.h"
#include "symcat.h"
#include <stdarg.h>
#include <sys/stat.h>
#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
@ -485,20 +486,20 @@ extern int bfd_stat (bfd *, struct stat *);
/* Deprecated old routines. */
#if __GNUC__
#define bfd_read(BUF, ELTSIZE, NITEMS, ABFD) \
(warn_deprecated ("bfd_read", __FILE__, __LINE__, __FUNCTION__), \
(_bfd_warn_deprecated ("bfd_read", __FILE__, __LINE__, __FUNCTION__), \
bfd_bread ((BUF), (ELTSIZE) * (NITEMS), (ABFD)))
#define bfd_write(BUF, ELTSIZE, NITEMS, ABFD) \
(warn_deprecated ("bfd_write", __FILE__, __LINE__, __FUNCTION__), \
(_bfd_warn_deprecated ("bfd_write", __FILE__, __LINE__, __FUNCTION__), \
bfd_bwrite ((BUF), (ELTSIZE) * (NITEMS), (ABFD)))
#else
#define bfd_read(BUF, ELTSIZE, NITEMS, ABFD) \
(warn_deprecated ("bfd_read", (const char *) 0, 0, (const char *) 0), \
(_bfd_warn_deprecated ("bfd_read", (const char *) 0, 0, (const char *) 0), \
bfd_bread ((BUF), (ELTSIZE) * (NITEMS), (ABFD)))
#define bfd_write(BUF, ELTSIZE, NITEMS, ABFD) \
(warn_deprecated ("bfd_write", (const char *) 0, 0, (const char *) 0),\
(_bfd_warn_deprecated ("bfd_write", (const char *) 0, 0, (const char *) 0),\
bfd_bwrite ((BUF), (ELTSIZE) * (NITEMS), (ABFD)))
#endif
extern void warn_deprecated (const char *, const char *, int, const char *);
extern void _bfd_warn_deprecated (const char *, const char *, int, const char *);
/* Cast from const char * to char * so that caller can assign to
a char * without a warning. */
@ -900,9 +901,27 @@ extern bfd_boolean bfd_elf32_arm_allocate_interworking_sections
extern bfd_boolean bfd_elf32_arm_process_before_allocation
(bfd *, struct bfd_link_info *);
void bfd_elf32_arm_set_target_relocs
(bfd *, struct bfd_link_info *, int, char *, int, int, bfd_arm_vfp11_fix,
bfd_arm_stm32l4xx_fix, int, int, int, int, int);
struct elf32_arm_params {
char *thumb_entry_symbol;
int byteswap_code;
int target1_is_rel;
char * target2_type;
int fix_v4bx;
int use_blx;
bfd_arm_vfp11_fix vfp11_denorm_fix;
bfd_arm_stm32l4xx_fix stm32l4xx_fix;
int no_enum_size_warning;
int no_wchar_size_warning;
int pic_veneer;
int fix_cortex_a8;
int fix_arm1176;
int merge_exidx_entries;
int cmse_implib;
bfd *in_implib_bfd;
};
void bfd_elf32_arm_set_target_params
(bfd *, struct bfd_link_info *, struct elf32_arm_params *);
extern bfd_boolean bfd_elf32_arm_get_bfd_for_interworking
(bfd *, struct bfd_link_info *);
@ -1026,3 +1045,7 @@ extern bfd_boolean v850_elf_create_sections
extern bfd_boolean v850_elf_set_note
(bfd *, unsigned int, unsigned int);
/* MIPS ABI flags data access. For the disassembler. */
struct elf_internal_abiflags_v0;
extern struct elf_internal_abiflags_v0 *bfd_mips_elf_get_abiflags (bfd *);

View File

@ -7,7 +7,7 @@
/* Main header file for the bfd library -- portable access to object files.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Contributed by Cygnus Support.
@ -41,6 +41,7 @@ extern "C" {
#include "ansidecl.h"
#include "symcat.h"
#include <stdarg.h>
#include <sys/stat.h>
#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
@ -492,20 +493,20 @@ extern int bfd_stat (bfd *, struct stat *);
/* Deprecated old routines. */
#if __GNUC__
#define bfd_read(BUF, ELTSIZE, NITEMS, ABFD) \
(warn_deprecated ("bfd_read", __FILE__, __LINE__, __FUNCTION__), \
(_bfd_warn_deprecated ("bfd_read", __FILE__, __LINE__, __FUNCTION__), \
bfd_bread ((BUF), (ELTSIZE) * (NITEMS), (ABFD)))
#define bfd_write(BUF, ELTSIZE, NITEMS, ABFD) \
(warn_deprecated ("bfd_write", __FILE__, __LINE__, __FUNCTION__), \
(_bfd_warn_deprecated ("bfd_write", __FILE__, __LINE__, __FUNCTION__), \
bfd_bwrite ((BUF), (ELTSIZE) * (NITEMS), (ABFD)))
#else
#define bfd_read(BUF, ELTSIZE, NITEMS, ABFD) \
(warn_deprecated ("bfd_read", (const char *) 0, 0, (const char *) 0), \
(_bfd_warn_deprecated ("bfd_read", (const char *) 0, 0, (const char *) 0), \
bfd_bread ((BUF), (ELTSIZE) * (NITEMS), (ABFD)))
#define bfd_write(BUF, ELTSIZE, NITEMS, ABFD) \
(warn_deprecated ("bfd_write", (const char *) 0, 0, (const char *) 0),\
(_bfd_warn_deprecated ("bfd_write", (const char *) 0, 0, (const char *) 0),\
bfd_bwrite ((BUF), (ELTSIZE) * (NITEMS), (ABFD)))
#endif
extern void warn_deprecated (const char *, const char *, int, const char *);
extern void _bfd_warn_deprecated (const char *, const char *, int, const char *);
/* Cast from const char * to char * so that caller can assign to
a char * without a warning. */
@ -907,9 +908,27 @@ extern bfd_boolean bfd_elf32_arm_allocate_interworking_sections
extern bfd_boolean bfd_elf32_arm_process_before_allocation
(bfd *, struct bfd_link_info *);
void bfd_elf32_arm_set_target_relocs
(bfd *, struct bfd_link_info *, int, char *, int, int, bfd_arm_vfp11_fix,
bfd_arm_stm32l4xx_fix, int, int, int, int, int);
struct elf32_arm_params {
char *thumb_entry_symbol;
int byteswap_code;
int target1_is_rel;
char * target2_type;
int fix_v4bx;
int use_blx;
bfd_arm_vfp11_fix vfp11_denorm_fix;
bfd_arm_stm32l4xx_fix stm32l4xx_fix;
int no_enum_size_warning;
int no_wchar_size_warning;
int pic_veneer;
int fix_cortex_a8;
int fix_arm1176;
int merge_exidx_entries;
int cmse_implib;
bfd *in_implib_bfd;
};
void bfd_elf32_arm_set_target_params
(bfd *, struct bfd_link_info *, struct elf32_arm_params *);
extern bfd_boolean bfd_elf32_arm_get_bfd_for_interworking
(bfd *, struct bfd_link_info *);
@ -1033,6 +1052,10 @@ extern bfd_boolean v850_elf_create_sections
extern bfd_boolean v850_elf_set_note
(bfd *, unsigned int, unsigned int);
/* MIPS ABI flags data access. For the disassembler. */
struct elf_internal_abiflags_v0;
extern struct elf_internal_abiflags_v0 *bfd_mips_elf_get_abiflags (bfd *);
/* Extracted from init.c. */
void bfd_init (void);
@ -1046,7 +1069,8 @@ bfd *bfd_openr (const char *filename, const char *target);
bfd *bfd_fdopenr (const char *filename, const char *target, int fd);
bfd *bfd_openstreamr (const char * filename, const char * target, void * stream);
bfd *bfd_openstreamr (const char * filename, const char * target,
void * stream);
bfd *bfd_openr_iovec (const char *filename, const char *target,
void *(*open_func) (struct bfd *nbfd,
@ -1098,6 +1122,8 @@ struct bfd_section *bfd_create_gnu_debuglink_section
bfd_boolean bfd_fill_in_gnu_debuglink_section
(bfd *abfd, struct bfd_section *sect, const char *filename);
char *bfd_follow_build_id_debuglink (bfd *abfd, const char *dir);
/* Extracted from libbfd.c. */
/* Byte swapping macros for user section data. */
@ -1775,9 +1801,9 @@ extern asection _bfd_std_section[4];
#define bfd_section_removed_from_list(ABFD, S) \
((S)->next == NULL ? (ABFD)->section_last != (S) : (S)->next->prev != (S))
#define BFD_FAKE_SECTION(SEC, FLAGS, SYM, NAME, IDX) \
#define BFD_FAKE_SECTION(SEC, SYM, NAME, IDX, FLAGS) \
/* name, id, index, next, prev, flags, user_set_vma, */ \
{ NAME, IDX, 0, NULL, NULL, FLAGS, 0, \
{ NAME, IDX, 0, NULL, NULL, FLAGS, 0, \
\
/* linker_mark, linker_has_input, gc_mark, decompress_status, */ \
0, 0, 1, 0, \
@ -2276,6 +2302,9 @@ enum bfd_architecture
#define bfd_mach_cris_v0_v10 255
#define bfd_mach_cris_v32 32
#define bfd_mach_cris_v10_v32 1032
bfd_arch_riscv,
#define bfd_mach_riscv32 132
#define bfd_mach_riscv64 164
bfd_arch_rl78,
#define bfd_mach_rl78 0x75
bfd_arch_rx, /* Renesas RX. */
@ -2344,6 +2373,10 @@ enum bfd_architecture
#define bfd_mach_nios2r2 2
bfd_arch_visium, /* Visium */
#define bfd_mach_visium 1
bfd_arch_wasm32, /* WebAssembly */
#define bfd_mach_wasm32 1
bfd_arch_pru, /* PRU */
#define bfd_mach_pru 0
bfd_arch_last
};
@ -3332,6 +3365,7 @@ instruction. */
BFD_RELOC_PPC_VLE_SDAREL_HI16D,
BFD_RELOC_PPC_VLE_SDAREL_HA16A,
BFD_RELOC_PPC_VLE_SDAREL_HA16D,
BFD_RELOC_PPC_16DX_HA,
BFD_RELOC_PPC_REL16DX_HA,
BFD_RELOC_PPC64_HIGHER,
BFD_RELOC_PPC64_HIGHER_S,
@ -3713,13 +3747,14 @@ pc-relative or some form of GOT-indirect relocation. */
BFD_RELOC_AC_SECTOFF_U8,
BFD_RELOC_AC_SECTOFF_U8_1,
BFD_RELOC_AC_SECTOFF_U8_2,
BFD_RELOC_AC_SECTFOFF_S9,
BFD_RELOC_AC_SECTFOFF_S9_1,
BFD_RELOC_AC_SECTFOFF_S9_2,
BFD_RELOC_AC_SECTOFF_S9,
BFD_RELOC_AC_SECTOFF_S9_1,
BFD_RELOC_AC_SECTOFF_S9_2,
BFD_RELOC_ARC_SECTOFF_ME_1,
BFD_RELOC_ARC_SECTOFF_ME_2,
BFD_RELOC_ARC_SECTOFF_1,
BFD_RELOC_ARC_SECTOFF_2,
BFD_RELOC_ARC_SDA_12,
BFD_RELOC_ARC_SDA16_ST2,
BFD_RELOC_ARC_32_PCREL,
BFD_RELOC_ARC_PC32,
@ -4671,6 +4706,55 @@ number for the IN and OUT instructions */
number for the SBIC, SBIS, SBI and CBI instructions */
BFD_RELOC_AVR_PORT5,
/* RISC-V relocations. */
BFD_RELOC_RISCV_HI20,
BFD_RELOC_RISCV_PCREL_HI20,
BFD_RELOC_RISCV_PCREL_LO12_I,
BFD_RELOC_RISCV_PCREL_LO12_S,
BFD_RELOC_RISCV_LO12_I,
BFD_RELOC_RISCV_LO12_S,
BFD_RELOC_RISCV_GPREL12_I,
BFD_RELOC_RISCV_GPREL12_S,
BFD_RELOC_RISCV_TPREL_HI20,
BFD_RELOC_RISCV_TPREL_LO12_I,
BFD_RELOC_RISCV_TPREL_LO12_S,
BFD_RELOC_RISCV_TPREL_ADD,
BFD_RELOC_RISCV_CALL,
BFD_RELOC_RISCV_CALL_PLT,
BFD_RELOC_RISCV_ADD8,
BFD_RELOC_RISCV_ADD16,
BFD_RELOC_RISCV_ADD32,
BFD_RELOC_RISCV_ADD64,
BFD_RELOC_RISCV_SUB8,
BFD_RELOC_RISCV_SUB16,
BFD_RELOC_RISCV_SUB32,
BFD_RELOC_RISCV_SUB64,
BFD_RELOC_RISCV_GOT_HI20,
BFD_RELOC_RISCV_TLS_GOT_HI20,
BFD_RELOC_RISCV_TLS_GD_HI20,
BFD_RELOC_RISCV_JMP,
BFD_RELOC_RISCV_TLS_DTPMOD32,
BFD_RELOC_RISCV_TLS_DTPREL32,
BFD_RELOC_RISCV_TLS_DTPMOD64,
BFD_RELOC_RISCV_TLS_DTPREL64,
BFD_RELOC_RISCV_TLS_TPREL32,
BFD_RELOC_RISCV_TLS_TPREL64,
BFD_RELOC_RISCV_ALIGN,
BFD_RELOC_RISCV_RVC_BRANCH,
BFD_RELOC_RISCV_RVC_JUMP,
BFD_RELOC_RISCV_RVC_LUI,
BFD_RELOC_RISCV_GPREL_I,
BFD_RELOC_RISCV_GPREL_S,
BFD_RELOC_RISCV_TPREL_I,
BFD_RELOC_RISCV_TPREL_S,
BFD_RELOC_RISCV_RELAX,
BFD_RELOC_RISCV_CFA,
BFD_RELOC_RISCV_SUB6,
BFD_RELOC_RISCV_SET6,
BFD_RELOC_RISCV_SET8,
BFD_RELOC_RISCV_SET16,
BFD_RELOC_RISCV_SET32,
/* Renesas RL78 Relocations. */
BFD_RELOC_RL78_NEG8,
BFD_RELOC_RL78_NEG16,
@ -5486,6 +5570,41 @@ a matching LO8XG part. */
BFD_RELOC_NIOS2_R2_T1X1I6,
BFD_RELOC_NIOS2_R2_T1X1I6_2,
/* PRU LDI 16-bit unsigned data-memory relocation. */
BFD_RELOC_PRU_U16,
/* PRU LDI 16-bit unsigned instruction-memory relocation. */
BFD_RELOC_PRU_U16_PMEMIMM,
/* PRU relocation for two consecutive LDI load instructions that load a
32 bit value into a register. If the higher bits are all zero, then
the second instruction may be relaxed. */
BFD_RELOC_PRU_LDI32,
/* PRU QBBx 10-bit signed PC-relative relocation. */
BFD_RELOC_PRU_S10_PCREL,
/* PRU 8-bit unsigned relocation used for the LOOP instruction. */
BFD_RELOC_PRU_U8_PCREL,
/* PRU Program Memory relocations. Used to convert from byte addressing to
32-bit word addressing. */
BFD_RELOC_PRU_32_PMEM,
BFD_RELOC_PRU_16_PMEM,
/* PRU relocations to mark the difference of two local symbols.
These are only needed to support linker relaxation and can be ignored
when not relaxing. The field is set to the value of the difference
assuming no relaxation. The relocation encodes the position of the
second symbol so the linker can determine whether to adjust the field
value. The PMEM variants encode the word difference, instead of byte
difference between symbols. */
BFD_RELOC_PRU_GNU_DIFF8,
BFD_RELOC_PRU_GNU_DIFF16,
BFD_RELOC_PRU_GNU_DIFF32,
BFD_RELOC_PRU_GNU_DIFF16_PMEM,
BFD_RELOC_PRU_GNU_DIFF32_PMEM,
/* IQ2000 Relocations. */
BFD_RELOC_IQ2000_OFFSET_16,
BFD_RELOC_IQ2000_OFFSET_21,
@ -6040,13 +6159,13 @@ instructions. */
BFD_RELOC_AARCH64_TLSDESC_ADR_PAGE21,
/* AArch64 TLS DESC relocation. */
BFD_RELOC_AARCH64_TLSDESC_LD64_LO12_NC,
BFD_RELOC_AARCH64_TLSDESC_LD64_LO12,
/* AArch64 TLS DESC relocation. */
BFD_RELOC_AARCH64_TLSDESC_LD32_LO12_NC,
/* AArch64 TLS DESC relocation. */
BFD_RELOC_AARCH64_TLSDESC_ADD_LO12_NC,
BFD_RELOC_AARCH64_TLSDESC_ADD_LO12,
/* AArch64 TLS DESC relocation. */
BFD_RELOC_AARCH64_TLSDESC_OFF_G1,
@ -6346,6 +6465,18 @@ assembler and not (currently) written to any object files. */
BFD_RELOC_VISIUM_HI16_PCREL,
BFD_RELOC_VISIUM_LO16_PCREL,
BFD_RELOC_VISIUM_IM16_PCREL,
/* WebAssembly relocations. */
BFD_RELOC_WASM32_LEB128,
BFD_RELOC_WASM32_LEB128_GOT,
BFD_RELOC_WASM32_LEB128_GOT_CODE,
BFD_RELOC_WASM32_LEB128_PLT,
BFD_RELOC_WASM32_PLT_INDEX,
BFD_RELOC_WASM32_ABS32_CODE,
BFD_RELOC_WASM32_COPY,
BFD_RELOC_WASM32_CODE_POINTER,
BFD_RELOC_WASM32_INDEX,
BFD_RELOC_WASM32_PLT_SIG,
BFD_RELOC_UNUSED };
typedef enum bfd_reloc_code_real bfd_reloc_code_real_type;
@ -6691,8 +6822,9 @@ struct bfd
/* Flags bits to be saved in bfd_preserve_save. */
#define BFD_FLAGS_SAVED \
(BFD_IN_MEMORY | BFD_COMPRESS | BFD_DECOMPRESS | BFD_PLUGIN \
| BFD_COMPRESS_GABI | BFD_CONVERT_ELF_COMMON | BFD_USE_ELF_STT_COMMON)
(BFD_IN_MEMORY | BFD_COMPRESS | BFD_DECOMPRESS | BFD_LINKER_CREATED \
| BFD_PLUGIN | BFD_COMPRESS_GABI | BFD_CONVERT_ELF_COMMON \
| BFD_USE_ELF_STT_COMMON)
/* Flags bits which are for BFD use only. */
#define BFD_FLAGS_FOR_BFD_USE_MASK \
@ -6909,14 +7041,12 @@ const char *bfd_errmsg (bfd_error_type error_tag);
void bfd_perror (const char *message);
typedef void (*bfd_error_handler_type) (const char *, ...);
typedef void (*bfd_error_handler_type) (const char *, va_list);
bfd_error_handler_type bfd_set_error_handler (bfd_error_handler_type);
void bfd_set_error_program_name (const char *);
bfd_error_handler_type bfd_get_error_handler (void);
typedef void (*bfd_assert_handler_type) (const char *bfd_formatmsg,
const char *bfd_version,
@ -6925,8 +7055,6 @@ typedef void (*bfd_assert_handler_type) (const char *bfd_formatmsg,
bfd_assert_handler_type bfd_set_assert_handler (bfd_assert_handler_type);
bfd_assert_handler_type bfd_get_assert_handler (void);
long bfd_get_reloc_upper_bound (bfd *abfd, asection *sect);
long bfd_canonicalize_reloc
@ -6959,11 +7087,6 @@ bfd_boolean bfd_copy_private_bfd_data (bfd *ibfd, bfd *obfd);
#define bfd_copy_private_bfd_data(ibfd, obfd) \
BFD_SEND (obfd, _bfd_copy_private_bfd_data, \
(ibfd, obfd))
bfd_boolean bfd_merge_private_bfd_data (bfd *ibfd, bfd *obfd);
#define bfd_merge_private_bfd_data(ibfd, obfd) \
BFD_SEND (obfd, _bfd_merge_private_bfd_data, \
(ibfd, obfd))
bfd_boolean bfd_set_private_flags (bfd *abfd, flagword flags);
#define bfd_set_private_flags(abfd, flags) \
@ -7280,7 +7403,7 @@ typedef struct bfd_target
bfd_boolean (*_bfd_copy_private_bfd_data) (bfd *, bfd *);
/* Called to merge BFD general private data from one object file
to a common output file when linking. */
bfd_boolean (*_bfd_merge_private_bfd_data) (bfd *, bfd *);
bfd_boolean (*_bfd_merge_private_bfd_data) (bfd *, struct bfd_link_info *);
/* Called to initialize BFD private section data from one object file
to another. */
#define bfd_init_private_section_data(ibfd, isec, obfd, osec, link_info) \
@ -7604,6 +7727,12 @@ bfd_boolean bfd_link_check_relocs
bfd_boolean _bfd_generic_link_check_relocs
(bfd *abfd, struct bfd_link_info *info);
bfd_boolean bfd_merge_private_bfd_data
(bfd *ibfd, struct bfd_link_info *info);
#define bfd_merge_private_bfd_data(ibfd, info) \
BFD_SEND ((info)->output_bfd, _bfd_merge_private_bfd_data, \
(ibfd, info))
/* Extracted from simple.c. */
bfd_byte *bfd_simple_get_relocated_section_contents
(bfd *abfd, asection *sec, bfd_byte *outbuf, asymbol **symbol_table);

View File

@ -1,5 +1,5 @@
/* Generic BFD library interface and support routines.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@ -180,8 +180,9 @@ CODE_FRAGMENT
.
. {* Flags bits to be saved in bfd_preserve_save. *}
.#define BFD_FLAGS_SAVED \
. (BFD_IN_MEMORY | BFD_COMPRESS | BFD_DECOMPRESS | BFD_PLUGIN \
. | BFD_COMPRESS_GABI | BFD_CONVERT_ELF_COMMON | BFD_USE_ELF_STT_COMMON)
. (BFD_IN_MEMORY | BFD_COMPRESS | BFD_DECOMPRESS | BFD_LINKER_CREATED \
. | BFD_PLUGIN | BFD_COMPRESS_GABI | BFD_CONVERT_ELF_COMMON \
. | BFD_USE_ELF_STT_COMMON)
.
. {* Flags bits which are for BFD use only. *}
.#define BFD_FLAGS_FOR_BFD_USE_MASK \
@ -598,11 +599,11 @@ SUBSECTION
problem. They call a BFD error handler function. This
function may be overridden by the program.
The BFD error handler acts like printf.
The BFD error handler acts like vprintf.
CODE_FRAGMENT
.
.typedef void (*bfd_error_handler_type) (const char *, ...);
.typedef void (*bfd_error_handler_type) (const char *, va_list);
.
*/
@ -610,39 +611,231 @@ CODE_FRAGMENT
static const char *_bfd_error_program_name;
/* This macro and _doprnt taken from libiberty _doprnt.c, tidied a
little and extended to handle '%A' and '%B'. */
#define PRINT_TYPE(TYPE) \
do \
{ \
TYPE value = va_arg (ap, TYPE); \
result = fprintf (stream, specifier, value); \
} while (0)
static int
_doprnt (FILE *stream, const char *format, va_list ap)
{
const char *ptr = format;
char specifier[128];
int total_printed = 0;
while (*ptr != '\0')
{
int result;
if (*ptr != '%')
{
/* While we have regular characters, print them. */
char *end = strchr (ptr, '%');
if (end != NULL)
result = fprintf (stream, "%.*s", (int) (end - ptr), ptr);
else
result = fprintf (stream, "%s", ptr);
ptr += result;
}
else
{
/* We have a format specifier! */
char *sptr = specifier;
int wide_width = 0, short_width = 0;
/* Copy the % and move forward. */
*sptr++ = *ptr++;
/* Move past flags. */
while (strchr ("-+ #0", *ptr))
*sptr++ = *ptr++;
if (*ptr == '*')
{
int value = abs (va_arg (ap, int));
sptr += sprintf (sptr, "%d", value);
ptr++;
}
else
/* Handle explicit numeric value. */
while (ISDIGIT (*ptr))
*sptr++ = *ptr++;
if (*ptr == '.')
{
/* Copy and go past the period. */
*sptr++ = *ptr++;
if (*ptr == '*')
{
int value = abs (va_arg (ap, int));
sptr += sprintf (sptr, "%d", value);
ptr++;
}
else
/* Handle explicit numeric value. */
while (ISDIGIT (*ptr))
*sptr++ = *ptr++;
}
while (strchr ("hlL", *ptr))
{
switch (*ptr)
{
case 'h':
short_width = 1;
break;
case 'l':
wide_width++;
break;
case 'L':
wide_width = 2;
break;
default:
abort();
}
*sptr++ = *ptr++;
}
/* Copy the type specifier, and NULL terminate. */
*sptr++ = *ptr++;
*sptr = '\0';
switch (ptr[-1])
{
case 'd':
case 'i':
case 'o':
case 'u':
case 'x':
case 'X':
case 'c':
{
/* Short values are promoted to int, so just copy it
as an int and trust the C library printf to cast it
to the right width. */
if (short_width)
PRINT_TYPE (int);
else
{
switch (wide_width)
{
case 0:
PRINT_TYPE (int);
break;
case 1:
PRINT_TYPE (long);
break;
case 2:
default:
#if defined(__GNUC__) || defined(HAVE_LONG_LONG)
PRINT_TYPE (long long);
#else
/* Fake it and hope for the best. */
PRINT_TYPE (long);
#endif
break;
}
}
}
break;
case 'f':
case 'e':
case 'E':
case 'g':
case 'G':
{
if (wide_width == 0)
PRINT_TYPE (double);
else
{
#if defined(__GNUC__) || defined(HAVE_LONG_DOUBLE)
PRINT_TYPE (long double);
#else
/* Fake it and hope for the best. */
PRINT_TYPE (double);
#endif
}
}
break;
case 's':
PRINT_TYPE (char *);
break;
case 'p':
PRINT_TYPE (void *);
break;
case '%':
fputc ('%', stream);
result = 1;
break;
case 'A':
{
asection *sec = va_arg (ap, asection *);
bfd *abfd;
const char *group = NULL;
struct coff_comdat_info *ci;
if (sec == NULL)
/* Invoking %A with a null section pointer is an
internal error. */
abort ();
abfd = sec->owner;
if (abfd != NULL
&& bfd_get_flavour (abfd) == bfd_target_elf_flavour
&& elf_next_in_group (sec) != NULL
&& (sec->flags & SEC_GROUP) == 0)
group = elf_group_name (sec);
else if (abfd != NULL
&& bfd_get_flavour (abfd) == bfd_target_coff_flavour
&& (ci = bfd_coff_get_comdat_section (sec->owner,
sec)) != NULL)
group = ci->name;
if (group != NULL)
result = fprintf (stream, "%s[%s]", sec->name, group);
else
result = fprintf (stream, "%s", sec->name);
}
break;
case 'B':
{
bfd *abfd = va_arg (ap, bfd *);
if (abfd == NULL)
/* Invoking %B with a null bfd pointer is an
internal error. */
abort ();
else if (abfd->my_archive
&& !bfd_is_thin_archive (abfd->my_archive))
result = fprintf (stream, "%s(%s)",
abfd->my_archive->filename, abfd->filename);
else
result = fprintf (stream, "%s", abfd->filename);
}
break;
default:
abort();
}
}
if (result == -1)
return -1;
total_printed += result;
}
return total_printed;
}
/* This is the default routine to handle BFD error messages.
Like fprintf (stderr, ...), but also handles some extra format specifiers.
%A section name from section. For group components, print group name too.
%B file name from bfd. For archive components, prints archive too.
%B file name from bfd. For archive components, prints archive too. */
Note - because these two extra format specifiers require special handling
they are scanned for and processed in this function, before calling
vfprintf. This means that the *arguments* for these format specifiers
must be the first ones in the variable argument list, regardless of where
the specifiers appear in the format string. Thus for example calling
this function with a format string of:
"blah %s blah %A blah %d blah %B"
would involve passing the arguments as:
"blah %s blah %A blah %d blah %B",
asection_for_the_%A,
bfd_for_the_%B,
string_for_the_%s,
integer_for_the_%d);
*/
void
_bfd_default_error_handler (const char *fmt, ...)
static void
error_handler_internal (const char *fmt, va_list ap)
{
va_list ap;
char *bufp;
const char *new_fmt, *p;
size_t avail = 1000;
char buf[1000];
/* PR 4992: Don't interrupt output being sent to stdout. */
fflush (stdout);
@ -651,138 +844,7 @@ _bfd_default_error_handler (const char *fmt, ...)
else
fprintf (stderr, "BFD: ");
va_start (ap, fmt);
new_fmt = fmt;
bufp = buf;
/* Reserve enough space for the existing format string. */
avail -= strlen (fmt) + 1;
if (avail > 1000)
_exit (EXIT_FAILURE);
p = fmt;
while (1)
{
char *q;
size_t len, extra, trim;
p = strchr (p, '%');
if (p == NULL || p[1] == '\0')
{
if (new_fmt == buf)
{
len = strlen (fmt);
memcpy (bufp, fmt, len + 1);
}
break;
}
if (p[1] == 'A' || p[1] == 'B')
{
len = p - fmt;
memcpy (bufp, fmt, len);
bufp += len;
fmt = p + 2;
new_fmt = buf;
/* If we run out of space, tough, you lose your ridiculously
long file or section name. It's not safe to try to alloc
memory here; We might be printing an out of memory message. */
if (avail == 0)
{
*bufp++ = '*';
*bufp++ = '*';
*bufp = '\0';
}
else
{
if (p[1] == 'B')
{
bfd *abfd = va_arg (ap, bfd *);
if (abfd == NULL)
/* Invoking %B with a null bfd pointer is an internal error. */
abort ();
else if (abfd->my_archive
&& !bfd_is_thin_archive (abfd->my_archive))
snprintf (bufp, avail, "%s(%s)",
abfd->my_archive->filename, abfd->filename);
else
snprintf (bufp, avail, "%s", abfd->filename);
}
else
{
asection *sec = va_arg (ap, asection *);
bfd *abfd;
const char *group = NULL;
struct coff_comdat_info *ci;
if (sec == NULL)
/* Invoking %A with a null section pointer is an internal error. */
abort ();
abfd = sec->owner;
if (abfd != NULL
&& bfd_get_flavour (abfd) == bfd_target_elf_flavour
&& elf_next_in_group (sec) != NULL
&& (sec->flags & SEC_GROUP) == 0)
group = elf_group_name (sec);
else if (abfd != NULL
&& bfd_get_flavour (abfd) == bfd_target_coff_flavour
&& (ci = bfd_coff_get_comdat_section (sec->owner,
sec)) != NULL)
group = ci->name;
if (group != NULL)
snprintf (bufp, avail, "%s[%s]", sec->name, group);
else
snprintf (bufp, avail, "%s", sec->name);
}
len = strlen (bufp);
avail = avail - len + 2;
/* We need to replace any '%' we printed by "%%".
First count how many. */
q = bufp;
bufp += len;
extra = 0;
while ((q = strchr (q, '%')) != NULL)
{
++q;
++extra;
}
/* If there isn't room, trim off the end of the string. */
q = bufp;
bufp += extra;
if (extra > avail)
{
trim = extra - avail;
bufp -= trim;
do
{
if (*--q == '%')
--extra;
}
while (--trim != 0);
*q = '\0';
avail = extra;
}
avail -= extra;
/* Now double all '%' chars, shuffling the string as we go. */
while (extra != 0)
{
while ((q[extra] = *q) != '%')
--q;
q[--extra] = '%';
--q;
}
}
}
p = p + 2;
}
vfprintf (stderr, new_fmt, ap);
va_end (ap);
_doprnt (stderr, fmt, ap);
/* On AIX, putc is implemented as a macro that triggers a -Wunused-value
warning, so use the fputc function to avoid it. */
@ -796,7 +858,17 @@ _bfd_default_error_handler (const char *fmt, ...)
function pointer permits a program linked against BFD to intercept
the messages and deal with them itself. */
bfd_error_handler_type _bfd_error_handler = _bfd_default_error_handler;
static bfd_error_handler_type _bfd_error_internal = error_handler_internal;
void
_bfd_error_handler (const char *fmt, ...)
{
va_list ap;
va_start (ap, fmt);
_bfd_error_internal (fmt, ap);
va_end (ap);
}
/*
FUNCTION
@ -815,8 +887,8 @@ bfd_set_error_handler (bfd_error_handler_type pnew)
{
bfd_error_handler_type pold;
pold = _bfd_error_handler;
_bfd_error_handler = pnew;
pold = _bfd_error_internal;
_bfd_error_internal = pnew;
return pold;
}
@ -840,23 +912,6 @@ bfd_set_error_program_name (const char *name)
_bfd_error_program_name = name;
}
/*
FUNCTION
bfd_get_error_handler
SYNOPSIS
bfd_error_handler_type bfd_get_error_handler (void);
DESCRIPTION
Return the BFD error handler function.
*/
bfd_error_handler_type
bfd_get_error_handler (void)
{
return _bfd_error_handler;
}
/*
SUBSECTION
BFD assert handler
@ -891,14 +946,14 @@ _bfd_default_assert_handler (const char *bfd_formatmsg,
int bfd_line)
{
(*_bfd_error_handler) (bfd_formatmsg, bfd_version, bfd_file, bfd_line);
_bfd_error_handler (bfd_formatmsg, bfd_version, bfd_file, bfd_line);
}
/* Similar to _bfd_error_handler, a program can decide to exit on an
internal BFD error. We use a non-variadic type to simplify passing
on parameters to other functions, e.g. _bfd_error_handler. */
bfd_assert_handler_type _bfd_assert_handler = _bfd_default_assert_handler;
static bfd_assert_handler_type _bfd_assert_handler = _bfd_default_assert_handler;
/*
FUNCTION
@ -921,23 +976,6 @@ bfd_set_assert_handler (bfd_assert_handler_type pnew)
_bfd_assert_handler = pnew;
return pold;
}
/*
FUNCTION
bfd_get_assert_handler
SYNOPSIS
bfd_assert_handler_type bfd_get_assert_handler (void);
DESCRIPTION
Return the BFD assert handler function.
*/
bfd_assert_handler_type
bfd_get_assert_handler (void)
{
return _bfd_assert_handler;
}
/*
INODE
@ -1086,6 +1124,7 @@ bfd_set_file_flags (bfd *abfd, flagword flags)
void
bfd_assert (const char *file, int line)
{
/* xgettext:c-format */
(*_bfd_assert_handler) (_("BFD %s assertion fail %s:%d"),
BFD_VERSION_STRING, file, line);
}
@ -1097,14 +1136,16 @@ void
_bfd_abort (const char *file, int line, const char *fn)
{
if (fn != NULL)
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("BFD %s internal error, aborting at %s:%d in %s\n"),
BFD_VERSION_STRING, file, line, fn);
else
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("BFD %s internal error, aborting at %s:%d\n"),
BFD_VERSION_STRING, file, line);
(*_bfd_error_handler) (_("Please report this bug.\n"));
_bfd_error_handler (_("Please report this bug.\n"));
_exit (EXIT_FAILURE);
}
@ -1433,27 +1474,6 @@ DESCRIPTION
*/
/*
FUNCTION
bfd_merge_private_bfd_data
SYNOPSIS
bfd_boolean bfd_merge_private_bfd_data (bfd *ibfd, bfd *obfd);
DESCRIPTION
Merge private BFD information from the BFD @var{ibfd} to the
the output file BFD @var{obfd} when linking. Return <<TRUE>>
on success, <<FALSE>> on error. Possible error returns are:
o <<bfd_error_no_memory>> -
Not enough memory exists to create private data for @var{obfd}.
.#define bfd_merge_private_bfd_data(ibfd, obfd) \
. BFD_SEND (obfd, _bfd_merge_private_bfd_data, \
. (ibfd, obfd))
*/
/*
FUNCTION
bfd_set_private_flags

View File

@ -1,6 +1,6 @@
dnl This file was derived from acinclude.m4.
dnl
dnl Copyright (C) 2012-2016 Free Software Foundation, Inc.
dnl Copyright (C) 2012-2017 Free Software Foundation, Inc.
dnl
dnl This file is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by

View File

@ -1,6 +1,6 @@
/* Low-level I/O routines for BFDs.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
@ -41,7 +41,7 @@
#endif
file_ptr
real_ftell (FILE *file)
_bfd_real_ftell (FILE *file)
{
#if defined (HAVE_FTELLO64)
return ftello64 (file);
@ -53,7 +53,7 @@ real_ftell (FILE *file)
}
int
real_fseek (FILE *file, file_ptr offset, int whence)
_bfd_real_fseek (FILE *file, file_ptr offset, int whence)
{
#if defined (HAVE_FSEEKO64)
return fseeko64 (file, offset, whence);
@ -82,7 +82,7 @@ close_on_exec (FILE *file)
}
FILE *
real_fopen (const char *filename, const char *modes)
_bfd_real_fopen (const char *filename, const char *modes)
{
#ifdef VMS
char *vms_attr;

View File

@ -1,5 +1,5 @@
/* Support for memory-mapped windows into a BFD.
Copyright (C) 1995-2016 Free Software Foundation, Inc.
Copyright (C) 1995-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for binary objects.
Copyright (C) 1994-2016 Free Software Foundation, Inc.
Copyright (C) 1994-2017 Free Software Foundation, Inc.
Written by Ian Lance Taylor, Cygnus Support, <ian@cygnus.com>
This file is part of BFD, the Binary File Descriptor library.
@ -269,10 +269,11 @@ binary_set_section_contents (bfd *abfd,
have. */
if (s->filepos < 0)
(*_bfd_error_handler)
(_("Warning: Writing section `%s' at huge (ie negative) file offset 0x%lx."),
bfd_get_section_name (abfd, s),
(unsigned long) s->filepos);
_bfd_error_handler
/* xgettext:c-format */
(_("warning: writing section `%A' at huge (ie negative) "
"file offset 0x%lx."),
s, (unsigned long) s->filepos);
}
abfd->output_has_begun = TRUE;

View File

@ -1,5 +1,5 @@
/* BFD back-end for Intel 960 b.out binaries.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,6 +1,6 @@
/* BFD library -- caching of file descriptors.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Hacked by Steve Chamberlain of Cygnus Support (steve@cygnus.com).
@ -212,7 +212,7 @@ close_one (void)
return TRUE;
}
to_kill->where = real_ftell ((FILE *) to_kill->iostream);
to_kill->where = _bfd_real_ftell ((FILE *) to_kill->iostream);
return bfd_cache_delete (to_kill);
}
@ -262,14 +262,16 @@ bfd_cache_lookup_worker (bfd *abfd, enum cache_flag flag)
if (bfd_open_file (abfd) == NULL)
;
else if (!(flag & CACHE_NO_SEEK)
&& real_fseek ((FILE *) abfd->iostream, abfd->where, SEEK_SET) != 0
&& _bfd_real_fseek ((FILE *) abfd->iostream,
abfd->where, SEEK_SET) != 0
&& !(flag & CACHE_NO_SEEK_ERROR))
bfd_set_error (bfd_error_system_call);
else
return (FILE *) abfd->iostream;
(*_bfd_error_handler) (_("reopening %B: %s\n"),
orig_bfd, bfd_errmsg (bfd_get_error ()));
/* xgettext:c-format */
_bfd_error_handler (_("reopening %B: %s\n"),
orig_bfd, bfd_errmsg (bfd_get_error ()));
return NULL;
}
@ -279,7 +281,7 @@ cache_btell (struct bfd *abfd)
FILE *f = bfd_cache_lookup (abfd, CACHE_NO_OPEN);
if (f == NULL)
return abfd->where;
return real_ftell (f);
return _bfd_real_ftell (f);
}
static int
@ -288,7 +290,7 @@ cache_bseek (struct bfd *abfd, file_ptr offset, int whence)
FILE *f = bfd_cache_lookup (abfd, whence != SEEK_CUR ? CACHE_NO_SEEK : CACHE_NORMAL);
if (f == NULL)
return -1;
return real_fseek (f, offset, whence);
return _bfd_real_fseek (f, offset, whence);
}
/* Note that archive entries don't have streams; they share their parent's.
@ -608,15 +610,15 @@ bfd_open_file (bfd *abfd)
{
case read_direction:
case no_direction:
abfd->iostream = real_fopen (abfd->filename, FOPEN_RB);
abfd->iostream = _bfd_real_fopen (abfd->filename, FOPEN_RB);
break;
case both_direction:
case write_direction:
if (abfd->opened_once)
{
abfd->iostream = real_fopen (abfd->filename, FOPEN_RUB);
abfd->iostream = _bfd_real_fopen (abfd->filename, FOPEN_RUB);
if (abfd->iostream == NULL)
abfd->iostream = real_fopen (abfd->filename, FOPEN_WUB);
abfd->iostream = _bfd_real_fopen (abfd->filename, FOPEN_WUB);
}
else
{
@ -646,7 +648,7 @@ bfd_open_file (bfd *abfd)
if (stat (abfd->filename, &s) == 0 && s.st_size != 0)
unlink_if_ordinary (abfd->filename);
#endif
abfd->iostream = real_fopen (abfd->filename, FOPEN_WUB);
abfd->iostream = _bfd_real_fopen (abfd->filename, FOPEN_WUB);
abfd->opened_once = TRUE;
}
break;

View File

@ -1,5 +1,5 @@
/* BFD back-end for Intel 386 COFF LynxOS files.
Copyright (C) 1993-2016 Free Software Foundation, Inc.
Copyright (C) 1993-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for Sparc COFF LynxOS files.
Copyright (C) 1993-2016 Free Software Foundation, Inc.
Copyright (C) 1993-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for CISCO crash dumps.
Copyright (C) 1994-2016 Free Software Foundation, Inc.
Copyright (C) 1994-2017 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for ALPHA Extended-Coff files.
Copyright (C) 1993-2016 Free Software Foundation, Inc.
Copyright (C) 1993-2017 Free Software Foundation, Inc.
Modified from coff-mips.c by Steve Chamberlain <sac@cygnus.com> and
Ian Lance Taylor <ian@cygnus.com>.
@ -446,7 +446,7 @@ alpha_ecoff_bad_format_hook (bfd *abfd ATTRIBUTE_UNUSED,
return TRUE;
if (ALPHA_ECOFF_COMPRESSEDMAG (*internal_f))
(*_bfd_error_handler)
_bfd_error_handler
(_("%B: Cannot handle compressed Alpha binaries.\n"
" Use compiler flags, or objZ, to generate uncompressed binaries."),
abfd);
@ -597,7 +597,8 @@ alpha_adjust_reloc_in (bfd *abfd,
{
if (intern->r_type > ALPHA_R_GPVALUE)
{
(*_bfd_error_handler)
/* xgettext:c-format */
_bfd_error_handler
(_("%B: unknown/unsupported relocation type %d"),
abfd, intern->r_type);
bfd_set_error (bfd_error_bad_value);
@ -1498,21 +1499,22 @@ alpha_relocate_section (bfd *output_bfd,
switch (r_type)
{
case ALPHA_R_GPRELHIGH:
(*_bfd_error_handler)
_bfd_error_handler
(_("%B: unsupported relocation: ALPHA_R_GPRELHIGH"),
input_bfd);
bfd_set_error (bfd_error_bad_value);
continue;
case ALPHA_R_GPRELLOW:
(*_bfd_error_handler)
_bfd_error_handler
(_("%B: unsupported relocation: ALPHA_R_GPRELLOW"),
input_bfd);
bfd_set_error (bfd_error_bad_value);
continue;
default:
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B: unknown relocation type %d"),
input_bfd, (int) r_type);
bfd_set_error (bfd_error_bad_value);

View File

@ -1,5 +1,5 @@
/* BFD back-end for Apollo 68000 COFF binaries.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
By Troy Rollo (troy@cbme.unsw.edu.au)
Based on m68k standard COFF version Written by Cygnus Support.

View File

@ -1,5 +1,5 @@
/* BFD back-end for ARM COFF files.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@ -1362,7 +1362,7 @@ coff_arm_relocate_section (bfd *output_bfd,
/* xgettext:c-format */
(_("%B(%s): warning: interworking not enabled.\n"
" first occurrence: %B: arm call to thumb"),
h_sec->owner, input_bfd, name);
h_sec->owner, name, input_bfd);
--my_offset;
myh->root.u.def.value = my_offset;
@ -1453,7 +1453,7 @@ coff_arm_relocate_section (bfd *output_bfd,
(_("%B(%s): warning: interworking not enabled.\n"
" first occurrence: %B: thumb call to arm\n"
" consider relinking with --support-old-code enabled"),
h_sec->owner, input_bfd, name);
h_sec->owner, name, input_bfd);
-- my_offset;
myh->root.u.def.value = my_offset;
@ -1741,9 +1741,10 @@ coff_arm_relocate_section (bfd *output_bfd,
case bfd_reloc_ok:
break;
case bfd_reloc_outofrange:
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B: bad reloc address 0x%lx in section `%A'"),
input_bfd, input_section, (unsigned long) rel->r_vaddr);
input_bfd, (unsigned long) rel->r_vaddr, input_section);
return FALSE;
case bfd_reloc_overflow:
{
@ -2066,6 +2067,7 @@ bfd_arm_process_before_allocation (bfd * abfd,
/* If the index is outside of the range of our table, something has gone wrong. */
if (symndx >= obj_conv_table_size (abfd))
{
/* xgettext:c-format */
_bfd_error_handler (_("%B: illegal symbol index in reloc: %d"),
abfd, symndx);
continue;
@ -2168,8 +2170,9 @@ coff_arm_adjust_symndx (bfd *obfd ATTRIBUTE_UNUSED,
targets, eg different CPUs or different APCS's. */
static bfd_boolean
coff_arm_merge_private_bfd_data (bfd * ibfd, bfd * obfd)
coff_arm_merge_private_bfd_data (bfd * ibfd, struct bfd_link_info *info)
{
bfd *obfd = info->output_bfd;
BFD_ASSERT (ibfd != NULL && obfd != NULL);
if (ibfd == obfd)
@ -2198,9 +2201,8 @@ coff_arm_merge_private_bfd_data (bfd * ibfd, bfd * obfd)
_bfd_error_handler
/* xgettext: c-format */
(_("error: %B is compiled for APCS-%d, whereas %B is compiled for APCS-%d"),
ibfd, obfd,
APCS_26_FLAG (ibfd) ? 26 : 32,
APCS_26_FLAG (obfd) ? 26 : 32
ibfd, APCS_26_FLAG (ibfd) ? 26 : 32,
obfd, APCS_26_FLAG (obfd) ? 26 : 32
);
bfd_set_error (bfd_error_wrong_format);
@ -2209,16 +2211,16 @@ coff_arm_merge_private_bfd_data (bfd * ibfd, bfd * obfd)
if (APCS_FLOAT_FLAG (obfd) != APCS_FLOAT_FLAG (ibfd))
{
const char *msg;
if (APCS_FLOAT_FLAG (ibfd))
/* xgettext: c-format */
msg = _("error: %B passes floats in float registers, whereas %B passes them in integer registers");
_bfd_error_handler (_("\
error: %B passes floats in float registers, whereas %B passes them in integer registers"),
ibfd, obfd);
else
/* xgettext: c-format */
msg = _("error: %B passes floats in integer registers, whereas %B passes them in float registers");
_bfd_error_handler (msg, ibfd, obfd);
_bfd_error_handler (_("\
error: %B passes floats in integer registers, whereas %B passes them in float registers"),
ibfd, obfd);
bfd_set_error (bfd_error_wrong_format);
return FALSE;
@ -2226,15 +2228,16 @@ coff_arm_merge_private_bfd_data (bfd * ibfd, bfd * obfd)
if (PIC_FLAG (obfd) != PIC_FLAG (ibfd))
{
const char * msg;
if (PIC_FLAG (ibfd))
/* xgettext: c-format */
msg = _("error: %B is compiled as position independent code, whereas target %B is absolute position");
_bfd_error_handler (_("\
error: %B is compiled as position independent code, whereas target %B is absolute position"),
ibfd, obfd);
else
/* xgettext: c-format */
msg = _("error: %B is compiled as absolute position code, whereas target %B is position independent");
_bfd_error_handler (msg, ibfd, obfd);
_bfd_error_handler (_("\
error: %B is compiled as absolute position code, whereas target %B is position independent"),
ibfd, obfd);
bfd_set_error (bfd_error_wrong_format);
return FALSE;
@ -2257,16 +2260,16 @@ coff_arm_merge_private_bfd_data (bfd * ibfd, bfd * obfd)
/* If the src and dest differ in their interworking issue a warning. */
if (INTERWORK_FLAG (obfd) != INTERWORK_FLAG (ibfd))
{
const char * msg;
if (INTERWORK_FLAG (ibfd))
/* xgettext: c-format */
msg = _("Warning: %B supports interworking, whereas %B does not");
_bfd_error_handler (_("\
Warning: %B supports interworking, whereas %B does not"),
ibfd, obfd);
else
/* xgettext: c-format */
msg = _("Warning: %B does not support interworking, whereas %B does");
_bfd_error_handler (msg, ibfd, obfd);
_bfd_error_handler (_("\
Warning: %B does not support interworking, whereas %B does"),
ibfd, obfd);
}
}
else
@ -2287,7 +2290,6 @@ coff_arm_print_private_bfd_data (bfd * abfd, void * ptr)
BFD_ASSERT (abfd != NULL && ptr != NULL);
/* xgettext:c-format */
fprintf (file, _("private flags = %x:"), coff_data (abfd)->flags);
if (APCS_SET (abfd))
@ -2356,11 +2358,9 @@ _bfd_coff_arm_set_private_flags (bfd * abfd, flagword flags)
if (INTERWORK_SET (abfd) && (INTERWORK_FLAG (abfd) != flag))
{
if (flag)
/* xgettext: c-format */
_bfd_error_handler (_("Warning: Not setting interworking flag of %B since it has already been specified as non-interworking"),
abfd);
else
/* xgettext: c-format */
_bfd_error_handler (_("Warning: Clearing the interworking flag of %B due to outside request"),
abfd);
flag = 0;
@ -2418,7 +2418,7 @@ coff_arm_copy_private_bfd_data (bfd * src, bfd * dest)
if (INTERWORK_FLAG (dest))
{
/* xgettext:c-format */
_bfd_error_handler (("\
_bfd_error_handler (_("\
Warning: Clearing the interworking flag of %B because non-interworking code in %B has been linked with it"),
dest, src);
}

View File

@ -1,5 +1,5 @@
/* BFD back-end for Apple M68K COFF A/UX 3.x files.
Copyright (C) 1996-2016 Free Software Foundation, Inc.
Copyright (C) 1996-2017 Free Software Foundation, Inc.
Written by Richard Henderson <rth@tamu.edu>.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD COFF interfaces used outside of BFD.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD COFF interfaces used outside of BFD.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@ -50,6 +50,8 @@ struct coff_section_tdata
/* If this is TRUE, the contents entry may not be freed. */
bfd_boolean keep_contents;
/* Information cached by coff_find_nearest_line. */
bfd_boolean saved_bias;
bfd_signed_vma bias;
bfd_vma offset;
unsigned int i;
const char *function;

View File

@ -1,5 +1,5 @@
/* BFD back-end for Intel 386 COFF files (DJGPP variant).
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by DJ Delorie.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for Renesas H8/300 COFF binaries.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Steve Chamberlain, <sac@cygnus.com>.
This file is part of BFD, the Binary File Descriptor library.
@ -579,9 +579,7 @@ h8300_reloc16_estimate (bfd *abfd, asection *input_section, arelent *reloc,
/* Done with this reloc. */
break;
}
/* FALLTHROUGH and try to turn the 24-/32-bit reloc into a 16-bit
reloc. */
/* Fall through. */
/* This is a 24-/32-bit absolute address in a mov insn, which can
become an 16-bit absolute address if it's in the right range. */
@ -1066,7 +1064,7 @@ h8300_reloc16_extra_cases (bfd *abfd, struct bfd_link_info *link_info,
if (link_info->output_bfd->xvec != abfd->xvec)
{
(*_bfd_error_handler)
_bfd_error_handler
(_("cannot handle R_MEM_INDIRECT reloc when using %s output"),
link_info->output_bfd->xvec->name);

View File

@ -1,5 +1,5 @@
/* BFD back-end for Renesas H8/500 COFF binaries.
Copyright (C) 1993-2016 Free Software Foundation, Inc.
Copyright (C) 1993-2017 Free Software Foundation, Inc.
Contributed by Cygnus Support.
Written by Steve Chamberlain, <sac@cygnus.com>.

View File

@ -1,5 +1,5 @@
/* BFD back-end for Intel 386 COFF files.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for Intel i860 COFF files.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Created mostly by substituting "860" for "386" in coff-i386.c
Harry Dolan <dolan@ssd.intel.com>, October 1995
@ -143,7 +143,7 @@ coff_i860_reloc_nyi (bfd *abfd ATTRIBUTE_UNUSED,
char **error_message ATTRIBUTE_UNUSED)
{
reloc_howto_type *howto = reloc_entry->howto;
(*_bfd_error_handler) (_("relocation `%s' not yet implemented"), howto->name);
_bfd_error_handler (_("relocation `%s' not yet implemented"), howto->name);
return bfd_reloc_notsupported;
}
@ -603,7 +603,8 @@ i860_reloc_processing (arelent *cache_ptr, struct internal_reloc *dst,
{
if (dst->r_symndx < 0 || dst->r_symndx >= obj_conv_table_size (abfd))
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: warning: illegal symbol index %ld in relocs"),
abfd, dst->r_symndx);
cache_ptr->sym_ptr_ptr = bfd_abs_section_ptr->symbol_ptr_ptr;

View File

@ -1,5 +1,5 @@
/* BFD back-end for Intel 960 COFF files.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for HP/Intel IA-64 COFF files.
Copyright (C) 1999-2016 Free Software Foundation, Inc.
Copyright (C) 1999-2017 Free Software Foundation, Inc.
Contributed by David Mosberger <davidm@hpl.hp.com>
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for Motorola 68000 COFF binaries.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for Motorola 88000 COFF "Binary Compatibility Standard" files.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for Motorola MCore COFF/PE
Copyright (C) 1999-2016 Free Software Foundation, Inc.
Copyright (C) 1999-2017 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@ -241,6 +241,7 @@ mcore_coff_unsupported_reloc (bfd * abfd,
{
BFD_ASSERT (reloc_entry->howto != (reloc_howto_type *)0);
/* xgettext: c-format */
_bfd_error_handler (_("%B: Relocation %s (%d) is not currently supported.\n"),
abfd,
reloc_entry->howto->name,
@ -365,7 +366,8 @@ coff_mcore_relocate_section (bfd * output_bfd,
if ( input_bfd->xvec->byteorder != output_bfd->xvec->byteorder
&& output_bfd->xvec->byteorder != BFD_ENDIAN_UNKNOWN)
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: compiled for a %s system and target is %s.\n"),
input_bfd,
bfd_big_endian (input_bfd) ? _("big endian") : _("little endian"),
@ -467,6 +469,7 @@ coff_mcore_relocate_section (bfd * output_bfd,
switch (r_type)
{
default:
/* xgettext: c-format */
_bfd_error_handler (_("%B: unsupported relocation type 0x%02x"),
input_bfd, r_type);
bfd_set_error (bfd_error_bad_value);
@ -474,9 +477,10 @@ coff_mcore_relocate_section (bfd * output_bfd,
case IMAGE_REL_MCORE_ABSOLUTE:
_bfd_error_handler
/* xgettext: c-format */
(_("Warning: unsupported reloc %s <file %B, section %A>\n"
"sym %ld (%s), r_vaddr %ld (%lx)"),
input_bfd, input_section, howto->name,
howto->name, input_bfd, input_section,
rel->r_symndx, my_name, (long) rel->r_vaddr,
(unsigned long) rel->r_vaddr);
break;

View File

@ -1,5 +1,5 @@
/* BFD back-end for MIPS Extended-Coff files.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Original version by Per Bothner.
Full support added by Ian Lance Taylor, ian@cygnus.com.

View File

@ -1,5 +1,5 @@
/* BFD back-end for PowerPC Microsoft Portable Executable files.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Original version pieced together by Kim Knuttila (krk@cygnus.com)
@ -79,9 +79,10 @@ extern void dump_toc (void *);
#define HASH_CHECK_DCL char eye_catcher[8];
#define HASH_CHECK_INIT(ret) strcpy(ret->eye_catcher, EYE)
#define HASH_CHECK(addr) \
if (strcmp(addr->eye_catcher, EYE) != 0) \
if (strcmp (addr->eye_catcher, EYE) != 0) \
{ \
fprintf (stderr,\
/* xgettext: c-format */ \
_("File %s, line %d, Hash check failure, bad eye %8s\n"), \
__FILE__, __LINE__, addr->eye_catcher); \
abort (); \
@ -844,7 +845,7 @@ ppc_record_toc_entry (bfd *abfd,
/* The size must fit in a 16-bit displacement. */
if (global_toc_size > 65535)
{
(*_bfd_error_handler) (_("TOC overflow"));
_bfd_error_handler (_("TOC overflow"));
bfd_set_error (bfd_error_file_too_big);
return FALSE;
}
@ -862,7 +863,7 @@ ppc_record_toc_entry (bfd *abfd,
/* The size must fit in a 16-bit displacement. */
if (global_toc_size >= 65535)
{
(*_bfd_error_handler) (_("TOC overflow"));
_bfd_error_handler (_("TOC overflow"));
bfd_set_error (bfd_error_file_too_big);
return FALSE;
}
@ -1037,7 +1038,8 @@ coff_ppc_relocate_section (bfd *output_bfd,
switch (r_type)
{
default:
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: unsupported relocation type 0x%02x"), input_bfd, r_type);
bfd_set_error (bfd_error_bad_value);
return FALSE;
@ -1127,8 +1129,10 @@ coff_ppc_relocate_section (bfd *output_bfd,
/* The size must still fit in a 16-bit displacement. */
if ((bfd_vma) our_toc_offset >= 65535)
{
(*_bfd_error_handler)
(_("%B: Relocation for %s of %lx exceeds Toc size limit"),
_bfd_error_handler
/* xgettext: c-format */
(_("%B: Relocation for %s of %lx exceeds "
"Toc size limit"),
input_bfd, name,
(unsigned long) our_toc_offset);
bfd_set_error (bfd_error_bad_value);
@ -1180,7 +1184,8 @@ coff_ppc_relocate_section (bfd *output_bfd,
if ((r_flags & IMAGE_REL_PPC_TOCDEFN) != IMAGE_REL_PPC_TOCDEFN
&& (bfd_vma) our_toc_offset > toc_section->size)
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: Relocation exceeds allocated TOC (%lx)"),
input_bfd, (unsigned long) toc_section->size);
bfd_set_error (bfd_error_bad_value);
@ -1234,10 +1239,11 @@ coff_ppc_relocate_section (bfd *output_bfd,
else
my_name = h->root.root.root.string;
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("Warning: unsupported reloc %s <file %B, section %A>\n"
"sym %ld (%s), r_vaddr %ld (%lx)"),
input_bfd, input_section, howto->name,
howto->name, input_bfd, input_section,
rel->r_symndx, my_name, (long) rel->r_vaddr,
(unsigned long) rel->r_vaddr);
}
@ -1252,7 +1258,8 @@ coff_ppc_relocate_section (bfd *output_bfd,
break;
my_name = h->root.root.root.string;
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: Out of order IMGLUE reloc for %s"), input_bfd, my_name);
bfd_set_error (bfd_error_bad_value);
return FALSE;
@ -1483,6 +1490,7 @@ dump_toc (void * vfile)
else
{
fprintf (file,
/* xgettext: c-format */
_("**** global_toc_size %ld(%lx), thunk_size %ld(%lx)\n"),
global_toc_size, (unsigned long) global_toc_size,
thunk_size, (unsigned long) thunk_size);
@ -1759,9 +1767,10 @@ ppc_coff_rtype2howto (arelent *relent, struct internal_reloc *internal)
howto = ppc_coff_howto_table + IMAGE_REL_PPC_TOCREL16;
break;
default:
(*_bfd_error_handler) (_("warning: unsupported reloc %s [%d] used -- it may not work"),
ppc_coff_howto_table[r_type].name,
r_type);
_bfd_error_handler
/* xgettext: c-format */
(_("warning: unsupported reloc %s [%d] used -- it may not work"),
ppc_coff_howto_table[r_type].name, r_type);
howto = ppc_coff_howto_table + r_type;
break;
}
@ -1830,9 +1839,10 @@ coff_ppc_rtype_to_howto (bfd *abfd ATTRIBUTE_UNUSED,
howto = ppc_coff_howto_table + r_type;
break;
default:
(*_bfd_error_handler) (_("warning: unsupported reloc %s [%d] used -- it may not work"),
ppc_coff_howto_table[r_type].name,
r_type);
_bfd_error_handler
/* xgettext: c-format */
(_("warning: unsupported reloc %s [%d] used -- it may not work"),
ppc_coff_howto_table[r_type].name, r_type);
howto = ppc_coff_howto_table + r_type;
break;
}

View File

@ -1,5 +1,5 @@
/* BFD back-end for IBM RS/6000 "XCOFF" files.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Metin G. Ozisik, Mimi Phuong-Thao Vo, and John Gilmore.
Archive support from Damon A. Permezel.
Contributed by IBM Corporation and Cygnus Support.
@ -2736,9 +2736,10 @@ xcoff_reloc_type_fail (bfd *input_bfd,
bfd_vma *relocation ATTRIBUTE_UNUSED,
bfd_byte *contents ATTRIBUTE_UNUSED)
{
(*_bfd_error_handler)
(_("%s: unsupported relocation type 0x%02x"),
bfd_get_filename (input_bfd), (unsigned int) rel->r_type);
_bfd_error_handler
/* xgettext: c-format */
(_("%B: unsupported relocation type 0x%02x"),
input_bfd, (unsigned int) rel->r_type);
bfd_set_error (bfd_error_bad_value);
return FALSE;
}
@ -2821,10 +2822,10 @@ xcoff_reloc_type_toc (bfd *input_bfd,
{
if (h->toc_section == NULL)
{
(*_bfd_error_handler)
(_("%s: TOC reloc at 0x%x to symbol `%s' with no TOC entry"),
bfd_get_filename (input_bfd), rel->r_vaddr,
h->root.root.string);
_bfd_error_handler
/* xgettext: c-format */
(_("%B: TOC reloc at 0x%x to symbol `%s' with no TOC entry"),
input_bfd, rel->r_vaddr, h->root.root.string);
bfd_set_error (bfd_error_bad_value);
return FALSE;
}
@ -3567,7 +3568,8 @@ xcoff_create_csect_from_smclas (bfd *abfd,
}
else
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: symbol `%s' has unrecognized smclas %d"),
abfd, symbol_name, aux->x_csect.x_smclas);
bfd_set_error (bfd_error_bad_value);

View File

@ -1,5 +1,5 @@
/* BFD back-end for Renesas Super-H COFF binaries.
Copyright (C) 1993-2016 Free Software Foundation, Inc.
Copyright (C) 1993-2017 Free Software Foundation, Inc.
Contributed by Cygnus Support.
Written by Steve Chamberlain, <sac@cygnus.com>.
Relaxing code written by Ian Lance Taylor, <ian@cygnus.com>.
@ -501,7 +501,7 @@ sh_coff_reloc_type_lookup (bfd * abfd ATTRIBUTE_UNUSED,
if (sh_reloc_map[i].bfd_reloc_val == code)
return &sh_coff_howtos[(int) sh_reloc_map[i].shcoff_reloc_val];
(*_bfd_error_handler) (_("SH Error: unknown reloc type %d"), code);
_bfd_error_handler (_("SH Error: unknown reloc type %d"), code);
return NULL;
}
@ -771,8 +771,9 @@ sh_relax_section (bfd *abfd,
laddr += ((irel->r_offset & 0xffffffff) ^ 0x80000000) - 0x80000000;
if (laddr >= sec->size)
{
(*_bfd_error_handler) ("%B: 0x%lx: warning: bad R_SH_USES offset",
abfd, (unsigned long) irel->r_vaddr);
/* xgettext: c-format */
_bfd_error_handler (_("%B: 0x%lx: warning: bad R_SH_USES offset"),
abfd, (unsigned long) irel->r_vaddr);
continue;
}
insn = bfd_get_16 (abfd, contents + laddr);
@ -780,9 +781,10 @@ sh_relax_section (bfd *abfd,
/* If the instruction is not mov.l NN,rN, we don't know what to do. */
if ((insn & 0xf000) != 0xd000)
{
((*_bfd_error_handler)
("%B: 0x%lx: warning: R_SH_USES points to unrecognized insn 0x%x",
abfd, (unsigned long) irel->r_vaddr, insn));
_bfd_error_handler
/* xgettext: c-format */
(_("%B: 0x%lx: warning: R_SH_USES points to unrecognized insn 0x%x"),
abfd, (unsigned long) irel->r_vaddr, insn);
continue;
}
@ -797,9 +799,10 @@ sh_relax_section (bfd *abfd,
paddr += (laddr + 4) &~ (bfd_vma) 3;
if (paddr >= sec->size)
{
((*_bfd_error_handler)
("%B: 0x%lx: warning: bad R_SH_USES load offset",
abfd, (unsigned long) irel->r_vaddr));
_bfd_error_handler
/* xgettext: c-format */
(_("%B: 0x%lx: warning: bad R_SH_USES load offset"),
abfd, (unsigned long) irel->r_vaddr);
continue;
}
@ -821,9 +824,10 @@ sh_relax_section (bfd *abfd,
break;
if (irelfn >= irelend)
{
((*_bfd_error_handler)
("%B: 0x%lx: warning: could not find expected reloc",
abfd, (unsigned long) paddr));
_bfd_error_handler
/* xgettext: c-format */
(_("%B: 0x%lx: warning: could not find expected reloc"),
abfd, (unsigned long) paddr);
continue;
}
@ -837,9 +841,10 @@ sh_relax_section (bfd *abfd,
&sym);
if (sym.n_scnum != 0 && sym.n_scnum != sec->target_index)
{
((*_bfd_error_handler)
("%B: 0x%lx: warning: symbol in unexpected section",
abfd, (unsigned long) paddr));
_bfd_error_handler
/* xgettext: c-format */
(_("%B: 0x%lx: warning: symbol in unexpected section"),
abfd, (unsigned long) paddr);
continue;
}
@ -962,9 +967,10 @@ sh_relax_section (bfd *abfd,
/* Now check whether we got a COUNT reloc. */
if (irelcount >= irelend)
{
((*_bfd_error_handler)
("%B: 0x%lx: warning: could not find expected COUNT reloc",
abfd, (unsigned long) paddr));
_bfd_error_handler
/* xgettext: c-format */
(_("%B: 0x%lx: warning: could not find expected COUNT reloc"),
abfd, (unsigned long) paddr);
continue;
}
@ -972,8 +978,9 @@ sh_relax_section (bfd *abfd,
just deleted one. */
if (irelcount->r_offset == 0)
{
((*_bfd_error_handler) ("%B: 0x%lx: warning: bad count",
abfd, (unsigned long) paddr));
/* xgettext: c-format */
_bfd_error_handler (_("%B: 0x%lx: warning: bad count"),
abfd, (unsigned long) paddr);
continue;
}
@ -1342,9 +1349,10 @@ sh_relax_delete_bytes (bfd *abfd,
if (overflow)
{
((*_bfd_error_handler)
("%B: 0x%lx: fatal: reloc overflow while relaxing",
abfd, (unsigned long) irel->r_vaddr));
_bfd_error_handler
/* xgettext: c-format */
(_("%B: 0x%lx: fatal: reloc overflow while relaxing"),
abfd, (unsigned long) irel->r_vaddr);
bfd_set_error (bfd_error_bad_value);
return FALSE;
}
@ -1437,8 +1445,8 @@ sh_relax_delete_bytes (bfd *abfd,
if (obj_symbols (abfd) != NULL
|| obj_raw_syments (abfd) != NULL)
{
((*_bfd_error_handler)
("%B: fatal: generic symbols retrieved before relaxing", abfd));
_bfd_error_handler
(_("%B: fatal: generic symbols retrieved before relaxing"), abfd);
bfd_set_error (bfd_error_invalid_operation);
return FALSE;
}
@ -2629,9 +2637,10 @@ sh_swap_insns (bfd * abfd,
if (overflow)
{
((*_bfd_error_handler)
("%B: 0x%lx: fatal: reloc overflow while relaxing",
abfd, (unsigned long) irel->r_vaddr));
_bfd_error_handler
/* xgettext: c-format */
(_("%B: 0x%lx: fatal: reloc overflow while relaxing"),
abfd, (unsigned long) irel->r_vaddr);
bfd_set_error (bfd_error_bad_value);
return FALSE;
}
@ -2766,8 +2775,9 @@ sh_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED,
if (symndx < 0
|| (unsigned long) symndx >= obj_raw_syment_count (input_bfd))
{
(*_bfd_error_handler)
("%B: illegal symbol index %ld in relocs",
_bfd_error_handler
/* xgettext: c-format */
(_("%B: illegal symbol index %ld in relocs"),
input_bfd, symndx);
bfd_set_error (bfd_error_bad_value);
return FALSE;

View File

@ -1,5 +1,5 @@
/* BFD back-end for Sparc COFF files.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for Intel 386 COFF files (DJGPP variant with a stub).
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2017 Free Software Foundation, Inc.
Written by Robert Hoehne.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for Motorola sysv68
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2017 Free Software Foundation, Inc.
Written by Philippe De Muyter <phdm@info.ucl.ac.be>.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for TMS320C30 coff binaries.
Copyright (C) 1998-2016 Free Software Foundation, Inc.
Copyright (C) 1998-2017 Free Software Foundation, Inc.
Contributed by Steven Haworth (steve@pm.cse.rmit.edu.au)
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for TMS320C4X coff binaries.
Copyright (C) 1996-2016 Free Software Foundation, Inc.
Copyright (C) 1996-2017 Free Software Foundation, Inc.
Contributed by Michael Hayes (m.hayes@elec.canterbury.ac.nz)
@ -180,8 +180,8 @@ tic4x_lookup_howto (arelent *internal,
}
}
(*_bfd_error_handler) (_("Unrecognized reloc type 0x%x"),
(unsigned int) dst->r_type);
_bfd_error_handler (_("Unrecognized reloc type 0x%x"),
(unsigned int) dst->r_type);
abort();
}
@ -222,9 +222,10 @@ tic4x_reloc_processing (arelent *relent,
{
if (reloc->r_symndx < 0 || reloc->r_symndx >= obj_conv_table_size (abfd))
{
(*_bfd_error_handler)
(_("%s: warning: illegal symbol index %ld in relocs"),
bfd_get_filename (abfd), reloc->r_symndx);
_bfd_error_handler
/* xgettext: c-format */
(_("%B: warning: illegal symbol index %ld in relocs"),
abfd, reloc->r_symndx);
relent->sym_ptr_ptr = bfd_abs_section_ptr->symbol_ptr_ptr;
ptr = NULL;
}

View File

@ -1,5 +1,5 @@
/* BFD back-end for TMS320C54X coff binaries.
Copyright (C) 1999-2016 Free Software Foundation, Inc.
Copyright (C) 1999-2017 Free Software Foundation, Inc.
Contributed by Timothy Wall (twall@cygnus.com)
This file is part of BFD, the Binary File Descriptor library.
@ -275,8 +275,8 @@ tic54x_lookup_howto (arelent *internal,
}
}
(*_bfd_error_handler) (_("Unrecognized reloc type 0x%x"),
(unsigned int) dst->r_type);
_bfd_error_handler (_("Unrecognized reloc type 0x%x"),
(unsigned int) dst->r_type);
abort ();
}
@ -360,7 +360,8 @@ tic54x_reloc_processing (arelent *relent,
{
if (reloc->r_symndx < 0 || reloc->r_symndx >= obj_conv_table_size (abfd))
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: warning: illegal symbol index %ld in relocs"),
abfd, reloc->r_symndx);
relent->sym_ptr_ptr = bfd_abs_section_ptr->symbol_ptr_ptr;

View File

@ -1,5 +1,5 @@
/* BFD back-end for Texas Instruments TMS320C80 Multimedia Video Processor (MVP).
Copyright (C) 1996-2016 Free Software Foundation, Inc.
Copyright (C) 1996-2017 Free Software Foundation, Inc.
Written by Fred Fish (fnf@cygnus.com)
@ -436,8 +436,8 @@ rtype2howto (arelent *cache_ptr, struct internal_reloc *dst)
}
}
(*_bfd_error_handler) (_("Unrecognized reloc type 0x%x"),
(unsigned int) dst->r_type);
_bfd_error_handler (_("Unrecognized reloc type 0x%x"),
(unsigned int) dst->r_type);
cache_ptr->howto = tic80_howto_table + 0;
}
@ -665,9 +665,10 @@ coff_tic80_relocate_section (bfd *output_bfd,
case bfd_reloc_ok:
break;
case bfd_reloc_outofrange:
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: bad reloc address 0x%lx in section `%A'"),
input_bfd, input_section, (unsigned long) rel->r_vaddr);
input_bfd, (unsigned long) rel->r_vaddr, input_section);
return FALSE;
case bfd_reloc_overflow:
{

View File

@ -1,5 +1,5 @@
/* BFD back-end for Motorola 68000 COFF binaries having underscore with name.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for WDC 65816 COFF binaries.
Copyright (C) 1995-2016 Free Software Foundation, Inc.
Copyright (C) 1995-2017 Free Software Foundation, Inc.
Written by Steve Chamberlain, <sac@cygnus.com>.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for we32k COFF files.
Copyright (C) 1992-2016 Free Software Foundation, Inc.
Copyright (C) 1992-2017 Free Software Foundation, Inc.
Contributed by Brendan Kehoe (brendan@cs.widener.edu).
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for AMD 64 COFF files.
Copyright (C) 2006-2016 Free Software Foundation, Inc.
Copyright (C) 2006-2017 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@ -614,7 +614,12 @@ coff_amd64_rtype_to_howto (bfd *abfd ATTRIBUTE_UNUSED,
#if defined(COFF_WITH_PE)
if (howto->pc_relative)
{
*addendp -= 4;
#ifndef DONT_EXTEND_AMD64
if (rel->r_type == R_AMD64_PCRQUAD)
*addendp -= 8;
else
#endif
*addendp -= 4;
/* If the symbol is defined, then the generic code is going to
add back the symbol value in order to cancel out an

View File

@ -1,5 +1,5 @@
/* BFD back-end for Zilog Z80 COFF binaries.
Copyright (C) 2005-2016 Free Software Foundation, Inc.
Copyright (C) 2005-2017 Free Software Foundation, Inc.
Contributed by Arnold Metselaar <arnold_m@operamail.com>
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD back-end for Zilog Z800n COFF binaries.
Copyright (C) 1992-2016 Free Software Foundation, Inc.
Copyright (C) 1992-2017 Free Software Foundation, Inc.
Contributed by Cygnus Support.
Written by Steve Chamberlain, <sac@cygnus.com>.

View File

@ -1,5 +1,5 @@
/* BFD back-end for IBM RS/6000 "XCOFF64" files.
Copyright (C) 2000-2016 Free Software Foundation, Inc.
Copyright (C) 2000-2017 Free Software Foundation, Inc.
Written Clinton Popetz.
Contributed by Cygnus Support.
@ -2105,7 +2105,8 @@ xcoff64_create_csect_from_smclas (bfd *abfd, union internal_auxent *aux,
}
else
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: symbol `%s' has unrecognized smclas %d"),
abfd, symbol_name, aux->x_csect.x_smclas);
bfd_set_error (bfd_error_bad_value);

View File

@ -1,5 +1,5 @@
/* Support for the generic parts of most COFF variants, for BFD.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@ -965,7 +965,8 @@ handle_COMDAT (bfd * abfd,
/* PR 17512 file: 078-11867-0.004 */
if (symname == NULL)
{
_bfd_error_handler (_("%B: unable to load COMDAT section name"), abfd);
_bfd_error_handler (_("%B: unable to load COMDAT section name"),
abfd);
break;
}
@ -1004,7 +1005,9 @@ handle_COMDAT (bfd * abfd,
function). See comment above for more. */
if (isym.n_sclass == C_STAT && strcmp (name, symname) != 0)
_bfd_error_handler (_("%B: warning: COMDAT symbol '%s' does not match section name '%s'"),
/* xgettext:c-format */
_bfd_error_handler (_("%B: warning: COMDAT symbol '%s'"
" does not match section name '%s'"),
abfd, symname, name);
seen_state = 1;
@ -1012,7 +1015,9 @@ handle_COMDAT (bfd * abfd,
/* PR 17512: file: e2cfe54f. */
if (esym + bfd_coff_symesz (abfd) >= esymend)
{
_bfd_error_handler (_("%B: warning: No symbol for section '%s' found"),
/* xgettext:c-format */
_bfd_error_handler (_("%B: warning: No symbol for"
" section '%s' found"),
abfd, symname);
break;
}
@ -1236,7 +1241,9 @@ styp_to_sec_flags (bfd *abfd,
/* Generate a warning message rather using the 'unhandled'
variable as this will allow some .sys files generate by
other toolchains to be processed. See bugzilla issue 196. */
_bfd_error_handler (_("%B: Warning: Ignoring section flag IMAGE_SCN_MEM_NOT_PAGED in section %s"),
/* xgettext:c-format */
_bfd_error_handler (_("%B: Warning: Ignoring section flag"
" IMAGE_SCN_MEM_NOT_PAGED in section %s"),
abfd, name);
break;
case IMAGE_SCN_MEM_EXECUTE:
@ -1302,7 +1309,8 @@ styp_to_sec_flags (bfd *abfd,
/* If the section flag was not handled, report it here. */
if (unhandled != NULL)
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B (%s): Section flag %s (0x%x) ignored"),
abfd, name, unhandled, flag);
result = FALSE;
@ -1937,9 +1945,9 @@ coff_set_alignment_hook (bfd * abfd ATTRIBUTE_UNUSED,
section->rel_filepos += relsz;
}
else if (hdr->s_nreloc == 0xffff)
(*_bfd_error_handler)
("%s: warning: claims to have 0xffff relocs, without overflow",
bfd_get_filename (abfd));
_bfd_error_handler
(_("%B: warning: claims to have 0xffff relocs, without overflow"),
abfd);
}
#undef ALIGN_SET
#undef ELIFALIGN_SET
@ -2453,7 +2461,7 @@ coff_set_arch_mach_hook (bfd *abfd, void * filehdr)
#endif
default:
arch = bfd_arch_obscure;
(*_bfd_error_handler)
_bfd_error_handler
(_("Unrecognized TI COFF target id '0x%x'"),
internal_f->f_target_id);
break;
@ -2779,7 +2787,9 @@ coff_write_relocs (bfd * abfd, int first_undef)
if (n.r_symndx > obj_conv_table_size (abfd))
{
bfd_set_error (bfd_error_bad_value);
_bfd_error_handler (_("%B: reloc against a non-existant symbol index: %ld"),
/* xgettext:c-format */
_bfd_error_handler (_("%B: reloc against a non-existent"
" symbol index: %ld"),
abfd, n.r_symndx);
return FALSE;
}
@ -3179,7 +3189,8 @@ coff_compute_section_file_positions (bfd * abfd)
if (page_size < 0)
{
bfd_set_error (bfd_error_file_too_big);
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B: page size is too large (0x%x)"), abfd, page_size);
return FALSE;
}
@ -3338,7 +3349,8 @@ coff_compute_section_file_positions (bfd * abfd)
if (target_index >= bfd_coff_max_nscns (abfd))
{
bfd_set_error (bfd_error_file_too_big);
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B: too many sections (%d)"), abfd, target_index);
return FALSE;
}
@ -3748,7 +3760,9 @@ coff_write_object_contents (bfd * abfd)
NUL-terminated. We use a temporary buffer so that we can still
sprintf all eight chars without splatting a terminating NUL
over the first byte of the following member (s_paddr). */
char s_name_buf[SCNNMLEN + 1];
/* PR 21096: The +20 is to stop a bogus warning from gcc7 about
a possible buffer overflow. */
char s_name_buf[SCNNMLEN + 1 + 20];
/* An inherent limitation of the /nnnnnnn notation used to indicate
the offset of the long name in the string table is that we
@ -3756,15 +3770,17 @@ coff_write_object_contents (bfd * abfd)
if (string_size >= 10000000)
{
bfd_set_error (bfd_error_file_too_big);
(*_bfd_error_handler)
(_("%B: section %s: string table overflow at offset %ld"),
abfd, current->name, string_size);
_bfd_error_handler
/* xgettext:c-format */
(_("%B: section %A: string table overflow at offset %ld"),
abfd, current, string_size);
return FALSE;
}
/* snprintf not strictly necessary now we've verified the value
has less than eight ASCII digits, but never mind. */
snprintf (s_name_buf, SCNNMLEN + 1, "/%lu", (unsigned long) string_size);
/* We do not need to use snprintf here as we have already verfied
that string_size is not too big, plus we have an overlarge
buffer, just in case. */
sprintf (s_name_buf, "/%lu", (unsigned long) string_size);
/* Then strncpy takes care of any padding for us. */
strncpy (section.s_name, s_name_buf, SCNNMLEN);
string_size += len + 1;
@ -4573,7 +4589,7 @@ coff_slurp_line_table (bfd *abfd, asection *asect)
native_lineno = (LINENO *) buy_and_read (abfd, asect->line_filepos, amt);
if (native_lineno == NULL)
{
(*_bfd_error_handler)
_bfd_error_handler
(_("%B: warning: line number table read failed"), abfd);
bfd_release (abfd, lineno_cache);
return FALSE;
@ -4606,7 +4622,8 @@ coff_slurp_line_table (bfd *abfd, asection *asect)
symndx = dst.l_addr.l_symndx;
if (symndx >= obj_raw_syment_count (abfd))
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B: warning: illegal symbol index 0x%lx in line number entry %d"),
abfd, (long) symndx, counter);
cache_ptr->line_number = -1;
@ -4619,7 +4636,8 @@ coff_slurp_line_table (bfd *abfd, asection *asect)
pointers like this. */
if (! ent->is_sym)
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B: warning: illegal symbol index 0x%lx in line number entry %d"),
abfd, (long) symndx, counter);
cache_ptr->line_number = -1;
@ -4632,7 +4650,8 @@ coff_slurp_line_table (bfd *abfd, asection *asect)
if (sym < obj_symbols (abfd)
|| sym >= obj_symbols (abfd) + bfd_get_symcount (abfd))
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B: warning: illegal symbol in line number entry %d"),
abfd, counter);
cache_ptr->line_number = -1;
@ -4644,7 +4663,8 @@ coff_slurp_line_table (bfd *abfd, asection *asect)
nbr_func++;
cache_ptr->u.sym = (asymbol *) sym;
if (sym->lineno != NULL)
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B: warning: duplicate line number information for `%s'"),
abfd, bfd_asymbol_name (&sym->symbol));
@ -5055,14 +5075,18 @@ coff_slurp_symbol_table (bfd * abfd)
#if defined(TIC80COFF) || defined(TICOFF)
case C_UEXT: /* Tentative external definition. */
#endif
case C_EXTLAB: /* External load time label. */
default:
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B: Unrecognized storage class %d for %s symbol `%s'"),
abfd, src->u.syment.n_sclass,
dst->symbol.section->name, dst->symbol.name);
ret = FALSE;
case C_EXTLAB: /* External load time label. */
/* Fall through. */
case C_HIDDEN: /* Ext symbol in dmert public lib. */
/* PR 20722: These symbols can also be generated by
building DLLs with --gc-sections enabled. */
dst->symbol.flags = BSF_DEBUGGING;
dst->symbol.value = (src->u.syment.n_value);
break;
@ -5186,7 +5210,8 @@ coff_classify_symbol (bfd *abfd,
{
char buf[SYMNMLEN + 1];
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("warning: %B: local symbol `%s' has no section"),
abfd, _bfd_coff_internal_syment_name (abfd, syment, buf));
}
@ -5292,7 +5317,8 @@ coff_slurp_reloc_table (bfd * abfd, sec_ptr asect, asymbol ** symbols)
{
if (dst.r_symndx < 0 || dst.r_symndx >= obj_conv_table_size (abfd))
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B: warning: illegal symbol index %ld in relocs"),
abfd, (long) dst.r_symndx);
cache_ptr->sym_ptr_ptr = bfd_abs_section_ptr->symbol_ptr_ptr;
@ -5331,7 +5357,8 @@ coff_slurp_reloc_table (bfd * abfd, sec_ptr asect, asymbol ** symbols)
if (cache_ptr->howto == NULL)
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext:c-format */
(_("%B: illegal relocation type %d at address 0x%lx"),
abfd, dst.r_type, (long) dst.r_vaddr);
bfd_set_error (bfd_error_bad_value);

View File

@ -1,5 +1,5 @@
/* Support for the generic parts of COFF, for BFD.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@ -173,7 +173,8 @@ make_a_section_from_file (bfd *abfd,
case compress:
if (!bfd_init_section_compress_status (abfd, return_section))
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: unable to initialize compress status for section %s"),
abfd, name);
return FALSE;
@ -196,7 +197,8 @@ make_a_section_from_file (bfd *abfd,
case decompress:
if (!bfd_init_section_decompress_status (abfd, return_section))
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: unable to initialize decompress status for section %s"),
abfd, name);
return FALSE;
@ -1218,7 +1220,8 @@ coff_write_native_symbol (bfd *abfd,
}
static void
null_error_handler (const char * fmt ATTRIBUTE_UNUSED, ...)
null_error_handler (const char *fmt ATTRIBUTE_UNUSED,
va_list ap ATTRIBUTE_UNUSED)
{
}
@ -1640,7 +1643,12 @@ _bfd_coff_get_external_symbols (bfd *abfd)
syms = bfd_malloc (size);
if (syms == NULL)
return FALSE;
{
/* PR 21013: Provide an error message when the alloc fails. */
_bfd_error_handler (_("%B: Not enough memory to allocate space for %lu symbols"),
abfd, size);
return FALSE;
}
if (bfd_seek (abfd, obj_sym_filepos (abfd), SEEK_SET) != 0
|| bfd_bread (syms, size, abfd) != size)
@ -1703,7 +1711,8 @@ _bfd_coff_read_string_table (bfd *abfd)
if (strsize < STRING_SIZE_SIZE)
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: bad string table size %lu"), abfd, (unsigned long) strsize);
bfd_set_error (bfd_error_bad_value);
return NULL;
@ -2133,7 +2142,7 @@ coff_print_symbol (bfd *abfd,
auxp->u.auxent.x_scn.x_comdat);
break;
}
/* Otherwise fall through. */
/* Fall through. */
case C_EXT:
case C_AIX_WEAKEXT:
if (ISFCN (combined->u.syment.n_type))
@ -2153,7 +2162,7 @@ coff_print_symbol (bfd *abfd,
llnos, next);
break;
}
/* Otherwise fall through. */
/* Fall through. */
default:
fprintf (file, "AUX lnno %d size 0x%x tagndx %ld",
auxp->u.auxent.x_sym.x_misc.x_lnsz.x_lnno,
@ -2250,6 +2259,8 @@ coff_find_nearest_line_with_names (bfd *abfd,
&coff_data(abfd)->dwarf2_find_line_info))
return TRUE;
sec_data = coff_section_data (abfd, section);
/* If the DWARF lookup failed, but there is DWARF information available
then the problem might be that the file has been rebased. This tool
changes the VMAs of all the sections, but it does not update the DWARF
@ -2258,8 +2269,26 @@ coff_find_nearest_line_with_names (bfd *abfd,
{
bfd_signed_vma bias;
bias = _bfd_dwarf2_find_symbol_bias (symbols,
& coff_data (abfd)->dwarf2_find_line_info);
/* Create a cache of the result for the next call. */
if (sec_data == NULL && section->owner == abfd)
{
amt = sizeof (struct coff_section_tdata);
section->used_by_bfd = bfd_zalloc (abfd, amt);
sec_data = (struct coff_section_tdata *) section->used_by_bfd;
}
if (sec_data != NULL && sec_data->saved_bias)
bias = sec_data->saved_bias;
else
{
bias = _bfd_dwarf2_find_symbol_bias (symbols,
& coff_data (abfd)->dwarf2_find_line_info);
if (sec_data)
{
sec_data->saved_bias = TRUE;
sec_data->bias = bias;
}
}
if (bias
&& _bfd_dwarf2_find_nearest_line (abfd, symbols, NULL, section,
@ -2354,10 +2383,16 @@ coff_find_nearest_line_with_names (bfd *abfd,
}
}
/* Now wander though the raw linenumbers of the section. */
/* If we have been called on this section before, and the offset we
want is further down then we can prime the lookup loop. */
sec_data = coff_section_data (abfd, section);
if (section->lineno_count == 0)
{
*functionname_ptr = NULL;
*line_ptr = 0;
return TRUE;
}
/* Now wander though the raw linenumbers of the section.
If we have been called on this section before, and the offset
we want is further down then we can prime the lookup loop. */
if (sec_data != NULL
&& sec_data->i > 0
&& offset >= sec_data->offset)
@ -2386,6 +2421,7 @@ coff_find_nearest_line_with_names (bfd *abfd,
coff_symbol_type *coff = (coff_symbol_type *) (l->u.sym);
if (coff->symbol.value > offset)
break;
*functionname_ptr = coff->symbol.name;
last_value = coff->symbol.value;
if (coff->native)
@ -2442,6 +2478,7 @@ coff_find_nearest_line_with_names (bfd *abfd,
section->used_by_bfd = bfd_zalloc (abfd, amt);
sec_data = (struct coff_section_tdata *) section->used_by_bfd;
}
if (sec_data != NULL)
{
sec_data->offset = offset;
@ -2748,8 +2785,22 @@ _bfd_coff_gc_mark_hook (asection *sec,
case bfd_link_hash_common:
return h->root.u.c.p->section;
case bfd_link_hash_undefined:
case bfd_link_hash_undefweak:
if (h->symbol_class == C_NT_WEAK && h->numaux == 1)
{
/* PE weak externals. A weak symbol may include an auxiliary
record indicating that if the weak symbol is not resolved,
another external symbol is used instead. */
struct coff_link_hash_entry *h2 =
h->auxbfd->tdata.coff_obj_data->sym_hashes[
h->aux->x_sym.x_tagndx.l];
if (h2 && h2->root.type != bfd_link_hash_undefined)
return h2->root.u.def.section;
}
break;
case bfd_link_hash_undefined:
default:
break;
}
@ -2860,7 +2911,7 @@ _bfd_coff_gc_mark_extra_sections (struct bfd_link_info *info,
asection *isec;
bfd_boolean some_kept;
if (bfd_get_flavour (ibfd) != bfd_target_elf_flavour)
if (bfd_get_flavour (ibfd) != bfd_target_coff_flavour)
continue;
/* Ensure all linker created sections are kept, and see whether
@ -2952,7 +3003,9 @@ coff_gc_sweep (bfd *abfd ATTRIBUTE_UNUSED, struct bfd_link_info *info)
o->flags |= SEC_EXCLUDE;
if (info->print_gc_sections && o->size != 0)
_bfd_error_handler (_("Removing unused section '%s' in file '%B'"), sub, o->name);
/* xgettext: c-format */
_bfd_error_handler (_("Removing unused section '%A' in file '%B'"),
o, sub);
#if 0
/* But we also have to update some of the relocation
@ -3028,7 +3081,7 @@ bfd_coff_gc_sections (bfd *abfd ATTRIBUTE_UNUSED, struct bfd_link_info *info)
if (!bed->can_gc_sections
|| !is_coff_hash_table (info->hash))
{
(*_bfd_error_handler)(_("Warning: gc-sections option ignored"));
_bfd_error_handler(_("Warning: gc-sections option ignored"));
return TRUE;
}
#endif

View File

@ -1,5 +1,5 @@
/* COFF specific linker code.
Copyright (C) 1994-2016 Free Software Foundation, Inc.
Copyright (C) 1994-2017 Free Software Foundation, Inc.
Written by Ian Lance Taylor, Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@ -344,8 +344,8 @@ coff_link_add_symbols (bfd *abfd,
& COFF_LINK_HASH_PE_SECTION_SYMBOL) == 0
&& (*sym_hash)->root.type != bfd_link_hash_undefined
&& (*sym_hash)->root.type != bfd_link_hash_undefweak)
(*_bfd_error_handler)
("Warning: symbol `%s' is both section and non-section",
_bfd_error_handler
(_("Warning: symbol `%s' is both section and non-section"),
name);
addit = FALSE;
@ -445,9 +445,11 @@ coff_link_add_symbols (bfd *abfd,
&& !(DTYPE ((*sym_hash)->type) == DTYPE (sym.n_type)
&& (BTYPE ((*sym_hash)->type) == T_NULL
|| BTYPE (sym.n_type) == T_NULL)))
(*_bfd_error_handler)
(_("Warning: type of symbol `%s' changed from %d to %d in %B"),
abfd, name, (*sym_hash)->type, sym.n_type);
_bfd_error_handler
/* xgettext: c-format */
(_("Warning: type of symbol `%s' changed"
" from %d to %d in %B"),
name, (*sym_hash)->type, sym.n_type, abfd);
/* We don't want to change from a meaningful
base type to a null one, but if we know
@ -2362,7 +2364,8 @@ _bfd_coff_link_input_bfd (struct coff_final_link_info *flaginfo, bfd *input_bfd)
if ((o->flags & SEC_RELOC) != 0
&& o->reloc_count != 0)
{
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: relocs in section `%A', but it has no contents"),
input_bfd, o);
bfd_set_error (bfd_error_no_contents);
@ -2425,6 +2428,7 @@ _bfd_coff_link_input_bfd (struct coff_final_link_info *flaginfo, bfd *input_bfd)
/* Complain if definition comes from an excluded section. */
if (ps->flags & SEC_EXCLUDE)
(*flaginfo->info->callbacks->einfo)
/* xgettext: c-format */
(_("%X`%s' referenced in section `%A' of %B: "
"defined in discarded section `%A' of %B\n"),
h->root.root.string, o, input_bfd, ps, ps->owner);
@ -2721,20 +2725,18 @@ _bfd_coff_write_global_sym (struct bfd_hash_entry *bh, void *data)
if (sec->reloc_count > 0xffff
&& (! obj_pe (output_bfd)
|| bfd_link_relocatable (flaginfo->info)))
(*_bfd_error_handler)
(_("%s: %s: reloc overflow: 0x%lx > 0xffff"),
bfd_get_filename (output_bfd),
bfd_get_section_name (output_bfd, sec),
sec->reloc_count);
_bfd_error_handler
/* xgettext: c-format */
(_("%B: %A: reloc overflow: 0x%lx > 0xffff"),
output_bfd, sec, sec->reloc_count);
if (sec->lineno_count > 0xffff
&& (! obj_pe (output_bfd)
|| bfd_link_relocatable (flaginfo->info)))
(*_bfd_error_handler)
(_("%s: warning: %s: line number overflow: 0x%lx > 0xffff"),
bfd_get_filename (output_bfd),
bfd_get_section_name (output_bfd, sec),
sec->lineno_count);
_bfd_error_handler
/* xgettext: c-format */
(_("%B: warning: %A: line number overflow: 0x%lx > 0xffff"),
output_bfd, sec, sec->lineno_count);
auxp->x_scn.x_nreloc = sec->reloc_count;
auxp->x_scn.x_nlinno = sec->lineno_count;
@ -2954,8 +2956,9 @@ _bfd_coff_generic_relocate_section (bfd *output_bfd,
else if (symndx < 0
|| (unsigned long) symndx >= obj_raw_syment_count (input_bfd))
{
(*_bfd_error_handler)
("%B: illegal symbol index %ld in relocs", input_bfd, symndx);
_bfd_error_handler
/* xgettext: c-format */
(_("%B: illegal symbol index %ld in relocs"), input_bfd, symndx);
return FALSE;
}
else
@ -3115,9 +3118,10 @@ _bfd_coff_generic_relocate_section (bfd *output_bfd,
case bfd_reloc_ok:
break;
case bfd_reloc_outofrange:
(*_bfd_error_handler)
_bfd_error_handler
/* xgettext: c-format */
(_("%B: bad reloc address 0x%lx in section `%A'"),
input_bfd, input_section, (unsigned long) rel->r_vaddr);
input_bfd, (unsigned long) rel->r_vaddr, input_section);
return FALSE;
case bfd_reloc_overflow:
{

View File

@ -1,5 +1,5 @@
/* Generic COFF swapping routines, for BFD.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@ -806,10 +806,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 */
(_("%B: warning: %s: line number overflow: 0x%lx > 0xffff"),
abfd, buf, scnhdr_int->s_nlnno);
PUT_SCNHDR_NLNNO (abfd, 0xffff, scnhdr_ext->s_nlnno);
}
@ -821,9 +821,9 @@ 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 (_("%B: %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;

View File

@ -1,5 +1,5 @@
/* Compressed section support (intended for debug sections).
Copyright (C) 2008-2016 Free Software Foundation, Inc.
Copyright (C) 2008-2017 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@ -247,7 +247,15 @@ bfd_get_full_section_contents (bfd *abfd, sec_ptr sec, bfd_byte **ptr)
{
p = (bfd_byte *) bfd_malloc (sz);
if (p == NULL)
{
/* PR 20801: Provide a more helpful error message. */
if (bfd_get_error () == bfd_error_no_memory)
_bfd_error_handler
/* xgettext:c-format */
(_("error: %B(%A) is too large (%#lx bytes)"),
abfd, sec, (long) sz);
return FALSE;
}
}
if (!bfd_get_section_contents (abfd, sec, p, 0, sz))
@ -292,7 +300,7 @@ bfd_get_full_section_contents (bfd *abfd, sec_ptr sec, bfd_byte **ptr)
SHF_COMPRESSED section. */
compression_header_size = 12;
if (!decompress_contents (compressed_buffer + compression_header_size,
sec->compressed_size, p, sz))
sec->compressed_size - compression_header_size, p, sz))
{
bfd_set_error (bfd_error_bad_value);
if (p != *ptr)

View File

@ -1,6 +1,6 @@
# config.bfd
#
# Copyright (C) 2012-2016 Free Software Foundation, Inc.
# Copyright (C) 2012-2017 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
@ -53,6 +53,71 @@ case $targ in
echo "*** Use or1k-*-elf or or1k-*-linux as the target instead" >&2
exit 1
;;
i[3-7]86-*-netbsdelf* | i[3-7]86-*-netbsd*-gnu* | i[3-7]86-*-knetbsd*-gnu | \
mips*-*-irix5* | mips*-*-irix6*)
# Not obsolete
;;
*-*-netware* | \
arm-epoc-pe* | \
arm*-*-aout | \
arm*-*-coff | \
h8300*-*-coff | \
h8500*-*-coff | \
i[3-7]86-*-sco3.2v5*coff | \
i[3-7]86-*-sysv4* | i[3-7]86-*-unixware* | \
i[3-7]86-*-sco3.2v5* | \
i[3-7]86-*-dgux* | i[3-7]86-*-sysv5* | \
i[3-7]86-*-chorus* | \
i[3-7]86-*-sysv* | i[3-7]86-*-isc* | i[3-7]86-*-sco* | i[3-7]86-*-coff | \
i[3-7]86-*-aix* | \
i[3-7]86-sequent-bsd* | \
i[3-7]86-*-freebsdaout* | i[3-7]86-*-freebsd[12].* | \
i[3-7]86-*-freebsd[12] | \
i[3-7]86-*-netbsdaout* | i[3-7]86-*-netbsd* | \
i[3-7]86-*-openbsd[0-2].* | i[3-7]86-*-openbsd3.[0-3] | \
i[3-7]86-*-netware* | \
i[3-7]86-*-linux*aout* | \
i[3-7]86-*-mach* | i[3-7]86-*-osf1mk* | \
i[3-7]86-*-os9k | \
i[3-7]86-none-* | \
i[3-7]86-*-aout* | i[3-7]86*-*-vsta* | \
i860-*-* | \
i960-*-* | \
m68*-motorola-sysv* | m68*-hp-bsd* | m68*-*-aout* | \
m68*-*-coff* | m68*-*-sysv* | \
m68*-*-hpux* | \
m68*-*-linux*aout* | \
m68*-hp*-netbsd* | \
m68*-*-netbsdaout* | \
m68*-*-sunos* | m68*-*-os68k* | m68*-*-vxworks* | m68*-netx-* | \
m68*-*-bsd* | m68*-*-vsta* | \
m68*-ericsson-* | \
m68*-*-psos* | \
m88*-*-* | \
mips*-big-* | \
mips*-dec-* | mips*el-*-ecoff* | \
mips*-*-ecoff* | \
mips*-sgi-* | mips*-*-bsd* | \
mips*-*-lnews* | \
mips*-*-sysv* | mips*-*-riscos* | \
sh*-*-symbianelf* | \
sparclet-*-aout* | \
sparc86x-*-aout* | \
sparc*-*-chorus* | \
sparc-*-linux*aout* | \
sparc-*-netbsdaout* | \
sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1] | \
sparc-*-netware* | \
sparc64-*-aout* | \
sparc*-*-coff* | \
tahoe-*-* | \
vax-*-bsd* | vax-*-ultrix* | \
we32k-*-* | \
w65-*-* | \
*-*-ieee* | \
*-adobe-* | \
*-sony-* | \
*-tandem-* | \
i370-* | \
sh5*-*-* | sh64*-*-* | \
null)
@ -67,20 +132,18 @@ esac
case $targ in
*-go32-rtems* | \
*-*-rtemsaout* | \
*-*-rtemscoff* | \
a29k-* | \
arm-*-oabi | \
hppa*-*-rtems* | \
i960-*-rtems* | \
i[3-7]86*-*-rtemscoff* | \
m68*-*-lynxos* | \
m68*-*-rtemscoff* | \
m68*-apollo-* | \
m68*-apple-aux* | \
m68*-bull-sysv* | \
maxq-*-coff | \
mips*el-*-rtems* | \
powerpcle-*-rtems* | \
sparc*-*-rtemsaout* | \
sparc-*-lynxos* | \
vax-*-vms* | \
null)
@ -109,6 +172,7 @@ fido*) targ_archs=bfd_m68k_arch ;;
hppa*) targ_archs=bfd_hppa_arch ;;
i[3-7]86) targ_archs=bfd_i386_arch ;;
i370) targ_archs=bfd_i370_arch ;;
ia16) targ_archs=bfd_i386_arch ;;
lm32) targ_archs=bfd_lm32_arch ;;
m5200|m5407) targ_archs=bfd_m68k_arch ;;
m6811*|m68hc11*) targ_archs="bfd_m68hc11_arch bfd_m68hc12_arch bfd_m9s12x_arch bfd_m9s12xg_arch" ;;
@ -123,6 +187,8 @@ or1k*|or1knd*) targ_archs=bfd_or1k_arch ;;
pdp11*) targ_archs=bfd_pdp11_arch ;;
pj*) targ_archs="bfd_pj_arch bfd_i386_arch";;
powerpc*) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;;
pru*) targ_archs=bfd_pru_arch ;;
riscv*) targ_archs=bfd_riscv_arch ;;
rs6000) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;;
s390*) targ_archs=bfd_s390_arch ;;
sh*) targ_archs=bfd_sh_arch ;;
@ -132,6 +198,7 @@ tilegx*) targ_archs=bfd_tilegx_arch ;;
tilepro*) targ_archs=bfd_tilepro_arch ;;
v850*) targ_archs="bfd_v850_arch bfd_v850_rh850_arch" ;;
visium*) targ_archs=bfd_visium_arch ;;
wasm32) targ_archs=bfd_wasm32_arch ;;
x86_64*) targ_archs=bfd_i386_arch ;;
xtensa*) targ_archs=bfd_xtensa_arch ;;
xgate) targ_archs=bfd_xgate_arch ;;
@ -193,6 +260,16 @@ case "${targ}" in
targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec"
want64=true
;;
aarch64-*-netbsd*)
targ_defvec=aarch64_elf64_le_vec
targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec"
want64=true
;;
aarch64-*-fuchsia*)
targ_defvec=aarch64_elf64_le_vec
targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec"
want64=true
;;
aarch64-*-cloudabi*)
targ_defvec=aarch64_elf64_le_cloudabi_vec
targ_selvecs=aarch64_elf64_be_cloudabi_vec
@ -302,6 +379,10 @@ case "${targ}" in
targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec"
targ_archs="$targ_archs bfd_i386_arch bfd_powerpc_arch bfd_rs6000_arch"
;;
arm-*-fuchsia*)
targ_defvec=arm_elf32_le_vec
targ_selvecs="arm_elf32_be_vec"
;;
arm-*-nacl*)
targ_defvec=arm_elf32_nacl_le_vec
targ_selvecs="arm_elf32_nacl_be_vec i386_elf32_nacl_vec"
@ -369,10 +450,6 @@ case "${targ}" in
targ_defvec=arm_elf32_le_vec
targ_selvecs=arm_elf32_be_vec
;;
arm-*-rtems*)
targ_defvec=arm_elf32_le_vec
targ_selvecs=arm_elf32_be_vec
;;
armeb-*-elf | arm*b-*-freebsd* | arm*b-*-linux-* | armeb-*-eabi*)
targ_defvec=arm_elf32_be_vec
targ_selvecs=arm_elf32_le_vec
@ -383,7 +460,7 @@ case "${targ}" in
;;
arm-*-elf | arm*-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \
arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \
arm*-*-eabi* )
arm*-*-eabi* | arm-*-rtems*)
targ_defvec=arm_elf32_le_vec
targ_selvecs=arm_elf32_be_vec
;;
@ -417,7 +494,7 @@ case "${targ}" in
targ_defvec=tic30_coff_vec
;;
c4x-*-*coff* | tic4x-*-*coff* | tic4x-*-rtems*)
c4x-*-*coff* | tic4x-*-*coff*)
targ_defvec=tic4x_coff1_vec
targ_selvecs="tic4x_coff1_beh_vec tic4x_coff2_vec tic4x_coff2_beh_vec tic4x_coff0_vec tic4x_coff0_beh_vec"
targ_underscore=yes
@ -495,11 +572,6 @@ case "${targ}" in
targ_defvec=moxie_elf32_le_vec
;;
h8300*-*-rtemscoff*)
targ_defvec=h8300_coff_vec
targ_underscore=yes
;;
h8300*-*-elf | h8300*-*-rtems*)
targ_defvec=h8300_elf32_vec
targ_underscore=yes
@ -569,7 +641,7 @@ case "${targ}" in
;;
i[3-7]86-*-sysv4* | i[3-7]86-*-unixware* | \
i[3-7]86-*-elf* | i[3-7]86-*-sco3.2v5* | \
i[3-7]86-*-dgux* | i[3-7]86-*-sysv5*)
i[3-7]86-*-dgux* | i[3-7]86-*-sysv5* | i[3-7]86-*-rtems*)
targ_defvec=i386_elf32_vec
targ_selvecs="iamcu_elf32_vec i386_coff_vec"
;;
@ -615,10 +687,6 @@ case "${targ}" in
i[3-7]86-*-aix*)
targ_defvec=i386_coff_vec
;;
i[3-7]86-*-rtems*)
targ_defvec=i386_elf32_vec
targ_selvecs="iamcu_elf32_vec i386_coff_vec i386_aout_vec"
;;
i[3-7]86-*-darwin* | i[3-7]86-*-macos10* | i[3-7]86-*-rhapsody*)
targ_defvec=i386_mach_o_vec
targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec"
@ -693,6 +761,11 @@ case "${targ}" in
targ64_selvecs="x86_64_elf64_nacl_vec x86_64_elf32_nacl_vec"
targ_archs="$targ_archs bfd_arm_arch"
;;
i[3-7]86-*-redox*)
targ_defvec=i386_elf32_vec
targ_selvecs=
targ64_selvecs=x86_64_elf64_vec
;;
#ifdef BFD64
x86_64-*-cloudabi*)
targ_defvec=x86_64_elf64_cloudabi_vec
@ -709,7 +782,7 @@ case "${targ}" in
targ_selvecs="i386_elf32_vec iamcu_elf32_vec l1om_elf64_vec k1om_elf64_vec"
want64=true
;;
x86_64-*-elf* | x86_64-*-rtems*)
x86_64-*-elf* | x86_64-*-rtems* | x86_64-*-fuchsia)
targ_defvec=x86_64_elf64_vec
targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec l1om_elf64_vec k1om_elf64_vec"
want64=true
@ -750,6 +823,11 @@ case "${targ}" in
targ_defvec=x86_64_elf64_vec
want64=true
;;
x86_64-*-redox*)
targ_defvec=x86_64_elf64_vec
targ_selvecs=i386_elf32_vec
want64=true
;;
#endif
i[3-7]86-*-lynxos*)
targ_defvec=i386_elf32_vec
@ -844,6 +922,11 @@ case "${targ}" in
targ_selvecs="icoff_le_vec icoff_be_vec"
;;
ia16-*-elf)
targ_defvec=i386_elf32_vec
targ_selvecs="i386_msdos_vec i386_aout_vec"
;;
ip2k-*-elf)
targ_defvec=ip2k_elf32_vec
;;
@ -906,14 +989,10 @@ case "${targ}" in
targ_selvecs="core_cisco_be_vec ieee_vec"
targ_underscore=yes
;;
m68*-*-elf* | m68*-*-sysv4* | m68*-*-uclinux*)
m68*-*-elf* | m68*-*-sysv4* | m68*-*-rtems* | m68*-*-uclinux*)
targ_defvec=m68k_elf32_vec
targ_selvecs="m68k_coff_vec ieee_vec"
;;
m68*-*-rtems*)
targ_defvec=m68k_elf32_vec
targ_selvecs="m68k_coff_vec m68k_versados_vec ieee_vec aout0_be_vec"
;;
m68*-*-coff* | m68*-*-sysv*)
targ_defvec=m68k_coff_vec
targ_selvecs="m68k_coff_vec m68k_versados_vec ieee_vec"
@ -1377,6 +1456,25 @@ case "${targ}" in
targ_selvecs="powerpc_pei_le_vec powerpc_pei_vec powerpc_pe_le_vec powerpc_pe_vec"
;;
pru-*-*)
targ_defvec=pru_elf32_vec
targ_underscore=yes
;;
#ifdef BFD64
riscv32-*-*)
targ_defvec=riscv_elf32_vec
targ_selvecs="riscv_elf32_vec"
want64=true
;;
riscv64-*-*)
targ_defvec=riscv_elf64_vec
targ_selvecs="riscv_elf32_vec riscv_elf64_vec"
want64=true
;;
#endif
rl78-*-elf)
targ_defvec=rl78_elf32_vec
;;
@ -1510,12 +1608,6 @@ case "${targ}" in
;;
#endif
sh-*-rtemscoff*)
targ_defvec=sh_coff_vec
targ_selvecs="sh_coff_vec sh_coff_le_vec sh_coff_small_vec sh_coff_small_le_vec"
targ_underscore=yes
;;
#ifdef BFD64
sh-*-elf* | sh[1234]*-elf* | sh-*-rtems* | sh-*-kaos*)
targ_defvec=sh_elf32_vec
@ -1730,6 +1822,11 @@ case "${targ}" in
targ_defvec=visium_elf32_vec
;;
wasm32-*-*)
targ_defvec=wasm32_elf32_vec
targ_selvecs="wasm_vec"
;;
we32k-*-*)
targ_defvec=we32k_coff_vec
;;

View File

@ -337,7 +337,7 @@
/* Name of host specific header file to include in trad-core.c. */
#undef TRAD_HEADER
/* Define if we should use 64-bit archives. */
/* Define if 64-bit archives should always be used. */
#undef USE_64_BIT_ARCHIVE
/* Use b modifier when opening binary files? */

View File

@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.64 for bfd 2.27.51.
# Generated by GNU Autoconf 2.64 for bfd 2.28.51.
#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software
@ -557,8 +557,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='bfd'
PACKAGE_TARNAME='bfd'
PACKAGE_VERSION='2.27.51'
PACKAGE_STRING='bfd 2.27.51'
PACKAGE_VERSION='2.28.51'
PACKAGE_STRING='bfd 2.28.51'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@ -660,6 +660,7 @@ MAINTAINER_MODE_FALSE
MAINTAINER_MODE_TRUE
WARN_WRITE_STRINGS
NO_WERROR
WARN_CFLAGS_FOR_BUILD
WARN_CFLAGS
REPORT_BUGS_TEXI
REPORT_BUGS_TO
@ -1354,7 +1355,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures bfd 2.27.51 to adapt to many kinds of systems.
\`configure' configures bfd 2.28.51 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1425,7 +1426,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of bfd 2.27.51:";;
short | recursive ) echo "Configuration of bfd 2.28.51:";;
esac
cat <<\_ACEOF
@ -1546,7 +1547,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
bfd configure 2.27.51
bfd configure 2.28.51
generated by GNU Autoconf 2.64
Copyright (C) 2009 Free Software Foundation, Inc.
@ -2188,7 +2189,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by bfd $as_me 2.27.51, which was
It was created by bfd $as_me 2.28.51, which was
generated by GNU Autoconf 2.64. Invocation command line was
$ $0 $@
@ -3997,7 +3998,7 @@ fi
# Define the identity of the package.
PACKAGE='bfd'
VERSION='2.27.51'
VERSION='2.28.51'
cat >>confdefs.h <<_ACEOF
@ -11428,7 +11429,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 11430 "configure"
#line 11431 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@ -11534,7 +11535,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 11536 "configure"
#line 11537 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@ -12241,8 +12242,12 @@ fi
# Set the 'development' global.
. $srcdir/../bfd/development.sh
# Set acp_cpp_for_build variable
ac_cpp_for_build="$CC_FOR_BUILD -E $CPPFLAGS_FOR_BUILD"
# Default set of GCC warnings to enable.
GCC_WARN_CFLAGS="-W -Wall -Wstrict-prototypes -Wmissing-prototypes"
GCC_WARN_CFLAGS_FOR_BUILD="-W -Wall -Wstrict-prototypes -Wmissing-prototypes"
# Add -Wshadow if the compiler is a sufficiently recent version of GCC.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@ -12287,6 +12292,36 @@ fi
rm -f conftest*
# Verify CC_FOR_BUILD to be compatible with warning flags
# Add -Wshadow if the compiler is a sufficiently recent version of GCC.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
__GNUC__
_ACEOF
if (eval "$ac_cpp_for_build conftest.$ac_ext") 2>&5 |
$EGREP "^[0-3]$" >/dev/null 2>&1; then :
else
GCC_WARN_CFLAGS_FOR_BUILD="$GCC_WARN_CFLAGS_FOR_BUILD -Wshadow"
fi
rm -f conftest*
# Add -Wstack-usage if the compiler is a sufficiently recent version of GCC.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
__GNUC__
_ACEOF
if (eval "$ac_cpp_for_build conftest.$ac_ext") 2>&5 |
$EGREP "^[0-4]$" >/dev/null 2>&1; then :
else
GCC_WARN_CFLAGS_FOR_BUILD="$GCC_WARN_CFLAGS_FOR_BUILD -Wstack-usage=262144"
fi
rm -f conftest*
# Check whether --enable-werror was given.
if test "${enable_werror+set}" = set; then :
enableval=$enable_werror; case "${enableval}" in
@ -12302,6 +12337,7 @@ case "${host}" in
*-*-mingw32*)
if test "${GCC}" = yes -a -z "${ERROR_ON_WARNING}" ; then
GCC_WARN_CFLAGS="$GCC_WARN_CFLAGS -Wno-format"
GCC_WARN_CFLAGS_FOR_BUILD="$GCC_WARN_CFLAGS_FOR_BUILD -Wno-format"
fi
;;
*) ;;
@ -12315,25 +12351,32 @@ fi
NO_WERROR=
if test "${ERROR_ON_WARNING}" = yes ; then
GCC_WARN_CFLAGS="$GCC_WARN_CFLAGS -Werror"
GCC_WARN_CFLAGS_FOR_BUILD="$GCC_WARN_CFLAGS_FOR_BUILD -Werror"
NO_WERROR="-Wno-error"
fi
if test "${GCC}" = yes ; then
WARN_CFLAGS="${GCC_WARN_CFLAGS}"
WARN_CFLAGS_FOR_BUILD="${GCC_WARN_CFLAGS_FOR_BUILD}"
fi
# Check whether --enable-build-warnings was given.
if test "${enable_build_warnings+set}" = set; then :
enableval=$enable_build_warnings; case "${enableval}" in
yes) WARN_CFLAGS="${GCC_WARN_CFLAGS}";;
yes) WARN_CFLAGS="${GCC_WARN_CFLAGS}"
WARN_CFLAGS_FOR_BUILD="${GCC_WARN_CFLAGS_FOR_BUILD}";;
no) if test "${GCC}" = yes ; then
WARN_CFLAGS="-w"
WARN_CFLAGS_FOR_BUILD="-w"
fi;;
,*) t=`echo "${enableval}" | sed -e "s/,/ /g"`
WARN_CFLAGS="${GCC_WARN_CFLAGS} ${t}";;
WARN_CFLAGS="${GCC_WARN_CFLAGS} ${t}"
WARN_CFLAGS_FOR_BUILD="${GCC_WARN_CFLAGS_FOR_BUILD} ${t}";;
*,) t=`echo "${enableval}" | sed -e "s/,/ /g"`
WARN_CFLAGS="${t} ${GCC_WARN_CFLAGS}";;
*) WARN_CFLAGS=`echo "${enableval}" | sed -e "s/,/ /g"`;;
WARN_CFLAGS="${t} ${GCC_WARN_CFLAGS}"
WARN_CFLAGS_FOR_BUILD="${t} ${GCC_WARN_CFLAGS_FOR_BUILD}";;
*) WARN_CFLAGS=`echo "${enableval}" | sed -e "s/,/ /g"`
WARN_CFLAGS_FOR_BUILD=`echo "${enableval}" | sed -e "s/,/ /g"`;;
esac
fi
@ -12347,6 +12390,7 @@ fi
ac_config_headers="$ac_config_headers config.h:config.in"
@ -14191,7 +14235,7 @@ selarchs="$f"
# Target backend .o files.
tb=
elf="elf.lo elflink.lo elf-attrs.lo elf-strtab.lo
elf="elf.lo elflink.lo elf-attrs.lo elf-strtab.lo elf-properties.lo
elf-eh-frame.lo dwarf1.lo dwarf2.lo"
coffgen="coffgen.lo dwarf2.lo"
coff="cofflink.lo $coffgen"
@ -14432,6 +14476,9 @@ do
powerpc_pei_vec) tb="$tb pei-ppc.lo peigen.lo $coff" ;;
powerpc_pei_le_vec) tb="$tb pei-ppc.lo peigen.lo $coff" ;;
powerpc_xcoff_vec) tb="$tb coff-rs6000.lo $xcoff" ;;
pru_elf32_vec) tb="$tb elf32-pru.lo elf32.lo $elf" ;;
riscv_elf32_vec) tb="$tb elf32-riscv.lo elfxx-riscv.lo elf32.lo $elf" ;;
riscv_elf64_vec) tb="$tb elf64-riscv.lo elf64.lo elfxx-riscv.lo elf32.lo $elf"; target_size=64 ;;
rl78_elf32_vec) tb="$tb elf32-rl78.lo elf32.lo $elf" ;;
rs6000_xcoff64_vec) tb="$tb coff64-rs6000.lo aix5ppc-core.lo $xcoff"; target_size=64 ;;
rs6000_xcoff64_aix_vec) tb="$tb coff64-rs6000.lo aix5ppc-core.lo $xcoff"; target_size=64 ;;
@ -14523,6 +14570,8 @@ do
ft32_elf32_vec) tb="$tb elf32-ft32.lo elf32.lo $elf" ;;
visium_elf32_vec) tb="$tb elf32-visium.lo elf32.lo $elf" ;;
w65_coff_vec) tb="$tb coff-w65.lo reloc16.lo $coffgen" ;;
wasm_vec) tb="$tb wasm-module.lo" ;;
wasm32_elf32_vec) tb="$tb elf32-wasm32.lo elf32.lo $elf" ;;
we32k_coff_vec) tb="$tb coff-we32k.lo $coffgen" ;;
x86_64_coff_vec) tb="$tb coff-x86_64.lo $coff"; target_size=64 ;;
x86_64_elf32_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo elf32.lo $elf"; target_size=64 ;;
@ -14610,15 +14659,6 @@ else # all_targets is true
selarchs=`echo $selarchs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'`
fi # all_targets is true
if test "x$want_64_bit_archive" = xunset; then
# 64-bit MIPS and s390 ELF targets use 64-bit archives.
case "${bfd_backends}" in
*elf64-mips* | *elf64-s390*)
want_64_bit_archive=true
;;
esac
fi
# 64-bit archives need a 64-bit bfd_vma.
if test "x$want_64_bit_archive" = xtrue; then
want64=true
@ -15760,7 +15800,7 @@ fi
# Determine the host dependant file_ptr a.k.a. off_t type. In order
# Determine the host dependent file_ptr a.k.a. off_t type. In order
# prefer: off64_t - if ftello64 and fseeko64, off_t - if ftello and
# fseeko, long. This assumes that sizeof off_t is .ge. sizeof long.
# Hopefully a reasonable assumption since fseeko et.al. should be
@ -16577,7 +16617,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by bfd $as_me 2.27.51, which was
This file was extended by bfd $as_me 2.28.51, which was
generated by GNU Autoconf 2.64. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@ -16641,7 +16681,7 @@ Report bugs to the package provider."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
bfd config.status 2.27.51
bfd config.status 2.28.51
configured by $0, generated by GNU Autoconf 2.64,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"

View File

@ -1,6 +1,6 @@
dnl Process this file with autoconf to produce a configure script.
dnl
dnl Copyright (C) 2012-2016 Free Software Foundation, Inc.
dnl Copyright (C) 2012-2017 Free Software Foundation, Inc.
dnl
dnl This file is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
@ -365,7 +365,7 @@ selarchs="$f"
# Target backend .o files.
tb=
elf="elf.lo elflink.lo elf-attrs.lo elf-strtab.lo
elf="elf.lo elflink.lo elf-attrs.lo elf-strtab.lo elf-properties.lo
elf-eh-frame.lo dwarf1.lo dwarf2.lo"
coffgen="coffgen.lo dwarf2.lo"
coff="cofflink.lo $coffgen"
@ -606,6 +606,9 @@ do
powerpc_pei_vec) tb="$tb pei-ppc.lo peigen.lo $coff" ;;
powerpc_pei_le_vec) tb="$tb pei-ppc.lo peigen.lo $coff" ;;
powerpc_xcoff_vec) tb="$tb coff-rs6000.lo $xcoff" ;;
pru_elf32_vec) tb="$tb elf32-pru.lo elf32.lo $elf" ;;
riscv_elf32_vec) tb="$tb elf32-riscv.lo elfxx-riscv.lo elf32.lo $elf" ;;
riscv_elf64_vec) tb="$tb elf64-riscv.lo elf64.lo elfxx-riscv.lo elf32.lo $elf"; target_size=64 ;;
rl78_elf32_vec) tb="$tb elf32-rl78.lo elf32.lo $elf" ;;
rs6000_xcoff64_vec) tb="$tb coff64-rs6000.lo aix5ppc-core.lo $xcoff"; target_size=64 ;;
rs6000_xcoff64_aix_vec) tb="$tb coff64-rs6000.lo aix5ppc-core.lo $xcoff"; target_size=64 ;;
@ -697,6 +700,8 @@ do
ft32_elf32_vec) tb="$tb elf32-ft32.lo elf32.lo $elf" ;;
visium_elf32_vec) tb="$tb elf32-visium.lo elf32.lo $elf" ;;
w65_coff_vec) tb="$tb coff-w65.lo reloc16.lo $coffgen" ;;
wasm_vec) tb="$tb wasm-module.lo" ;;
wasm32_elf32_vec) tb="$tb elf32-wasm32.lo elf32.lo $elf" ;;
we32k_coff_vec) tb="$tb coff-we32k.lo $coffgen" ;;
x86_64_coff_vec) tb="$tb coff-x86_64.lo $coff"; target_size=64 ;;
x86_64_elf32_vec) tb="$tb elf64-x86-64.lo elf-ifunc.lo elf-nacl.lo elf64.lo elf32.lo $elf"; target_size=64 ;;
@ -784,20 +789,11 @@ else # all_targets is true
selarchs=`echo $selarchs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'`
fi # all_targets is true
if test "x$want_64_bit_archive" = xunset; then
# 64-bit MIPS and s390 ELF targets use 64-bit archives.
case "${bfd_backends}" in
*elf64-mips* | *elf64-s390*)
want_64_bit_archive=true
;;
esac
fi
# 64-bit archives need a 64-bit bfd_vma.
if test "x$want_64_bit_archive" = xtrue; then
want64=true
AC_DEFINE(USE_64_BIT_ARCHIVE, 1,
[Define if we should use 64-bit archives.])
[Define if 64-bit archives should always be used.])
fi
case ${host64}-${target64}-${want64} in
@ -1154,7 +1150,7 @@ fi
AC_SUBST(supports_plugins)
AC_SUBST(lt_cv_dlopen_libs)
# Determine the host dependant file_ptr a.k.a. off_t type. In order
# Determine the host dependent file_ptr a.k.a. off_t type. In order
# prefer: off64_t - if ftello64 and fseeko64, off_t - if ftello and
# fseeko, long. This assumes that sizeof off_t is .ge. sizeof long.
# Hopefully a reasonable assumption since fseeko et.al. should be

View File

@ -7,7 +7,7 @@ $!
$! Written by Klaus K"ampf (kkaempf@rmi.de)
$! Rewritten by Tristan Gingold (gingold@adacore.com)
$!
$! Copyright (C) 2012-2016 Free Software Foundation, Inc.
$! Copyright (C) 2012-2017 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

View File

@ -1,5 +1,5 @@
#
# Copyright (C) 2012-2016 Free Software Foundation, Inc.
# Copyright (C) 2012-2017 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

View File

@ -1,5 +1,5 @@
/* Core file generic interface routines for BFD.
Copyright (C) 1990-2016 Free Software Foundation, Inc.
Copyright (C) 1990-2017 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD support for AArch64.
Copyright (C) 2009-2016 Free Software Foundation, Inc.
Copyright (C) 2009-2017 Free Software Foundation, Inc.
Contributed by ARM Ltd.
This file is part of BFD, the Binary File Descriptor library.
@ -100,16 +100,16 @@ scan (const struct bfd_arch_info *info, const char *string)
return FALSE;
}
#define N(NUMBER, PRINT, DEFAULT, NEXT) \
{ 64, 64, 8, bfd_arch_aarch64, NUMBER, \
#define N(NUMBER, PRINT, WORDSIZE, DEFAULT, NEXT) \
{ WORDSIZE, WORDSIZE, 8, bfd_arch_aarch64, NUMBER, \
"aarch64", PRINT, 4, DEFAULT, compatible, scan, \
bfd_arch_default_fill, NEXT }
static const bfd_arch_info_type bfd_aarch64_arch_ilp32 =
N (bfd_mach_aarch64_ilp32, "aarch64:ilp32", FALSE, NULL);
N (bfd_mach_aarch64_ilp32, "aarch64:ilp32", 32, FALSE, NULL);
const bfd_arch_info_type bfd_aarch64_arch =
N (0, "aarch64", TRUE, &bfd_aarch64_arch_ilp32);
N (0, "aarch64", 64, TRUE, &bfd_aarch64_arch_ilp32);
bfd_boolean
bfd_is_aarch64_special_symbol_name (const char *name, int type)

View File

@ -1,5 +1,5 @@
/* BFD support for the Alpha architecture.
Copyright (C) 1992-2016 Free Software Foundation, Inc.
Copyright (C) 1992-2017 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.

View File

@ -1,5 +1,5 @@
/* BFD support for the ARC processor
Copyright (C) 1994-2016 Free Software Foundation, Inc.
Copyright (C) 1994-2017 Free Software Foundation, Inc.
Contributed by Doug Evans (dje@cygnus.com).
This file is part of BFD, the Binary File Descriptor library.
@ -54,20 +54,3 @@ static const bfd_arch_info_type arch_info_struct[] =
const bfd_arch_info_type bfd_arc_arch =
ARC (bfd_mach_arc_arc600, "ARC600", TRUE, &arch_info_struct[0]);
/* Utility routines. */
/* Given cpu type NAME, return its bfd_mach_arc_xxx value.
Returns -1 if not found. */
int arc_get_mach (char *name);
int
arc_get_mach (char *name)
{
const bfd_arch_info_type *p;
for (p = &bfd_arc_arch; p != NULL; p = p->next)
if (strcmp (name, p->printable_name) == 0)
return p->mach;
return -1;
}

View File

@ -1,5 +1,5 @@
/* BFD support for the ARM processor
Copyright (C) 1994-2016 Free Software Foundation, Inc.
Copyright (C) 1994-2017 Free Software Foundation, Inc.
Contributed by Richard Earnshaw (rwe@pegasus.esprit.ec.org)
This file is part of BFD, the Binary File Descriptor library.
@ -188,6 +188,7 @@ bfd_arm_merge_machines (bfd *ibfd, bfd *obfd)
|| out == bfd_mach_arm_iWMMXt
|| out == bfd_mach_arm_iWMMXt2))
{
/* xgettext: c-format */
_bfd_error_handler (_("\
error: %B is compiled for the EP9312, whereas %B is compiled for XScale"),
ibfd, obfd);
@ -199,6 +200,7 @@ error: %B is compiled for the EP9312, whereas %B is compiled for XScale"),
|| in == bfd_mach_arm_iWMMXt
|| in == bfd_mach_arm_iWMMXt2))
{
/* xgettext: c-format */
_bfd_error_handler (_("\
error: %B is compiled for the EP9312, whereas %B is compiled for XScale"),
obfd, ibfd);
@ -331,9 +333,10 @@ bfd_arm_update_notes (bfd *abfd, const char *note_section)
if (! bfd_set_section_contents (abfd, arm_arch_section, buffer,
(file_ptr) 0, buffer_size))
{
(*_bfd_error_handler)
(_("warning: unable to update contents of %s section in %s"),
note_section, bfd_get_filename (abfd));
_bfd_error_handler
/* xgettext: c-format */
(_("warning: unable to update contents of %s section in %B"),
note_section, abfd);
goto FAIL;
}
}

View File

@ -1,5 +1,5 @@
/* BFD library support routines for the AVR architecture.
Copyright (C) 1999-2016 Free Software Foundation, Inc.
Copyright (C) 1999-2017 Free Software Foundation, Inc.
Contributed by Denis Chertykov <denisc@overta.ru>
This file is part of BFD, the Binary File Descriptor library.

Some files were not shown because too many files have changed in this diff Show More