Pull-in binutils 2.24 @ 68761544.
Also include 2 local patches -
a) revert one upstream CL - which causes unbootable kernel -
d2667025dd30611514810c28bee9709e4623012a.
b) allow incbin by default.
Performance test performed for three boards - parrot, daisy and x86-alex.
Bootperf testing
PerfV2
No noticeable change introduced in this CL.
Firmware test of samus(TOT now) passes.
Correctness test cleared for daisy/parrot/x86-alex.
cbuildbot chromiumos-sdk
cbuildbot --hwtest daisy-release daisy_sping-release lumpy-release x86-alex-release, bootperf/perfv2
duck-release beaglebone-release
TEST=list above
BUG=None
CQ-DEPEND=CL:200779
CQ-DEPEND=CL:210353
Change-Id: Ied5d9f35142d05ead2ee2ba8be80595426a4d477
Reviewed-on: https://chromium-review.googlesource.com/203470
Reviewed-by: Mike Frysinger <[email protected]>
Tested-by: Mike Frysinger <[email protected]>
Commit-Queue: Mike Frysinger <[email protected]>
diff --git a/ChangeLog b/ChangeLog
index e572d95..e41638b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,588 @@
+2013-11-23 Alan Modra <[email protected]>
+
+ * config.sub, config.guess: Import from upstream.
+
+2013-09-20 Alan Modra <[email protected]>
+
+ * libtool.m4 (_LT_ENABLE_LOCK <ld -m flags>): Remove non-canonical
+ ppc host match. Support little-endian powerpc linux hosts.
+
+2013-08-16 Joel Brobecker <[email protected]>
+
+ * src-release (VER): When using $(TOOL)/common/create-version.sh,
+ strip the "-cvs" suffix from the version number if present.
+
+2013-08-12 Jan-Benedict Glaw <[email protected]>
+
+ * configure.ac: Sync with GCC repo.
+ * Makefile.def: Ditto.
+ * configure: Regenerate.
+ * Makefile.in: Ditto.
+
+2013-07-22 Joel Brobecker <[email protected]>
+
+ * src-release (VER): Use $(TOOL)/common/create-version.sh
+ if it exists.
+
+2013-06-22 Richard Sandiford <[email protected]>
+
+ * configure.ac (mips*-*-bsd*, mips*-*-ultrix*, mips*-*-osf*)
+ (mips*-*-ecoff*, mips*-*-pe*, mips*-*-irix* [v4 and earlier])
+ (mips*-*-lnews*, mips*-*-riscos*): Add gas and ld to noconfigdirs.
+ * configure: Regenerate.
+
+2013-06-01 George Thomas <[email protected]>
+
+ * include/opcode/avr.h: Rename AVR_ISA_XCH to AVR_ISA_RMW. Remove
+ from AVR_ISA_XMEGA and add new AVR_ISA_XMEGAU
+
+2013-05-06 Sandra Loosemore <[email protected]>
+
+ * COPYING.NEWLIB: Add Altera Corporation copyright.
+
+2013-04-29 Jan-Benedict Glaw <[email protected]>
+
+ * config.guess: Update from config repo.
+ * config.sub: Ditto.
+
+2013-04-22 Jan-Benedict Glaw <[email protected]>
+
+ * Makefile.def: Sync with GCC.
+ * Makefile.in: Regenerate.
+
+2013-04-22 Jan-Benedict Glaw <[email protected]>
+
+ * configure.ac: Sync with GCC.
+ * configure: Regenerate.
+
+2013-03-22 Mike Frysinger <[email protected]>
+
+ * src-release (VER): Change bfd/configure.in sed to use the new
+ `bfd/configure --version` output.
+
+2013-02-15 Yufeng Zhang <[email protected]>
+
+ * configure.ac: Sync with GCC repo.
+ * configure: Ditto.
+
+2013-02-05 Ian Lance Taylor <[email protected]>
+
+ PR go/55969
+ * configure.ac: Disable libgo on some systems where it does not
+ work.
+ * configure: Rebuild.
+
+2013-02-05 Alan Modra <[email protected]>
+
+ * configure: Regenerate after syncing config/.
+
+2013-01-15 Jan-Benedict Glaw <[email protected]>
+
+ * configure.ac: Sync with GCC repo.
+ * configure: Ditto.
+ * Makefile.def: Ditto.
+ * Makefile.in: Ditto.
+
+2013-01-11 Joel Brobecker <[email protected]>
+
+ Sync with GCC, merge:
+
+ 2013-01-09 Jason Merrill <[email protected]>
+
+ * .gitignore: Import from gdb repository.
+
+2013-01-11 Jan-Benedict Glaw <[email protected]>
+
+ * config.sub: Update from config repo.
+
+2013-01-11 Eric Botcazou <[email protected]>
+
+ * Makefile.tpl (BOOT_ADAFLAGS): Remove -gnata.
+ * Makefile.in: Regenerate.
+
+2013-01-09 H.J. Lu <[email protected]>
+
+ * Makefile.def (configure-gcc): Depend on all-gmp.
+ (all-gcc): Remove dependency on all-gmp.
+ * Makefile.in: Regenerated.
+
+2013-01-08 Jan-Benedict Glaw <[email protected]>
+
+ * config.guess: Update from config repo.
+ * config.sub: Ditto.
+
+2013-01-07 Jeff Johnston <[email protected]>
+
+ * COPYING.LIBGLOSS: Remove license for mips/lsi33k-stub.h which no longer
+ exists and replace the new bfin license in its location.
+
+2013-01-07 H.J. Lu <[email protected]>
+
+ PR gas/14899
+ * Makefile.def (dependencies): Make all-binutils, all-gprof,
+ all-ld and all-gold depend on all-gas.
+ * Makefile.in: Regenerated.
+
+2012-12-29 Ben Elliston <[email protected]>
+
+ * config.guess: Update to 2012-12-29 version.
+ * config.sub: Likewise.
+
+2012-12-20 Jan-Benedict Glaw <[email protected]>
+
+ * Makefile.def (install-target-libgo): Depend on
+ install-target-libatomic. Merged from GCC repo.
+ * Makefile.in: Regenerate.
+
+2012-12-17 Jeff Johnston <[email protected]>
+
+ * COPYING.LIBGLOSS: Add license for bfin libgloss.
+
+2012-12-16 Thomas Schwinge <[email protected]>
+
+ * configure.ac (ENABLE_GOLD): Consider *-*-gnu* targets ELF.
+ * configure: Regenerate.
+
+2012-12-11 H.J. Lu <[email protected]>
+
+ * Makefile.def (target_modules): Add bootstrap=true and
+ raw_cxx=true to libsanitizer.
+ * configure.ac (bootstrap_target_libs): Add libsanitizer.
+ * Makefile.in: Regenerated.
+ * configure: Likewise.
+
+2012-12-08 Jan-Benedict Glaw <[email protected]>
+
+ * config.sub: Merge from config repo.
+
+2012-11-30 Jan-Benedict Glaw <[email protected]>
+
+ * configure.ac: Merge from GCC.
+ * Makefile.tpl: Ditto.
+ * Makefile.in: Ditto.
+ * configure: Ditto.
+
+2012-11-28 Jan-Benedict Glaw <[email protected]>
+
+ * configure.ac (noconfigdirs): Merge from GCC.
+ * configure: Regenerate.
+
+2012-11-19 Jan-Benedict Glaw <[email protected]>
+
+ * config.sub (arm): Merge from upstream: Handle armv[6-8] targets.
+
+2012-11-14 Roland McGrath <[email protected]>
+
+ * configure.ac (ENABLE_GOLD): Consider *-*-nacl* targets ELF.
+ * configure: Regenerate.
+
+2012-11-13 Richard Henderson <[email protected]>
+
+ * configure.ac: Move libsanitizer logic to subdirectory.
+ * configure: Regenerate.
+
+2012-11-13 Dodji Seketeli <[email protected]>
+
+ * configure.ac: Enable libsanitizer just on x86 linux for now.
+ * configure: Re-generate.
+
+2012-11-13 David Edelsohn <[email protected]>
+
+ * configure.ac: Merge libquadmath sections.
+ * configure: Regenerate.
+
+2012-11-12 Wei Mi <[email protected]>
+
+ * configure.ac: Add libsanitizer to target_libraries.
+ * Makefile.def: Ditto.
+ * configure: Regenerate.
+ * Makefile.in: Regenerate.
+
+2012-11-03 H.J. Lu <[email protected]>
+
+ * configure: Regenerated.
+
+2012-11-03 Robert Mason <[email protected]>
+
+ * configure.ac: add --disable-libstdcxx configure option
+ and handle defaulted state only for VxWorks, ARM-wince-pe and AVR.
+
+2012-10-24 Corinna Vinschen <[email protected]>
+
+ * configure.ac (FLAGS_FOR_TARGET,target=cygwin): Fix for building
+ against Mingw64 w32api.
+ * configure: Regenerate.
+
+2012-10-23 Eric Botcazou <[email protected]>
+
+ PR bootstrap/54820
+ * configure.ac (have_static_libs): Force 'no' for GCC version < 4.5.
+ * configure: Regenerate.
+
+2012-10-22 Eric Botcazou <[email protected]>
+
+ PR bootstrap/54820
+ * Makefile.tpl (STAGE1_FLAGS_TO_PASS): New variable.
+ (all-[+prefix+][+module+]): Pass stage1_args to sub-makes.
+ (all-stage[+id+]-[+prefix+][+module+]): Likewise, if prev is false.
+ (clean-stage[+id+]-[+prefix+][+module+]): Likewise, if prev is false.
+ (host_modules): Set stage1_args to STAGE1_FLAGS_TO_PASS.
+ * Makefile.in: Regenerate.
+ * configure.ac (have_static_libs): New variable and associated check.
+ (stage1-ldflags): Move to after stage1_libs and set to -static-libstdc++
+ -static-libgcc if stage1_libs is empty and have_static_libs is yes.
+ * configure: Regenerate.
+
+2012-10-10 David Holsgrove <[email protected]>
+
+ * config.guess, config.sub: Include updated version from
+ config-patches. Adds microblaze little endian support.
+
+2012-09-28 Ian Lance Taylor <[email protected]>
+
+ * Makefile.def: Make all-target-libgo depend on
+ all-target-libbacktrace.
+ * Makefile.in: Rebuild.
+
+2012-09-26 Ian Lance Taylor <[email protected]>
+
+ * Makefile.def: Make all-gcc depend on all-libbacktrace.
+ * Makefile.in: Rebuild.
+
+2012-09-06 Diego Novillo <[email protected]>
+
+ * configure.ac: Bump minimum GMP version to 4.2.3.
+ * configure: Re-generate.
+
+2012-09-05 Georg-Johann Lay <[email protected]>
+
+ PR target/54461
+ * configure.ac (noconfigdirs,target=avr-*-*): Add target-newlib,
+ target-libgloss if not configured --with-avrlibc=no.
+ * configure: Regenerate.
+
+2012-09-04 Jason Merrill <[email protected]>
+
+ * configure.ac: Fix --enable-languages=all.
+
+2012-09-03 Richard Guenther <[email protected]>
+
+ PR bootstrap/54138
+ * configure.ac: Re-organize ISL / CLOOG checks to allow
+ disabling with either --without-isl or --without-cloog.
+ * configure: Regenerated.
+
+2012-09-03 Georg-Johann Lay <[email protected]>
+
+ * configure.ac (noconfigdirs,target=avr): Add target-libquadmath.
+ * configure: Regenerate.
+
+2012-09-21 Steve Ellcey <[email protected]>
+
+ * configure.ac: Add mips*-mti-elf* target.
+ * configure: Regenerate.
+
+2012-09-19 Ian Lance Taylor <[email protected]>
+
+ * configure.ac (host_libs): Add libbacktrace.
+ (target_libraries): Add libbacktrace.
+ * Makefile.def (host_modules): Add libbacktrace.
+ (target_modules): Likewise.
+ * configure, Makefile.in: Rebuild.
+
+2012-09-15 Jiong Wang <[email protected]>
+
+ * configure.ac (ENABLE_GOLD): support tilegx*
+ * configure: rebuild
+
+2012-09-14 David Edelsohn <[email protected]>
+
+ PR target/38607
+ Merge upstream change.
+ * libtool.m4 (_LT_COMPILER_PIC): Add -fPIC to GCC and GXX for AIX.
+
+ * configure.ac: Add target-libquadmath to noconfigdirs for AIX.
+ Add libgomp*.o to compare_exclusions for AIX.
+ * configure: Regenerate.
+
+2012-08-26 H.J. Lu <[email protected]>
+
+ PR binutils/4970
+ * Makefile.def (host_modules): Rmove lib_path=.libs from bfd
+ and opcodes.
+ * Makefile.in: Regenerated.
+
+2012-08-14 Diego Novillo <[email protected]>
+
+ Merge from cxx-conversion branch.
+
+ * Makefile.tpl (STAGE[+id+]_CXXFLAGS): Remove
+ POSTSTAGE1_CONFIGURE_FLAGS.
+ * Makefile.in: Regenerate.
+ * configure.ac (ENABLE_BUILD_WITH_CXX): Remove. Update all users.
+ Force C++ when bootstrapping.
+ * configure: Regenerate.
+
+2012-07-06 Richard Guenther <[email protected]>
+
+ * Makefile.def (cloog): Pass $(HOST_GMPINC) and $(HOST_ISLINC)
+ as CPPFLAGS, pass path to built gmp as LDFLAGS, always use
+ --with-gmp=system.
+ * Makefile.in: Regenerated.
+ * configure: Likewise.
+
+2012-07-06 Richard Guenther <[email protected]>
+
+ * configure.ac (extra_isl_gmp_configure_flags): Initialize and subst.
+ * Makefile.def (isl): Use extra_isl_gmp_configure_flags and
+ supply V=1 as extra_make_flags.
+ * configure: Regenerated.
+ * Makefile.in: Likewise.
+
+2012-07-03 Richard Guenther <[email protected]>
+
+ * Makfile.def (isl): Remove not necessary extra_exports and
+ extra_make_flags.
+ (cloog): Use $$CPPFLAGS instead of ${CPPFLAGS}.
+ * Makefile.in: Regenerated.
+
+2012-07-03 Richard Guenther <[email protected]>
+
+ * Makefile.def (cloog): Add V=1 to extra_make_flags.
+ * configure.ac: If either the ISL or the CLooG check failed
+ do not try to build in-tree versions.
+ * Makefile.in: Regenerated.
+ * configure: Regenerated.
+
+2012-07-02 Richard Guenther <[email protected]>
+ Michael Matz <[email protected]>
+ Tobias Grosser <[email protected]>
+ Sebastian Pop <[email protected]>
+
+ * Makefile.def: Add ISL host module, remove PPL host module.
+ Adjust ClooG host module to use the proper ISL.
+ * Makefile.tpl: Pass ISL include flags instead of PPL ones.
+ * configure.ac: Include config/isl.m4. Add ISL host library,
+ remove PPL. Remove PPL configury, add ISL configury, adjust
+ ClooG configury.
+ * Makefile.in: Regenerated.
+ * configure: Likewise.
+
+2012-07-02 Richard Guenther <[email protected]>
+
+ Merge from graphite branch
+ 2011-07-21 Tobias Grosser <[email protected]>
+
+ * configure: Regenerated.
+ * config/cloog.m4: Remove support for CLooG-ppl and CLooG-parma,
+ both cloog.org and legacy versions. The only supported version will
+ be CLooG with the isl backend.
+
+ 2011-07-21 Tobias Grosser <[email protected]>
+
+ * configure: Regenerated.
+ * configure.ac: Require cloog isl 0.17.0
+
+ 2011-07-21 Tobias Grosser <[email protected]>
+
+ * configure: Regenerated.
+ * config/cloog.m4: Do not define CLOOG_ORG
+
+2012-06-29 Steven Bosscher <[email protected]>
+
+ * configure.ac: Skip C if explicitly selected.
+ * configure: Regenerate.
+
+2012-06-28 Christophe Lyon <[email protected]>
+
+ * configure.ac (CFLAGS_FOR_TARGET, CXXFLAGS_FOR_TARGET): Make sure
+ they contain -O2.
+ * configure: Regenerate.
+
+2012-06-20 Jason Merrill <[email protected]>
+
+ * Makefile.tpl (check-target-libgomp-c++): New.
+ (check-target-libitm-c++): New.
+ * Makefile.def (c++): Add them.
+ * Makefile.in: Regenerate.
+
+2012-05-16 Olivier Hainque <[email protected]>
+
+ * Makefile.tpl (gcc-no-fixedincludes): Rename into ...
+ (gcc-install-no-fixedincludes): Now forwarder to local target in gcc/
+ (install-no-fixedincludes): Adjust accordingly.
+ * Makefile.in: Regenerate.
+
+2012-05-09 Nick Clifton <[email protected]>
+ Paul Smith <[email protected]>
+
+ PR bootstrap/50461
+ * configure.ac (mpfr-dir): When using in-tree MPFR sources
+ allow for the fact that from release v3.1.0 of MPFR the source
+ files were moved into a src sub-directory.
+ * configure: Regenerate.
+
+2012-05-07 Janne Blomqvist <[email protected]>
+
+ * configure.ac: Bump minimum MPFR version to 2.4.0.
+ * configure: Regenerated.
+
+2012-05-01 Richard Henderson <[email protected]>
+
+ * Makefile.def (libatomic): New target_module.
+ * configure.ac (target_libraries): Add libatomic.
+ (noconfigdirs): Check if libatomic is supported.
+ * Makefile.in, configure: Rebuild.
+
+2012-05-15 H.J. Lu <[email protected]>
+
+ Merge upstream change
+ * libtool.m4 (_LT_ENABLE_LOCK): Support x32.
+
+2011-11-21 Andreas Tobler <[email protected]>
+
+ * libtool.m4: Additional FreeBSD 10 fixes.
+
+2012-06-28 Christophe Lyon <[email protected]>
+
+ * configure.ac (CFLAGS_FOR_TARGET, CXXFLAGS_FOR_TARGET): Make sure
+ they contain -O2.
+ * configure: Regenerate.
+
+2012-05-14 Catherine Moore <[email protected]>
+
+ * NEWS: Mention PowerPC VLE port.
+
+2012-05-11 Mike Frysinger <[email protected]>
+
+ * MAINTAINERS (config/): Move to intl/ section.
+ (compile; depcomp; install-sh; missing; ylwrap): Likewise.
+
+2012-05-09 Nick Clifton <[email protected]>
+ Paul Smith <[email protected]>
+
+ PR bootstrap/50461
+ * configure.ac (mpfr-dir): When using in-tree MPFR sources
+ allow for the fact that from release v3.1.0 of MPFR the source
+ files were moved into a src sub-directory.
+ * configure: Regenerate.
+
+2012-05-02 Roland McGrath <[email protected]>
+
+ * configure.ac (ENABLE_GOLD): Consider *-*-nacl* targets ELF.
+ * configure: Regenerate.
+
+2012-04-25 Joel Brobecker <[email protected]>
+
+ * config.sub: Update to 2012-04-18 version from official repo.
+
+2012-03-19 Tristan Gingold <[email protected]>
+
+ * configure.ac (ia64*-*-*vms*): Add support for ld.
+ * configure: Regenerate.
+
+2012-03-14 Rainer Orth <[email protected]>
+
+ * configure.ac (enable_libgomp): Remove *-*-irix6*.
+ (unsupported_languages): Remove mips-sgi-irix6.*.
+ (noconfigdirs): Don't add ${libgcj} for mips*-*-irix6*.
+ (with_stabs): Remove.
+ * configure: Regenerate.
+
+2012-03-12 Rainer Orth <[email protected]>
+
+ * configure.ac (enable_libgomp): Remove *-*-osf*.
+ (with_stabs): Remove alpha*-*-osf*.
+ * configure: Regenerate.
+
+2012-03-09 Jeff Johnston <[email protected]>
+
+ * COPYING.NEWLIB: Modify DJ Delorie license to include
+ modification rights in clause as permitted by DJ Delorie.
+ * COPYING.LIBGLOSS: Ditto.
+
+2012-03-09 Jeff Johnston <[email protected]>
+
+ * COPYING.NEWLIB: Remove two unused licenses.
+
+2012-03-05 Tristan Gingold <[email protected]>
+
+ * configure.ac: Enable gdb and readline for ia64*-*-*vms*.
+ * configure: Regenerate.
+
+2012-02-21 Joern Rennecke <[email protected]>
+
+ * COPYING.NEWLIB: Add Adapteva notice.
+ * COPYING.LIBGLOSS: Add Adapteva notice.
+
+2011-12-18 Eric Botcazou <[email protected]>
+
+ * configure: Regenerate.
+
+2011-12-15 Jeff Johnston <[email protected]>
+
+ * COPYING.LIBGLOSS: Add GPL with exception license.
+
+2011-11-09 Roland McGrath <[email protected]>
+
+ * configure.ac: Add tool checks for READELF and READELF_FOR_TARGET.
+ * configure: Rebuild.
+ * Makefile.def (flags_to_pass): Add READELF_FOR_TARGET.
+ * Makefile.tpl (READELF, READELF_FOR_TARGET): New variables.
+ (HOST_EXPORTS): Add READELF, READELF_FOR_TARGET.
+ (BASE_FLAGS_TO_PASS): Add READELF_FOR_TARGET.
+ (BASE_TARGET_EXPORTS, EXTRA_HOST_FLAGS, EXTRA_TARGET_FLAGS):
+ Add READELF.
+ * Makefile.in: Rebuild.
+
+2011-11-08 Richard Henderson <[email protected]>
+
+ * configure.ac: Test for libitm directory present first.
+
+ * configure.ac: Adjust srcdir for running libitm/configure.tgt.
+
+ * configure.ac: Test libitm/configure.tgt to disable libitm.
+ * configure: Rebuild.
+
+2011-11-02 Rainer Orth <[email protected]>
+
+ * Makefile.tpl (EXTRA_GCC_FLAGS): Remove LIBGCC2_CFLAGS,
+ LIBGCC2_DEBUG_CFLAGS, LIBGCC2_INCLUDES.
+ * Makefile.in: Regenerate.
+
+2011-11-01 DJ Delorie <[email protected]>
+
+ * configure.ac (rl78-*-*) New case.
+ * configure: Regenerate.
+
+2011-11-01 DJ Delorie <[email protected]>
+
+ * config.sub: Update to version 2011-10-29 (added rl78)
+
+2011-10-27 Nick Clifton <[email protected]>
+
+ * config.sub: Import these changes from the config project:
+
+ 2011-10-08 Joern Rennecke <[email protected]>
+ Ben Elliston <[email protected]>
+
+ * config.sub (epiphany): New.
+
+ 2011-09-09 Linas Vepstas <[email protected]>
+ Ben Elliston <[email protected]>
+
+ * config.sub (hexagon, hexagon-*): New.
+
+ 2011-08-23 Roland McGrath <[email protected]>
+
+ * config.sub: Rename 32eb to be32, 32el to le32, 64el to le64, and
+ 64eb to be64.
+
+ 2011-08-16 Roland McGrath <[email protected]>
+
+ * config.sub (32eb, 32el, 64eb, 64el): New (pseudo-)CPUs.
+ (nacl): Grok as alias for 32el-unknown-nacl.
+
2011-08-19 Joel Brobecker <[email protected]>
* src-release (GDB_SUPPORT_DIRS): Add 'cpu'.
@@ -475,11 +1060,11 @@
* config.guess: Update to version 2011-02-02
* config.sub: Update to version 2011-02-24
-
+
2011-03-03 Sebastian Pop <[email protected]>
- * configure.ac: Adjust test of with_ppl.
- * configure: Regenerated.
+ * configure.ac: Adjust test of with_ppl.
+ * configure: Regenerated.
2011-03-02 Sebastian Pop <[email protected]>
@@ -1086,11 +1671,11 @@
* lt~obsolete.m4: Likewise.
2010-01-07 Kaveh R. Ghazi <[email protected]>
- Francois-Xavier Coudert <[email protected]>
+ Francois-Xavier Coudert <[email protected]>
PR bootstrap/42424
* configure.ac: Include libtool m4 files.
- (_LT_CHECK_OBJDIR): Call it.
+ (_LT_CHECK_OBJDIR): Call it.
(extra_mpc_mpfr_configure_flags, extra_mpc_gmp_configure_flags,
gmplibs, ppllibs, clooglibs): Use $lt_cv_objdir.
@@ -1503,8 +2088,8 @@
2009-06-03 Jerome Guitton <[email protected]>
Ralf Wildenhues <[email protected]>
- * Makefile.tpl (all): Avoid a trailing backslash.
- * Makefile.in: Regenerate.
+ * Makefile.tpl (all): Avoid a trailing backslash.
+ * Makefile.in: Regenerate.
2009-06-03 Ben Elliston <[email protected]>
@@ -3667,7 +4252,7 @@
non-ported target libraries in noconfigdirs.
<cris-*, crisv32-*> Ditto, except for non-aout, non-elf,
non-linux-gnu. Remove libgcj_ex_libffi.
- <lang_frag loop>: Set add_this_lang=no if the language is in
+ <lang_frag loop>: Set add_this_lang=no if the language is in
unsupported_languages.
* configure: Regenerate.
@@ -4988,8 +5573,8 @@
2003-12-21 Bernardo Innocenti <[email protected]>
- * configure.in (*-*-uclinux): Exclude newlib, libgloss and rda.
- * configure: Regenerated.
+ * configure.in (*-*-uclinux): Exclude newlib, libgloss and rda.
+ * configure: Regenerated.
2003-12-19 Nathanael Nerode <[email protected]>
@@ -13078,8 +13663,8 @@
Sun May 9 17:47:57 1993 Rob Savoye (rob at darkstar.cygnus.com)
- * Makefile.in: Use srcroot to find runtest rather than rootme.
- Pass RUNTESTFLAGS and EXPECT down in BASE_FLAGS_TO_PASS.
+ * Makefile.in: Use srcroot to find runtest rather than rootme.
+ Pass RUNTESTFLAGS and EXPECT down in BASE_FLAGS_TO_PASS.
Fri May 7 14:55:59 1993 Ian Lance Taylor ([email protected])
diff --git a/MAINTAINERS b/MAINTAINERS
index 046c5ea..dd8601b 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -49,7 +49,8 @@
include/
See binutils/, gdb/, sid/, gcc/, libiberty/ etc.
-intl/; config.rhost; libiberty/; libiberty's part of include/
+intl/; config.rhost; libiberty/; libiberty's part of include/;
+compile; depcomp; install-sh; missing; ylwrap; config/
gcc: http://gcc.gnu.org
Changes need to be done in tandem with the official GCC
sources or submitted to the master file maintainer and brought
@@ -104,13 +105,6 @@
Any global maintainer can approve changes to these
files and directories.
-compile; depcomp; install-sh; missing; ylwrap;
-config/
- Any global maintainer can approve changes to these
- files and directories, but they should be aware
- that they need to be kept in sync with their
- counterparts in the GCC repository.
-
modules file
If you understand the file format (or can cut-and-paste existing
entries), modify it. If it scares you, get someone who does
diff --git a/Makefile.def b/Makefile.def
index 2c119a0..3ba1a5b 100644
--- a/Makefile.def
+++ b/Makefile.def
@@ -4,8 +4,7 @@
// Makefile.in is generated from Makefile.tpl by 'autogen Makefile.def'.
// This file was originally written by Nathanael Nerode.
//
-// Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
-// Free Software Foundation
+// Copyright 2002-2013 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
@@ -61,13 +60,14 @@
host_modules= { module= mpc; lib_path=.libs; bootstrap=true;
extra_configure_flags='--disable-shared @extra_mpc_gmp_configure_flags@ @extra_mpc_mpfr_configure_flags@';
no_install= true; };
-host_modules= { module= ppl; lib_path=src/.libs; bootstrap=true;
- extra_configure_flags='--disable-shared --with-libgmp-prefix=$$r/$(HOST_SUBDIR)/gmp/ --with-libgmpxx-prefix=$$r/$(HOST_SUBDIR)/gmp/';
+host_modules= { module= isl; lib_path=.libs; bootstrap=true;
+ extra_configure_flags='--disable-shared @extra_isl_gmp_configure_flags@';
+ extra_make_flags='V=1';
no_install= true; };
host_modules= { module= cloog; lib_path=.libs; bootstrap=true;
- extra_configure_flags='--disable-shared --with-gmp-library=$$r/$(HOST_SUBDIR)/gmp/.libs --with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-bits=gmp --with-ppl';
- extra_exports='CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; ';
- extra_make_flags='CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"';
+ extra_configure_flags='--disable-shared --with-gmp=system --with-bits=gmp --with-isl=system';
+ extra_exports='CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; ';
+ extra_make_flags='CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1';
no_install= true; };
host_modules= { module= libelf; lib_path=.libs; bootstrap=true;
extra_configure_flags='--disable-shared';
@@ -79,6 +79,7 @@
missing=mostlyclean; };
host_modules= { module= itcl; };
host_modules= { module= ld; bootstrap=true; };
+host_modules= { module= libbacktrace; bootstrap=true; };
host_modules= { module= libcpp; bootstrap=true; };
host_modules= { module= libdecnumber; bootstrap=true; };
host_modules= { module= libgui; };
@@ -117,9 +118,18 @@
lib_path=src/.libs;
raw_cxx=true; };
target_modules = { module= libmudflap; lib_path=.libs; };
+target_modules = { module= libsanitizer;
+ bootstrap=true;
+ lib_path=.libs;
+ raw_cxx=true; };
+target_modules = { module= libvtv;
+ bootstrap=true;
+ lib_path=.libs;
+ raw_cxx=true; };
target_modules = { module= libssp; lib_path=.libs; };
target_modules = { module= newlib; };
target_modules = { module= libgcc; bootstrap=true; no_check=true; };
+target_modules = { module= libbacktrace; };
target_modules = { module= libquadmath; };
target_modules = { module= libgfortran; };
target_modules = { module= libobjc; };
@@ -131,7 +141,7 @@
missing=maintainer-clean; };
target_modules = { module= winsup; };
target_modules = { module= libgloss; no_check=true; };
-target_modules = { module= libffi; };
+target_modules = { module= libffi; no_install=true; };
target_modules = { module= libjava; raw_cxx=true;
extra_configure_flags="$(EXTRA_CONFIGARGS_LIBJAVA)"; };
target_modules = { module= zlib; };
@@ -139,6 +149,8 @@
target_modules = { module= rda; };
target_modules = { module= libada; };
target_modules = { module= libgomp; bootstrap= true; lib_path=.libs; };
+target_modules = { module= libitm; lib_path=.libs; };
+target_modules = { module= libatomic; lib_path=.libs; };
// These are (some of) the make targets to be done in each subdirectory.
// Not all; these are the ones which don't have special options.
@@ -259,6 +271,7 @@
flags_to_pass = { flag= NM_FOR_TARGET ; };
flags_to_pass = { flag= OBJDUMP_FOR_TARGET ; };
flags_to_pass = { flag= RANLIB_FOR_TARGET ; };
+flags_to_pass = { flag= READELF_FOR_TARGET ; };
flags_to_pass = { flag= STRIP_FOR_TARGET ; };
flags_to_pass = { flag= WINDRES_FOR_TARGET ; };
flags_to_pass = { flag= WINDMC_FOR_TARGET ; };
@@ -281,6 +294,7 @@
// Host modules specific to gcc.
dependencies = { module=configure-gcc; on=configure-intl; };
+dependencies = { module=configure-gcc; on=all-gmp; };
dependencies = { module=configure-gcc; on=all-lto-plugin; };
dependencies = { module=configure-gcc; on=all-binutils; };
dependencies = { module=configure-gcc; on=all-gas; };
@@ -288,11 +302,9 @@
dependencies = { module=configure-gcc; on=all-gold; };
dependencies = { module=configure-gcc; on=all-libelf; };
dependencies = { module=all-gcc; on=all-libiberty; hard=true; };
-dependencies = { module=all-gcc; on=all-gmp; };
dependencies = { module=all-gcc; on=all-intl; };
dependencies = { module=all-gcc; on=all-mpfr; };
dependencies = { module=all-gcc; on=all-mpc; };
-dependencies = { module=all-gcc; on=all-ppl; };
dependencies = { module=all-gcc; on=all-cloog; };
dependencies = { module=all-gcc; on=all-build-texinfo; };
dependencies = { module=all-gcc; on=all-build-bison; };
@@ -300,6 +312,7 @@
dependencies = { module=all-gcc; on=all-build-libiberty; };
dependencies = { module=all-gcc; on=all-build-fixincludes; };
dependencies = { module=all-gcc; on=all-zlib; };
+dependencies = { module=all-gcc; on=all-libbacktrace; hard=true; };
dependencies = { module=all-gcc; on=all-libcpp; hard=true; };
dependencies = { module=all-gcc; on=all-libdecnumber; hard=true; };
dependencies = { module=all-gcc; on=all-libiberty; };
@@ -312,6 +325,7 @@
dependencies = { module=install-gcc ; on=install-fixincludes; };
dependencies = { module=install-gcc ; on=install-lto-plugin; };
dependencies = { module=install-strip-gcc ; on=install-strip-fixincludes; };
+dependencies = { module=install-strip-gcc ; on=install-strip-lto-plugin; };
dependencies = { module=configure-libcpp; on=configure-libiberty; hard=true; };
dependencies = { module=configure-libcpp; on=configure-intl; };
@@ -328,9 +342,9 @@
dependencies = { module=configure-mpfr; on=all-gmp; };
dependencies = { module=configure-mpc; on=all-mpfr; };
-dependencies = { module=configure-ppl; on=all-gmp; };
-dependencies = { module=configure-ppl; on=all-mpfr; };
-dependencies = { module=configure-cloog; on=all-ppl; };
+dependencies = { module=configure-isl; on=all-gmp; };
+dependencies = { module=configure-cloog; on=all-isl; };
+dependencies = { module=configure-cloog; on=all-gmp; };
// Host modules specific to gdb.
dependencies = { module=configure-gdb; on=all-intl; };
@@ -362,6 +376,9 @@
dependencies = { module=configure-opcodes; on=configure-libiberty; hard=true; };
dependencies = { module=all-opcodes; on=all-libiberty; };
+// We must build gas before binutils, gprof, ld and gold to avoid race
+// condition in the prev-gcc/as script during bootstrap of combined tree
+// with GCC and binutils. See PR gas/14899 for details.
dependencies = { module=configure-binutils; on=configure-intl; };
dependencies = { module=all-binutils; on=all-libiberty; };
dependencies = { module=all-binutils; on=all-opcodes; };
@@ -369,6 +386,7 @@
dependencies = { module=all-binutils; on=all-build-flex; };
dependencies = { module=all-binutils; on=all-build-bison; };
dependencies = { module=all-binutils; on=all-intl; };
+dependencies = { module=all-binutils; on=all-gas; };
// We put install-opcodes before install-binutils because the installed
// binutils might be on PATH, and they might need the shared opcodes
@@ -390,6 +408,7 @@
dependencies = { module=all-gprof; on=all-bfd; };
dependencies = { module=all-gprof; on=all-opcodes; };
dependencies = { module=all-gprof; on=all-intl; };
+dependencies = { module=all-gprof; on=all-gas; };
dependencies = { module=configure-ld; on=configure-intl; };
dependencies = { module=all-ld; on=all-libiberty; };
dependencies = { module=all-ld; on=all-bfd; };
@@ -397,6 +416,7 @@
dependencies = { module=all-ld; on=all-build-bison; };
dependencies = { module=all-ld; on=all-build-flex; };
dependencies = { module=all-ld; on=all-intl; };
+dependencies = { module=all-ld; on=all-gas; };
dependencies = { module=install-ld; on=install-gold; };
dependencies = { module=install-strip-ld; on=install-strip-gold; };
dependencies = { module=configure-gold; on=configure-intl; };
@@ -404,6 +424,7 @@
dependencies = { module=all-gold; on=all-intl; };
dependencies = { module=all-gold; on=all-bfd; };
dependencies = { module=all-gold; on=all-build-bison; };
+dependencies = { module=all-gold; on=all-gas; };
dependencies = { module=check-gold; on=all-binutils; };
dependencies = { module=check-gold; on=all-gas; };
@@ -470,6 +491,7 @@
// 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=newlib; no_c=true; };
lang_env_dependencies = { module=libgloss; no_c=true; };
lang_env_dependencies = { module=libgcc; no_gcc=true; no_c=true; };
@@ -483,7 +505,9 @@
dependencies = { module=all-target-fastjar; on=all-target-zlib; };
dependencies = { module=configure-target-libgo; on=configure-target-libffi; };
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; };
@@ -494,11 +518,25 @@
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-libsanitizer; on=all-target-libstdc++-v3; };
+dependencies = { module=configure-target-libvtv; on=all-target-libstdc++-v3; };
// parallel_list.o and parallel_settings.o depend on omp.h, which is
// generated by the libgomp configure. Unfortunately, due to the use of
// recursive make, we can't be that specific.
dependencies = { module=all-target-libstdc++-v3; on=configure-target-libgomp; };
+dependencies = { module=install-target-libgo; on=install-target-libatomic; };
+dependencies = { module=install-target-libgfortran; on=install-target-libquadmath; };
+dependencies = { module=install-target-libgfortran; on=install-target-libgcc; };
+dependencies = { module=install-target-libsanitizer; on=install-target-libstdc++-v3; };
+dependencies = { module=install-target-libsanitizer; on=install-target-libgcc; };
+dependencies = { module=install-target-libvtv; on=install-target-libstdc++-v3; };
+dependencies = { module=install-target-libvtv; 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; };
+
// Target modules in the 'src' repository.
lang_env_dependencies = { module=libtermcap; };
lang_env_dependencies = { module=rda; };
@@ -511,9 +549,11 @@
dependencies = { module=configure-target-libgfortran; on=all-target-libquadmath; };
languages = { language=c; gcc-check-target=check-gcc; };
-languages = { language=c++; gcc-check-target="check-c++ check-c++0x";
+languages = { language=c++; gcc-check-target=check-c++;
lib-check-target=check-target-libstdc++-v3;
- lib-check-target=check-target-libmudflap-c++; };
+ lib-check-target=check-target-libmudflap-c++;
+ lib-check-target=check-target-libitm-c++;
+ lib-check-target=check-target-libgomp-c++; };
languages = { language=fortran; gcc-check-target=check-fortran;
lib-check-target=check-target-libquadmath;
lib-check-target=check-target-libgfortran; };
diff --git a/Makefile.in b/Makefile.in
index 7e4915c..a13771d 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -3,7 +3,7 @@
#
# 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
+# 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
# Free Software Foundation
#
# This file is free software; you can redistribute it and/or modify
@@ -206,6 +206,7 @@
WINDMC="$(WINDMC)"; export WINDMC; \
OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
+ READELF="$(READELF)"; export READELF; \
AR_FOR_TARGET="$(AR_FOR_TARGET)"; export AR_FOR_TARGET; \
AS_FOR_TARGET="$(AS_FOR_TARGET)"; export AS_FOR_TARGET; \
GCC_FOR_TARGET="$(GCC_FOR_TARGET)"; export GCC_FOR_TARGET; \
@@ -213,12 +214,12 @@
NM_FOR_TARGET="$(NM_FOR_TARGET)"; export NM_FOR_TARGET; \
OBJDUMP_FOR_TARGET="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP_FOR_TARGET; \
RANLIB_FOR_TARGET="$(RANLIB_FOR_TARGET)"; export RANLIB_FOR_TARGET; \
+ READELF_FOR_TARGET="$(READELF_FOR_TARGET)"; export READELF_FOR_TARGET; \
TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \
HOST_LIBS="$(STAGE1_LIBS)"; export HOST_LIBS; \
GMPLIBS="$(HOST_GMPLIBS)"; export GMPLIBS; \
GMPINC="$(HOST_GMPINC)"; export GMPINC; \
- PPLLIBS="$(HOST_PPLLIBS)"; export PPLLIBS; \
- PPLINC="$(HOST_PPLINC)"; export PPLINC; \
+ ISLINC="$(HOST_ISLINC)"; export ISLINC; \
CLOOGLIBS="$(HOST_CLOOGLIBS)"; export CLOOGLIBS; \
CLOOGINC="$(HOST_CLOOGINC)"; export CLOOGINC; \
LIBELFLIBS="$(HOST_LIBELFLIBS)" ; export LIBELFLIBS; \
@@ -234,7 +235,7 @@
@if target-libstdc++-v3-bootstrap
# Override the above if we're bootstrapping C++.
POSTSTAGE1_CXX_EXPORT = \
- CXX="$(STAGE_CC_WRAPPER) $$r/$(HOST_SUBDIR)/prev-gcc/g++$(exeext) \
+ CXX="$(STAGE_CC_WRAPPER) $$r/$(HOST_SUBDIR)/prev-gcc/xg++$(exeext) \
-B$$r/$(HOST_SUBDIR)/prev-gcc/ -B$(build_tooldir)/bin/ -nostdinc++ \
-B$$r/prev-$(TARGET_SUBDIR)/libstdc++-v3/src/.libs \
-B$$r/prev-$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs \
@@ -285,6 +286,7 @@
NM="$(COMPILER_NM_FOR_TARGET)"; export NM; \
OBJDUMP="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP; \
RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
+ READELF="$(READELF_FOR_TARGET)"; export READELF; \
STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
WINDMC="$(WINDMC_FOR_TARGET)"; export WINDMC; \
@@ -307,9 +309,8 @@
HOST_GMPLIBS = @gmplibs@
HOST_GMPINC = @gmpinc@
-# Where to find PPL
-HOST_PPLLIBS = @ppllibs@
-HOST_PPLINC = @pplinc@
+# Where to find ISL
+HOST_ISLINC = @islinc@
# Where to find CLOOG
HOST_CLOOGLIBS = @clooglibs@
@@ -363,7 +364,7 @@
# here so that they can be overridden by Makefile fragments.
BOOT_CFLAGS= -g -O2
BOOT_LDFLAGS=
-BOOT_ADAFLAGS=-gnatpg -gnata
+BOOT_ADAFLAGS= -gnatpg
AWK = @AWK@
SED = @SED@
@@ -397,6 +398,7 @@
NM = @NM@
OBJDUMP = @OBJDUMP@
RANLIB = @RANLIB@
+READELF = @READELF@
STRIP = @STRIP@
WINDRES = @WINDRES@
WINDMC = @WINDMC@
@@ -418,7 +420,6 @@
STAGE_CFLAGS = $(BOOT_CFLAGS)
STAGE_TFLAGS = $(TFLAGS)
STAGE_CONFIGURE_FLAGS=@stage2_werror_flag@
-POSTSTAGE1_CONFIGURE_FLAGS = @POSTSTAGE1_CONFIGURE_FLAGS@
# Defaults for stage 1; some are overridden below.
@@ -429,10 +430,7 @@
STAGE1_CXXFLAGS = $(STAGE1_CFLAGS)
@endif target-libstdc++-v3-bootstrap
STAGE1_TFLAGS = $(STAGE_TFLAGS)
-# STAGE1_CONFIGURE_FLAGS overridden below, so we can use
-# POSTSTAGE1_CONFIGURE_FLAGS here.
-STAGE1_CONFIGURE_FLAGS = \
- $(STAGE_CONFIGURE_FLAGS) $(POSTSTAGE1_CONFIGURE_FLAGS)
+STAGE1_CONFIGURE_FLAGS = $(STAGE_CONFIGURE_FLAGS)
# Defaults for stage 2; some are overridden below.
STAGE2_CFLAGS = $(STAGE_CFLAGS)
@@ -442,10 +440,7 @@
STAGE2_CXXFLAGS = $(STAGE2_CFLAGS)
@endif target-libstdc++-v3-bootstrap
STAGE2_TFLAGS = $(STAGE_TFLAGS)
-# STAGE1_CONFIGURE_FLAGS overridden below, so we can use
-# POSTSTAGE1_CONFIGURE_FLAGS here.
-STAGE2_CONFIGURE_FLAGS = \
- $(STAGE_CONFIGURE_FLAGS) $(POSTSTAGE1_CONFIGURE_FLAGS)
+STAGE2_CONFIGURE_FLAGS = $(STAGE_CONFIGURE_FLAGS)
# Defaults for stage 3; some are overridden below.
STAGE3_CFLAGS = $(STAGE_CFLAGS)
@@ -455,10 +450,7 @@
STAGE3_CXXFLAGS = $(STAGE3_CFLAGS)
@endif target-libstdc++-v3-bootstrap
STAGE3_TFLAGS = $(STAGE_TFLAGS)
-# STAGE1_CONFIGURE_FLAGS overridden below, so we can use
-# POSTSTAGE1_CONFIGURE_FLAGS here.
-STAGE3_CONFIGURE_FLAGS = \
- $(STAGE_CONFIGURE_FLAGS) $(POSTSTAGE1_CONFIGURE_FLAGS)
+STAGE3_CONFIGURE_FLAGS = $(STAGE_CONFIGURE_FLAGS)
# Defaults for stage 4; some are overridden below.
STAGE4_CFLAGS = $(STAGE_CFLAGS)
@@ -468,10 +460,7 @@
STAGE4_CXXFLAGS = $(STAGE4_CFLAGS)
@endif target-libstdc++-v3-bootstrap
STAGE4_TFLAGS = $(STAGE_TFLAGS)
-# STAGE1_CONFIGURE_FLAGS overridden below, so we can use
-# POSTSTAGE1_CONFIGURE_FLAGS here.
-STAGE4_CONFIGURE_FLAGS = \
- $(STAGE_CONFIGURE_FLAGS) $(POSTSTAGE1_CONFIGURE_FLAGS)
+STAGE4_CONFIGURE_FLAGS = $(STAGE_CONFIGURE_FLAGS)
# Defaults for stage profile; some are overridden below.
STAGEprofile_CFLAGS = $(STAGE_CFLAGS)
@@ -481,10 +470,7 @@
STAGEprofile_CXXFLAGS = $(STAGEprofile_CFLAGS)
@endif target-libstdc++-v3-bootstrap
STAGEprofile_TFLAGS = $(STAGE_TFLAGS)
-# STAGE1_CONFIGURE_FLAGS overridden below, so we can use
-# POSTSTAGE1_CONFIGURE_FLAGS here.
-STAGEprofile_CONFIGURE_FLAGS = \
- $(STAGE_CONFIGURE_FLAGS) $(POSTSTAGE1_CONFIGURE_FLAGS)
+STAGEprofile_CONFIGURE_FLAGS = $(STAGE_CONFIGURE_FLAGS)
# Defaults for stage feedback; some are overridden below.
STAGEfeedback_CFLAGS = $(STAGE_CFLAGS)
@@ -494,10 +480,7 @@
STAGEfeedback_CXXFLAGS = $(STAGEfeedback_CFLAGS)
@endif target-libstdc++-v3-bootstrap
STAGEfeedback_TFLAGS = $(STAGE_TFLAGS)
-# STAGE1_CONFIGURE_FLAGS overridden below, so we can use
-# POSTSTAGE1_CONFIGURE_FLAGS here.
-STAGEfeedback_CONFIGURE_FLAGS = \
- $(STAGE_CONFIGURE_FLAGS) $(POSTSTAGE1_CONFIGURE_FLAGS)
+STAGEfeedback_CONFIGURE_FLAGS = $(STAGE_CONFIGURE_FLAGS)
# Only build the C compiler for stage1, because that is the only one that
@@ -515,9 +498,6 @@
# the last argument when conflicting --enable arguments are passed.
# * Likewise, we force-disable coverage flags, since the installed
# compiler probably has never heard of them.
-# * Don't remove this, because above we added
-# POSTSTAGE1_CONFIGURE_FLAGS to STAGE_CONFIGURE_FLAGS, which
-# we don't want for STAGE1_CONFIGURE_FLAGS.
STAGE1_CONFIGURE_FLAGS = --disable-intermodule $(STAGE1_CHECKING) \
--disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
@@ -555,6 +535,7 @@
NM_FOR_TARGET=@NM_FOR_TARGET@
OBJDUMP_FOR_TARGET=@OBJDUMP_FOR_TARGET@
RANLIB_FOR_TARGET=@RANLIB_FOR_TARGET@
+READELF_FOR_TARGET=@READELF_FOR_TARGET@
STRIP_FOR_TARGET=@STRIP_FOR_TARGET@
WINDRES_FOR_TARGET=@WINDRES_FOR_TARGET@
WINDMC_FOR_TARGET=@WINDMC_FOR_TARGET@
@@ -594,7 +575,7 @@
# This is the list of directories that may be needed in RPATH_ENVVAR
# so that programs built for the target machine work.
-TARGET_LIB_PATH = $(TARGET_LIB_PATH_libstdc++-v3)$(TARGET_LIB_PATH_libmudflap)$(TARGET_LIB_PATH_libssp)$(TARGET_LIB_PATH_libgomp)$(HOST_LIB_PATH_gcc)
+TARGET_LIB_PATH = $(TARGET_LIB_PATH_libstdc++-v3)$(TARGET_LIB_PATH_libmudflap)$(TARGET_LIB_PATH_libsanitizer)$(TARGET_LIB_PATH_libvtv)$(TARGET_LIB_PATH_libssp)$(TARGET_LIB_PATH_libgomp)$(TARGET_LIB_PATH_libitm)$(TARGET_LIB_PATH_libatomic)$(HOST_LIB_PATH_gcc)
@if target-libstdc++-v3
TARGET_LIB_PATH_libstdc++-v3 = $$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs:
@@ -604,6 +585,14 @@
TARGET_LIB_PATH_libmudflap = $$r/$(TARGET_SUBDIR)/libmudflap/.libs:
@endif target-libmudflap
+@if target-libsanitizer
+TARGET_LIB_PATH_libsanitizer = $$r/$(TARGET_SUBDIR)/libsanitizer/.libs:
+@endif target-libsanitizer
+
+@if target-libvtv
+TARGET_LIB_PATH_libvtv = $$r/$(TARGET_SUBDIR)/libvtv/.libs:
+@endif target-libvtv
+
@if target-libssp
TARGET_LIB_PATH_libssp = $$r/$(TARGET_SUBDIR)/libssp/.libs:
@endif target-libssp
@@ -612,11 +601,19 @@
TARGET_LIB_PATH_libgomp = $$r/$(TARGET_SUBDIR)/libgomp/.libs:
@endif target-libgomp
+@if target-libitm
+TARGET_LIB_PATH_libitm = $$r/$(TARGET_SUBDIR)/libitm/.libs:
+@endif target-libitm
+
+@if target-libatomic
+TARGET_LIB_PATH_libatomic = $$r/$(TARGET_SUBDIR)/libatomic/.libs:
+@endif target-libatomic
+
# This is the list of directories that may be needed in RPATH_ENVVAR
# so that programs built for the host machine work.
-HOST_LIB_PATH = $(HOST_LIB_PATH_gmp)$(HOST_LIB_PATH_mpfr)$(HOST_LIB_PATH_mpc)$(HOST_LIB_PATH_ppl)$(HOST_LIB_PATH_cloog)$(HOST_LIB_PATH_libelf)
+HOST_LIB_PATH = $(HOST_LIB_PATH_gmp)$(HOST_LIB_PATH_mpfr)$(HOST_LIB_PATH_mpc)$(HOST_LIB_PATH_isl)$(HOST_LIB_PATH_cloog)$(HOST_LIB_PATH_libelf)
# Define HOST_LIB_PATH_gcc here, for the sake of TARGET_LIB_PATH, ouch
@if gcc
@@ -639,10 +636,10 @@
$$r/$(HOST_SUBDIR)/mpc/.libs:$$r/$(HOST_SUBDIR)/prev-mpc/.libs:
@endif mpc
-@if ppl
-HOST_LIB_PATH_ppl = \
- $$r/$(HOST_SUBDIR)/ppl/src/.libs:$$r/$(HOST_SUBDIR)/prev-ppl/src/.libs:
-@endif ppl
+@if isl
+HOST_LIB_PATH_isl = \
+ $$r/$(HOST_SUBDIR)/isl/.libs:$$r/$(HOST_SUBDIR)/prev-isl/.libs:
+@endif isl
@if cloog
HOST_LIB_PATH_cloog = \
@@ -757,6 +754,7 @@
"NM_FOR_TARGET=$(NM_FOR_TARGET)" \
"OBJDUMP_FOR_TARGET=$(OBJDUMP_FOR_TARGET)" \
"RANLIB_FOR_TARGET=$(RANLIB_FOR_TARGET)" \
+ "READELF_FOR_TARGET=$(READELF_FOR_TARGET)" \
"STRIP_FOR_TARGET=$(STRIP_FOR_TARGET)" \
"WINDRES_FOR_TARGET=$(WINDRES_FOR_TARGET)" \
"WINDMC_FOR_TARGET=$(WINDMC_FOR_TARGET)" \
@@ -805,12 +803,19 @@
'NM=$(NM)' \
'OBJDUMP=$(OBJDUMP)' \
'RANLIB=$(RANLIB)' \
+ 'READELF=$(READELF)' \
'STRIP=$(STRIP)' \
'WINDRES=$(WINDRES)' \
'WINDMC=$(WINDMC)'
FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS)
+# Flags to pass to stage1 or when not bootstrapping.
+
+STAGE1_FLAGS_TO_PASS = \
+ LDFLAGS="$${LDFLAGS}" \
+ HOST_LIBS="$${HOST_LIBS}"
+
# Flags to pass to stage2 and later makes.
POSTSTAGE1_FLAGS_TO_PASS = \
@@ -845,6 +850,7 @@
'NM=$(COMPILER_NM_FOR_TARGET)' \
'OBJDUMP=$$(OBJDUMP_FOR_TARGET)' \
'RANLIB=$$(RANLIB_FOR_TARGET)' \
+ 'READELF=$$(READELF_FOR_TARGET)' \
'WINDRES=$$(WINDRES_FOR_TARGET)' \
'WINDMC=$$(WINDMC_FOR_TARGET)' \
'XGCC_FLAGS_FOR_TARGET=$(XGCC_FLAGS_FOR_TARGET)' \
@@ -861,10 +867,7 @@
EXTRA_GCC_FLAGS = \
"GCC_FOR_TARGET=$(GCC_FOR_TARGET)" \
"`echo 'STMP_FIXPROTO=$(STMP_FIXPROTO)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
- "`echo 'LIMITS_H_TEST=$(LIMITS_H_TEST)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
- "`echo 'LIBGCC2_CFLAGS=$(LIBGCC2_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
- "`echo 'LIBGCC2_DEBUG_CFLAGS=$(LIBGCC2_DEBUG_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
- "`echo 'LIBGCC2_INCLUDES=$(LIBGCC2_INCLUDES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"
+ "`echo 'LIMITS_H_TEST=$(LIMITS_H_TEST)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"
GCC_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS)
@@ -892,7 +895,7 @@
maybe-configure-gmp \
maybe-configure-mpfr \
maybe-configure-mpc \
- maybe-configure-ppl \
+ maybe-configure-isl \
maybe-configure-cloog \
maybe-configure-libelf \
maybe-configure-gold \
@@ -901,6 +904,7 @@
maybe-configure-tcl \
maybe-configure-itcl \
maybe-configure-ld \
+ maybe-configure-libbacktrace \
maybe-configure-libcpp \
maybe-configure-libdecnumber \
maybe-configure-libgui \
@@ -924,9 +928,12 @@
configure-target: \
maybe-configure-target-libstdc++-v3 \
maybe-configure-target-libmudflap \
+ maybe-configure-target-libsanitizer \
+ maybe-configure-target-libvtv \
maybe-configure-target-libssp \
maybe-configure-target-newlib \
maybe-configure-target-libgcc \
+ maybe-configure-target-libbacktrace \
maybe-configure-target-libquadmath \
maybe-configure-target-libgfortran \
maybe-configure-target-libobjc \
@@ -940,7 +947,9 @@
maybe-configure-target-boehm-gc \
maybe-configure-target-rda \
maybe-configure-target-libada \
- maybe-configure-target-libgomp
+ maybe-configure-target-libgomp \
+ maybe-configure-target-libitm \
+ maybe-configure-target-libatomic
# The target built for a native non-bootstrap build.
.PHONY: all
@@ -1009,9 +1018,9 @@
@if mpc-no-bootstrap
all-host: maybe-all-mpc
@endif mpc-no-bootstrap
-@if ppl-no-bootstrap
-all-host: maybe-all-ppl
-@endif ppl-no-bootstrap
+@if isl-no-bootstrap
+all-host: maybe-all-isl
+@endif isl-no-bootstrap
@if cloog-no-bootstrap
all-host: maybe-all-cloog
@endif cloog-no-bootstrap
@@ -1030,6 +1039,9 @@
@if ld-no-bootstrap
all-host: maybe-all-ld
@endif ld-no-bootstrap
+@if libbacktrace-no-bootstrap
+all-host: maybe-all-libbacktrace
+@endif libbacktrace-no-bootstrap
@if libcpp-no-bootstrap
all-host: maybe-all-libcpp
@endif libcpp-no-bootstrap
@@ -1066,11 +1078,18 @@
all-target: maybe-all-target-libstdc++-v3
@endif target-libstdc++-v3-no-bootstrap
all-target: maybe-all-target-libmudflap
+@if target-libsanitizer-no-bootstrap
+all-target: maybe-all-target-libsanitizer
+@endif target-libsanitizer-no-bootstrap
+@if target-libvtv-no-bootstrap
+all-target: maybe-all-target-libvtv
+@endif target-libvtv-no-bootstrap
all-target: maybe-all-target-libssp
all-target: maybe-all-target-newlib
@if target-libgcc-no-bootstrap
all-target: maybe-all-target-libgcc
@endif target-libgcc-no-bootstrap
+all-target: maybe-all-target-libbacktrace
all-target: maybe-all-target-libquadmath
all-target: maybe-all-target-libgfortran
all-target: maybe-all-target-libobjc
@@ -1087,6 +1106,8 @@
@if target-libgomp-no-bootstrap
all-target: maybe-all-target-libgomp
@endif target-libgomp-no-bootstrap
+all-target: maybe-all-target-libitm
+all-target: maybe-all-target-libatomic
# Do a target for all the subdirectories. A ``make do-X'' will do a
# ``make X'' in all subdirectories (because, in general, there is a
@@ -1119,7 +1140,7 @@
info-host: maybe-info-gmp
info-host: maybe-info-mpfr
info-host: maybe-info-mpc
-info-host: maybe-info-ppl
+info-host: maybe-info-isl
info-host: maybe-info-cloog
info-host: maybe-info-libelf
info-host: maybe-info-gold
@@ -1128,6 +1149,7 @@
info-host: maybe-info-tcl
info-host: maybe-info-itcl
info-host: maybe-info-ld
+info-host: maybe-info-libbacktrace
info-host: maybe-info-libcpp
info-host: maybe-info-libdecnumber
info-host: maybe-info-libgui
@@ -1152,9 +1174,12 @@
info-target: maybe-info-target-libstdc++-v3
info-target: maybe-info-target-libmudflap
+info-target: maybe-info-target-libsanitizer
+info-target: maybe-info-target-libvtv
info-target: maybe-info-target-libssp
info-target: maybe-info-target-newlib
info-target: maybe-info-target-libgcc
+info-target: maybe-info-target-libbacktrace
info-target: maybe-info-target-libquadmath
info-target: maybe-info-target-libgfortran
info-target: maybe-info-target-libobjc
@@ -1169,6 +1194,8 @@
info-target: maybe-info-target-rda
info-target: maybe-info-target-libada
info-target: maybe-info-target-libgomp
+info-target: maybe-info-target-libitm
+info-target: maybe-info-target-libatomic
.PHONY: do-dvi
do-dvi:
@@ -1196,7 +1223,7 @@
dvi-host: maybe-dvi-gmp
dvi-host: maybe-dvi-mpfr
dvi-host: maybe-dvi-mpc
-dvi-host: maybe-dvi-ppl
+dvi-host: maybe-dvi-isl
dvi-host: maybe-dvi-cloog
dvi-host: maybe-dvi-libelf
dvi-host: maybe-dvi-gold
@@ -1205,6 +1232,7 @@
dvi-host: maybe-dvi-tcl
dvi-host: maybe-dvi-itcl
dvi-host: maybe-dvi-ld
+dvi-host: maybe-dvi-libbacktrace
dvi-host: maybe-dvi-libcpp
dvi-host: maybe-dvi-libdecnumber
dvi-host: maybe-dvi-libgui
@@ -1229,9 +1257,12 @@
dvi-target: maybe-dvi-target-libstdc++-v3
dvi-target: maybe-dvi-target-libmudflap
+dvi-target: maybe-dvi-target-libsanitizer
+dvi-target: maybe-dvi-target-libvtv
dvi-target: maybe-dvi-target-libssp
dvi-target: maybe-dvi-target-newlib
dvi-target: maybe-dvi-target-libgcc
+dvi-target: maybe-dvi-target-libbacktrace
dvi-target: maybe-dvi-target-libquadmath
dvi-target: maybe-dvi-target-libgfortran
dvi-target: maybe-dvi-target-libobjc
@@ -1246,6 +1277,8 @@
dvi-target: maybe-dvi-target-rda
dvi-target: maybe-dvi-target-libada
dvi-target: maybe-dvi-target-libgomp
+dvi-target: maybe-dvi-target-libitm
+dvi-target: maybe-dvi-target-libatomic
.PHONY: do-pdf
do-pdf:
@@ -1273,7 +1306,7 @@
pdf-host: maybe-pdf-gmp
pdf-host: maybe-pdf-mpfr
pdf-host: maybe-pdf-mpc
-pdf-host: maybe-pdf-ppl
+pdf-host: maybe-pdf-isl
pdf-host: maybe-pdf-cloog
pdf-host: maybe-pdf-libelf
pdf-host: maybe-pdf-gold
@@ -1282,6 +1315,7 @@
pdf-host: maybe-pdf-tcl
pdf-host: maybe-pdf-itcl
pdf-host: maybe-pdf-ld
+pdf-host: maybe-pdf-libbacktrace
pdf-host: maybe-pdf-libcpp
pdf-host: maybe-pdf-libdecnumber
pdf-host: maybe-pdf-libgui
@@ -1306,9 +1340,12 @@
pdf-target: maybe-pdf-target-libstdc++-v3
pdf-target: maybe-pdf-target-libmudflap
+pdf-target: maybe-pdf-target-libsanitizer
+pdf-target: maybe-pdf-target-libvtv
pdf-target: maybe-pdf-target-libssp
pdf-target: maybe-pdf-target-newlib
pdf-target: maybe-pdf-target-libgcc
+pdf-target: maybe-pdf-target-libbacktrace
pdf-target: maybe-pdf-target-libquadmath
pdf-target: maybe-pdf-target-libgfortran
pdf-target: maybe-pdf-target-libobjc
@@ -1323,6 +1360,8 @@
pdf-target: maybe-pdf-target-rda
pdf-target: maybe-pdf-target-libada
pdf-target: maybe-pdf-target-libgomp
+pdf-target: maybe-pdf-target-libitm
+pdf-target: maybe-pdf-target-libatomic
.PHONY: do-html
do-html:
@@ -1350,7 +1389,7 @@
html-host: maybe-html-gmp
html-host: maybe-html-mpfr
html-host: maybe-html-mpc
-html-host: maybe-html-ppl
+html-host: maybe-html-isl
html-host: maybe-html-cloog
html-host: maybe-html-libelf
html-host: maybe-html-gold
@@ -1359,6 +1398,7 @@
html-host: maybe-html-tcl
html-host: maybe-html-itcl
html-host: maybe-html-ld
+html-host: maybe-html-libbacktrace
html-host: maybe-html-libcpp
html-host: maybe-html-libdecnumber
html-host: maybe-html-libgui
@@ -1383,9 +1423,12 @@
html-target: maybe-html-target-libstdc++-v3
html-target: maybe-html-target-libmudflap
+html-target: maybe-html-target-libsanitizer
+html-target: maybe-html-target-libvtv
html-target: maybe-html-target-libssp
html-target: maybe-html-target-newlib
html-target: maybe-html-target-libgcc
+html-target: maybe-html-target-libbacktrace
html-target: maybe-html-target-libquadmath
html-target: maybe-html-target-libgfortran
html-target: maybe-html-target-libobjc
@@ -1400,6 +1443,8 @@
html-target: maybe-html-target-rda
html-target: maybe-html-target-libada
html-target: maybe-html-target-libgomp
+html-target: maybe-html-target-libitm
+html-target: maybe-html-target-libatomic
.PHONY: do-TAGS
do-TAGS:
@@ -1427,7 +1472,7 @@
TAGS-host: maybe-TAGS-gmp
TAGS-host: maybe-TAGS-mpfr
TAGS-host: maybe-TAGS-mpc
-TAGS-host: maybe-TAGS-ppl
+TAGS-host: maybe-TAGS-isl
TAGS-host: maybe-TAGS-cloog
TAGS-host: maybe-TAGS-libelf
TAGS-host: maybe-TAGS-gold
@@ -1436,6 +1481,7 @@
TAGS-host: maybe-TAGS-tcl
TAGS-host: maybe-TAGS-itcl
TAGS-host: maybe-TAGS-ld
+TAGS-host: maybe-TAGS-libbacktrace
TAGS-host: maybe-TAGS-libcpp
TAGS-host: maybe-TAGS-libdecnumber
TAGS-host: maybe-TAGS-libgui
@@ -1460,9 +1506,12 @@
TAGS-target: maybe-TAGS-target-libstdc++-v3
TAGS-target: maybe-TAGS-target-libmudflap
+TAGS-target: maybe-TAGS-target-libsanitizer
+TAGS-target: maybe-TAGS-target-libvtv
TAGS-target: maybe-TAGS-target-libssp
TAGS-target: maybe-TAGS-target-newlib
TAGS-target: maybe-TAGS-target-libgcc
+TAGS-target: maybe-TAGS-target-libbacktrace
TAGS-target: maybe-TAGS-target-libquadmath
TAGS-target: maybe-TAGS-target-libgfortran
TAGS-target: maybe-TAGS-target-libobjc
@@ -1477,6 +1526,8 @@
TAGS-target: maybe-TAGS-target-rda
TAGS-target: maybe-TAGS-target-libada
TAGS-target: maybe-TAGS-target-libgomp
+TAGS-target: maybe-TAGS-target-libitm
+TAGS-target: maybe-TAGS-target-libatomic
.PHONY: do-install-info
do-install-info:
@@ -1504,7 +1555,7 @@
install-info-host: maybe-install-info-gmp
install-info-host: maybe-install-info-mpfr
install-info-host: maybe-install-info-mpc
-install-info-host: maybe-install-info-ppl
+install-info-host: maybe-install-info-isl
install-info-host: maybe-install-info-cloog
install-info-host: maybe-install-info-libelf
install-info-host: maybe-install-info-gold
@@ -1513,6 +1564,7 @@
install-info-host: maybe-install-info-tcl
install-info-host: maybe-install-info-itcl
install-info-host: maybe-install-info-ld
+install-info-host: maybe-install-info-libbacktrace
install-info-host: maybe-install-info-libcpp
install-info-host: maybe-install-info-libdecnumber
install-info-host: maybe-install-info-libgui
@@ -1537,9 +1589,12 @@
install-info-target: maybe-install-info-target-libstdc++-v3
install-info-target: maybe-install-info-target-libmudflap
+install-info-target: maybe-install-info-target-libsanitizer
+install-info-target: maybe-install-info-target-libvtv
install-info-target: maybe-install-info-target-libssp
install-info-target: maybe-install-info-target-newlib
install-info-target: maybe-install-info-target-libgcc
+install-info-target: maybe-install-info-target-libbacktrace
install-info-target: maybe-install-info-target-libquadmath
install-info-target: maybe-install-info-target-libgfortran
install-info-target: maybe-install-info-target-libobjc
@@ -1554,6 +1609,8 @@
install-info-target: maybe-install-info-target-rda
install-info-target: maybe-install-info-target-libada
install-info-target: maybe-install-info-target-libgomp
+install-info-target: maybe-install-info-target-libitm
+install-info-target: maybe-install-info-target-libatomic
.PHONY: do-install-pdf
do-install-pdf:
@@ -1581,7 +1638,7 @@
install-pdf-host: maybe-install-pdf-gmp
install-pdf-host: maybe-install-pdf-mpfr
install-pdf-host: maybe-install-pdf-mpc
-install-pdf-host: maybe-install-pdf-ppl
+install-pdf-host: maybe-install-pdf-isl
install-pdf-host: maybe-install-pdf-cloog
install-pdf-host: maybe-install-pdf-libelf
install-pdf-host: maybe-install-pdf-gold
@@ -1590,6 +1647,7 @@
install-pdf-host: maybe-install-pdf-tcl
install-pdf-host: maybe-install-pdf-itcl
install-pdf-host: maybe-install-pdf-ld
+install-pdf-host: maybe-install-pdf-libbacktrace
install-pdf-host: maybe-install-pdf-libcpp
install-pdf-host: maybe-install-pdf-libdecnumber
install-pdf-host: maybe-install-pdf-libgui
@@ -1614,9 +1672,12 @@
install-pdf-target: maybe-install-pdf-target-libstdc++-v3
install-pdf-target: maybe-install-pdf-target-libmudflap
+install-pdf-target: maybe-install-pdf-target-libsanitizer
+install-pdf-target: maybe-install-pdf-target-libvtv
install-pdf-target: maybe-install-pdf-target-libssp
install-pdf-target: maybe-install-pdf-target-newlib
install-pdf-target: maybe-install-pdf-target-libgcc
+install-pdf-target: maybe-install-pdf-target-libbacktrace
install-pdf-target: maybe-install-pdf-target-libquadmath
install-pdf-target: maybe-install-pdf-target-libgfortran
install-pdf-target: maybe-install-pdf-target-libobjc
@@ -1631,6 +1692,8 @@
install-pdf-target: maybe-install-pdf-target-rda
install-pdf-target: maybe-install-pdf-target-libada
install-pdf-target: maybe-install-pdf-target-libgomp
+install-pdf-target: maybe-install-pdf-target-libitm
+install-pdf-target: maybe-install-pdf-target-libatomic
.PHONY: do-install-html
do-install-html:
@@ -1658,7 +1721,7 @@
install-html-host: maybe-install-html-gmp
install-html-host: maybe-install-html-mpfr
install-html-host: maybe-install-html-mpc
-install-html-host: maybe-install-html-ppl
+install-html-host: maybe-install-html-isl
install-html-host: maybe-install-html-cloog
install-html-host: maybe-install-html-libelf
install-html-host: maybe-install-html-gold
@@ -1667,6 +1730,7 @@
install-html-host: maybe-install-html-tcl
install-html-host: maybe-install-html-itcl
install-html-host: maybe-install-html-ld
+install-html-host: maybe-install-html-libbacktrace
install-html-host: maybe-install-html-libcpp
install-html-host: maybe-install-html-libdecnumber
install-html-host: maybe-install-html-libgui
@@ -1691,9 +1755,12 @@
install-html-target: maybe-install-html-target-libstdc++-v3
install-html-target: maybe-install-html-target-libmudflap
+install-html-target: maybe-install-html-target-libsanitizer
+install-html-target: maybe-install-html-target-libvtv
install-html-target: maybe-install-html-target-libssp
install-html-target: maybe-install-html-target-newlib
install-html-target: maybe-install-html-target-libgcc
+install-html-target: maybe-install-html-target-libbacktrace
install-html-target: maybe-install-html-target-libquadmath
install-html-target: maybe-install-html-target-libgfortran
install-html-target: maybe-install-html-target-libobjc
@@ -1708,6 +1775,8 @@
install-html-target: maybe-install-html-target-rda
install-html-target: maybe-install-html-target-libada
install-html-target: maybe-install-html-target-libgomp
+install-html-target: maybe-install-html-target-libitm
+install-html-target: maybe-install-html-target-libatomic
.PHONY: do-installcheck
do-installcheck:
@@ -1735,7 +1804,7 @@
installcheck-host: maybe-installcheck-gmp
installcheck-host: maybe-installcheck-mpfr
installcheck-host: maybe-installcheck-mpc
-installcheck-host: maybe-installcheck-ppl
+installcheck-host: maybe-installcheck-isl
installcheck-host: maybe-installcheck-cloog
installcheck-host: maybe-installcheck-libelf
installcheck-host: maybe-installcheck-gold
@@ -1744,6 +1813,7 @@
installcheck-host: maybe-installcheck-tcl
installcheck-host: maybe-installcheck-itcl
installcheck-host: maybe-installcheck-ld
+installcheck-host: maybe-installcheck-libbacktrace
installcheck-host: maybe-installcheck-libcpp
installcheck-host: maybe-installcheck-libdecnumber
installcheck-host: maybe-installcheck-libgui
@@ -1768,9 +1838,12 @@
installcheck-target: maybe-installcheck-target-libstdc++-v3
installcheck-target: maybe-installcheck-target-libmudflap
+installcheck-target: maybe-installcheck-target-libsanitizer
+installcheck-target: maybe-installcheck-target-libvtv
installcheck-target: maybe-installcheck-target-libssp
installcheck-target: maybe-installcheck-target-newlib
installcheck-target: maybe-installcheck-target-libgcc
+installcheck-target: maybe-installcheck-target-libbacktrace
installcheck-target: maybe-installcheck-target-libquadmath
installcheck-target: maybe-installcheck-target-libgfortran
installcheck-target: maybe-installcheck-target-libobjc
@@ -1785,6 +1858,8 @@
installcheck-target: maybe-installcheck-target-rda
installcheck-target: maybe-installcheck-target-libada
installcheck-target: maybe-installcheck-target-libgomp
+installcheck-target: maybe-installcheck-target-libitm
+installcheck-target: maybe-installcheck-target-libatomic
.PHONY: do-mostlyclean
do-mostlyclean:
@@ -1812,7 +1887,7 @@
mostlyclean-host: maybe-mostlyclean-gmp
mostlyclean-host: maybe-mostlyclean-mpfr
mostlyclean-host: maybe-mostlyclean-mpc
-mostlyclean-host: maybe-mostlyclean-ppl
+mostlyclean-host: maybe-mostlyclean-isl
mostlyclean-host: maybe-mostlyclean-cloog
mostlyclean-host: maybe-mostlyclean-libelf
mostlyclean-host: maybe-mostlyclean-gold
@@ -1821,6 +1896,7 @@
mostlyclean-host: maybe-mostlyclean-tcl
mostlyclean-host: maybe-mostlyclean-itcl
mostlyclean-host: maybe-mostlyclean-ld
+mostlyclean-host: maybe-mostlyclean-libbacktrace
mostlyclean-host: maybe-mostlyclean-libcpp
mostlyclean-host: maybe-mostlyclean-libdecnumber
mostlyclean-host: maybe-mostlyclean-libgui
@@ -1845,9 +1921,12 @@
mostlyclean-target: maybe-mostlyclean-target-libstdc++-v3
mostlyclean-target: maybe-mostlyclean-target-libmudflap
+mostlyclean-target: maybe-mostlyclean-target-libsanitizer
+mostlyclean-target: maybe-mostlyclean-target-libvtv
mostlyclean-target: maybe-mostlyclean-target-libssp
mostlyclean-target: maybe-mostlyclean-target-newlib
mostlyclean-target: maybe-mostlyclean-target-libgcc
+mostlyclean-target: maybe-mostlyclean-target-libbacktrace
mostlyclean-target: maybe-mostlyclean-target-libquadmath
mostlyclean-target: maybe-mostlyclean-target-libgfortran
mostlyclean-target: maybe-mostlyclean-target-libobjc
@@ -1862,6 +1941,8 @@
mostlyclean-target: maybe-mostlyclean-target-rda
mostlyclean-target: maybe-mostlyclean-target-libada
mostlyclean-target: maybe-mostlyclean-target-libgomp
+mostlyclean-target: maybe-mostlyclean-target-libitm
+mostlyclean-target: maybe-mostlyclean-target-libatomic
.PHONY: do-clean
do-clean:
@@ -1889,7 +1970,7 @@
clean-host: maybe-clean-gmp
clean-host: maybe-clean-mpfr
clean-host: maybe-clean-mpc
-clean-host: maybe-clean-ppl
+clean-host: maybe-clean-isl
clean-host: maybe-clean-cloog
clean-host: maybe-clean-libelf
clean-host: maybe-clean-gold
@@ -1898,6 +1979,7 @@
clean-host: maybe-clean-tcl
clean-host: maybe-clean-itcl
clean-host: maybe-clean-ld
+clean-host: maybe-clean-libbacktrace
clean-host: maybe-clean-libcpp
clean-host: maybe-clean-libdecnumber
clean-host: maybe-clean-libgui
@@ -1922,9 +2004,12 @@
clean-target: maybe-clean-target-libstdc++-v3
clean-target: maybe-clean-target-libmudflap
+clean-target: maybe-clean-target-libsanitizer
+clean-target: maybe-clean-target-libvtv
clean-target: maybe-clean-target-libssp
clean-target: maybe-clean-target-newlib
clean-target: maybe-clean-target-libgcc
+clean-target: maybe-clean-target-libbacktrace
clean-target: maybe-clean-target-libquadmath
clean-target: maybe-clean-target-libgfortran
clean-target: maybe-clean-target-libobjc
@@ -1939,6 +2024,8 @@
clean-target: maybe-clean-target-rda
clean-target: maybe-clean-target-libada
clean-target: maybe-clean-target-libgomp
+clean-target: maybe-clean-target-libitm
+clean-target: maybe-clean-target-libatomic
.PHONY: do-distclean
do-distclean:
@@ -1966,7 +2053,7 @@
distclean-host: maybe-distclean-gmp
distclean-host: maybe-distclean-mpfr
distclean-host: maybe-distclean-mpc
-distclean-host: maybe-distclean-ppl
+distclean-host: maybe-distclean-isl
distclean-host: maybe-distclean-cloog
distclean-host: maybe-distclean-libelf
distclean-host: maybe-distclean-gold
@@ -1975,6 +2062,7 @@
distclean-host: maybe-distclean-tcl
distclean-host: maybe-distclean-itcl
distclean-host: maybe-distclean-ld
+distclean-host: maybe-distclean-libbacktrace
distclean-host: maybe-distclean-libcpp
distclean-host: maybe-distclean-libdecnumber
distclean-host: maybe-distclean-libgui
@@ -1999,9 +2087,12 @@
distclean-target: maybe-distclean-target-libstdc++-v3
distclean-target: maybe-distclean-target-libmudflap
+distclean-target: maybe-distclean-target-libsanitizer
+distclean-target: maybe-distclean-target-libvtv
distclean-target: maybe-distclean-target-libssp
distclean-target: maybe-distclean-target-newlib
distclean-target: maybe-distclean-target-libgcc
+distclean-target: maybe-distclean-target-libbacktrace
distclean-target: maybe-distclean-target-libquadmath
distclean-target: maybe-distclean-target-libgfortran
distclean-target: maybe-distclean-target-libobjc
@@ -2016,6 +2107,8 @@
distclean-target: maybe-distclean-target-rda
distclean-target: maybe-distclean-target-libada
distclean-target: maybe-distclean-target-libgomp
+distclean-target: maybe-distclean-target-libitm
+distclean-target: maybe-distclean-target-libatomic
.PHONY: do-maintainer-clean
do-maintainer-clean:
@@ -2043,7 +2136,7 @@
maintainer-clean-host: maybe-maintainer-clean-gmp
maintainer-clean-host: maybe-maintainer-clean-mpfr
maintainer-clean-host: maybe-maintainer-clean-mpc
-maintainer-clean-host: maybe-maintainer-clean-ppl
+maintainer-clean-host: maybe-maintainer-clean-isl
maintainer-clean-host: maybe-maintainer-clean-cloog
maintainer-clean-host: maybe-maintainer-clean-libelf
maintainer-clean-host: maybe-maintainer-clean-gold
@@ -2052,6 +2145,7 @@
maintainer-clean-host: maybe-maintainer-clean-tcl
maintainer-clean-host: maybe-maintainer-clean-itcl
maintainer-clean-host: maybe-maintainer-clean-ld
+maintainer-clean-host: maybe-maintainer-clean-libbacktrace
maintainer-clean-host: maybe-maintainer-clean-libcpp
maintainer-clean-host: maybe-maintainer-clean-libdecnumber
maintainer-clean-host: maybe-maintainer-clean-libgui
@@ -2076,9 +2170,12 @@
maintainer-clean-target: maybe-maintainer-clean-target-libstdc++-v3
maintainer-clean-target: maybe-maintainer-clean-target-libmudflap
+maintainer-clean-target: maybe-maintainer-clean-target-libsanitizer
+maintainer-clean-target: maybe-maintainer-clean-target-libvtv
maintainer-clean-target: maybe-maintainer-clean-target-libssp
maintainer-clean-target: maybe-maintainer-clean-target-newlib
maintainer-clean-target: maybe-maintainer-clean-target-libgcc
+maintainer-clean-target: maybe-maintainer-clean-target-libbacktrace
maintainer-clean-target: maybe-maintainer-clean-target-libquadmath
maintainer-clean-target: maybe-maintainer-clean-target-libgfortran
maintainer-clean-target: maybe-maintainer-clean-target-libobjc
@@ -2093,6 +2190,8 @@
maintainer-clean-target: maybe-maintainer-clean-target-rda
maintainer-clean-target: maybe-maintainer-clean-target-libada
maintainer-clean-target: maybe-maintainer-clean-target-libgomp
+maintainer-clean-target: maybe-maintainer-clean-target-libitm
+maintainer-clean-target: maybe-maintainer-clean-target-libatomic
# Here are the targets which correspond to the do-X targets.
@@ -2175,7 +2274,7 @@
maybe-check-gmp \
maybe-check-mpfr \
maybe-check-mpc \
- maybe-check-ppl \
+ maybe-check-isl \
maybe-check-cloog \
maybe-check-libelf \
maybe-check-gold \
@@ -2184,6 +2283,7 @@
maybe-check-tcl \
maybe-check-itcl \
maybe-check-ld \
+ maybe-check-libbacktrace \
maybe-check-libcpp \
maybe-check-libdecnumber \
maybe-check-libgui \
@@ -2208,9 +2308,12 @@
check-target: \
maybe-check-target-libstdc++-v3 \
maybe-check-target-libmudflap \
+ maybe-check-target-libsanitizer \
+ maybe-check-target-libvtv \
maybe-check-target-libssp \
maybe-check-target-newlib \
maybe-check-target-libgcc \
+ maybe-check-target-libbacktrace \
maybe-check-target-libquadmath \
maybe-check-target-libgfortran \
maybe-check-target-libobjc \
@@ -2224,7 +2327,9 @@
maybe-check-target-boehm-gc \
maybe-check-target-rda \
maybe-check-target-libada \
- maybe-check-target-libgomp
+ maybe-check-target-libgomp \
+ maybe-check-target-libitm \
+ maybe-check-target-libatomic
do-check:
@: $(MAKE); $(unstage)
@@ -2278,7 +2383,7 @@
maybe-install-gmp \
maybe-install-mpfr \
maybe-install-mpc \
- maybe-install-ppl \
+ maybe-install-isl \
maybe-install-cloog \
maybe-install-libelf \
maybe-install-gold \
@@ -2287,6 +2392,7 @@
maybe-install-tcl \
maybe-install-itcl \
maybe-install-ld \
+ maybe-install-libbacktrace \
maybe-install-libcpp \
maybe-install-libdecnumber \
maybe-install-libgui \
@@ -2324,7 +2430,7 @@
maybe-install-gmp \
maybe-install-mpfr \
maybe-install-mpc \
- maybe-install-ppl \
+ maybe-install-isl \
maybe-install-cloog \
maybe-install-libelf \
maybe-install-gold \
@@ -2333,6 +2439,7 @@
maybe-install-tcl \
maybe-install-itcl \
maybe-install-ld \
+ maybe-install-libbacktrace \
maybe-install-libcpp \
maybe-install-libdecnumber \
maybe-install-libgui \
@@ -2357,9 +2464,12 @@
install-target: \
maybe-install-target-libstdc++-v3 \
maybe-install-target-libmudflap \
+ maybe-install-target-libsanitizer \
+ maybe-install-target-libvtv \
maybe-install-target-libssp \
maybe-install-target-newlib \
maybe-install-target-libgcc \
+ maybe-install-target-libbacktrace \
maybe-install-target-libquadmath \
maybe-install-target-libgfortran \
maybe-install-target-libobjc \
@@ -2373,7 +2483,9 @@
maybe-install-target-boehm-gc \
maybe-install-target-rda \
maybe-install-target-libada \
- maybe-install-target-libgomp
+ maybe-install-target-libgomp \
+ maybe-install-target-libitm \
+ maybe-install-target-libatomic
uninstall:
@echo "the uninstall target is not supported in this tree"
@@ -2390,11 +2502,12 @@
true ; \
fi
-# install-no-fixedincludes is used because Cygnus can not distribute
-# the fixed header files.
+# install-no-fixedincludes is used to allow the elaboration of binary packages
+# suitable for distribution, where we cannot include the fixed system header
+# files.
.PHONY: install-no-fixedincludes
install-no-fixedincludes: installdirs install-host-nogcc \
- install-target gcc-no-fixedincludes
+ install-target gcc-install-no-fixedincludes
.PHONY: install-strip
install-strip:
@@ -2420,7 +2533,7 @@
maybe-install-strip-gmp \
maybe-install-strip-mpfr \
maybe-install-strip-mpc \
- maybe-install-strip-ppl \
+ maybe-install-strip-isl \
maybe-install-strip-cloog \
maybe-install-strip-libelf \
maybe-install-strip-gold \
@@ -2429,6 +2542,7 @@
maybe-install-strip-tcl \
maybe-install-strip-itcl \
maybe-install-strip-ld \
+ maybe-install-strip-libbacktrace \
maybe-install-strip-libcpp \
maybe-install-strip-libdecnumber \
maybe-install-strip-libgui \
@@ -2453,9 +2567,12 @@
install-strip-target: \
maybe-install-strip-target-libstdc++-v3 \
maybe-install-strip-target-libmudflap \
+ maybe-install-strip-target-libsanitizer \
+ maybe-install-strip-target-libvtv \
maybe-install-strip-target-libssp \
maybe-install-strip-target-newlib \
maybe-install-strip-target-libgcc \
+ maybe-install-strip-target-libbacktrace \
maybe-install-strip-target-libquadmath \
maybe-install-strip-target-libgfortran \
maybe-install-strip-target-libobjc \
@@ -2469,7 +2586,9 @@
maybe-install-strip-target-boehm-gc \
maybe-install-strip-target-rda \
maybe-install-strip-target-libada \
- maybe-install-strip-target-libgomp
+ maybe-install-strip-target-libgomp \
+ maybe-install-strip-target-libitm \
+ maybe-install-strip-target-libatomic
### other supporting targets
@@ -2563,7 +2682,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
(cd $(BUILD_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_BUILD_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_BUILD_FLAGS) \
$(TARGET-build-libiberty))
@endif build-libiberty
@@ -2619,7 +2738,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
(cd $(BUILD_SUBDIR)/bison && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_BUILD_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_BUILD_FLAGS) \
$(TARGET-build-bison))
@endif build-bison
@@ -2675,7 +2794,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
(cd $(BUILD_SUBDIR)/flex && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_BUILD_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_BUILD_FLAGS) \
$(TARGET-build-flex))
@endif build-flex
@@ -2731,7 +2850,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
(cd $(BUILD_SUBDIR)/m4 && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_BUILD_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_BUILD_FLAGS) \
$(TARGET-build-m4))
@endif build-m4
@@ -2787,7 +2906,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
(cd $(BUILD_SUBDIR)/texinfo && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_BUILD_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_BUILD_FLAGS) \
$(TARGET-build-texinfo))
@endif build-texinfo
@@ -2843,7 +2962,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
(cd $(BUILD_SUBDIR)/fixincludes && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_BUILD_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_BUILD_FLAGS) \
$(TARGET-build-fixincludes))
@endif build-fixincludes
@@ -3099,7 +3218,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-bfd))
@endif bfd
@@ -3127,7 +3246,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-bfd)
@@ -3142,7 +3262,7 @@
fi; \
cd $(HOST_SUBDIR)/bfd && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif bfd-bootstrap
@@ -3183,9 +3303,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif bfd-bootstrap
@@ -3226,9 +3344,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif bfd-bootstrap
@@ -3269,9 +3385,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif bfd-bootstrap
@@ -3312,9 +3426,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif bfd-bootstrap
@@ -3355,9 +3467,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif bfd-bootstrap
@@ -3980,7 +4090,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-opcodes))
@endif opcodes
@@ -4008,7 +4118,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-opcodes)
@@ -4023,7 +4134,7 @@
fi; \
cd $(HOST_SUBDIR)/opcodes && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif opcodes-bootstrap
@@ -4064,9 +4175,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif opcodes-bootstrap
@@ -4107,9 +4216,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif opcodes-bootstrap
@@ -4150,9 +4257,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif opcodes-bootstrap
@@ -4193,9 +4298,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif opcodes-bootstrap
@@ -4236,9 +4339,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif opcodes-bootstrap
@@ -4861,7 +4962,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-binutils))
@endif binutils
@@ -4889,7 +4990,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-binutils)
@@ -4904,7 +5006,7 @@
fi; \
cd $(HOST_SUBDIR)/binutils && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif binutils-bootstrap
@@ -4945,9 +5047,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif binutils-bootstrap
@@ -4988,9 +5088,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif binutils-bootstrap
@@ -5031,9 +5129,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif binutils-bootstrap
@@ -5074,9 +5170,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif binutils-bootstrap
@@ -5117,9 +5211,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif binutils-bootstrap
@@ -5546,7 +5638,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/bison && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-bison))
@endif bison
@@ -5989,7 +6081,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/cgen && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-cgen))
@endif cgen
@@ -6429,7 +6521,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/dejagnu && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-dejagnu))
@endif dejagnu
@@ -6869,7 +6961,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/etc && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-etc))
@endif etc
@@ -7309,7 +7401,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/fastjar && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-fastjar))
@endif fastjar
@@ -7752,7 +7844,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/fixincludes && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-fixincludes))
@endif fixincludes
@@ -8176,7 +8268,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/flex && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-flex))
@endif flex
@@ -8815,7 +8907,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-gas))
@endif gas
@@ -8843,7 +8935,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-gas)
@@ -8858,7 +8951,7 @@
fi; \
cd $(HOST_SUBDIR)/gas && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif gas-bootstrap
@@ -8899,9 +8992,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gas-bootstrap
@@ -8942,9 +9033,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gas-bootstrap
@@ -8985,9 +9074,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gas-bootstrap
@@ -9028,9 +9115,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gas-bootstrap
@@ -9071,9 +9156,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gas-bootstrap
@@ -9696,7 +9779,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) \
$(TARGET-gcc))
@endif gcc
@@ -9724,7 +9807,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-gcc)
@@ -9739,7 +9823,7 @@
fi; \
cd $(HOST_SUBDIR)/gcc && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- $(EXTRA_GCC_FLAGS) clean
+ $(STAGE1_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) clean
@endif gcc-bootstrap
@@ -9780,9 +9864,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(EXTRA_GCC_FLAGS) clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) clean
@endif gcc-bootstrap
@@ -9823,9 +9905,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(EXTRA_GCC_FLAGS) clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) clean
@endif gcc-bootstrap
@@ -9866,9 +9946,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(EXTRA_GCC_FLAGS) clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) clean
@endif gcc-bootstrap
@@ -9909,9 +9987,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(EXTRA_GCC_FLAGS) clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) clean
@endif gcc-bootstrap
@@ -9952,9 +10028,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(EXTRA_GCC_FLAGS) clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) clean
@endif gcc-bootstrap
@@ -10583,7 +10657,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/gmp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-gmp))
@endif gmp
@@ -10611,7 +10685,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-gmp)
@@ -10626,7 +10701,7 @@
fi; \
cd $(HOST_SUBDIR)/gmp && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif gmp-bootstrap
@@ -10667,9 +10742,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/gmp && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gmp-bootstrap
@@ -10710,9 +10783,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/gmp && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gmp-bootstrap
@@ -10753,9 +10824,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/gmp && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gmp-bootstrap
@@ -10796,9 +10865,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/gmp && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gmp-bootstrap
@@ -10839,9 +10906,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/gmp && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gmp-bootstrap
@@ -11458,7 +11523,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/mpfr && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-mpfr))
@endif mpfr
@@ -11486,7 +11551,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-mpfr)
@@ -11501,7 +11567,7 @@
fi; \
cd $(HOST_SUBDIR)/mpfr && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif mpfr-bootstrap
@@ -11542,9 +11608,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/mpfr && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif mpfr-bootstrap
@@ -11585,9 +11649,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/mpfr && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif mpfr-bootstrap
@@ -11628,9 +11690,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/mpfr && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif mpfr-bootstrap
@@ -11671,9 +11731,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/mpfr && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif mpfr-bootstrap
@@ -11714,9 +11772,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/mpfr && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif mpfr-bootstrap
@@ -12333,7 +12389,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/mpc && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-mpc))
@endif mpc
@@ -12361,7 +12417,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-mpc)
@@ -12376,7 +12433,7 @@
fi; \
cd $(HOST_SUBDIR)/mpc && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif mpc-bootstrap
@@ -12417,9 +12474,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/mpc && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif mpc-bootstrap
@@ -12460,9 +12515,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/mpc && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif mpc-bootstrap
@@ -12503,9 +12556,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/mpc && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif mpc-bootstrap
@@ -12546,9 +12597,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/mpc && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif mpc-bootstrap
@@ -12589,9 +12638,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/mpc && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif mpc-bootstrap
@@ -12959,276 +13006,276 @@
-.PHONY: configure-ppl maybe-configure-ppl
-maybe-configure-ppl:
+.PHONY: configure-isl maybe-configure-isl
+maybe-configure-isl:
@if gcc-bootstrap
-configure-ppl: stage_current
+configure-isl: stage_current
@endif gcc-bootstrap
-@if ppl
-maybe-configure-ppl: configure-ppl
-configure-ppl:
+@if isl
+maybe-configure-isl: configure-isl
+configure-isl:
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/ppl/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ppl ; \
+ test ! -f $(HOST_SUBDIR)/isl/Makefile || exit 0; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/isl ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/ppl; \
- cd "$(HOST_SUBDIR)/ppl" || exit 1; \
+ echo Configuring in $(HOST_SUBDIR)/isl; \
+ cd "$(HOST_SUBDIR)/isl" || exit 1; \
case $(srcdir) in \
/* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ppl/ | \
+ *) topdir=`echo $(HOST_SUBDIR)/isl/ | \
sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/ppl"; \
- libsrcdir="$$s/ppl"; \
+ srcdiroption="--srcdir=$${topdir}/isl"; \
+ libsrcdir="$$s/isl"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
- --target=${target_alias} $${srcdiroption} --disable-shared --with-libgmp-prefix=$$r/$(HOST_SUBDIR)/gmp/ --with-libgmpxx-prefix=$$r/$(HOST_SUBDIR)/gmp/ \
+ --target=${target_alias} $${srcdiroption} --disable-shared @extra_isl_gmp_configure_flags@ \
|| exit 1
-@endif ppl
+@endif isl
-.PHONY: configure-stage1-ppl maybe-configure-stage1-ppl
-maybe-configure-stage1-ppl:
-@if ppl-bootstrap
-maybe-configure-stage1-ppl: configure-stage1-ppl
-configure-stage1-ppl:
+.PHONY: configure-stage1-isl maybe-configure-stage1-isl
+maybe-configure-stage1-isl:
+@if isl-bootstrap
+maybe-configure-stage1-isl: configure-stage1-isl
+configure-stage1-isl:
@[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ppl
+ @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/isl
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGE1_TFLAGS)"; \
- test ! -f $(HOST_SUBDIR)/ppl/Makefile || exit 0; \
+ test ! -f $(HOST_SUBDIR)/isl/Makefile || exit 0; \
$(HOST_EXPORTS) \
CFLAGS="$(STAGE1_CFLAGS)"; export CFLAGS; \
CXXFLAGS="$(STAGE1_CXXFLAGS)"; export CXXFLAGS; \
LIBCFLAGS="$(LIBCFLAGS)"; export LIBCFLAGS; \
- echo Configuring stage 1 in $(HOST_SUBDIR)/ppl ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ppl ; \
- cd $(HOST_SUBDIR)/ppl || exit 1; \
+ echo Configuring stage 1 in $(HOST_SUBDIR)/isl ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/isl ; \
+ cd $(HOST_SUBDIR)/isl || exit 1; \
case $(srcdir) in \
/* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ppl/ | \
+ *) topdir=`echo $(HOST_SUBDIR)/isl/ | \
sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/ppl"; \
- libsrcdir="$$s/ppl"; \
+ srcdiroption="--srcdir=$${topdir}/isl"; \
+ libsrcdir="$$s/isl"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} $${srcdiroption} \
$(STAGE1_CONFIGURE_FLAGS) \
- --disable-shared --with-libgmp-prefix=$$r/$(HOST_SUBDIR)/gmp/ --with-libgmpxx-prefix=$$r/$(HOST_SUBDIR)/gmp/
-@endif ppl-bootstrap
+ --disable-shared @extra_isl_gmp_configure_flags@
+@endif isl-bootstrap
-.PHONY: configure-stage2-ppl maybe-configure-stage2-ppl
-maybe-configure-stage2-ppl:
-@if ppl-bootstrap
-maybe-configure-stage2-ppl: configure-stage2-ppl
-configure-stage2-ppl:
+.PHONY: configure-stage2-isl maybe-configure-stage2-isl
+maybe-configure-stage2-isl:
+@if isl-bootstrap
+maybe-configure-stage2-isl: configure-stage2-isl
+configure-stage2-isl:
@[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ppl
+ @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/isl
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGE2_TFLAGS)"; \
- test ! -f $(HOST_SUBDIR)/ppl/Makefile || exit 0; \
+ test ! -f $(HOST_SUBDIR)/isl/Makefile || exit 0; \
$(HOST_EXPORTS) \
$(POSTSTAGE1_HOST_EXPORTS) \
CFLAGS="$(STAGE2_CFLAGS)"; export CFLAGS; \
CXXFLAGS="$(STAGE2_CXXFLAGS)"; export CXXFLAGS; \
LIBCFLAGS="$(STAGE2_CFLAGS)"; export LIBCFLAGS; \
- echo Configuring stage 2 in $(HOST_SUBDIR)/ppl ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ppl ; \
- cd $(HOST_SUBDIR)/ppl || exit 1; \
+ echo Configuring stage 2 in $(HOST_SUBDIR)/isl ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/isl ; \
+ cd $(HOST_SUBDIR)/isl || exit 1; \
case $(srcdir) in \
/* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ppl/ | \
+ *) topdir=`echo $(HOST_SUBDIR)/isl/ | \
sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/ppl"; \
- libsrcdir="$$s/ppl"; \
+ srcdiroption="--srcdir=$${topdir}/isl"; \
+ libsrcdir="$$s/isl"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} $${srcdiroption} \
--with-build-libsubdir=$(HOST_SUBDIR) \
$(STAGE2_CONFIGURE_FLAGS) \
- --disable-shared --with-libgmp-prefix=$$r/$(HOST_SUBDIR)/gmp/ --with-libgmpxx-prefix=$$r/$(HOST_SUBDIR)/gmp/
-@endif ppl-bootstrap
+ --disable-shared @extra_isl_gmp_configure_flags@
+@endif isl-bootstrap
-.PHONY: configure-stage3-ppl maybe-configure-stage3-ppl
-maybe-configure-stage3-ppl:
-@if ppl-bootstrap
-maybe-configure-stage3-ppl: configure-stage3-ppl
-configure-stage3-ppl:
+.PHONY: configure-stage3-isl maybe-configure-stage3-isl
+maybe-configure-stage3-isl:
+@if isl-bootstrap
+maybe-configure-stage3-isl: configure-stage3-isl
+configure-stage3-isl:
@[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ppl
+ @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/isl
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGE3_TFLAGS)"; \
- test ! -f $(HOST_SUBDIR)/ppl/Makefile || exit 0; \
+ test ! -f $(HOST_SUBDIR)/isl/Makefile || exit 0; \
$(HOST_EXPORTS) \
$(POSTSTAGE1_HOST_EXPORTS) \
CFLAGS="$(STAGE3_CFLAGS)"; export CFLAGS; \
CXXFLAGS="$(STAGE3_CXXFLAGS)"; export CXXFLAGS; \
LIBCFLAGS="$(STAGE3_CFLAGS)"; export LIBCFLAGS; \
- echo Configuring stage 3 in $(HOST_SUBDIR)/ppl ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ppl ; \
- cd $(HOST_SUBDIR)/ppl || exit 1; \
+ echo Configuring stage 3 in $(HOST_SUBDIR)/isl ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/isl ; \
+ cd $(HOST_SUBDIR)/isl || exit 1; \
case $(srcdir) in \
/* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ppl/ | \
+ *) topdir=`echo $(HOST_SUBDIR)/isl/ | \
sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/ppl"; \
- libsrcdir="$$s/ppl"; \
+ srcdiroption="--srcdir=$${topdir}/isl"; \
+ libsrcdir="$$s/isl"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} $${srcdiroption} \
--with-build-libsubdir=$(HOST_SUBDIR) \
$(STAGE3_CONFIGURE_FLAGS) \
- --disable-shared --with-libgmp-prefix=$$r/$(HOST_SUBDIR)/gmp/ --with-libgmpxx-prefix=$$r/$(HOST_SUBDIR)/gmp/
-@endif ppl-bootstrap
+ --disable-shared @extra_isl_gmp_configure_flags@
+@endif isl-bootstrap
-.PHONY: configure-stage4-ppl maybe-configure-stage4-ppl
-maybe-configure-stage4-ppl:
-@if ppl-bootstrap
-maybe-configure-stage4-ppl: configure-stage4-ppl
-configure-stage4-ppl:
+.PHONY: configure-stage4-isl maybe-configure-stage4-isl
+maybe-configure-stage4-isl:
+@if isl-bootstrap
+maybe-configure-stage4-isl: configure-stage4-isl
+configure-stage4-isl:
@[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ppl
+ @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/isl
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGE4_TFLAGS)"; \
- test ! -f $(HOST_SUBDIR)/ppl/Makefile || exit 0; \
+ test ! -f $(HOST_SUBDIR)/isl/Makefile || exit 0; \
$(HOST_EXPORTS) \
$(POSTSTAGE1_HOST_EXPORTS) \
CFLAGS="$(STAGE4_CFLAGS)"; export CFLAGS; \
CXXFLAGS="$(STAGE4_CXXFLAGS)"; export CXXFLAGS; \
LIBCFLAGS="$(STAGE4_CFLAGS)"; export LIBCFLAGS; \
- echo Configuring stage 4 in $(HOST_SUBDIR)/ppl ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ppl ; \
- cd $(HOST_SUBDIR)/ppl || exit 1; \
+ echo Configuring stage 4 in $(HOST_SUBDIR)/isl ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/isl ; \
+ cd $(HOST_SUBDIR)/isl || exit 1; \
case $(srcdir) in \
/* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ppl/ | \
+ *) topdir=`echo $(HOST_SUBDIR)/isl/ | \
sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/ppl"; \
- libsrcdir="$$s/ppl"; \
+ srcdiroption="--srcdir=$${topdir}/isl"; \
+ libsrcdir="$$s/isl"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} $${srcdiroption} \
--with-build-libsubdir=$(HOST_SUBDIR) \
$(STAGE4_CONFIGURE_FLAGS) \
- --disable-shared --with-libgmp-prefix=$$r/$(HOST_SUBDIR)/gmp/ --with-libgmpxx-prefix=$$r/$(HOST_SUBDIR)/gmp/
-@endif ppl-bootstrap
+ --disable-shared @extra_isl_gmp_configure_flags@
+@endif isl-bootstrap
-.PHONY: configure-stageprofile-ppl maybe-configure-stageprofile-ppl
-maybe-configure-stageprofile-ppl:
-@if ppl-bootstrap
-maybe-configure-stageprofile-ppl: configure-stageprofile-ppl
-configure-stageprofile-ppl:
+.PHONY: configure-stageprofile-isl maybe-configure-stageprofile-isl
+maybe-configure-stageprofile-isl:
+@if isl-bootstrap
+maybe-configure-stageprofile-isl: configure-stageprofile-isl
+configure-stageprofile-isl:
@[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ppl
+ @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/isl
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGEprofile_TFLAGS)"; \
- test ! -f $(HOST_SUBDIR)/ppl/Makefile || exit 0; \
+ test ! -f $(HOST_SUBDIR)/isl/Makefile || exit 0; \
$(HOST_EXPORTS) \
$(POSTSTAGE1_HOST_EXPORTS) \
CFLAGS="$(STAGEprofile_CFLAGS)"; export CFLAGS; \
CXXFLAGS="$(STAGEprofile_CXXFLAGS)"; export CXXFLAGS; \
LIBCFLAGS="$(STAGEprofile_CFLAGS)"; export LIBCFLAGS; \
- echo Configuring stage profile in $(HOST_SUBDIR)/ppl ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ppl ; \
- cd $(HOST_SUBDIR)/ppl || exit 1; \
+ echo Configuring stage profile in $(HOST_SUBDIR)/isl ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/isl ; \
+ cd $(HOST_SUBDIR)/isl || exit 1; \
case $(srcdir) in \
/* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ppl/ | \
+ *) topdir=`echo $(HOST_SUBDIR)/isl/ | \
sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/ppl"; \
- libsrcdir="$$s/ppl"; \
+ srcdiroption="--srcdir=$${topdir}/isl"; \
+ libsrcdir="$$s/isl"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} $${srcdiroption} \
--with-build-libsubdir=$(HOST_SUBDIR) \
$(STAGEprofile_CONFIGURE_FLAGS) \
- --disable-shared --with-libgmp-prefix=$$r/$(HOST_SUBDIR)/gmp/ --with-libgmpxx-prefix=$$r/$(HOST_SUBDIR)/gmp/
-@endif ppl-bootstrap
+ --disable-shared @extra_isl_gmp_configure_flags@
+@endif isl-bootstrap
-.PHONY: configure-stagefeedback-ppl maybe-configure-stagefeedback-ppl
-maybe-configure-stagefeedback-ppl:
-@if ppl-bootstrap
-maybe-configure-stagefeedback-ppl: configure-stagefeedback-ppl
-configure-stagefeedback-ppl:
+.PHONY: configure-stagefeedback-isl maybe-configure-stagefeedback-isl
+maybe-configure-stagefeedback-isl:
+@if isl-bootstrap
+maybe-configure-stagefeedback-isl: configure-stagefeedback-isl
+configure-stagefeedback-isl:
@[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ppl
+ @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/isl
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGEfeedback_TFLAGS)"; \
- test ! -f $(HOST_SUBDIR)/ppl/Makefile || exit 0; \
+ test ! -f $(HOST_SUBDIR)/isl/Makefile || exit 0; \
$(HOST_EXPORTS) \
$(POSTSTAGE1_HOST_EXPORTS) \
CFLAGS="$(STAGEfeedback_CFLAGS)"; export CFLAGS; \
CXXFLAGS="$(STAGEfeedback_CXXFLAGS)"; export CXXFLAGS; \
LIBCFLAGS="$(STAGEfeedback_CFLAGS)"; export LIBCFLAGS; \
- echo Configuring stage feedback in $(HOST_SUBDIR)/ppl ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ppl ; \
- cd $(HOST_SUBDIR)/ppl || exit 1; \
+ echo Configuring stage feedback in $(HOST_SUBDIR)/isl ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/isl ; \
+ cd $(HOST_SUBDIR)/isl || exit 1; \
case $(srcdir) in \
/* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ppl/ | \
+ *) topdir=`echo $(HOST_SUBDIR)/isl/ | \
sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/ppl"; \
- libsrcdir="$$s/ppl"; \
+ srcdiroption="--srcdir=$${topdir}/isl"; \
+ libsrcdir="$$s/isl"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} $${srcdiroption} \
--with-build-libsubdir=$(HOST_SUBDIR) \
$(STAGEfeedback_CONFIGURE_FLAGS) \
- --disable-shared --with-libgmp-prefix=$$r/$(HOST_SUBDIR)/gmp/ --with-libgmpxx-prefix=$$r/$(HOST_SUBDIR)/gmp/
-@endif ppl-bootstrap
+ --disable-shared @extra_isl_gmp_configure_flags@
+@endif isl-bootstrap
-.PHONY: all-ppl maybe-all-ppl
-maybe-all-ppl:
+.PHONY: all-isl maybe-all-isl
+maybe-all-isl:
@if gcc-bootstrap
-all-ppl: stage_current
+all-isl: stage_current
@endif gcc-bootstrap
-@if ppl
-TARGET-ppl=all
-maybe-all-ppl: all-ppl
-all-ppl: configure-ppl
+@if isl
+TARGET-isl=all
+maybe-all-isl: all-isl
+all-isl: configure-isl
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/ppl && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
- $(TARGET-ppl))
-@endif ppl
+ (cd $(HOST_SUBDIR)/isl && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) V=1 \
+ $(TARGET-isl))
+@endif isl
-.PHONY: all-stage1-ppl maybe-all-stage1-ppl
-.PHONY: clean-stage1-ppl maybe-clean-stage1-ppl
-maybe-all-stage1-ppl:
-maybe-clean-stage1-ppl:
-@if ppl-bootstrap
-maybe-all-stage1-ppl: all-stage1-ppl
-all-stage1: all-stage1-ppl
-TARGET-stage1-ppl = $(TARGET-ppl)
-all-stage1-ppl: configure-stage1-ppl
+.PHONY: all-stage1-isl maybe-all-stage1-isl
+.PHONY: clean-stage1-isl maybe-clean-stage1-isl
+maybe-all-stage1-isl:
+maybe-clean-stage1-isl:
+@if isl-bootstrap
+maybe-all-stage1-isl: all-stage1-isl
+all-stage1: all-stage1-isl
+TARGET-stage1-isl = $(TARGET-isl)
+all-stage1-isl: configure-stage1-isl
@[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGE1_TFLAGS)"; \
$(HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/ppl && \
+ cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) \
CFLAGS="$(STAGE1_CFLAGS)" \
CXXFLAGS="$(STAGE1_CXXFLAGS)" \
@@ -13236,41 +13283,42 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) V=1 \
TFLAGS="$(STAGE1_TFLAGS)" \
- $(TARGET-stage1-ppl)
+ $(TARGET-stage1-isl)
-maybe-clean-stage1-ppl: clean-stage1-ppl
-clean-stage1: clean-stage1-ppl
-clean-stage1-ppl:
+maybe-clean-stage1-isl: clean-stage1-isl
+clean-stage1: clean-stage1-isl
+clean-stage1-isl:
@if [ $(current_stage) = stage1 ]; then \
- [ -f $(HOST_SUBDIR)/ppl/Makefile ] || exit 0; \
+ [ -f $(HOST_SUBDIR)/isl/Makefile ] || exit 0; \
else \
- [ -f $(HOST_SUBDIR)/stage1-ppl/Makefile ] || exit 0; \
+ [ -f $(HOST_SUBDIR)/stage1-isl/Makefile ] || exit 0; \
$(MAKE) stage1-start; \
fi; \
- cd $(HOST_SUBDIR)/ppl && \
+ cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
-@endif ppl-bootstrap
+ $(STAGE1_FLAGS_TO_PASS) V=1 clean
+@endif isl-bootstrap
-.PHONY: all-stage2-ppl maybe-all-stage2-ppl
-.PHONY: clean-stage2-ppl maybe-clean-stage2-ppl
-maybe-all-stage2-ppl:
-maybe-clean-stage2-ppl:
-@if ppl-bootstrap
-maybe-all-stage2-ppl: all-stage2-ppl
-all-stage2: all-stage2-ppl
-TARGET-stage2-ppl = $(TARGET-ppl)
-all-stage2-ppl: configure-stage2-ppl
+.PHONY: all-stage2-isl maybe-all-stage2-isl
+.PHONY: clean-stage2-isl maybe-clean-stage2-isl
+maybe-all-stage2-isl:
+maybe-clean-stage2-isl:
+@if isl-bootstrap
+maybe-all-stage2-isl: all-stage2-isl
+all-stage2: all-stage2-isl
+TARGET-stage2-isl = $(TARGET-isl)
+all-stage2-isl: configure-stage2-isl
@[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGE2_TFLAGS)"; \
$(HOST_EXPORTS) \
$(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/ppl && \
+ cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) \
CFLAGS="$(STAGE2_CFLAGS)" \
CXXFLAGS="$(STAGE2_CXXFLAGS)" \
@@ -13278,42 +13326,40 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) V=1 \
TFLAGS="$(STAGE2_TFLAGS)" \
- $(TARGET-stage2-ppl)
+ $(TARGET-stage2-isl)
-maybe-clean-stage2-ppl: clean-stage2-ppl
-clean-stage2: clean-stage2-ppl
-clean-stage2-ppl:
+maybe-clean-stage2-isl: clean-stage2-isl
+clean-stage2: clean-stage2-isl
+clean-stage2-isl:
@if [ $(current_stage) = stage2 ]; then \
- [ -f $(HOST_SUBDIR)/ppl/Makefile ] || exit 0; \
+ [ -f $(HOST_SUBDIR)/isl/Makefile ] || exit 0; \
else \
- [ -f $(HOST_SUBDIR)/stage2-ppl/Makefile ] || exit 0; \
+ [ -f $(HOST_SUBDIR)/stage2-isl/Makefile ] || exit 0; \
$(MAKE) stage2-start; \
fi; \
- cd $(HOST_SUBDIR)/ppl && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif ppl-bootstrap
+ cd $(HOST_SUBDIR)/isl && \
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) V=1 clean
+@endif isl-bootstrap
-.PHONY: all-stage3-ppl maybe-all-stage3-ppl
-.PHONY: clean-stage3-ppl maybe-clean-stage3-ppl
-maybe-all-stage3-ppl:
-maybe-clean-stage3-ppl:
-@if ppl-bootstrap
-maybe-all-stage3-ppl: all-stage3-ppl
-all-stage3: all-stage3-ppl
-TARGET-stage3-ppl = $(TARGET-ppl)
-all-stage3-ppl: configure-stage3-ppl
+.PHONY: all-stage3-isl maybe-all-stage3-isl
+.PHONY: clean-stage3-isl maybe-clean-stage3-isl
+maybe-all-stage3-isl:
+maybe-clean-stage3-isl:
+@if isl-bootstrap
+maybe-all-stage3-isl: all-stage3-isl
+all-stage3: all-stage3-isl
+TARGET-stage3-isl = $(TARGET-isl)
+all-stage3-isl: configure-stage3-isl
@[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGE3_TFLAGS)"; \
$(HOST_EXPORTS) \
$(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/ppl && \
+ cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) \
CFLAGS="$(STAGE3_CFLAGS)" \
CXXFLAGS="$(STAGE3_CXXFLAGS)" \
@@ -13321,42 +13367,40 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) V=1 \
TFLAGS="$(STAGE3_TFLAGS)" \
- $(TARGET-stage3-ppl)
+ $(TARGET-stage3-isl)
-maybe-clean-stage3-ppl: clean-stage3-ppl
-clean-stage3: clean-stage3-ppl
-clean-stage3-ppl:
+maybe-clean-stage3-isl: clean-stage3-isl
+clean-stage3: clean-stage3-isl
+clean-stage3-isl:
@if [ $(current_stage) = stage3 ]; then \
- [ -f $(HOST_SUBDIR)/ppl/Makefile ] || exit 0; \
+ [ -f $(HOST_SUBDIR)/isl/Makefile ] || exit 0; \
else \
- [ -f $(HOST_SUBDIR)/stage3-ppl/Makefile ] || exit 0; \
+ [ -f $(HOST_SUBDIR)/stage3-isl/Makefile ] || exit 0; \
$(MAKE) stage3-start; \
fi; \
- cd $(HOST_SUBDIR)/ppl && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif ppl-bootstrap
+ cd $(HOST_SUBDIR)/isl && \
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) V=1 clean
+@endif isl-bootstrap
-.PHONY: all-stage4-ppl maybe-all-stage4-ppl
-.PHONY: clean-stage4-ppl maybe-clean-stage4-ppl
-maybe-all-stage4-ppl:
-maybe-clean-stage4-ppl:
-@if ppl-bootstrap
-maybe-all-stage4-ppl: all-stage4-ppl
-all-stage4: all-stage4-ppl
-TARGET-stage4-ppl = $(TARGET-ppl)
-all-stage4-ppl: configure-stage4-ppl
+.PHONY: all-stage4-isl maybe-all-stage4-isl
+.PHONY: clean-stage4-isl maybe-clean-stage4-isl
+maybe-all-stage4-isl:
+maybe-clean-stage4-isl:
+@if isl-bootstrap
+maybe-all-stage4-isl: all-stage4-isl
+all-stage4: all-stage4-isl
+TARGET-stage4-isl = $(TARGET-isl)
+all-stage4-isl: configure-stage4-isl
@[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGE4_TFLAGS)"; \
$(HOST_EXPORTS) \
$(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/ppl && \
+ cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) \
CFLAGS="$(STAGE4_CFLAGS)" \
CXXFLAGS="$(STAGE4_CXXFLAGS)" \
@@ -13364,42 +13408,40 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) V=1 \
TFLAGS="$(STAGE4_TFLAGS)" \
- $(TARGET-stage4-ppl)
+ $(TARGET-stage4-isl)
-maybe-clean-stage4-ppl: clean-stage4-ppl
-clean-stage4: clean-stage4-ppl
-clean-stage4-ppl:
+maybe-clean-stage4-isl: clean-stage4-isl
+clean-stage4: clean-stage4-isl
+clean-stage4-isl:
@if [ $(current_stage) = stage4 ]; then \
- [ -f $(HOST_SUBDIR)/ppl/Makefile ] || exit 0; \
+ [ -f $(HOST_SUBDIR)/isl/Makefile ] || exit 0; \
else \
- [ -f $(HOST_SUBDIR)/stage4-ppl/Makefile ] || exit 0; \
+ [ -f $(HOST_SUBDIR)/stage4-isl/Makefile ] || exit 0; \
$(MAKE) stage4-start; \
fi; \
- cd $(HOST_SUBDIR)/ppl && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif ppl-bootstrap
+ cd $(HOST_SUBDIR)/isl && \
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) V=1 clean
+@endif isl-bootstrap
-.PHONY: all-stageprofile-ppl maybe-all-stageprofile-ppl
-.PHONY: clean-stageprofile-ppl maybe-clean-stageprofile-ppl
-maybe-all-stageprofile-ppl:
-maybe-clean-stageprofile-ppl:
-@if ppl-bootstrap
-maybe-all-stageprofile-ppl: all-stageprofile-ppl
-all-stageprofile: all-stageprofile-ppl
-TARGET-stageprofile-ppl = $(TARGET-ppl)
-all-stageprofile-ppl: configure-stageprofile-ppl
+.PHONY: all-stageprofile-isl maybe-all-stageprofile-isl
+.PHONY: clean-stageprofile-isl maybe-clean-stageprofile-isl
+maybe-all-stageprofile-isl:
+maybe-clean-stageprofile-isl:
+@if isl-bootstrap
+maybe-all-stageprofile-isl: all-stageprofile-isl
+all-stageprofile: all-stageprofile-isl
+TARGET-stageprofile-isl = $(TARGET-isl)
+all-stageprofile-isl: configure-stageprofile-isl
@[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGEprofile_TFLAGS)"; \
$(HOST_EXPORTS) \
$(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/ppl && \
+ cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) \
CFLAGS="$(STAGEprofile_CFLAGS)" \
CXXFLAGS="$(STAGEprofile_CXXFLAGS)" \
@@ -13407,42 +13449,40 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) V=1 \
TFLAGS="$(STAGEprofile_TFLAGS)" \
- $(TARGET-stageprofile-ppl)
+ $(TARGET-stageprofile-isl)
-maybe-clean-stageprofile-ppl: clean-stageprofile-ppl
-clean-stageprofile: clean-stageprofile-ppl
-clean-stageprofile-ppl:
+maybe-clean-stageprofile-isl: clean-stageprofile-isl
+clean-stageprofile: clean-stageprofile-isl
+clean-stageprofile-isl:
@if [ $(current_stage) = stageprofile ]; then \
- [ -f $(HOST_SUBDIR)/ppl/Makefile ] || exit 0; \
+ [ -f $(HOST_SUBDIR)/isl/Makefile ] || exit 0; \
else \
- [ -f $(HOST_SUBDIR)/stageprofile-ppl/Makefile ] || exit 0; \
+ [ -f $(HOST_SUBDIR)/stageprofile-isl/Makefile ] || exit 0; \
$(MAKE) stageprofile-start; \
fi; \
- cd $(HOST_SUBDIR)/ppl && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif ppl-bootstrap
+ cd $(HOST_SUBDIR)/isl && \
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) V=1 clean
+@endif isl-bootstrap
-.PHONY: all-stagefeedback-ppl maybe-all-stagefeedback-ppl
-.PHONY: clean-stagefeedback-ppl maybe-clean-stagefeedback-ppl
-maybe-all-stagefeedback-ppl:
-maybe-clean-stagefeedback-ppl:
-@if ppl-bootstrap
-maybe-all-stagefeedback-ppl: all-stagefeedback-ppl
-all-stagefeedback: all-stagefeedback-ppl
-TARGET-stagefeedback-ppl = $(TARGET-ppl)
-all-stagefeedback-ppl: configure-stagefeedback-ppl
+.PHONY: all-stagefeedback-isl maybe-all-stagefeedback-isl
+.PHONY: clean-stagefeedback-isl maybe-clean-stagefeedback-isl
+maybe-all-stagefeedback-isl:
+maybe-clean-stagefeedback-isl:
+@if isl-bootstrap
+maybe-all-stagefeedback-isl: all-stagefeedback-isl
+all-stagefeedback: all-stagefeedback-isl
+TARGET-stagefeedback-isl = $(TARGET-isl)
+all-stagefeedback-isl: configure-stagefeedback-isl
@[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGEfeedback_TFLAGS)"; \
$(HOST_EXPORTS) \
$(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/ppl && \
+ cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) \
CFLAGS="$(STAGEfeedback_CFLAGS)" \
CXXFLAGS="$(STAGEfeedback_CXXFLAGS)" \
@@ -13450,80 +13490,78 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) V=1 \
TFLAGS="$(STAGEfeedback_TFLAGS)" \
- $(TARGET-stagefeedback-ppl)
+ $(TARGET-stagefeedback-isl)
-maybe-clean-stagefeedback-ppl: clean-stagefeedback-ppl
-clean-stagefeedback: clean-stagefeedback-ppl
-clean-stagefeedback-ppl:
+maybe-clean-stagefeedback-isl: clean-stagefeedback-isl
+clean-stagefeedback: clean-stagefeedback-isl
+clean-stagefeedback-isl:
@if [ $(current_stage) = stagefeedback ]; then \
- [ -f $(HOST_SUBDIR)/ppl/Makefile ] || exit 0; \
+ [ -f $(HOST_SUBDIR)/isl/Makefile ] || exit 0; \
else \
- [ -f $(HOST_SUBDIR)/stagefeedback-ppl/Makefile ] || exit 0; \
+ [ -f $(HOST_SUBDIR)/stagefeedback-isl/Makefile ] || exit 0; \
$(MAKE) stagefeedback-start; \
fi; \
- cd $(HOST_SUBDIR)/ppl && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif ppl-bootstrap
+ cd $(HOST_SUBDIR)/isl && \
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) V=1 clean
+@endif isl-bootstrap
-.PHONY: check-ppl maybe-check-ppl
-maybe-check-ppl:
-@if ppl
-maybe-check-ppl: check-ppl
+.PHONY: check-isl maybe-check-isl
+maybe-check-isl:
+@if isl
+maybe-check-isl: check-isl
-check-ppl:
+check-isl:
@: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/ppl && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd $(HOST_SUBDIR)/isl && \
+ $(MAKE) $(FLAGS_TO_PASS) V=1 check)
-@endif ppl
+@endif isl
-.PHONY: install-ppl maybe-install-ppl
-maybe-install-ppl:
-@if ppl
-maybe-install-ppl: install-ppl
+.PHONY: install-isl maybe-install-isl
+maybe-install-isl:
+@if isl
+maybe-install-isl: install-isl
-install-ppl:
+install-isl:
-@endif ppl
+@endif isl
-.PHONY: install-strip-ppl maybe-install-strip-ppl
-maybe-install-strip-ppl:
-@if ppl
-maybe-install-strip-ppl: install-strip-ppl
+.PHONY: install-strip-isl maybe-install-strip-isl
+maybe-install-strip-isl:
+@if isl
+maybe-install-strip-isl: install-strip-isl
-install-strip-ppl:
+install-strip-isl:
-@endif ppl
+@endif isl
# Other targets (info, dvi, pdf, etc.)
-.PHONY: maybe-info-ppl info-ppl
-maybe-info-ppl:
-@if ppl
-maybe-info-ppl: info-ppl
+.PHONY: maybe-info-isl info-isl
+maybe-info-isl:
+@if isl
+maybe-info-isl: info-isl
-info-ppl: \
- configure-ppl
- @[ -f ./ppl/Makefile ] || exit 0; \
+info-isl: \
+ configure-isl
+ @[ -f ./isl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
+ for flag in $(EXTRA_HOST_FLAGS) V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
- echo "Doing info in ppl" ; \
- (cd $(HOST_SUBDIR)/ppl && \
+ echo "Doing info in isl" ; \
+ (cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13531,24 +13569,24 @@
info) \
|| exit 1
-@endif ppl
+@endif isl
-.PHONY: maybe-dvi-ppl dvi-ppl
-maybe-dvi-ppl:
-@if ppl
-maybe-dvi-ppl: dvi-ppl
+.PHONY: maybe-dvi-isl dvi-isl
+maybe-dvi-isl:
+@if isl
+maybe-dvi-isl: dvi-isl
-dvi-ppl: \
- configure-ppl
- @[ -f ./ppl/Makefile ] || exit 0; \
+dvi-isl: \
+ configure-isl
+ @[ -f ./isl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
+ for flag in $(EXTRA_HOST_FLAGS) V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
- echo "Doing dvi in ppl" ; \
- (cd $(HOST_SUBDIR)/ppl && \
+ echo "Doing dvi in isl" ; \
+ (cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13556,24 +13594,24 @@
dvi) \
|| exit 1
-@endif ppl
+@endif isl
-.PHONY: maybe-pdf-ppl pdf-ppl
-maybe-pdf-ppl:
-@if ppl
-maybe-pdf-ppl: pdf-ppl
+.PHONY: maybe-pdf-isl pdf-isl
+maybe-pdf-isl:
+@if isl
+maybe-pdf-isl: pdf-isl
-pdf-ppl: \
- configure-ppl
- @[ -f ./ppl/Makefile ] || exit 0; \
+pdf-isl: \
+ configure-isl
+ @[ -f ./isl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
+ for flag in $(EXTRA_HOST_FLAGS) V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
- echo "Doing pdf in ppl" ; \
- (cd $(HOST_SUBDIR)/ppl && \
+ echo "Doing pdf in isl" ; \
+ (cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13581,24 +13619,24 @@
pdf) \
|| exit 1
-@endif ppl
+@endif isl
-.PHONY: maybe-html-ppl html-ppl
-maybe-html-ppl:
-@if ppl
-maybe-html-ppl: html-ppl
+.PHONY: maybe-html-isl html-isl
+maybe-html-isl:
+@if isl
+maybe-html-isl: html-isl
-html-ppl: \
- configure-ppl
- @[ -f ./ppl/Makefile ] || exit 0; \
+html-isl: \
+ configure-isl
+ @[ -f ./isl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
+ for flag in $(EXTRA_HOST_FLAGS) V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
- echo "Doing html in ppl" ; \
- (cd $(HOST_SUBDIR)/ppl && \
+ echo "Doing html in isl" ; \
+ (cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13606,24 +13644,24 @@
html) \
|| exit 1
-@endif ppl
+@endif isl
-.PHONY: maybe-TAGS-ppl TAGS-ppl
-maybe-TAGS-ppl:
-@if ppl
-maybe-TAGS-ppl: TAGS-ppl
+.PHONY: maybe-TAGS-isl TAGS-isl
+maybe-TAGS-isl:
+@if isl
+maybe-TAGS-isl: TAGS-isl
-TAGS-ppl: \
- configure-ppl
- @[ -f ./ppl/Makefile ] || exit 0; \
+TAGS-isl: \
+ configure-isl
+ @[ -f ./isl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
+ for flag in $(EXTRA_HOST_FLAGS) V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
- echo "Doing TAGS in ppl" ; \
- (cd $(HOST_SUBDIR)/ppl && \
+ echo "Doing TAGS in isl" ; \
+ (cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13631,25 +13669,25 @@
TAGS) \
|| exit 1
-@endif ppl
+@endif isl
-.PHONY: maybe-install-info-ppl install-info-ppl
-maybe-install-info-ppl:
-@if ppl
-maybe-install-info-ppl: install-info-ppl
+.PHONY: maybe-install-info-isl install-info-isl
+maybe-install-info-isl:
+@if isl
+maybe-install-info-isl: install-info-isl
-install-info-ppl: \
- configure-ppl \
- info-ppl
- @[ -f ./ppl/Makefile ] || exit 0; \
+install-info-isl: \
+ configure-isl \
+ info-isl
+ @[ -f ./isl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
+ for flag in $(EXTRA_HOST_FLAGS) V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
- echo "Doing install-info in ppl" ; \
- (cd $(HOST_SUBDIR)/ppl && \
+ echo "Doing install-info in isl" ; \
+ (cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13657,25 +13695,25 @@
install-info) \
|| exit 1
-@endif ppl
+@endif isl
-.PHONY: maybe-install-pdf-ppl install-pdf-ppl
-maybe-install-pdf-ppl:
-@if ppl
-maybe-install-pdf-ppl: install-pdf-ppl
+.PHONY: maybe-install-pdf-isl install-pdf-isl
+maybe-install-pdf-isl:
+@if isl
+maybe-install-pdf-isl: install-pdf-isl
-install-pdf-ppl: \
- configure-ppl \
- pdf-ppl
- @[ -f ./ppl/Makefile ] || exit 0; \
+install-pdf-isl: \
+ configure-isl \
+ pdf-isl
+ @[ -f ./isl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
+ for flag in $(EXTRA_HOST_FLAGS) V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
- echo "Doing install-pdf in ppl" ; \
- (cd $(HOST_SUBDIR)/ppl && \
+ echo "Doing install-pdf in isl" ; \
+ (cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13683,25 +13721,25 @@
install-pdf) \
|| exit 1
-@endif ppl
+@endif isl
-.PHONY: maybe-install-html-ppl install-html-ppl
-maybe-install-html-ppl:
-@if ppl
-maybe-install-html-ppl: install-html-ppl
+.PHONY: maybe-install-html-isl install-html-isl
+maybe-install-html-isl:
+@if isl
+maybe-install-html-isl: install-html-isl
-install-html-ppl: \
- configure-ppl \
- html-ppl
- @[ -f ./ppl/Makefile ] || exit 0; \
+install-html-isl: \
+ configure-isl \
+ html-isl
+ @[ -f ./isl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
+ for flag in $(EXTRA_HOST_FLAGS) V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
- echo "Doing install-html in ppl" ; \
- (cd $(HOST_SUBDIR)/ppl && \
+ echo "Doing install-html in isl" ; \
+ (cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13709,24 +13747,24 @@
install-html) \
|| exit 1
-@endif ppl
+@endif isl
-.PHONY: maybe-installcheck-ppl installcheck-ppl
-maybe-installcheck-ppl:
-@if ppl
-maybe-installcheck-ppl: installcheck-ppl
+.PHONY: maybe-installcheck-isl installcheck-isl
+maybe-installcheck-isl:
+@if isl
+maybe-installcheck-isl: installcheck-isl
-installcheck-ppl: \
- configure-ppl
- @[ -f ./ppl/Makefile ] || exit 0; \
+installcheck-isl: \
+ configure-isl
+ @[ -f ./isl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
+ for flag in $(EXTRA_HOST_FLAGS) V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
- echo "Doing installcheck in ppl" ; \
- (cd $(HOST_SUBDIR)/ppl && \
+ echo "Doing installcheck in isl" ; \
+ (cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13734,23 +13772,23 @@
installcheck) \
|| exit 1
-@endif ppl
+@endif isl
-.PHONY: maybe-mostlyclean-ppl mostlyclean-ppl
-maybe-mostlyclean-ppl:
-@if ppl
-maybe-mostlyclean-ppl: mostlyclean-ppl
+.PHONY: maybe-mostlyclean-isl mostlyclean-isl
+maybe-mostlyclean-isl:
+@if isl
+maybe-mostlyclean-isl: mostlyclean-isl
-mostlyclean-ppl:
- @[ -f ./ppl/Makefile ] || exit 0; \
+mostlyclean-isl:
+ @[ -f ./isl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
+ for flag in $(EXTRA_HOST_FLAGS) V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
- echo "Doing mostlyclean in ppl" ; \
- (cd $(HOST_SUBDIR)/ppl && \
+ echo "Doing mostlyclean in isl" ; \
+ (cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13758,23 +13796,23 @@
mostlyclean) \
|| exit 1
-@endif ppl
+@endif isl
-.PHONY: maybe-clean-ppl clean-ppl
-maybe-clean-ppl:
-@if ppl
-maybe-clean-ppl: clean-ppl
+.PHONY: maybe-clean-isl clean-isl
+maybe-clean-isl:
+@if isl
+maybe-clean-isl: clean-isl
-clean-ppl:
- @[ -f ./ppl/Makefile ] || exit 0; \
+clean-isl:
+ @[ -f ./isl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
+ for flag in $(EXTRA_HOST_FLAGS) V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
- echo "Doing clean in ppl" ; \
- (cd $(HOST_SUBDIR)/ppl && \
+ echo "Doing clean in isl" ; \
+ (cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13782,23 +13820,23 @@
clean) \
|| exit 1
-@endif ppl
+@endif isl
-.PHONY: maybe-distclean-ppl distclean-ppl
-maybe-distclean-ppl:
-@if ppl
-maybe-distclean-ppl: distclean-ppl
+.PHONY: maybe-distclean-isl distclean-isl
+maybe-distclean-isl:
+@if isl
+maybe-distclean-isl: distclean-isl
-distclean-ppl:
- @[ -f ./ppl/Makefile ] || exit 0; \
+distclean-isl:
+ @[ -f ./isl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
+ for flag in $(EXTRA_HOST_FLAGS) V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
- echo "Doing distclean in ppl" ; \
- (cd $(HOST_SUBDIR)/ppl && \
+ echo "Doing distclean in isl" ; \
+ (cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13806,23 +13844,23 @@
distclean) \
|| exit 1
-@endif ppl
+@endif isl
-.PHONY: maybe-maintainer-clean-ppl maintainer-clean-ppl
-maybe-maintainer-clean-ppl:
-@if ppl
-maybe-maintainer-clean-ppl: maintainer-clean-ppl
+.PHONY: maybe-maintainer-clean-isl maintainer-clean-isl
+maybe-maintainer-clean-isl:
+@if isl
+maybe-maintainer-clean-isl: maintainer-clean-isl
-maintainer-clean-ppl:
- @[ -f ./ppl/Makefile ] || exit 0; \
+maintainer-clean-isl:
+ @[ -f ./isl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
+ for flag in $(EXTRA_HOST_FLAGS) V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
- echo "Doing maintainer-clean in ppl" ; \
- (cd $(HOST_SUBDIR)/ppl && \
+ echo "Doing maintainer-clean in isl" ; \
+ (cd $(HOST_SUBDIR)/isl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13830,7 +13868,7 @@
maintainer-clean) \
|| exit 1
-@endif ppl
+@endif isl
@@ -13846,7 +13884,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
test ! -f $(HOST_SUBDIR)/cloog/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/cloog ; \
- $(HOST_EXPORTS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ $(HOST_EXPORTS) CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
echo Configuring in $(HOST_SUBDIR)/cloog; \
cd "$(HOST_SUBDIR)/cloog" || exit 1; \
case $(srcdir) in \
@@ -13858,7 +13896,7 @@
libsrcdir="$$s/cloog"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
- --target=${target_alias} $${srcdiroption} --disable-shared --with-gmp-library=$$r/$(HOST_SUBDIR)/gmp/.libs --with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-bits=gmp --with-ppl \
+ --target=${target_alias} $${srcdiroption} --disable-shared --with-gmp=system --with-bits=gmp --with-isl=system \
|| exit 1
@endif cloog
@@ -13878,7 +13916,7 @@
$(HOST_EXPORTS) \
CFLAGS="$(STAGE1_CFLAGS)"; export CFLAGS; \
CXXFLAGS="$(STAGE1_CXXFLAGS)"; export CXXFLAGS; \
- LIBCFLAGS="$(LIBCFLAGS)"; export LIBCFLAGS; CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS)"; export LIBCFLAGS; CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
echo Configuring stage 1 in $(HOST_SUBDIR)/cloog ; \
$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/cloog ; \
cd $(HOST_SUBDIR)/cloog || exit 1; \
@@ -13893,7 +13931,7 @@
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} $${srcdiroption} \
$(STAGE1_CONFIGURE_FLAGS) \
- --disable-shared --with-gmp-library=$$r/$(HOST_SUBDIR)/gmp/.libs --with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-bits=gmp --with-ppl
+ --disable-shared --with-gmp=system --with-bits=gmp --with-isl=system
@endif cloog-bootstrap
.PHONY: configure-stage2-cloog maybe-configure-stage2-cloog
@@ -13911,7 +13949,7 @@
$(POSTSTAGE1_HOST_EXPORTS) \
CFLAGS="$(STAGE2_CFLAGS)"; export CFLAGS; \
CXXFLAGS="$(STAGE2_CXXFLAGS)"; export CXXFLAGS; \
- LIBCFLAGS="$(STAGE2_CFLAGS)"; export LIBCFLAGS; CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ LIBCFLAGS="$(STAGE2_CFLAGS)"; export LIBCFLAGS; CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
echo Configuring stage 2 in $(HOST_SUBDIR)/cloog ; \
$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/cloog ; \
cd $(HOST_SUBDIR)/cloog || exit 1; \
@@ -13927,7 +13965,7 @@
--target=${target_alias} $${srcdiroption} \
--with-build-libsubdir=$(HOST_SUBDIR) \
$(STAGE2_CONFIGURE_FLAGS) \
- --disable-shared --with-gmp-library=$$r/$(HOST_SUBDIR)/gmp/.libs --with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-bits=gmp --with-ppl
+ --disable-shared --with-gmp=system --with-bits=gmp --with-isl=system
@endif cloog-bootstrap
.PHONY: configure-stage3-cloog maybe-configure-stage3-cloog
@@ -13945,7 +13983,7 @@
$(POSTSTAGE1_HOST_EXPORTS) \
CFLAGS="$(STAGE3_CFLAGS)"; export CFLAGS; \
CXXFLAGS="$(STAGE3_CXXFLAGS)"; export CXXFLAGS; \
- LIBCFLAGS="$(STAGE3_CFLAGS)"; export LIBCFLAGS; CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ LIBCFLAGS="$(STAGE3_CFLAGS)"; export LIBCFLAGS; CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
echo Configuring stage 3 in $(HOST_SUBDIR)/cloog ; \
$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/cloog ; \
cd $(HOST_SUBDIR)/cloog || exit 1; \
@@ -13961,7 +13999,7 @@
--target=${target_alias} $${srcdiroption} \
--with-build-libsubdir=$(HOST_SUBDIR) \
$(STAGE3_CONFIGURE_FLAGS) \
- --disable-shared --with-gmp-library=$$r/$(HOST_SUBDIR)/gmp/.libs --with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-bits=gmp --with-ppl
+ --disable-shared --with-gmp=system --with-bits=gmp --with-isl=system
@endif cloog-bootstrap
.PHONY: configure-stage4-cloog maybe-configure-stage4-cloog
@@ -13979,7 +14017,7 @@
$(POSTSTAGE1_HOST_EXPORTS) \
CFLAGS="$(STAGE4_CFLAGS)"; export CFLAGS; \
CXXFLAGS="$(STAGE4_CXXFLAGS)"; export CXXFLAGS; \
- LIBCFLAGS="$(STAGE4_CFLAGS)"; export LIBCFLAGS; CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ LIBCFLAGS="$(STAGE4_CFLAGS)"; export LIBCFLAGS; CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
echo Configuring stage 4 in $(HOST_SUBDIR)/cloog ; \
$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/cloog ; \
cd $(HOST_SUBDIR)/cloog || exit 1; \
@@ -13995,7 +14033,7 @@
--target=${target_alias} $${srcdiroption} \
--with-build-libsubdir=$(HOST_SUBDIR) \
$(STAGE4_CONFIGURE_FLAGS) \
- --disable-shared --with-gmp-library=$$r/$(HOST_SUBDIR)/gmp/.libs --with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-bits=gmp --with-ppl
+ --disable-shared --with-gmp=system --with-bits=gmp --with-isl=system
@endif cloog-bootstrap
.PHONY: configure-stageprofile-cloog maybe-configure-stageprofile-cloog
@@ -14013,7 +14051,7 @@
$(POSTSTAGE1_HOST_EXPORTS) \
CFLAGS="$(STAGEprofile_CFLAGS)"; export CFLAGS; \
CXXFLAGS="$(STAGEprofile_CXXFLAGS)"; export CXXFLAGS; \
- LIBCFLAGS="$(STAGEprofile_CFLAGS)"; export LIBCFLAGS; CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ LIBCFLAGS="$(STAGEprofile_CFLAGS)"; export LIBCFLAGS; CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
echo Configuring stage profile in $(HOST_SUBDIR)/cloog ; \
$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/cloog ; \
cd $(HOST_SUBDIR)/cloog || exit 1; \
@@ -14029,7 +14067,7 @@
--target=${target_alias} $${srcdiroption} \
--with-build-libsubdir=$(HOST_SUBDIR) \
$(STAGEprofile_CONFIGURE_FLAGS) \
- --disable-shared --with-gmp-library=$$r/$(HOST_SUBDIR)/gmp/.libs --with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-bits=gmp --with-ppl
+ --disable-shared --with-gmp=system --with-bits=gmp --with-isl=system
@endif cloog-bootstrap
.PHONY: configure-stagefeedback-cloog maybe-configure-stagefeedback-cloog
@@ -14047,7 +14085,7 @@
$(POSTSTAGE1_HOST_EXPORTS) \
CFLAGS="$(STAGEfeedback_CFLAGS)"; export CFLAGS; \
CXXFLAGS="$(STAGEfeedback_CXXFLAGS)"; export CXXFLAGS; \
- LIBCFLAGS="$(STAGEfeedback_CFLAGS)"; export LIBCFLAGS; CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ LIBCFLAGS="$(STAGEfeedback_CFLAGS)"; export LIBCFLAGS; CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
echo Configuring stage feedback in $(HOST_SUBDIR)/cloog ; \
$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/cloog ; \
cd $(HOST_SUBDIR)/cloog || exit 1; \
@@ -14063,7 +14101,7 @@
--target=${target_alias} $${srcdiroption} \
--with-build-libsubdir=$(HOST_SUBDIR) \
$(STAGEfeedback_CONFIGURE_FLAGS) \
- --disable-shared --with-gmp-library=$$r/$(HOST_SUBDIR)/gmp/.libs --with-gmp-include=$$r/$(HOST_SUBDIR)/gmp --with-bits=gmp --with-ppl
+ --disable-shared --with-gmp=system --with-bits=gmp --with-isl=system
@endif cloog-bootstrap
@@ -14081,9 +14119,9 @@
all-cloog: configure-cloog
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ $(HOST_EXPORTS) CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
(cd $(HOST_SUBDIR)/cloog && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 \
$(TARGET-cloog))
@endif cloog
@@ -14102,7 +14140,7 @@
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGE1_TFLAGS)"; \
- $(HOST_EXPORTS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ $(HOST_EXPORTS) CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
cd $(HOST_SUBDIR)/cloog && \
$(MAKE) $(BASE_FLAGS_TO_PASS) \
CFLAGS="$(STAGE1_CFLAGS)" \
@@ -14111,7 +14149,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-cloog)
@@ -14126,7 +14165,7 @@
fi; \
cd $(HOST_SUBDIR)/cloog && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" clean
+ $(STAGE1_FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 clean
@endif cloog-bootstrap
@@ -14144,7 +14183,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGE2_TFLAGS)"; \
$(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ $(POSTSTAGE1_HOST_EXPORTS) CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
cd $(HOST_SUBDIR)/cloog && \
$(MAKE) $(BASE_FLAGS_TO_PASS) \
CFLAGS="$(STAGE2_CFLAGS)" \
@@ -14153,7 +14192,7 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 \
TFLAGS="$(STAGE2_TFLAGS)" \
$(TARGET-stage2-cloog)
@@ -14167,9 +14206,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/cloog && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 clean
@endif cloog-bootstrap
@@ -14187,7 +14224,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGE3_TFLAGS)"; \
$(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ $(POSTSTAGE1_HOST_EXPORTS) CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
cd $(HOST_SUBDIR)/cloog && \
$(MAKE) $(BASE_FLAGS_TO_PASS) \
CFLAGS="$(STAGE3_CFLAGS)" \
@@ -14196,7 +14233,7 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 \
TFLAGS="$(STAGE3_TFLAGS)" \
$(TARGET-stage3-cloog)
@@ -14210,9 +14247,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/cloog && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 clean
@endif cloog-bootstrap
@@ -14230,7 +14265,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGE4_TFLAGS)"; \
$(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ $(POSTSTAGE1_HOST_EXPORTS) CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
cd $(HOST_SUBDIR)/cloog && \
$(MAKE) $(BASE_FLAGS_TO_PASS) \
CFLAGS="$(STAGE4_CFLAGS)" \
@@ -14239,7 +14274,7 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 \
TFLAGS="$(STAGE4_TFLAGS)" \
$(TARGET-stage4-cloog)
@@ -14253,9 +14288,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/cloog && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 clean
@endif cloog-bootstrap
@@ -14273,7 +14306,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGEprofile_TFLAGS)"; \
$(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ $(POSTSTAGE1_HOST_EXPORTS) CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
cd $(HOST_SUBDIR)/cloog && \
$(MAKE) $(BASE_FLAGS_TO_PASS) \
CFLAGS="$(STAGEprofile_CFLAGS)" \
@@ -14282,7 +14315,7 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 \
TFLAGS="$(STAGEprofile_TFLAGS)" \
$(TARGET-stageprofile-cloog)
@@ -14296,9 +14329,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/cloog && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 clean
@endif cloog-bootstrap
@@ -14316,7 +14347,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
TFLAGS="$(STAGEfeedback_TFLAGS)"; \
$(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}"; export CPPFLAGS; LDFLAGS="$$LDFLAGS ${HOST_PPLLIBS}"; export LDFLAGS; \
+ $(POSTSTAGE1_HOST_EXPORTS) CPPFLAGS="$(HOST_GMPINC) $(HOST_ISLINC) $$CPPFLAGS"; export CPPFLAGS; LDFLAGS="-L$$r/$(HOST_SUBDIR)/gmp/.libs -L$$r/$(HOST_SUBDIR)/isl/.libs $$LDFLAGS"; export LDFLAGS; \
cd $(HOST_SUBDIR)/cloog && \
$(MAKE) $(BASE_FLAGS_TO_PASS) \
CFLAGS="$(STAGEfeedback_CFLAGS)" \
@@ -14325,7 +14356,7 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 \
TFLAGS="$(STAGEfeedback_TFLAGS)" \
$(TARGET-stagefeedback-cloog)
@@ -14339,9 +14370,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/cloog && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 clean
@endif cloog-bootstrap
@@ -14359,7 +14388,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/cloog && \
- $(MAKE) $(FLAGS_TO_PASS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS" check)
+ $(MAKE) $(FLAGS_TO_PASS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1 check)
@endif cloog
@@ -14394,7 +14423,7 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"; do \
+ for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in cloog" ; \
@@ -14419,7 +14448,7 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"; do \
+ for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in cloog" ; \
@@ -14444,7 +14473,7 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"; do \
+ for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing pdf in cloog" ; \
@@ -14469,7 +14498,7 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"; do \
+ for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing html in cloog" ; \
@@ -14494,7 +14523,7 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"; do \
+ for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in cloog" ; \
@@ -14520,7 +14549,7 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"; do \
+ for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in cloog" ; \
@@ -14546,7 +14575,7 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"; do \
+ for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-pdf in cloog" ; \
@@ -14572,7 +14601,7 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"; do \
+ for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-html in cloog" ; \
@@ -14597,7 +14626,7 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"; do \
+ for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in cloog" ; \
@@ -14621,7 +14650,7 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"; do \
+ for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in cloog" ; \
@@ -14645,7 +14674,7 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"; do \
+ for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in cloog" ; \
@@ -14669,7 +14698,7 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"; do \
+ for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in cloog" ; \
@@ -14693,7 +14722,7 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="${CPPFLAGS} ${HOST_PPLINC}" LDFLAGS="$$LDFLAGS"; do \
+ for flag in $(EXTRA_HOST_FLAGS) CPPFLAGS="$$CPPFLAGS" LDFLAGS="$$LDFLAGS" V=1; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in cloog" ; \
@@ -14958,7 +14987,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/libelf && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-libelf))
@endif libelf
@@ -14986,7 +15015,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-libelf)
@@ -15001,7 +15031,7 @@
fi; \
cd $(HOST_SUBDIR)/libelf && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif libelf-bootstrap
@@ -15042,9 +15072,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/libelf && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libelf-bootstrap
@@ -15085,9 +15113,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/libelf && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libelf-bootstrap
@@ -15128,9 +15154,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/libelf && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libelf-bootstrap
@@ -15171,9 +15195,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/libelf && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libelf-bootstrap
@@ -15214,9 +15236,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/libelf && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libelf-bootstrap
@@ -15827,7 +15847,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/gold && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-gold))
@endif gold
@@ -15855,7 +15875,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-gold)
@@ -15870,7 +15891,7 @@
fi; \
cd $(HOST_SUBDIR)/gold && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif gold-bootstrap
@@ -15911,9 +15932,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/gold && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gold-bootstrap
@@ -15954,9 +15973,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/gold && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gold-bootstrap
@@ -15997,9 +16014,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/gold && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gold-bootstrap
@@ -16040,9 +16055,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/gold && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gold-bootstrap
@@ -16083,9 +16096,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/gold && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif gold-bootstrap
@@ -16512,7 +16523,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/gprof && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-gprof))
@endif gprof
@@ -17148,7 +17159,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-intl))
@endif intl
@@ -17176,7 +17187,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-intl)
@@ -17191,7 +17203,7 @@
fi; \
cd $(HOST_SUBDIR)/intl && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif intl-bootstrap
@@ -17232,9 +17244,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif intl-bootstrap
@@ -17275,9 +17285,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif intl-bootstrap
@@ -17318,9 +17326,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif intl-bootstrap
@@ -17361,9 +17367,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif intl-bootstrap
@@ -17404,9 +17408,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif intl-bootstrap
@@ -17833,7 +17835,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/tcl && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-tcl))
@endif tcl
@@ -18258,7 +18260,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/itcl && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-itcl))
@endif itcl
@@ -18894,7 +18896,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-ld))
@endif ld
@@ -18922,7 +18924,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-ld)
@@ -18937,7 +18940,7 @@
fi; \
cd $(HOST_SUBDIR)/ld && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif ld-bootstrap
@@ -18978,9 +18981,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif ld-bootstrap
@@ -19021,9 +19022,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif ld-bootstrap
@@ -19064,9 +19063,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif ld-bootstrap
@@ -19107,9 +19104,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif ld-bootstrap
@@ -19150,9 +19145,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif ld-bootstrap
@@ -19532,6 +19525,878 @@
+.PHONY: configure-libbacktrace maybe-configure-libbacktrace
+maybe-configure-libbacktrace:
+@if gcc-bootstrap
+configure-libbacktrace: stage_current
+@endif gcc-bootstrap
+@if libbacktrace
+maybe-configure-libbacktrace: configure-libbacktrace
+configure-libbacktrace:
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ test ! -f $(HOST_SUBDIR)/libbacktrace/Makefile || exit 0; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libbacktrace ; \
+ $(HOST_EXPORTS) \
+ echo Configuring in $(HOST_SUBDIR)/libbacktrace; \
+ cd "$(HOST_SUBDIR)/libbacktrace" || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(HOST_SUBDIR)/libbacktrace/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libbacktrace"; \
+ libsrcdir="$$s/libbacktrace"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ || exit 1
+@endif libbacktrace
+
+
+
+.PHONY: configure-stage1-libbacktrace maybe-configure-stage1-libbacktrace
+maybe-configure-stage1-libbacktrace:
+@if libbacktrace-bootstrap
+maybe-configure-stage1-libbacktrace: configure-stage1-libbacktrace
+configure-stage1-libbacktrace:
+ @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libbacktrace
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE1_TFLAGS)"; \
+ test ! -f $(HOST_SUBDIR)/libbacktrace/Makefile || exit 0; \
+ $(HOST_EXPORTS) \
+ CFLAGS="$(STAGE1_CFLAGS)"; export CFLAGS; \
+ CXXFLAGS="$(STAGE1_CXXFLAGS)"; export CXXFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS)"; export LIBCFLAGS; \
+ echo Configuring stage 1 in $(HOST_SUBDIR)/libbacktrace ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libbacktrace ; \
+ cd $(HOST_SUBDIR)/libbacktrace || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(HOST_SUBDIR)/libbacktrace/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libbacktrace"; \
+ libsrcdir="$$s/libbacktrace"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ $(STAGE1_CONFIGURE_FLAGS)
+@endif libbacktrace-bootstrap
+
+.PHONY: configure-stage2-libbacktrace maybe-configure-stage2-libbacktrace
+maybe-configure-stage2-libbacktrace:
+@if libbacktrace-bootstrap
+maybe-configure-stage2-libbacktrace: configure-stage2-libbacktrace
+configure-stage2-libbacktrace:
+ @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libbacktrace
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE2_TFLAGS)"; \
+ test ! -f $(HOST_SUBDIR)/libbacktrace/Makefile || exit 0; \
+ $(HOST_EXPORTS) \
+ $(POSTSTAGE1_HOST_EXPORTS) \
+ CFLAGS="$(STAGE2_CFLAGS)"; export CFLAGS; \
+ CXXFLAGS="$(STAGE2_CXXFLAGS)"; export CXXFLAGS; \
+ LIBCFLAGS="$(STAGE2_CFLAGS)"; export LIBCFLAGS; \
+ echo Configuring stage 2 in $(HOST_SUBDIR)/libbacktrace ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libbacktrace ; \
+ cd $(HOST_SUBDIR)/libbacktrace || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(HOST_SUBDIR)/libbacktrace/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libbacktrace"; \
+ libsrcdir="$$s/libbacktrace"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGE2_CONFIGURE_FLAGS)
+@endif libbacktrace-bootstrap
+
+.PHONY: configure-stage3-libbacktrace maybe-configure-stage3-libbacktrace
+maybe-configure-stage3-libbacktrace:
+@if libbacktrace-bootstrap
+maybe-configure-stage3-libbacktrace: configure-stage3-libbacktrace
+configure-stage3-libbacktrace:
+ @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libbacktrace
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE3_TFLAGS)"; \
+ test ! -f $(HOST_SUBDIR)/libbacktrace/Makefile || exit 0; \
+ $(HOST_EXPORTS) \
+ $(POSTSTAGE1_HOST_EXPORTS) \
+ CFLAGS="$(STAGE3_CFLAGS)"; export CFLAGS; \
+ CXXFLAGS="$(STAGE3_CXXFLAGS)"; export CXXFLAGS; \
+ LIBCFLAGS="$(STAGE3_CFLAGS)"; export LIBCFLAGS; \
+ echo Configuring stage 3 in $(HOST_SUBDIR)/libbacktrace ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libbacktrace ; \
+ cd $(HOST_SUBDIR)/libbacktrace || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(HOST_SUBDIR)/libbacktrace/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libbacktrace"; \
+ libsrcdir="$$s/libbacktrace"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGE3_CONFIGURE_FLAGS)
+@endif libbacktrace-bootstrap
+
+.PHONY: configure-stage4-libbacktrace maybe-configure-stage4-libbacktrace
+maybe-configure-stage4-libbacktrace:
+@if libbacktrace-bootstrap
+maybe-configure-stage4-libbacktrace: configure-stage4-libbacktrace
+configure-stage4-libbacktrace:
+ @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libbacktrace
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE4_TFLAGS)"; \
+ test ! -f $(HOST_SUBDIR)/libbacktrace/Makefile || exit 0; \
+ $(HOST_EXPORTS) \
+ $(POSTSTAGE1_HOST_EXPORTS) \
+ CFLAGS="$(STAGE4_CFLAGS)"; export CFLAGS; \
+ CXXFLAGS="$(STAGE4_CXXFLAGS)"; export CXXFLAGS; \
+ LIBCFLAGS="$(STAGE4_CFLAGS)"; export LIBCFLAGS; \
+ echo Configuring stage 4 in $(HOST_SUBDIR)/libbacktrace ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libbacktrace ; \
+ cd $(HOST_SUBDIR)/libbacktrace || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(HOST_SUBDIR)/libbacktrace/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libbacktrace"; \
+ libsrcdir="$$s/libbacktrace"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGE4_CONFIGURE_FLAGS)
+@endif libbacktrace-bootstrap
+
+.PHONY: configure-stageprofile-libbacktrace maybe-configure-stageprofile-libbacktrace
+maybe-configure-stageprofile-libbacktrace:
+@if libbacktrace-bootstrap
+maybe-configure-stageprofile-libbacktrace: configure-stageprofile-libbacktrace
+configure-stageprofile-libbacktrace:
+ @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libbacktrace
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGEprofile_TFLAGS)"; \
+ test ! -f $(HOST_SUBDIR)/libbacktrace/Makefile || exit 0; \
+ $(HOST_EXPORTS) \
+ $(POSTSTAGE1_HOST_EXPORTS) \
+ CFLAGS="$(STAGEprofile_CFLAGS)"; export CFLAGS; \
+ CXXFLAGS="$(STAGEprofile_CXXFLAGS)"; export CXXFLAGS; \
+ LIBCFLAGS="$(STAGEprofile_CFLAGS)"; export LIBCFLAGS; \
+ echo Configuring stage profile in $(HOST_SUBDIR)/libbacktrace ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libbacktrace ; \
+ cd $(HOST_SUBDIR)/libbacktrace || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(HOST_SUBDIR)/libbacktrace/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libbacktrace"; \
+ libsrcdir="$$s/libbacktrace"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGEprofile_CONFIGURE_FLAGS)
+@endif libbacktrace-bootstrap
+
+.PHONY: configure-stagefeedback-libbacktrace maybe-configure-stagefeedback-libbacktrace
+maybe-configure-stagefeedback-libbacktrace:
+@if libbacktrace-bootstrap
+maybe-configure-stagefeedback-libbacktrace: configure-stagefeedback-libbacktrace
+configure-stagefeedback-libbacktrace:
+ @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libbacktrace
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGEfeedback_TFLAGS)"; \
+ test ! -f $(HOST_SUBDIR)/libbacktrace/Makefile || exit 0; \
+ $(HOST_EXPORTS) \
+ $(POSTSTAGE1_HOST_EXPORTS) \
+ CFLAGS="$(STAGEfeedback_CFLAGS)"; export CFLAGS; \
+ CXXFLAGS="$(STAGEfeedback_CXXFLAGS)"; export CXXFLAGS; \
+ LIBCFLAGS="$(STAGEfeedback_CFLAGS)"; export LIBCFLAGS; \
+ echo Configuring stage feedback in $(HOST_SUBDIR)/libbacktrace ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libbacktrace ; \
+ cd $(HOST_SUBDIR)/libbacktrace || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(HOST_SUBDIR)/libbacktrace/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libbacktrace"; \
+ libsrcdir="$$s/libbacktrace"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGEfeedback_CONFIGURE_FLAGS)
+@endif libbacktrace-bootstrap
+
+
+
+
+
+.PHONY: all-libbacktrace maybe-all-libbacktrace
+maybe-all-libbacktrace:
+@if gcc-bootstrap
+all-libbacktrace: stage_current
+@endif gcc-bootstrap
+@if libbacktrace
+TARGET-libbacktrace=all
+maybe-all-libbacktrace: all-libbacktrace
+all-libbacktrace: configure-libbacktrace
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
+ $(TARGET-libbacktrace))
+@endif libbacktrace
+
+
+
+.PHONY: all-stage1-libbacktrace maybe-all-stage1-libbacktrace
+.PHONY: clean-stage1-libbacktrace maybe-clean-stage1-libbacktrace
+maybe-all-stage1-libbacktrace:
+maybe-clean-stage1-libbacktrace:
+@if libbacktrace-bootstrap
+maybe-all-stage1-libbacktrace: all-stage1-libbacktrace
+all-stage1: all-stage1-libbacktrace
+TARGET-stage1-libbacktrace = $(TARGET-libbacktrace)
+all-stage1-libbacktrace: configure-stage1-libbacktrace
+ @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE1_TFLAGS)"; \
+ $(HOST_EXPORTS) \
+ cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)" \
+ CXXFLAGS="$(STAGE1_CXXFLAGS)" \
+ LIBCFLAGS="$(LIBCFLAGS)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
+ TFLAGS="$(STAGE1_TFLAGS)" \
+ $(TARGET-stage1-libbacktrace)
+
+maybe-clean-stage1-libbacktrace: clean-stage1-libbacktrace
+clean-stage1: clean-stage1-libbacktrace
+clean-stage1-libbacktrace:
+ @if [ $(current_stage) = stage1 ]; then \
+ [ -f $(HOST_SUBDIR)/libbacktrace/Makefile ] || exit 0; \
+ else \
+ [ -f $(HOST_SUBDIR)/stage1-libbacktrace/Makefile ] || exit 0; \
+ $(MAKE) stage1-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) clean
+@endif libbacktrace-bootstrap
+
+
+.PHONY: all-stage2-libbacktrace maybe-all-stage2-libbacktrace
+.PHONY: clean-stage2-libbacktrace maybe-clean-stage2-libbacktrace
+maybe-all-stage2-libbacktrace:
+maybe-clean-stage2-libbacktrace:
+@if libbacktrace-bootstrap
+maybe-all-stage2-libbacktrace: all-stage2-libbacktrace
+all-stage2: all-stage2-libbacktrace
+TARGET-stage2-libbacktrace = $(TARGET-libbacktrace)
+all-stage2-libbacktrace: configure-stage2-libbacktrace
+ @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE2_TFLAGS)"; \
+ $(HOST_EXPORTS) \
+ $(POSTSTAGE1_HOST_EXPORTS) \
+ cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE2_CFLAGS)" \
+ CXXFLAGS="$(STAGE2_CXXFLAGS)" \
+ LIBCFLAGS="$(STAGE2_CFLAGS)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) \
+ TFLAGS="$(STAGE2_TFLAGS)" \
+ $(TARGET-stage2-libbacktrace)
+
+maybe-clean-stage2-libbacktrace: clean-stage2-libbacktrace
+clean-stage2: clean-stage2-libbacktrace
+clean-stage2-libbacktrace:
+ @if [ $(current_stage) = stage2 ]; then \
+ [ -f $(HOST_SUBDIR)/libbacktrace/Makefile ] || exit 0; \
+ else \
+ [ -f $(HOST_SUBDIR)/stage2-libbacktrace/Makefile ] || exit 0; \
+ $(MAKE) stage2-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
+@endif libbacktrace-bootstrap
+
+
+.PHONY: all-stage3-libbacktrace maybe-all-stage3-libbacktrace
+.PHONY: clean-stage3-libbacktrace maybe-clean-stage3-libbacktrace
+maybe-all-stage3-libbacktrace:
+maybe-clean-stage3-libbacktrace:
+@if libbacktrace-bootstrap
+maybe-all-stage3-libbacktrace: all-stage3-libbacktrace
+all-stage3: all-stage3-libbacktrace
+TARGET-stage3-libbacktrace = $(TARGET-libbacktrace)
+all-stage3-libbacktrace: configure-stage3-libbacktrace
+ @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE3_TFLAGS)"; \
+ $(HOST_EXPORTS) \
+ $(POSTSTAGE1_HOST_EXPORTS) \
+ cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE3_CFLAGS)" \
+ CXXFLAGS="$(STAGE3_CXXFLAGS)" \
+ LIBCFLAGS="$(STAGE3_CFLAGS)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) \
+ TFLAGS="$(STAGE3_TFLAGS)" \
+ $(TARGET-stage3-libbacktrace)
+
+maybe-clean-stage3-libbacktrace: clean-stage3-libbacktrace
+clean-stage3: clean-stage3-libbacktrace
+clean-stage3-libbacktrace:
+ @if [ $(current_stage) = stage3 ]; then \
+ [ -f $(HOST_SUBDIR)/libbacktrace/Makefile ] || exit 0; \
+ else \
+ [ -f $(HOST_SUBDIR)/stage3-libbacktrace/Makefile ] || exit 0; \
+ $(MAKE) stage3-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
+@endif libbacktrace-bootstrap
+
+
+.PHONY: all-stage4-libbacktrace maybe-all-stage4-libbacktrace
+.PHONY: clean-stage4-libbacktrace maybe-clean-stage4-libbacktrace
+maybe-all-stage4-libbacktrace:
+maybe-clean-stage4-libbacktrace:
+@if libbacktrace-bootstrap
+maybe-all-stage4-libbacktrace: all-stage4-libbacktrace
+all-stage4: all-stage4-libbacktrace
+TARGET-stage4-libbacktrace = $(TARGET-libbacktrace)
+all-stage4-libbacktrace: configure-stage4-libbacktrace
+ @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE4_TFLAGS)"; \
+ $(HOST_EXPORTS) \
+ $(POSTSTAGE1_HOST_EXPORTS) \
+ cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE4_CFLAGS)" \
+ CXXFLAGS="$(STAGE4_CXXFLAGS)" \
+ LIBCFLAGS="$(STAGE4_CFLAGS)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) \
+ TFLAGS="$(STAGE4_TFLAGS)" \
+ $(TARGET-stage4-libbacktrace)
+
+maybe-clean-stage4-libbacktrace: clean-stage4-libbacktrace
+clean-stage4: clean-stage4-libbacktrace
+clean-stage4-libbacktrace:
+ @if [ $(current_stage) = stage4 ]; then \
+ [ -f $(HOST_SUBDIR)/libbacktrace/Makefile ] || exit 0; \
+ else \
+ [ -f $(HOST_SUBDIR)/stage4-libbacktrace/Makefile ] || exit 0; \
+ $(MAKE) stage4-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
+@endif libbacktrace-bootstrap
+
+
+.PHONY: all-stageprofile-libbacktrace maybe-all-stageprofile-libbacktrace
+.PHONY: clean-stageprofile-libbacktrace maybe-clean-stageprofile-libbacktrace
+maybe-all-stageprofile-libbacktrace:
+maybe-clean-stageprofile-libbacktrace:
+@if libbacktrace-bootstrap
+maybe-all-stageprofile-libbacktrace: all-stageprofile-libbacktrace
+all-stageprofile: all-stageprofile-libbacktrace
+TARGET-stageprofile-libbacktrace = $(TARGET-libbacktrace)
+all-stageprofile-libbacktrace: configure-stageprofile-libbacktrace
+ @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGEprofile_TFLAGS)"; \
+ $(HOST_EXPORTS) \
+ $(POSTSTAGE1_HOST_EXPORTS) \
+ cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(STAGEprofile_CFLAGS)" \
+ CXXFLAGS="$(STAGEprofile_CXXFLAGS)" \
+ LIBCFLAGS="$(STAGEprofile_CFLAGS)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) \
+ TFLAGS="$(STAGEprofile_TFLAGS)" \
+ $(TARGET-stageprofile-libbacktrace)
+
+maybe-clean-stageprofile-libbacktrace: clean-stageprofile-libbacktrace
+clean-stageprofile: clean-stageprofile-libbacktrace
+clean-stageprofile-libbacktrace:
+ @if [ $(current_stage) = stageprofile ]; then \
+ [ -f $(HOST_SUBDIR)/libbacktrace/Makefile ] || exit 0; \
+ else \
+ [ -f $(HOST_SUBDIR)/stageprofile-libbacktrace/Makefile ] || exit 0; \
+ $(MAKE) stageprofile-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
+@endif libbacktrace-bootstrap
+
+
+.PHONY: all-stagefeedback-libbacktrace maybe-all-stagefeedback-libbacktrace
+.PHONY: clean-stagefeedback-libbacktrace maybe-clean-stagefeedback-libbacktrace
+maybe-all-stagefeedback-libbacktrace:
+maybe-clean-stagefeedback-libbacktrace:
+@if libbacktrace-bootstrap
+maybe-all-stagefeedback-libbacktrace: all-stagefeedback-libbacktrace
+all-stagefeedback: all-stagefeedback-libbacktrace
+TARGET-stagefeedback-libbacktrace = $(TARGET-libbacktrace)
+all-stagefeedback-libbacktrace: configure-stagefeedback-libbacktrace
+ @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGEfeedback_TFLAGS)"; \
+ $(HOST_EXPORTS) \
+ $(POSTSTAGE1_HOST_EXPORTS) \
+ cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(STAGEfeedback_CFLAGS)" \
+ CXXFLAGS="$(STAGEfeedback_CXXFLAGS)" \
+ LIBCFLAGS="$(STAGEfeedback_CFLAGS)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) \
+ TFLAGS="$(STAGEfeedback_TFLAGS)" \
+ $(TARGET-stagefeedback-libbacktrace)
+
+maybe-clean-stagefeedback-libbacktrace: clean-stagefeedback-libbacktrace
+clean-stagefeedback: clean-stagefeedback-libbacktrace
+clean-stagefeedback-libbacktrace:
+ @if [ $(current_stage) = stagefeedback ]; then \
+ [ -f $(HOST_SUBDIR)/libbacktrace/Makefile ] || exit 0; \
+ else \
+ [ -f $(HOST_SUBDIR)/stagefeedback-libbacktrace/Makefile ] || exit 0; \
+ $(MAKE) stagefeedback-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
+@endif libbacktrace-bootstrap
+
+
+
+
+
+.PHONY: check-libbacktrace maybe-check-libbacktrace
+maybe-check-libbacktrace:
+@if libbacktrace
+maybe-check-libbacktrace: check-libbacktrace
+
+check-libbacktrace:
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(FLAGS_TO_PASS) check)
+
+@endif libbacktrace
+
+.PHONY: install-libbacktrace maybe-install-libbacktrace
+maybe-install-libbacktrace:
+@if libbacktrace
+maybe-install-libbacktrace: install-libbacktrace
+
+install-libbacktrace: installdirs
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(FLAGS_TO_PASS) install)
+
+@endif libbacktrace
+
+.PHONY: install-strip-libbacktrace maybe-install-strip-libbacktrace
+maybe-install-strip-libbacktrace:
+@if libbacktrace
+maybe-install-strip-libbacktrace: install-strip-libbacktrace
+
+install-strip-libbacktrace: installdirs
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(FLAGS_TO_PASS) install-strip)
+
+@endif libbacktrace
+
+# Other targets (info, dvi, pdf, etc.)
+
+.PHONY: maybe-info-libbacktrace info-libbacktrace
+maybe-info-libbacktrace:
+@if libbacktrace
+maybe-info-libbacktrace: info-libbacktrace
+
+info-libbacktrace: \
+ configure-libbacktrace
+ @[ -f ./libbacktrace/Makefile ] || exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ for flag in $(EXTRA_HOST_FLAGS) ; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing info in libbacktrace" ; \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ info) \
+ || exit 1
+
+@endif libbacktrace
+
+.PHONY: maybe-dvi-libbacktrace dvi-libbacktrace
+maybe-dvi-libbacktrace:
+@if libbacktrace
+maybe-dvi-libbacktrace: dvi-libbacktrace
+
+dvi-libbacktrace: \
+ configure-libbacktrace
+ @[ -f ./libbacktrace/Makefile ] || exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ for flag in $(EXTRA_HOST_FLAGS) ; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing dvi in libbacktrace" ; \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ dvi) \
+ || exit 1
+
+@endif libbacktrace
+
+.PHONY: maybe-pdf-libbacktrace pdf-libbacktrace
+maybe-pdf-libbacktrace:
+@if libbacktrace
+maybe-pdf-libbacktrace: pdf-libbacktrace
+
+pdf-libbacktrace: \
+ configure-libbacktrace
+ @[ -f ./libbacktrace/Makefile ] || exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ for flag in $(EXTRA_HOST_FLAGS) ; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing pdf in libbacktrace" ; \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ pdf) \
+ || exit 1
+
+@endif libbacktrace
+
+.PHONY: maybe-html-libbacktrace html-libbacktrace
+maybe-html-libbacktrace:
+@if libbacktrace
+maybe-html-libbacktrace: html-libbacktrace
+
+html-libbacktrace: \
+ configure-libbacktrace
+ @[ -f ./libbacktrace/Makefile ] || exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ for flag in $(EXTRA_HOST_FLAGS) ; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing html in libbacktrace" ; \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ html) \
+ || exit 1
+
+@endif libbacktrace
+
+.PHONY: maybe-TAGS-libbacktrace TAGS-libbacktrace
+maybe-TAGS-libbacktrace:
+@if libbacktrace
+maybe-TAGS-libbacktrace: TAGS-libbacktrace
+
+TAGS-libbacktrace: \
+ configure-libbacktrace
+ @[ -f ./libbacktrace/Makefile ] || exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ for flag in $(EXTRA_HOST_FLAGS) ; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing TAGS in libbacktrace" ; \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ TAGS) \
+ || exit 1
+
+@endif libbacktrace
+
+.PHONY: maybe-install-info-libbacktrace install-info-libbacktrace
+maybe-install-info-libbacktrace:
+@if libbacktrace
+maybe-install-info-libbacktrace: install-info-libbacktrace
+
+install-info-libbacktrace: \
+ configure-libbacktrace \
+ info-libbacktrace
+ @[ -f ./libbacktrace/Makefile ] || exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ for flag in $(EXTRA_HOST_FLAGS) ; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing install-info in libbacktrace" ; \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-info) \
+ || exit 1
+
+@endif libbacktrace
+
+.PHONY: maybe-install-pdf-libbacktrace install-pdf-libbacktrace
+maybe-install-pdf-libbacktrace:
+@if libbacktrace
+maybe-install-pdf-libbacktrace: install-pdf-libbacktrace
+
+install-pdf-libbacktrace: \
+ configure-libbacktrace \
+ pdf-libbacktrace
+ @[ -f ./libbacktrace/Makefile ] || exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ for flag in $(EXTRA_HOST_FLAGS) ; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing install-pdf in libbacktrace" ; \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-pdf) \
+ || exit 1
+
+@endif libbacktrace
+
+.PHONY: maybe-install-html-libbacktrace install-html-libbacktrace
+maybe-install-html-libbacktrace:
+@if libbacktrace
+maybe-install-html-libbacktrace: install-html-libbacktrace
+
+install-html-libbacktrace: \
+ configure-libbacktrace \
+ html-libbacktrace
+ @[ -f ./libbacktrace/Makefile ] || exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ for flag in $(EXTRA_HOST_FLAGS) ; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing install-html in libbacktrace" ; \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-html) \
+ || exit 1
+
+@endif libbacktrace
+
+.PHONY: maybe-installcheck-libbacktrace installcheck-libbacktrace
+maybe-installcheck-libbacktrace:
+@if libbacktrace
+maybe-installcheck-libbacktrace: installcheck-libbacktrace
+
+installcheck-libbacktrace: \
+ configure-libbacktrace
+ @[ -f ./libbacktrace/Makefile ] || exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ for flag in $(EXTRA_HOST_FLAGS) ; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing installcheck in libbacktrace" ; \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ installcheck) \
+ || exit 1
+
+@endif libbacktrace
+
+.PHONY: maybe-mostlyclean-libbacktrace mostlyclean-libbacktrace
+maybe-mostlyclean-libbacktrace:
+@if libbacktrace
+maybe-mostlyclean-libbacktrace: mostlyclean-libbacktrace
+
+mostlyclean-libbacktrace:
+ @[ -f ./libbacktrace/Makefile ] || exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ for flag in $(EXTRA_HOST_FLAGS) ; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing mostlyclean in libbacktrace" ; \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ mostlyclean) \
+ || exit 1
+
+@endif libbacktrace
+
+.PHONY: maybe-clean-libbacktrace clean-libbacktrace
+maybe-clean-libbacktrace:
+@if libbacktrace
+maybe-clean-libbacktrace: clean-libbacktrace
+
+clean-libbacktrace:
+ @[ -f ./libbacktrace/Makefile ] || exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ for flag in $(EXTRA_HOST_FLAGS) ; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing clean in libbacktrace" ; \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ clean) \
+ || exit 1
+
+@endif libbacktrace
+
+.PHONY: maybe-distclean-libbacktrace distclean-libbacktrace
+maybe-distclean-libbacktrace:
+@if libbacktrace
+maybe-distclean-libbacktrace: distclean-libbacktrace
+
+distclean-libbacktrace:
+ @[ -f ./libbacktrace/Makefile ] || exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ for flag in $(EXTRA_HOST_FLAGS) ; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing distclean in libbacktrace" ; \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ distclean) \
+ || exit 1
+
+@endif libbacktrace
+
+.PHONY: maybe-maintainer-clean-libbacktrace maintainer-clean-libbacktrace
+maybe-maintainer-clean-libbacktrace:
+@if libbacktrace
+maybe-maintainer-clean-libbacktrace: maintainer-clean-libbacktrace
+
+maintainer-clean-libbacktrace:
+ @[ -f ./libbacktrace/Makefile ] || exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ for flag in $(EXTRA_HOST_FLAGS) ; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing maintainer-clean in libbacktrace" ; \
+ (cd $(HOST_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ maintainer-clean) \
+ || exit 1
+
+@endif libbacktrace
+
+
+
.PHONY: configure-libcpp maybe-configure-libcpp
maybe-configure-libcpp:
@if gcc-bootstrap
@@ -19775,7 +20640,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-libcpp))
@endif libcpp
@@ -19803,7 +20668,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-libcpp)
@@ -19818,7 +20684,7 @@
fi; \
cd $(HOST_SUBDIR)/libcpp && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif libcpp-bootstrap
@@ -19859,9 +20725,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libcpp-bootstrap
@@ -19902,9 +20766,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libcpp-bootstrap
@@ -19945,9 +20807,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libcpp-bootstrap
@@ -19988,9 +20848,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libcpp-bootstrap
@@ -20031,9 +20889,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libcpp-bootstrap
@@ -20656,7 +21512,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-libdecnumber))
@endif libdecnumber
@@ -20684,7 +21540,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-libdecnumber)
@@ -20699,7 +21556,7 @@
fi; \
cd $(HOST_SUBDIR)/libdecnumber && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif libdecnumber-bootstrap
@@ -20740,9 +21597,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libdecnumber-bootstrap
@@ -20783,9 +21638,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libdecnumber-bootstrap
@@ -20826,9 +21679,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libdecnumber-bootstrap
@@ -20869,9 +21720,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libdecnumber-bootstrap
@@ -20912,9 +21761,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libdecnumber-bootstrap
@@ -21341,7 +22188,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/libgui && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-libgui))
@endif libgui
@@ -21983,7 +22830,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-libiberty))
@endif libiberty
@@ -22011,7 +22858,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-libiberty)
@@ -22026,7 +22874,7 @@
fi; \
cd $(HOST_SUBDIR)/libiberty && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif libiberty-bootstrap
@@ -22067,9 +22915,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libiberty-bootstrap
@@ -22110,9 +22956,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libiberty-bootstrap
@@ -22153,9 +22997,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libiberty-bootstrap
@@ -22196,9 +23038,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libiberty-bootstrap
@@ -22239,9 +23079,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif libiberty-bootstrap
@@ -22668,7 +23506,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/libiconv && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-libiconv))
@endif libiconv
@@ -23045,7 +23883,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/m4 && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-m4))
@endif m4
@@ -23485,7 +24323,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/readline && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-readline))
@endif readline
@@ -23925,7 +24763,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/sid && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-sid))
@endif sid
@@ -24365,7 +25203,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/sim && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-sim))
@endif sim
@@ -24805,7 +25643,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/texinfo && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-texinfo))
@endif texinfo
@@ -25429,7 +26267,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-zlib))
@endif zlib
@@ -25457,7 +26295,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-zlib)
@@ -25472,7 +26311,7 @@
fi; \
cd $(HOST_SUBDIR)/zlib && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif zlib-bootstrap
@@ -25513,9 +26352,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif zlib-bootstrap
@@ -25556,9 +26393,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif zlib-bootstrap
@@ -25599,9 +26434,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif zlib-bootstrap
@@ -25642,9 +26475,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif zlib-bootstrap
@@ -25685,9 +26516,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif zlib-bootstrap
@@ -26096,7 +26925,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/gdb && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-gdb))
@endif gdb
@@ -26536,7 +27365,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/expect && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-expect))
@endif expect
@@ -26976,7 +27805,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/guile && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-guile))
@endif guile
@@ -27416,7 +28245,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/tk && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-tk))
@endif tk
@@ -27856,7 +28685,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/libtermcap && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-libtermcap))
@endif libtermcap
@@ -28230,7 +29059,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/utils && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-utils))
@endif utils
@@ -28664,7 +29493,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-gnattools))
@endif gnattools
@@ -29306,7 +30135,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/lto-plugin && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-lto-plugin))
@endif lto-plugin
@@ -29334,7 +30163,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_HOST_FLAGS) \
+ $(EXTRA_HOST_FLAGS) \
+ $(STAGE1_FLAGS_TO_PASS) \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-lto-plugin)
@@ -29349,7 +30179,7 @@
fi; \
cd $(HOST_SUBDIR)/lto-plugin && \
$(MAKE) $(EXTRA_HOST_FLAGS) \
- clean
+ $(STAGE1_FLAGS_TO_PASS) clean
@endif lto-plugin-bootstrap
@@ -29390,9 +30220,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(HOST_SUBDIR)/lto-plugin && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif lto-plugin-bootstrap
@@ -29433,9 +30261,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(HOST_SUBDIR)/lto-plugin && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif lto-plugin-bootstrap
@@ -29476,9 +30302,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(HOST_SUBDIR)/lto-plugin && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif lto-plugin-bootstrap
@@ -29519,9 +30343,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(HOST_SUBDIR)/lto-plugin && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif lto-plugin-bootstrap
@@ -29562,9 +30384,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(HOST_SUBDIR)/lto-plugin && \
- $(MAKE) $(EXTRA_HOST_FLAGS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
+ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) clean
@endif lto-plugin-bootstrap
@@ -30280,7 +31100,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(RAW_CXX_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libstdc++-v3 && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
$(TARGET-target-libstdc++-v3))
@endif target-libstdc++-v3
@@ -30308,7 +31128,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-target-libstdc++-v3)
@@ -30323,7 +31144,7 @@
fi; \
cd $(TARGET_SUBDIR)/libstdc++-v3 && \
$(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
- clean
+ clean
@endif target-libstdc++-v3-bootstrap
@@ -30364,9 +31185,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(TARGET_SUBDIR)/libstdc++-v3 && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
@endif target-libstdc++-v3-bootstrap
@@ -30407,9 +31226,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(TARGET_SUBDIR)/libstdc++-v3 && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
@endif target-libstdc++-v3-bootstrap
@@ -30450,9 +31267,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(TARGET_SUBDIR)/libstdc++-v3 && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
@endif target-libstdc++-v3-bootstrap
@@ -30493,9 +31308,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(TARGET_SUBDIR)/libstdc++-v3 && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
@endif target-libstdc++-v3-bootstrap
@@ -30536,9 +31349,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(TARGET_SUBDIR)/libstdc++-v3 && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
@endif target-libstdc++-v3-bootstrap
@@ -30995,7 +31806,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libmudflap && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-libmudflap))
@endif target-libmudflap
@@ -31391,6 +32202,1954 @@
+.PHONY: configure-target-libsanitizer maybe-configure-target-libsanitizer
+maybe-configure-target-libsanitizer:
+@if gcc-bootstrap
+configure-target-libsanitizer: stage_current
+@endif gcc-bootstrap
+@if target-libsanitizer
+maybe-configure-target-libsanitizer: configure-target-libsanitizer
+configure-target-libsanitizer:
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ echo "Checking multilib configuration for libsanitizer..."; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer ; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libsanitizer/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/Makefile; \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libsanitizer/Makefile || exit 0; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer ; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo Configuring in $(TARGET_SUBDIR)/libsanitizer; \
+ cd "$(TARGET_SUBDIR)/libsanitizer" || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libsanitizer/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libsanitizer"; \
+ libsrcdir="$$s/libsanitizer"; \
+ rm -f no-such-file || : ; \
+ CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ || exit 1
+@endif target-libsanitizer
+
+
+
+.PHONY: configure-stage1-target-libsanitizer maybe-configure-stage1-target-libsanitizer
+maybe-configure-stage1-target-libsanitizer:
+@if target-libsanitizer-bootstrap
+maybe-configure-stage1-target-libsanitizer: configure-stage1-target-libsanitizer
+configure-stage1-target-libsanitizer:
+ @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE1_TFLAGS)"; \
+ echo "Checking multilib configuration for libsanitizer..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libsanitizer/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/Makefile; \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libsanitizer/Makefile || exit 0; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)"; export LIBCFLAGS; \
+ echo Configuring stage 1 in $(TARGET_SUBDIR)/libsanitizer ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer ; \
+ cd $(TARGET_SUBDIR)/libsanitizer || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libsanitizer/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libsanitizer"; \
+ libsrcdir="$$s/libsanitizer"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ $(STAGE1_CONFIGURE_FLAGS)
+@endif target-libsanitizer-bootstrap
+
+.PHONY: configure-stage2-target-libsanitizer maybe-configure-stage2-target-libsanitizer
+maybe-configure-stage2-target-libsanitizer:
+@if target-libsanitizer-bootstrap
+maybe-configure-stage2-target-libsanitizer: configure-stage2-target-libsanitizer
+configure-stage2-target-libsanitizer:
+ @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE2_TFLAGS)"; \
+ echo "Checking multilib configuration for libsanitizer..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libsanitizer/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/Makefile; \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libsanitizer/Makefile || exit 0; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)"; export LIBCFLAGS; \
+ echo Configuring stage 2 in $(TARGET_SUBDIR)/libsanitizer ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer ; \
+ cd $(TARGET_SUBDIR)/libsanitizer || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libsanitizer/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libsanitizer"; \
+ libsrcdir="$$s/libsanitizer"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGE2_CONFIGURE_FLAGS)
+@endif target-libsanitizer-bootstrap
+
+.PHONY: configure-stage3-target-libsanitizer maybe-configure-stage3-target-libsanitizer
+maybe-configure-stage3-target-libsanitizer:
+@if target-libsanitizer-bootstrap
+maybe-configure-stage3-target-libsanitizer: configure-stage3-target-libsanitizer
+configure-stage3-target-libsanitizer:
+ @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE3_TFLAGS)"; \
+ echo "Checking multilib configuration for libsanitizer..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libsanitizer/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/Makefile; \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libsanitizer/Makefile || exit 0; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)"; export LIBCFLAGS; \
+ echo Configuring stage 3 in $(TARGET_SUBDIR)/libsanitizer ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer ; \
+ cd $(TARGET_SUBDIR)/libsanitizer || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libsanitizer/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libsanitizer"; \
+ libsrcdir="$$s/libsanitizer"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGE3_CONFIGURE_FLAGS)
+@endif target-libsanitizer-bootstrap
+
+.PHONY: configure-stage4-target-libsanitizer maybe-configure-stage4-target-libsanitizer
+maybe-configure-stage4-target-libsanitizer:
+@if target-libsanitizer-bootstrap
+maybe-configure-stage4-target-libsanitizer: configure-stage4-target-libsanitizer
+configure-stage4-target-libsanitizer:
+ @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE4_TFLAGS)"; \
+ echo "Checking multilib configuration for libsanitizer..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libsanitizer/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/Makefile; \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libsanitizer/Makefile || exit 0; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)"; export LIBCFLAGS; \
+ echo Configuring stage 4 in $(TARGET_SUBDIR)/libsanitizer ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer ; \
+ cd $(TARGET_SUBDIR)/libsanitizer || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libsanitizer/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libsanitizer"; \
+ libsrcdir="$$s/libsanitizer"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGE4_CONFIGURE_FLAGS)
+@endif target-libsanitizer-bootstrap
+
+.PHONY: configure-stageprofile-target-libsanitizer maybe-configure-stageprofile-target-libsanitizer
+maybe-configure-stageprofile-target-libsanitizer:
+@if target-libsanitizer-bootstrap
+maybe-configure-stageprofile-target-libsanitizer: configure-stageprofile-target-libsanitizer
+configure-stageprofile-target-libsanitizer:
+ @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGEprofile_TFLAGS)"; \
+ echo "Checking multilib configuration for libsanitizer..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libsanitizer/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/Makefile; \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libsanitizer/Makefile || exit 0; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)"; export LIBCFLAGS; \
+ echo Configuring stage profile in $(TARGET_SUBDIR)/libsanitizer ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer ; \
+ cd $(TARGET_SUBDIR)/libsanitizer || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libsanitizer/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libsanitizer"; \
+ libsrcdir="$$s/libsanitizer"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGEprofile_CONFIGURE_FLAGS)
+@endif target-libsanitizer-bootstrap
+
+.PHONY: configure-stagefeedback-target-libsanitizer maybe-configure-stagefeedback-target-libsanitizer
+maybe-configure-stagefeedback-target-libsanitizer:
+@if target-libsanitizer-bootstrap
+maybe-configure-stagefeedback-target-libsanitizer: configure-stagefeedback-target-libsanitizer
+configure-stagefeedback-target-libsanitizer:
+ @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGEfeedback_TFLAGS)"; \
+ echo "Checking multilib configuration for libsanitizer..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libsanitizer/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libsanitizer/Makefile; \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libsanitizer/multilib.tmp $(TARGET_SUBDIR)/libsanitizer/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libsanitizer/Makefile || exit 0; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)"; export LIBCFLAGS; \
+ echo Configuring stage feedback in $(TARGET_SUBDIR)/libsanitizer ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libsanitizer ; \
+ cd $(TARGET_SUBDIR)/libsanitizer || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libsanitizer/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libsanitizer"; \
+ libsrcdir="$$s/libsanitizer"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGEfeedback_CONFIGURE_FLAGS)
+@endif target-libsanitizer-bootstrap
+
+
+
+
+
+.PHONY: all-target-libsanitizer maybe-all-target-libsanitizer
+maybe-all-target-libsanitizer:
+@if gcc-bootstrap
+all-target-libsanitizer: stage_current
+@endif gcc-bootstrap
+@if target-libsanitizer
+TARGET-target-libsanitizer=all
+maybe-all-target-libsanitizer: all-target-libsanitizer
+all-target-libsanitizer: configure-target-libsanitizer
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ $(TARGET-target-libsanitizer))
+@endif target-libsanitizer
+
+
+
+.PHONY: all-stage1-target-libsanitizer maybe-all-stage1-target-libsanitizer
+.PHONY: clean-stage1-target-libsanitizer maybe-clean-stage1-target-libsanitizer
+maybe-all-stage1-target-libsanitizer:
+maybe-clean-stage1-target-libsanitizer:
+@if target-libsanitizer-bootstrap
+maybe-all-stage1-target-libsanitizer: all-stage1-target-libsanitizer
+all-stage1: all-stage1-target-libsanitizer
+TARGET-stage1-target-libsanitizer = $(TARGET-target-libsanitizer)
+all-stage1-target-libsanitizer: configure-stage1-target-libsanitizer
+ @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE1_TFLAGS)"; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ \
+ TFLAGS="$(STAGE1_TFLAGS)" \
+ $(TARGET-stage1-target-libsanitizer)
+
+maybe-clean-stage1-target-libsanitizer: clean-stage1-target-libsanitizer
+clean-stage1: clean-stage1-target-libsanitizer
+clean-stage1-target-libsanitizer:
+ @if [ $(current_stage) = stage1 ]; then \
+ [ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0; \
+ else \
+ [ -f $(TARGET_SUBDIR)/stage1-libsanitizer/Makefile ] || exit 0; \
+ $(MAKE) stage1-start; \
+ fi; \
+ cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ clean
+@endif target-libsanitizer-bootstrap
+
+
+.PHONY: all-stage2-target-libsanitizer maybe-all-stage2-target-libsanitizer
+.PHONY: clean-stage2-target-libsanitizer maybe-clean-stage2-target-libsanitizer
+maybe-all-stage2-target-libsanitizer:
+maybe-clean-stage2-target-libsanitizer:
+@if target-libsanitizer-bootstrap
+maybe-all-stage2-target-libsanitizer: all-stage2-target-libsanitizer
+all-stage2: all-stage2-target-libsanitizer
+TARGET-stage2-target-libsanitizer = $(TARGET-target-libsanitizer)
+all-stage2-target-libsanitizer: configure-stage2-target-libsanitizer
+ @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE2_TFLAGS)"; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ TFLAGS="$(STAGE2_TFLAGS)" \
+ $(TARGET-stage2-target-libsanitizer)
+
+maybe-clean-stage2-target-libsanitizer: clean-stage2-target-libsanitizer
+clean-stage2: clean-stage2-target-libsanitizer
+clean-stage2-target-libsanitizer:
+ @if [ $(current_stage) = stage2 ]; then \
+ [ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0; \
+ else \
+ [ -f $(TARGET_SUBDIR)/stage2-libsanitizer/Makefile ] || exit 0; \
+ $(MAKE) stage2-start; \
+ fi; \
+ cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
+@endif target-libsanitizer-bootstrap
+
+
+.PHONY: all-stage3-target-libsanitizer maybe-all-stage3-target-libsanitizer
+.PHONY: clean-stage3-target-libsanitizer maybe-clean-stage3-target-libsanitizer
+maybe-all-stage3-target-libsanitizer:
+maybe-clean-stage3-target-libsanitizer:
+@if target-libsanitizer-bootstrap
+maybe-all-stage3-target-libsanitizer: all-stage3-target-libsanitizer
+all-stage3: all-stage3-target-libsanitizer
+TARGET-stage3-target-libsanitizer = $(TARGET-target-libsanitizer)
+all-stage3-target-libsanitizer: configure-stage3-target-libsanitizer
+ @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE3_TFLAGS)"; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ TFLAGS="$(STAGE3_TFLAGS)" \
+ $(TARGET-stage3-target-libsanitizer)
+
+maybe-clean-stage3-target-libsanitizer: clean-stage3-target-libsanitizer
+clean-stage3: clean-stage3-target-libsanitizer
+clean-stage3-target-libsanitizer:
+ @if [ $(current_stage) = stage3 ]; then \
+ [ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0; \
+ else \
+ [ -f $(TARGET_SUBDIR)/stage3-libsanitizer/Makefile ] || exit 0; \
+ $(MAKE) stage3-start; \
+ fi; \
+ cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
+@endif target-libsanitizer-bootstrap
+
+
+.PHONY: all-stage4-target-libsanitizer maybe-all-stage4-target-libsanitizer
+.PHONY: clean-stage4-target-libsanitizer maybe-clean-stage4-target-libsanitizer
+maybe-all-stage4-target-libsanitizer:
+maybe-clean-stage4-target-libsanitizer:
+@if target-libsanitizer-bootstrap
+maybe-all-stage4-target-libsanitizer: all-stage4-target-libsanitizer
+all-stage4: all-stage4-target-libsanitizer
+TARGET-stage4-target-libsanitizer = $(TARGET-target-libsanitizer)
+all-stage4-target-libsanitizer: configure-stage4-target-libsanitizer
+ @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE4_TFLAGS)"; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ TFLAGS="$(STAGE4_TFLAGS)" \
+ $(TARGET-stage4-target-libsanitizer)
+
+maybe-clean-stage4-target-libsanitizer: clean-stage4-target-libsanitizer
+clean-stage4: clean-stage4-target-libsanitizer
+clean-stage4-target-libsanitizer:
+ @if [ $(current_stage) = stage4 ]; then \
+ [ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0; \
+ else \
+ [ -f $(TARGET_SUBDIR)/stage4-libsanitizer/Makefile ] || exit 0; \
+ $(MAKE) stage4-start; \
+ fi; \
+ cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
+@endif target-libsanitizer-bootstrap
+
+
+.PHONY: all-stageprofile-target-libsanitizer maybe-all-stageprofile-target-libsanitizer
+.PHONY: clean-stageprofile-target-libsanitizer maybe-clean-stageprofile-target-libsanitizer
+maybe-all-stageprofile-target-libsanitizer:
+maybe-clean-stageprofile-target-libsanitizer:
+@if target-libsanitizer-bootstrap
+maybe-all-stageprofile-target-libsanitizer: all-stageprofile-target-libsanitizer
+all-stageprofile: all-stageprofile-target-libsanitizer
+TARGET-stageprofile-target-libsanitizer = $(TARGET-target-libsanitizer)
+all-stageprofile-target-libsanitizer: configure-stageprofile-target-libsanitizer
+ @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGEprofile_TFLAGS)"; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ TFLAGS="$(STAGEprofile_TFLAGS)" \
+ $(TARGET-stageprofile-target-libsanitizer)
+
+maybe-clean-stageprofile-target-libsanitizer: clean-stageprofile-target-libsanitizer
+clean-stageprofile: clean-stageprofile-target-libsanitizer
+clean-stageprofile-target-libsanitizer:
+ @if [ $(current_stage) = stageprofile ]; then \
+ [ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0; \
+ else \
+ [ -f $(TARGET_SUBDIR)/stageprofile-libsanitizer/Makefile ] || exit 0; \
+ $(MAKE) stageprofile-start; \
+ fi; \
+ cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
+@endif target-libsanitizer-bootstrap
+
+
+.PHONY: all-stagefeedback-target-libsanitizer maybe-all-stagefeedback-target-libsanitizer
+.PHONY: clean-stagefeedback-target-libsanitizer maybe-clean-stagefeedback-target-libsanitizer
+maybe-all-stagefeedback-target-libsanitizer:
+maybe-clean-stagefeedback-target-libsanitizer:
+@if target-libsanitizer-bootstrap
+maybe-all-stagefeedback-target-libsanitizer: all-stagefeedback-target-libsanitizer
+all-stagefeedback: all-stagefeedback-target-libsanitizer
+TARGET-stagefeedback-target-libsanitizer = $(TARGET-target-libsanitizer)
+all-stagefeedback-target-libsanitizer: configure-stagefeedback-target-libsanitizer
+ @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGEfeedback_TFLAGS)"; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ TFLAGS="$(STAGEfeedback_TFLAGS)" \
+ $(TARGET-stagefeedback-target-libsanitizer)
+
+maybe-clean-stagefeedback-target-libsanitizer: clean-stagefeedback-target-libsanitizer
+clean-stagefeedback: clean-stagefeedback-target-libsanitizer
+clean-stagefeedback-target-libsanitizer:
+ @if [ $(current_stage) = stagefeedback ]; then \
+ [ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0; \
+ else \
+ [ -f $(TARGET_SUBDIR)/stagefeedback-libsanitizer/Makefile ] || exit 0; \
+ $(MAKE) stagefeedback-start; \
+ fi; \
+ cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
+@endif target-libsanitizer-bootstrap
+
+
+
+
+
+
+.PHONY: check-target-libsanitizer maybe-check-target-libsanitizer
+maybe-check-target-libsanitizer:
+@if target-libsanitizer
+maybe-check-target-libsanitizer: check-target-libsanitizer
+
+check-target-libsanitizer:
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' check)
+
+@endif target-libsanitizer
+
+.PHONY: install-target-libsanitizer maybe-install-target-libsanitizer
+maybe-install-target-libsanitizer:
+@if target-libsanitizer
+maybe-install-target-libsanitizer: install-target-libsanitizer
+
+install-target-libsanitizer: installdirs
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+
+@endif target-libsanitizer
+
+.PHONY: install-strip-target-libsanitizer maybe-install-strip-target-libsanitizer
+maybe-install-strip-target-libsanitizer:
+@if target-libsanitizer
+maybe-install-strip-target-libsanitizer: install-strip-target-libsanitizer
+
+install-strip-target-libsanitizer: installdirs
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) install-strip)
+
+@endif target-libsanitizer
+
+# Other targets (info, dvi, pdf, etc.)
+
+.PHONY: maybe-info-target-libsanitizer info-target-libsanitizer
+maybe-info-target-libsanitizer:
+@if target-libsanitizer
+maybe-info-target-libsanitizer: info-target-libsanitizer
+
+info-target-libsanitizer: \
+ configure-target-libsanitizer
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing info in $(TARGET_SUBDIR)/libsanitizer" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ info) \
+ || exit 1
+
+@endif target-libsanitizer
+
+.PHONY: maybe-dvi-target-libsanitizer dvi-target-libsanitizer
+maybe-dvi-target-libsanitizer:
+@if target-libsanitizer
+maybe-dvi-target-libsanitizer: dvi-target-libsanitizer
+
+dvi-target-libsanitizer: \
+ configure-target-libsanitizer
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing dvi in $(TARGET_SUBDIR)/libsanitizer" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ dvi) \
+ || exit 1
+
+@endif target-libsanitizer
+
+.PHONY: maybe-pdf-target-libsanitizer pdf-target-libsanitizer
+maybe-pdf-target-libsanitizer:
+@if target-libsanitizer
+maybe-pdf-target-libsanitizer: pdf-target-libsanitizer
+
+pdf-target-libsanitizer: \
+ configure-target-libsanitizer
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing pdf in $(TARGET_SUBDIR)/libsanitizer" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ pdf) \
+ || exit 1
+
+@endif target-libsanitizer
+
+.PHONY: maybe-html-target-libsanitizer html-target-libsanitizer
+maybe-html-target-libsanitizer:
+@if target-libsanitizer
+maybe-html-target-libsanitizer: html-target-libsanitizer
+
+html-target-libsanitizer: \
+ configure-target-libsanitizer
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing html in $(TARGET_SUBDIR)/libsanitizer" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ html) \
+ || exit 1
+
+@endif target-libsanitizer
+
+.PHONY: maybe-TAGS-target-libsanitizer TAGS-target-libsanitizer
+maybe-TAGS-target-libsanitizer:
+@if target-libsanitizer
+maybe-TAGS-target-libsanitizer: TAGS-target-libsanitizer
+
+TAGS-target-libsanitizer: \
+ configure-target-libsanitizer
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing TAGS in $(TARGET_SUBDIR)/libsanitizer" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ TAGS) \
+ || exit 1
+
+@endif target-libsanitizer
+
+.PHONY: maybe-install-info-target-libsanitizer install-info-target-libsanitizer
+maybe-install-info-target-libsanitizer:
+@if target-libsanitizer
+maybe-install-info-target-libsanitizer: install-info-target-libsanitizer
+
+install-info-target-libsanitizer: \
+ configure-target-libsanitizer \
+ info-target-libsanitizer
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing install-info in $(TARGET_SUBDIR)/libsanitizer" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-info) \
+ || exit 1
+
+@endif target-libsanitizer
+
+.PHONY: maybe-install-pdf-target-libsanitizer install-pdf-target-libsanitizer
+maybe-install-pdf-target-libsanitizer:
+@if target-libsanitizer
+maybe-install-pdf-target-libsanitizer: install-pdf-target-libsanitizer
+
+install-pdf-target-libsanitizer: \
+ configure-target-libsanitizer \
+ pdf-target-libsanitizer
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing install-pdf in $(TARGET_SUBDIR)/libsanitizer" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-pdf) \
+ || exit 1
+
+@endif target-libsanitizer
+
+.PHONY: maybe-install-html-target-libsanitizer install-html-target-libsanitizer
+maybe-install-html-target-libsanitizer:
+@if target-libsanitizer
+maybe-install-html-target-libsanitizer: install-html-target-libsanitizer
+
+install-html-target-libsanitizer: \
+ configure-target-libsanitizer \
+ html-target-libsanitizer
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing install-html in $(TARGET_SUBDIR)/libsanitizer" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-html) \
+ || exit 1
+
+@endif target-libsanitizer
+
+.PHONY: maybe-installcheck-target-libsanitizer installcheck-target-libsanitizer
+maybe-installcheck-target-libsanitizer:
+@if target-libsanitizer
+maybe-installcheck-target-libsanitizer: installcheck-target-libsanitizer
+
+installcheck-target-libsanitizer: \
+ configure-target-libsanitizer
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing installcheck in $(TARGET_SUBDIR)/libsanitizer" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ installcheck) \
+ || exit 1
+
+@endif target-libsanitizer
+
+.PHONY: maybe-mostlyclean-target-libsanitizer mostlyclean-target-libsanitizer
+maybe-mostlyclean-target-libsanitizer:
+@if target-libsanitizer
+maybe-mostlyclean-target-libsanitizer: mostlyclean-target-libsanitizer
+
+mostlyclean-target-libsanitizer:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing mostlyclean in $(TARGET_SUBDIR)/libsanitizer" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ mostlyclean) \
+ || exit 1
+
+@endif target-libsanitizer
+
+.PHONY: maybe-clean-target-libsanitizer clean-target-libsanitizer
+maybe-clean-target-libsanitizer:
+@if target-libsanitizer
+maybe-clean-target-libsanitizer: clean-target-libsanitizer
+
+clean-target-libsanitizer:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing clean in $(TARGET_SUBDIR)/libsanitizer" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ clean) \
+ || exit 1
+
+@endif target-libsanitizer
+
+.PHONY: maybe-distclean-target-libsanitizer distclean-target-libsanitizer
+maybe-distclean-target-libsanitizer:
+@if target-libsanitizer
+maybe-distclean-target-libsanitizer: distclean-target-libsanitizer
+
+distclean-target-libsanitizer:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing distclean in $(TARGET_SUBDIR)/libsanitizer" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ distclean) \
+ || exit 1
+
+@endif target-libsanitizer
+
+.PHONY: maybe-maintainer-clean-target-libsanitizer maintainer-clean-target-libsanitizer
+maybe-maintainer-clean-target-libsanitizer:
+@if target-libsanitizer
+maybe-maintainer-clean-target-libsanitizer: maintainer-clean-target-libsanitizer
+
+maintainer-clean-target-libsanitizer:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libsanitizer/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libsanitizer" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libsanitizer && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ maintainer-clean) \
+ || exit 1
+
+@endif target-libsanitizer
+
+
+
+
+
+.PHONY: configure-target-libvtv maybe-configure-target-libvtv
+maybe-configure-target-libvtv:
+@if gcc-bootstrap
+configure-target-libvtv: stage_current
+@endif gcc-bootstrap
+@if target-libvtv
+maybe-configure-target-libvtv: configure-target-libvtv
+configure-target-libvtv:
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ echo "Checking multilib configuration for libvtv..."; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv ; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libvtv/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libvtv/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libvtv/Makefile; \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libvtv/Makefile || exit 0; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv ; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo Configuring in $(TARGET_SUBDIR)/libvtv; \
+ cd "$(TARGET_SUBDIR)/libvtv" || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libvtv/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libvtv"; \
+ libsrcdir="$$s/libvtv"; \
+ rm -f no-such-file || : ; \
+ CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ || exit 1
+@endif target-libvtv
+
+
+
+.PHONY: configure-stage1-target-libvtv maybe-configure-stage1-target-libvtv
+maybe-configure-stage1-target-libvtv:
+@if target-libvtv-bootstrap
+maybe-configure-stage1-target-libvtv: configure-stage1-target-libvtv
+configure-stage1-target-libvtv:
+ @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE1_TFLAGS)"; \
+ echo "Checking multilib configuration for libvtv..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libvtv/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libvtv/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libvtv/Makefile; \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libvtv/Makefile || exit 0; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)"; export LIBCFLAGS; \
+ echo Configuring stage 1 in $(TARGET_SUBDIR)/libvtv ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv ; \
+ cd $(TARGET_SUBDIR)/libvtv || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libvtv/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libvtv"; \
+ libsrcdir="$$s/libvtv"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ $(STAGE1_CONFIGURE_FLAGS)
+@endif target-libvtv-bootstrap
+
+.PHONY: configure-stage2-target-libvtv maybe-configure-stage2-target-libvtv
+maybe-configure-stage2-target-libvtv:
+@if target-libvtv-bootstrap
+maybe-configure-stage2-target-libvtv: configure-stage2-target-libvtv
+configure-stage2-target-libvtv:
+ @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE2_TFLAGS)"; \
+ echo "Checking multilib configuration for libvtv..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libvtv/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libvtv/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libvtv/Makefile; \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libvtv/Makefile || exit 0; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)"; export LIBCFLAGS; \
+ echo Configuring stage 2 in $(TARGET_SUBDIR)/libvtv ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv ; \
+ cd $(TARGET_SUBDIR)/libvtv || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libvtv/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libvtv"; \
+ libsrcdir="$$s/libvtv"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGE2_CONFIGURE_FLAGS)
+@endif target-libvtv-bootstrap
+
+.PHONY: configure-stage3-target-libvtv maybe-configure-stage3-target-libvtv
+maybe-configure-stage3-target-libvtv:
+@if target-libvtv-bootstrap
+maybe-configure-stage3-target-libvtv: configure-stage3-target-libvtv
+configure-stage3-target-libvtv:
+ @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE3_TFLAGS)"; \
+ echo "Checking multilib configuration for libvtv..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libvtv/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libvtv/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libvtv/Makefile; \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libvtv/Makefile || exit 0; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)"; export LIBCFLAGS; \
+ echo Configuring stage 3 in $(TARGET_SUBDIR)/libvtv ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv ; \
+ cd $(TARGET_SUBDIR)/libvtv || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libvtv/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libvtv"; \
+ libsrcdir="$$s/libvtv"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGE3_CONFIGURE_FLAGS)
+@endif target-libvtv-bootstrap
+
+.PHONY: configure-stage4-target-libvtv maybe-configure-stage4-target-libvtv
+maybe-configure-stage4-target-libvtv:
+@if target-libvtv-bootstrap
+maybe-configure-stage4-target-libvtv: configure-stage4-target-libvtv
+configure-stage4-target-libvtv:
+ @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE4_TFLAGS)"; \
+ echo "Checking multilib configuration for libvtv..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libvtv/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libvtv/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libvtv/Makefile; \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libvtv/Makefile || exit 0; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)"; export LIBCFLAGS; \
+ echo Configuring stage 4 in $(TARGET_SUBDIR)/libvtv ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv ; \
+ cd $(TARGET_SUBDIR)/libvtv || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libvtv/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libvtv"; \
+ libsrcdir="$$s/libvtv"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGE4_CONFIGURE_FLAGS)
+@endif target-libvtv-bootstrap
+
+.PHONY: configure-stageprofile-target-libvtv maybe-configure-stageprofile-target-libvtv
+maybe-configure-stageprofile-target-libvtv:
+@if target-libvtv-bootstrap
+maybe-configure-stageprofile-target-libvtv: configure-stageprofile-target-libvtv
+configure-stageprofile-target-libvtv:
+ @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGEprofile_TFLAGS)"; \
+ echo "Checking multilib configuration for libvtv..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libvtv/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libvtv/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libvtv/Makefile; \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libvtv/Makefile || exit 0; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)"; export LIBCFLAGS; \
+ echo Configuring stage profile in $(TARGET_SUBDIR)/libvtv ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv ; \
+ cd $(TARGET_SUBDIR)/libvtv || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libvtv/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libvtv"; \
+ libsrcdir="$$s/libvtv"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGEprofile_CONFIGURE_FLAGS)
+@endif target-libvtv-bootstrap
+
+.PHONY: configure-stagefeedback-target-libvtv maybe-configure-stagefeedback-target-libvtv
+maybe-configure-stagefeedback-target-libvtv:
+@if target-libvtv-bootstrap
+maybe-configure-stagefeedback-target-libvtv: configure-stagefeedback-target-libvtv
+configure-stagefeedback-target-libvtv:
+ @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
+ @$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGEfeedback_TFLAGS)"; \
+ echo "Checking multilib configuration for libvtv..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libvtv/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libvtv/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libvtv/Makefile; \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libvtv/multilib.tmp $(TARGET_SUBDIR)/libvtv/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libvtv/Makefile || exit 0; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)"; export LIBCFLAGS; \
+ echo Configuring stage feedback in $(TARGET_SUBDIR)/libvtv ; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libvtv ; \
+ cd $(TARGET_SUBDIR)/libvtv || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libvtv/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libvtv"; \
+ libsrcdir="$$s/libvtv"; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGEfeedback_CONFIGURE_FLAGS)
+@endif target-libvtv-bootstrap
+
+
+
+
+
+.PHONY: all-target-libvtv maybe-all-target-libvtv
+maybe-all-target-libvtv:
+@if gcc-bootstrap
+all-target-libvtv: stage_current
+@endif gcc-bootstrap
+@if target-libvtv
+TARGET-target-libvtv=all
+maybe-all-target-libvtv: all-target-libvtv
+all-target-libvtv: configure-target-libvtv
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ $(TARGET-target-libvtv))
+@endif target-libvtv
+
+
+
+.PHONY: all-stage1-target-libvtv maybe-all-stage1-target-libvtv
+.PHONY: clean-stage1-target-libvtv maybe-clean-stage1-target-libvtv
+maybe-all-stage1-target-libvtv:
+maybe-clean-stage1-target-libvtv:
+@if target-libvtv-bootstrap
+maybe-all-stage1-target-libvtv: all-stage1-target-libvtv
+all-stage1: all-stage1-target-libvtv
+TARGET-stage1-target-libvtv = $(TARGET-target-libvtv)
+all-stage1-target-libvtv: configure-stage1-target-libvtv
+ @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE1_TFLAGS)"; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ \
+ TFLAGS="$(STAGE1_TFLAGS)" \
+ $(TARGET-stage1-target-libvtv)
+
+maybe-clean-stage1-target-libvtv: clean-stage1-target-libvtv
+clean-stage1: clean-stage1-target-libvtv
+clean-stage1-target-libvtv:
+ @if [ $(current_stage) = stage1 ]; then \
+ [ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0; \
+ else \
+ [ -f $(TARGET_SUBDIR)/stage1-libvtv/Makefile ] || exit 0; \
+ $(MAKE) stage1-start; \
+ fi; \
+ cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ clean
+@endif target-libvtv-bootstrap
+
+
+.PHONY: all-stage2-target-libvtv maybe-all-stage2-target-libvtv
+.PHONY: clean-stage2-target-libvtv maybe-clean-stage2-target-libvtv
+maybe-all-stage2-target-libvtv:
+maybe-clean-stage2-target-libvtv:
+@if target-libvtv-bootstrap
+maybe-all-stage2-target-libvtv: all-stage2-target-libvtv
+all-stage2: all-stage2-target-libvtv
+TARGET-stage2-target-libvtv = $(TARGET-target-libvtv)
+all-stage2-target-libvtv: configure-stage2-target-libvtv
+ @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE2_TFLAGS)"; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ TFLAGS="$(STAGE2_TFLAGS)" \
+ $(TARGET-stage2-target-libvtv)
+
+maybe-clean-stage2-target-libvtv: clean-stage2-target-libvtv
+clean-stage2: clean-stage2-target-libvtv
+clean-stage2-target-libvtv:
+ @if [ $(current_stage) = stage2 ]; then \
+ [ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0; \
+ else \
+ [ -f $(TARGET_SUBDIR)/stage2-libvtv/Makefile ] || exit 0; \
+ $(MAKE) stage2-start; \
+ fi; \
+ cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
+@endif target-libvtv-bootstrap
+
+
+.PHONY: all-stage3-target-libvtv maybe-all-stage3-target-libvtv
+.PHONY: clean-stage3-target-libvtv maybe-clean-stage3-target-libvtv
+maybe-all-stage3-target-libvtv:
+maybe-clean-stage3-target-libvtv:
+@if target-libvtv-bootstrap
+maybe-all-stage3-target-libvtv: all-stage3-target-libvtv
+all-stage3: all-stage3-target-libvtv
+TARGET-stage3-target-libvtv = $(TARGET-target-libvtv)
+all-stage3-target-libvtv: configure-stage3-target-libvtv
+ @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE3_TFLAGS)"; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ TFLAGS="$(STAGE3_TFLAGS)" \
+ $(TARGET-stage3-target-libvtv)
+
+maybe-clean-stage3-target-libvtv: clean-stage3-target-libvtv
+clean-stage3: clean-stage3-target-libvtv
+clean-stage3-target-libvtv:
+ @if [ $(current_stage) = stage3 ]; then \
+ [ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0; \
+ else \
+ [ -f $(TARGET_SUBDIR)/stage3-libvtv/Makefile ] || exit 0; \
+ $(MAKE) stage3-start; \
+ fi; \
+ cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
+@endif target-libvtv-bootstrap
+
+
+.PHONY: all-stage4-target-libvtv maybe-all-stage4-target-libvtv
+.PHONY: clean-stage4-target-libvtv maybe-clean-stage4-target-libvtv
+maybe-all-stage4-target-libvtv:
+maybe-clean-stage4-target-libvtv:
+@if target-libvtv-bootstrap
+maybe-all-stage4-target-libvtv: all-stage4-target-libvtv
+all-stage4: all-stage4-target-libvtv
+TARGET-stage4-target-libvtv = $(TARGET-target-libvtv)
+all-stage4-target-libvtv: configure-stage4-target-libvtv
+ @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGE4_TFLAGS)"; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ TFLAGS="$(STAGE4_TFLAGS)" \
+ $(TARGET-stage4-target-libvtv)
+
+maybe-clean-stage4-target-libvtv: clean-stage4-target-libvtv
+clean-stage4: clean-stage4-target-libvtv
+clean-stage4-target-libvtv:
+ @if [ $(current_stage) = stage4 ]; then \
+ [ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0; \
+ else \
+ [ -f $(TARGET_SUBDIR)/stage4-libvtv/Makefile ] || exit 0; \
+ $(MAKE) stage4-start; \
+ fi; \
+ cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
+@endif target-libvtv-bootstrap
+
+
+.PHONY: all-stageprofile-target-libvtv maybe-all-stageprofile-target-libvtv
+.PHONY: clean-stageprofile-target-libvtv maybe-clean-stageprofile-target-libvtv
+maybe-all-stageprofile-target-libvtv:
+maybe-clean-stageprofile-target-libvtv:
+@if target-libvtv-bootstrap
+maybe-all-stageprofile-target-libvtv: all-stageprofile-target-libvtv
+all-stageprofile: all-stageprofile-target-libvtv
+TARGET-stageprofile-target-libvtv = $(TARGET-target-libvtv)
+all-stageprofile-target-libvtv: configure-stageprofile-target-libvtv
+ @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGEprofile_TFLAGS)"; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ TFLAGS="$(STAGEprofile_TFLAGS)" \
+ $(TARGET-stageprofile-target-libvtv)
+
+maybe-clean-stageprofile-target-libvtv: clean-stageprofile-target-libvtv
+clean-stageprofile: clean-stageprofile-target-libvtv
+clean-stageprofile-target-libvtv:
+ @if [ $(current_stage) = stageprofile ]; then \
+ [ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0; \
+ else \
+ [ -f $(TARGET_SUBDIR)/stageprofile-libvtv/Makefile ] || exit 0; \
+ $(MAKE) stageprofile-start; \
+ fi; \
+ cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
+@endif target-libvtv-bootstrap
+
+
+.PHONY: all-stagefeedback-target-libvtv maybe-all-stagefeedback-target-libvtv
+.PHONY: clean-stagefeedback-target-libvtv maybe-clean-stagefeedback-target-libvtv
+maybe-all-stagefeedback-target-libvtv:
+maybe-clean-stagefeedback-target-libvtv:
+@if target-libvtv-bootstrap
+maybe-all-stagefeedback-target-libvtv: all-stagefeedback-target-libvtv
+all-stagefeedback: all-stagefeedback-target-libvtv
+TARGET-stagefeedback-target-libvtv = $(TARGET-target-libvtv)
+all-stagefeedback-target-libvtv: configure-stagefeedback-target-libvtv
+ @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ TFLAGS="$(STAGEfeedback_TFLAGS)"; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ \
+ cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) \
+ CFLAGS="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS="$(LIBCFLAGS_FOR_TARGET)" \
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ TFLAGS="$(STAGEfeedback_TFLAGS)" \
+ $(TARGET-stagefeedback-target-libvtv)
+
+maybe-clean-stagefeedback-target-libvtv: clean-stagefeedback-target-libvtv
+clean-stagefeedback: clean-stagefeedback-target-libvtv
+clean-stagefeedback-target-libvtv:
+ @if [ $(current_stage) = stagefeedback ]; then \
+ [ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0; \
+ else \
+ [ -f $(TARGET_SUBDIR)/stagefeedback-libvtv/Makefile ] || exit 0; \
+ $(MAKE) stagefeedback-start; \
+ fi; \
+ cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' clean
+@endif target-libvtv-bootstrap
+
+
+
+
+
+
+.PHONY: check-target-libvtv maybe-check-target-libvtv
+maybe-check-target-libvtv:
+@if target-libvtv
+maybe-check-target-libvtv: check-target-libvtv
+
+check-target-libvtv:
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' check)
+
+@endif target-libvtv
+
+.PHONY: install-target-libvtv maybe-install-target-libvtv
+maybe-install-target-libvtv:
+@if target-libvtv
+maybe-install-target-libvtv: install-target-libvtv
+
+install-target-libvtv: installdirs
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+
+@endif target-libvtv
+
+.PHONY: install-strip-target-libvtv maybe-install-strip-target-libvtv
+maybe-install-strip-target-libvtv:
+@if target-libvtv
+maybe-install-strip-target-libvtv: install-strip-target-libvtv
+
+install-strip-target-libvtv: installdirs
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) install-strip)
+
+@endif target-libvtv
+
+# Other targets (info, dvi, pdf, etc.)
+
+.PHONY: maybe-info-target-libvtv info-target-libvtv
+maybe-info-target-libvtv:
+@if target-libvtv
+maybe-info-target-libvtv: info-target-libvtv
+
+info-target-libvtv: \
+ configure-target-libvtv
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing info in $(TARGET_SUBDIR)/libvtv" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ info) \
+ || exit 1
+
+@endif target-libvtv
+
+.PHONY: maybe-dvi-target-libvtv dvi-target-libvtv
+maybe-dvi-target-libvtv:
+@if target-libvtv
+maybe-dvi-target-libvtv: dvi-target-libvtv
+
+dvi-target-libvtv: \
+ configure-target-libvtv
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing dvi in $(TARGET_SUBDIR)/libvtv" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ dvi) \
+ || exit 1
+
+@endif target-libvtv
+
+.PHONY: maybe-pdf-target-libvtv pdf-target-libvtv
+maybe-pdf-target-libvtv:
+@if target-libvtv
+maybe-pdf-target-libvtv: pdf-target-libvtv
+
+pdf-target-libvtv: \
+ configure-target-libvtv
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing pdf in $(TARGET_SUBDIR)/libvtv" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ pdf) \
+ || exit 1
+
+@endif target-libvtv
+
+.PHONY: maybe-html-target-libvtv html-target-libvtv
+maybe-html-target-libvtv:
+@if target-libvtv
+maybe-html-target-libvtv: html-target-libvtv
+
+html-target-libvtv: \
+ configure-target-libvtv
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing html in $(TARGET_SUBDIR)/libvtv" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ html) \
+ || exit 1
+
+@endif target-libvtv
+
+.PHONY: maybe-TAGS-target-libvtv TAGS-target-libvtv
+maybe-TAGS-target-libvtv:
+@if target-libvtv
+maybe-TAGS-target-libvtv: TAGS-target-libvtv
+
+TAGS-target-libvtv: \
+ configure-target-libvtv
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing TAGS in $(TARGET_SUBDIR)/libvtv" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ TAGS) \
+ || exit 1
+
+@endif target-libvtv
+
+.PHONY: maybe-install-info-target-libvtv install-info-target-libvtv
+maybe-install-info-target-libvtv:
+@if target-libvtv
+maybe-install-info-target-libvtv: install-info-target-libvtv
+
+install-info-target-libvtv: \
+ configure-target-libvtv \
+ info-target-libvtv
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing install-info in $(TARGET_SUBDIR)/libvtv" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-info) \
+ || exit 1
+
+@endif target-libvtv
+
+.PHONY: maybe-install-pdf-target-libvtv install-pdf-target-libvtv
+maybe-install-pdf-target-libvtv:
+@if target-libvtv
+maybe-install-pdf-target-libvtv: install-pdf-target-libvtv
+
+install-pdf-target-libvtv: \
+ configure-target-libvtv \
+ pdf-target-libvtv
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing install-pdf in $(TARGET_SUBDIR)/libvtv" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-pdf) \
+ || exit 1
+
+@endif target-libvtv
+
+.PHONY: maybe-install-html-target-libvtv install-html-target-libvtv
+maybe-install-html-target-libvtv:
+@if target-libvtv
+maybe-install-html-target-libvtv: install-html-target-libvtv
+
+install-html-target-libvtv: \
+ configure-target-libvtv \
+ html-target-libvtv
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing install-html in $(TARGET_SUBDIR)/libvtv" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-html) \
+ || exit 1
+
+@endif target-libvtv
+
+.PHONY: maybe-installcheck-target-libvtv installcheck-target-libvtv
+maybe-installcheck-target-libvtv:
+@if target-libvtv
+maybe-installcheck-target-libvtv: installcheck-target-libvtv
+
+installcheck-target-libvtv: \
+ configure-target-libvtv
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing installcheck in $(TARGET_SUBDIR)/libvtv" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ installcheck) \
+ || exit 1
+
+@endif target-libvtv
+
+.PHONY: maybe-mostlyclean-target-libvtv mostlyclean-target-libvtv
+maybe-mostlyclean-target-libvtv:
+@if target-libvtv
+maybe-mostlyclean-target-libvtv: mostlyclean-target-libvtv
+
+mostlyclean-target-libvtv:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing mostlyclean in $(TARGET_SUBDIR)/libvtv" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ mostlyclean) \
+ || exit 1
+
+@endif target-libvtv
+
+.PHONY: maybe-clean-target-libvtv clean-target-libvtv
+maybe-clean-target-libvtv:
+@if target-libvtv
+maybe-clean-target-libvtv: clean-target-libvtv
+
+clean-target-libvtv:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing clean in $(TARGET_SUBDIR)/libvtv" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ clean) \
+ || exit 1
+
+@endif target-libvtv
+
+.PHONY: maybe-distclean-target-libvtv distclean-target-libvtv
+maybe-distclean-target-libvtv:
+@if target-libvtv
+maybe-distclean-target-libvtv: distclean-target-libvtv
+
+distclean-target-libvtv:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing distclean in $(TARGET_SUBDIR)/libvtv" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ distclean) \
+ || exit 1
+
+@endif target-libvtv
+
+.PHONY: maybe-maintainer-clean-target-libvtv maintainer-clean-target-libvtv
+maybe-maintainer-clean-target-libvtv:
+@if target-libvtv
+maybe-maintainer-clean-target-libvtv: maintainer-clean-target-libvtv
+
+maintainer-clean-target-libvtv:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libvtv/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(RAW_CXX_TARGET_EXPORTS) \
+ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libvtv" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libvtv && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ maintainer-clean) \
+ || exit 1
+
+@endif target-libvtv
+
+
+
+
+
.PHONY: configure-target-libssp maybe-configure-target-libssp
maybe-configure-target-libssp:
@if gcc-bootstrap
@@ -31452,7 +34211,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-libssp))
@endif target-libssp
@@ -31909,7 +34668,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/newlib && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-newlib))
@endif target-newlib
@@ -32634,7 +35393,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libgcc && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-libgcc))
@endif target-libgcc
@@ -32662,7 +35421,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_TARGET_FLAGS) \
+ $(EXTRA_TARGET_FLAGS) \
+ \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-target-libgcc)
@@ -32677,7 +35437,7 @@
fi; \
cd $(TARGET_SUBDIR)/libgcc && \
$(MAKE) $(EXTRA_TARGET_FLAGS) \
- clean
+ clean
@endif target-libgcc-bootstrap
@@ -32718,9 +35478,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(TARGET_SUBDIR)/libgcc && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) clean
@endif target-libgcc-bootstrap
@@ -32761,9 +35519,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(TARGET_SUBDIR)/libgcc && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) clean
@endif target-libgcc-bootstrap
@@ -32804,9 +35560,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(TARGET_SUBDIR)/libgcc && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) clean
@endif target-libgcc-bootstrap
@@ -32847,9 +35601,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(TARGET_SUBDIR)/libgcc && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) clean
@endif target-libgcc-bootstrap
@@ -32890,9 +35642,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(TARGET_SUBDIR)/libgcc && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) clean
@endif target-libgcc-bootstrap
@@ -33283,6 +36033,463 @@
+.PHONY: configure-target-libbacktrace maybe-configure-target-libbacktrace
+maybe-configure-target-libbacktrace:
+@if gcc-bootstrap
+configure-target-libbacktrace: stage_current
+@endif gcc-bootstrap
+@if target-libbacktrace
+maybe-configure-target-libbacktrace: configure-target-libbacktrace
+configure-target-libbacktrace:
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ echo "Checking multilib configuration for libbacktrace..."; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libbacktrace ; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libbacktrace/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libbacktrace/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libbacktrace/multilib.tmp $(TARGET_SUBDIR)/libbacktrace/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libbacktrace/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libbacktrace/Makefile; \
+ mv $(TARGET_SUBDIR)/libbacktrace/multilib.tmp $(TARGET_SUBDIR)/libbacktrace/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libbacktrace/multilib.tmp $(TARGET_SUBDIR)/libbacktrace/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libbacktrace/Makefile || exit 0; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libbacktrace ; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo Configuring in $(TARGET_SUBDIR)/libbacktrace; \
+ cd "$(TARGET_SUBDIR)/libbacktrace" || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libbacktrace/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libbacktrace"; \
+ libsrcdir="$$s/libbacktrace"; \
+ rm -f no-such-file || : ; \
+ CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ || exit 1
+@endif target-libbacktrace
+
+
+
+
+
+.PHONY: all-target-libbacktrace maybe-all-target-libbacktrace
+maybe-all-target-libbacktrace:
+@if gcc-bootstrap
+all-target-libbacktrace: stage_current
+@endif gcc-bootstrap
+@if target-libbacktrace
+TARGET-target-libbacktrace=all
+maybe-all-target-libbacktrace: all-target-libbacktrace
+all-target-libbacktrace: configure-target-libbacktrace
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(TARGET-target-libbacktrace))
+@endif target-libbacktrace
+
+
+
+
+
+.PHONY: check-target-libbacktrace maybe-check-target-libbacktrace
+maybe-check-target-libbacktrace:
+@if target-libbacktrace
+maybe-check-target-libbacktrace: check-target-libbacktrace
+
+check-target-libbacktrace:
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) check)
+
+@endif target-libbacktrace
+
+.PHONY: install-target-libbacktrace maybe-install-target-libbacktrace
+maybe-install-target-libbacktrace:
+@if target-libbacktrace
+maybe-install-target-libbacktrace: install-target-libbacktrace
+
+install-target-libbacktrace: installdirs
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+
+@endif target-libbacktrace
+
+.PHONY: install-strip-target-libbacktrace maybe-install-strip-target-libbacktrace
+maybe-install-strip-target-libbacktrace:
+@if target-libbacktrace
+maybe-install-strip-target-libbacktrace: install-strip-target-libbacktrace
+
+install-strip-target-libbacktrace: installdirs
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) install-strip)
+
+@endif target-libbacktrace
+
+# Other targets (info, dvi, pdf, etc.)
+
+.PHONY: maybe-info-target-libbacktrace info-target-libbacktrace
+maybe-info-target-libbacktrace:
+@if target-libbacktrace
+maybe-info-target-libbacktrace: info-target-libbacktrace
+
+info-target-libbacktrace: \
+ configure-target-libbacktrace
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libbacktrace/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing info in $(TARGET_SUBDIR)/libbacktrace" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ info) \
+ || exit 1
+
+@endif target-libbacktrace
+
+.PHONY: maybe-dvi-target-libbacktrace dvi-target-libbacktrace
+maybe-dvi-target-libbacktrace:
+@if target-libbacktrace
+maybe-dvi-target-libbacktrace: dvi-target-libbacktrace
+
+dvi-target-libbacktrace: \
+ configure-target-libbacktrace
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libbacktrace/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing dvi in $(TARGET_SUBDIR)/libbacktrace" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ dvi) \
+ || exit 1
+
+@endif target-libbacktrace
+
+.PHONY: maybe-pdf-target-libbacktrace pdf-target-libbacktrace
+maybe-pdf-target-libbacktrace:
+@if target-libbacktrace
+maybe-pdf-target-libbacktrace: pdf-target-libbacktrace
+
+pdf-target-libbacktrace: \
+ configure-target-libbacktrace
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libbacktrace/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing pdf in $(TARGET_SUBDIR)/libbacktrace" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ pdf) \
+ || exit 1
+
+@endif target-libbacktrace
+
+.PHONY: maybe-html-target-libbacktrace html-target-libbacktrace
+maybe-html-target-libbacktrace:
+@if target-libbacktrace
+maybe-html-target-libbacktrace: html-target-libbacktrace
+
+html-target-libbacktrace: \
+ configure-target-libbacktrace
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libbacktrace/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing html in $(TARGET_SUBDIR)/libbacktrace" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ html) \
+ || exit 1
+
+@endif target-libbacktrace
+
+.PHONY: maybe-TAGS-target-libbacktrace TAGS-target-libbacktrace
+maybe-TAGS-target-libbacktrace:
+@if target-libbacktrace
+maybe-TAGS-target-libbacktrace: TAGS-target-libbacktrace
+
+TAGS-target-libbacktrace: \
+ configure-target-libbacktrace
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libbacktrace/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing TAGS in $(TARGET_SUBDIR)/libbacktrace" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ TAGS) \
+ || exit 1
+
+@endif target-libbacktrace
+
+.PHONY: maybe-install-info-target-libbacktrace install-info-target-libbacktrace
+maybe-install-info-target-libbacktrace:
+@if target-libbacktrace
+maybe-install-info-target-libbacktrace: install-info-target-libbacktrace
+
+install-info-target-libbacktrace: \
+ configure-target-libbacktrace \
+ info-target-libbacktrace
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libbacktrace/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing install-info in $(TARGET_SUBDIR)/libbacktrace" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-info) \
+ || exit 1
+
+@endif target-libbacktrace
+
+.PHONY: maybe-install-pdf-target-libbacktrace install-pdf-target-libbacktrace
+maybe-install-pdf-target-libbacktrace:
+@if target-libbacktrace
+maybe-install-pdf-target-libbacktrace: install-pdf-target-libbacktrace
+
+install-pdf-target-libbacktrace: \
+ configure-target-libbacktrace \
+ pdf-target-libbacktrace
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libbacktrace/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing install-pdf in $(TARGET_SUBDIR)/libbacktrace" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-pdf) \
+ || exit 1
+
+@endif target-libbacktrace
+
+.PHONY: maybe-install-html-target-libbacktrace install-html-target-libbacktrace
+maybe-install-html-target-libbacktrace:
+@if target-libbacktrace
+maybe-install-html-target-libbacktrace: install-html-target-libbacktrace
+
+install-html-target-libbacktrace: \
+ configure-target-libbacktrace \
+ html-target-libbacktrace
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libbacktrace/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing install-html in $(TARGET_SUBDIR)/libbacktrace" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-html) \
+ || exit 1
+
+@endif target-libbacktrace
+
+.PHONY: maybe-installcheck-target-libbacktrace installcheck-target-libbacktrace
+maybe-installcheck-target-libbacktrace:
+@if target-libbacktrace
+maybe-installcheck-target-libbacktrace: installcheck-target-libbacktrace
+
+installcheck-target-libbacktrace: \
+ configure-target-libbacktrace
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libbacktrace/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing installcheck in $(TARGET_SUBDIR)/libbacktrace" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ installcheck) \
+ || exit 1
+
+@endif target-libbacktrace
+
+.PHONY: maybe-mostlyclean-target-libbacktrace mostlyclean-target-libbacktrace
+maybe-mostlyclean-target-libbacktrace:
+@if target-libbacktrace
+maybe-mostlyclean-target-libbacktrace: mostlyclean-target-libbacktrace
+
+mostlyclean-target-libbacktrace:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libbacktrace/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing mostlyclean in $(TARGET_SUBDIR)/libbacktrace" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ mostlyclean) \
+ || exit 1
+
+@endif target-libbacktrace
+
+.PHONY: maybe-clean-target-libbacktrace clean-target-libbacktrace
+maybe-clean-target-libbacktrace:
+@if target-libbacktrace
+maybe-clean-target-libbacktrace: clean-target-libbacktrace
+
+clean-target-libbacktrace:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libbacktrace/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing clean in $(TARGET_SUBDIR)/libbacktrace" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ clean) \
+ || exit 1
+
+@endif target-libbacktrace
+
+.PHONY: maybe-distclean-target-libbacktrace distclean-target-libbacktrace
+maybe-distclean-target-libbacktrace:
+@if target-libbacktrace
+maybe-distclean-target-libbacktrace: distclean-target-libbacktrace
+
+distclean-target-libbacktrace:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libbacktrace/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing distclean in $(TARGET_SUBDIR)/libbacktrace" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ distclean) \
+ || exit 1
+
+@endif target-libbacktrace
+
+.PHONY: maybe-maintainer-clean-target-libbacktrace maintainer-clean-target-libbacktrace
+maybe-maintainer-clean-target-libbacktrace:
+@if target-libbacktrace
+maybe-maintainer-clean-target-libbacktrace: maintainer-clean-target-libbacktrace
+
+maintainer-clean-target-libbacktrace:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libbacktrace/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libbacktrace" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libbacktrace && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ maintainer-clean) \
+ || exit 1
+
+@endif target-libbacktrace
+
+
+
+
+
.PHONY: configure-target-libquadmath maybe-configure-target-libquadmath
maybe-configure-target-libquadmath:
@if gcc-bootstrap
@@ -33344,7 +36551,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libquadmath && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-libquadmath))
@endif target-libquadmath
@@ -33801,7 +37008,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libgfortran && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-libgfortran))
@endif target-libgfortran
@@ -34258,7 +37465,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libobjc && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-libobjc))
@endif target-libobjc
@@ -34715,7 +37922,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libgo && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-libgo))
@endif target-libgo
@@ -35172,7 +38379,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libtermcap && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-libtermcap))
@endif target-libtermcap
@@ -35564,7 +38771,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/winsup && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-winsup))
@endif target-winsup
@@ -36021,7 +39228,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libgloss && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-libgloss))
@endif target-libgloss
@@ -36473,7 +39680,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libffi && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-libffi))
@endif target-libffi
@@ -36501,13 +39708,8 @@
@if target-libffi
maybe-install-target-libffi: install-target-libffi
-install-target-libffi: installdirs
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libffi && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+# Dummy target for uninstallable.
+install-target-libffi:
@endif target-libffi
@@ -36516,13 +39718,8 @@
@if target-libffi
maybe-install-strip-target-libffi: install-strip-target-libffi
-install-strip-target-libffi: installdirs
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libffi && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) install-strip)
+# Dummy target for uninstallable.
+install-strip-target-libffi:
@endif target-libffi
@@ -36930,7 +40127,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(RAW_CXX_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libjava && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' \
$(TARGET-target-libjava))
@endif target-libjava
@@ -37387,7 +40584,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/zlib && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-zlib))
@endif target-zlib
@@ -37844,7 +41041,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/boehm-gc && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-boehm-gc))
@endif target-boehm-gc
@@ -38301,7 +41498,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/rda && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-rda))
@endif target-rda
@@ -38758,7 +41955,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libada && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-libada))
@endif target-libada
@@ -39483,7 +42680,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
$(TARGET-target-libgomp))
@endif target-libgomp
@@ -39511,7 +42708,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- $(EXTRA_TARGET_FLAGS) \
+ $(EXTRA_TARGET_FLAGS) \
+ \
TFLAGS="$(STAGE1_TFLAGS)" \
$(TARGET-stage1-target-libgomp)
@@ -39526,7 +42724,7 @@
fi; \
cd $(TARGET_SUBDIR)/libgomp && \
$(MAKE) $(EXTRA_TARGET_FLAGS) \
- clean
+ clean
@endif target-libgomp-bootstrap
@@ -39567,9 +42765,7 @@
$(MAKE) stage2-start; \
fi; \
cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) clean
@endif target-libgomp-bootstrap
@@ -39610,9 +42806,7 @@
$(MAKE) stage3-start; \
fi; \
cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) clean
@endif target-libgomp-bootstrap
@@ -39653,9 +42847,7 @@
$(MAKE) stage4-start; \
fi; \
cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) clean
@endif target-libgomp-bootstrap
@@ -39696,9 +42888,7 @@
$(MAKE) stageprofile-start; \
fi; \
cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) clean
@endif target-libgomp-bootstrap
@@ -39739,9 +42929,7 @@
$(MAKE) stagefeedback-start; \
fi; \
cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(EXTRA_TARGET_FLAGS) \
- \
- clean
+ $(MAKE) $(EXTRA_TARGET_FLAGS) clean
@endif target-libgomp-bootstrap
@@ -40135,6 +43323,920 @@
+
+
+.PHONY: configure-target-libitm maybe-configure-target-libitm
+maybe-configure-target-libitm:
+@if gcc-bootstrap
+configure-target-libitm: stage_current
+@endif gcc-bootstrap
+@if target-libitm
+maybe-configure-target-libitm: configure-target-libitm
+configure-target-libitm:
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ echo "Checking multilib configuration for libitm..."; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libitm ; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libitm/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libitm/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libitm/multilib.tmp $(TARGET_SUBDIR)/libitm/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libitm/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libitm/Makefile; \
+ mv $(TARGET_SUBDIR)/libitm/multilib.tmp $(TARGET_SUBDIR)/libitm/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libitm/multilib.tmp $(TARGET_SUBDIR)/libitm/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libitm/Makefile || exit 0; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libitm ; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo Configuring in $(TARGET_SUBDIR)/libitm; \
+ cd "$(TARGET_SUBDIR)/libitm" || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libitm/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libitm"; \
+ libsrcdir="$$s/libitm"; \
+ rm -f no-such-file || : ; \
+ CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ || exit 1
+@endif target-libitm
+
+
+
+
+
+.PHONY: all-target-libitm maybe-all-target-libitm
+maybe-all-target-libitm:
+@if gcc-bootstrap
+all-target-libitm: stage_current
+@endif gcc-bootstrap
+@if target-libitm
+TARGET-target-libitm=all
+maybe-all-target-libitm: all-target-libitm
+all-target-libitm: configure-target-libitm
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(TARGET-target-libitm))
+@endif target-libitm
+
+
+
+
+
+.PHONY: check-target-libitm maybe-check-target-libitm
+maybe-check-target-libitm:
+@if target-libitm
+maybe-check-target-libitm: check-target-libitm
+
+check-target-libitm:
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) check)
+
+@endif target-libitm
+
+.PHONY: install-target-libitm maybe-install-target-libitm
+maybe-install-target-libitm:
+@if target-libitm
+maybe-install-target-libitm: install-target-libitm
+
+install-target-libitm: installdirs
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+
+@endif target-libitm
+
+.PHONY: install-strip-target-libitm maybe-install-strip-target-libitm
+maybe-install-strip-target-libitm:
+@if target-libitm
+maybe-install-strip-target-libitm: install-strip-target-libitm
+
+install-strip-target-libitm: installdirs
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) install-strip)
+
+@endif target-libitm
+
+# Other targets (info, dvi, pdf, etc.)
+
+.PHONY: maybe-info-target-libitm info-target-libitm
+maybe-info-target-libitm:
+@if target-libitm
+maybe-info-target-libitm: info-target-libitm
+
+info-target-libitm: \
+ configure-target-libitm
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libitm/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing info in $(TARGET_SUBDIR)/libitm" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ info) \
+ || exit 1
+
+@endif target-libitm
+
+.PHONY: maybe-dvi-target-libitm dvi-target-libitm
+maybe-dvi-target-libitm:
+@if target-libitm
+maybe-dvi-target-libitm: dvi-target-libitm
+
+dvi-target-libitm: \
+ configure-target-libitm
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libitm/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing dvi in $(TARGET_SUBDIR)/libitm" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ dvi) \
+ || exit 1
+
+@endif target-libitm
+
+.PHONY: maybe-pdf-target-libitm pdf-target-libitm
+maybe-pdf-target-libitm:
+@if target-libitm
+maybe-pdf-target-libitm: pdf-target-libitm
+
+pdf-target-libitm: \
+ configure-target-libitm
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libitm/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing pdf in $(TARGET_SUBDIR)/libitm" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ pdf) \
+ || exit 1
+
+@endif target-libitm
+
+.PHONY: maybe-html-target-libitm html-target-libitm
+maybe-html-target-libitm:
+@if target-libitm
+maybe-html-target-libitm: html-target-libitm
+
+html-target-libitm: \
+ configure-target-libitm
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libitm/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing html in $(TARGET_SUBDIR)/libitm" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ html) \
+ || exit 1
+
+@endif target-libitm
+
+.PHONY: maybe-TAGS-target-libitm TAGS-target-libitm
+maybe-TAGS-target-libitm:
+@if target-libitm
+maybe-TAGS-target-libitm: TAGS-target-libitm
+
+TAGS-target-libitm: \
+ configure-target-libitm
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libitm/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing TAGS in $(TARGET_SUBDIR)/libitm" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ TAGS) \
+ || exit 1
+
+@endif target-libitm
+
+.PHONY: maybe-install-info-target-libitm install-info-target-libitm
+maybe-install-info-target-libitm:
+@if target-libitm
+maybe-install-info-target-libitm: install-info-target-libitm
+
+install-info-target-libitm: \
+ configure-target-libitm \
+ info-target-libitm
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libitm/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing install-info in $(TARGET_SUBDIR)/libitm" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-info) \
+ || exit 1
+
+@endif target-libitm
+
+.PHONY: maybe-install-pdf-target-libitm install-pdf-target-libitm
+maybe-install-pdf-target-libitm:
+@if target-libitm
+maybe-install-pdf-target-libitm: install-pdf-target-libitm
+
+install-pdf-target-libitm: \
+ configure-target-libitm \
+ pdf-target-libitm
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libitm/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing install-pdf in $(TARGET_SUBDIR)/libitm" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-pdf) \
+ || exit 1
+
+@endif target-libitm
+
+.PHONY: maybe-install-html-target-libitm install-html-target-libitm
+maybe-install-html-target-libitm:
+@if target-libitm
+maybe-install-html-target-libitm: install-html-target-libitm
+
+install-html-target-libitm: \
+ configure-target-libitm \
+ html-target-libitm
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libitm/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing install-html in $(TARGET_SUBDIR)/libitm" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-html) \
+ || exit 1
+
+@endif target-libitm
+
+.PHONY: maybe-installcheck-target-libitm installcheck-target-libitm
+maybe-installcheck-target-libitm:
+@if target-libitm
+maybe-installcheck-target-libitm: installcheck-target-libitm
+
+installcheck-target-libitm: \
+ configure-target-libitm
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libitm/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing installcheck in $(TARGET_SUBDIR)/libitm" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ installcheck) \
+ || exit 1
+
+@endif target-libitm
+
+.PHONY: maybe-mostlyclean-target-libitm mostlyclean-target-libitm
+maybe-mostlyclean-target-libitm:
+@if target-libitm
+maybe-mostlyclean-target-libitm: mostlyclean-target-libitm
+
+mostlyclean-target-libitm:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libitm/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing mostlyclean in $(TARGET_SUBDIR)/libitm" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ mostlyclean) \
+ || exit 1
+
+@endif target-libitm
+
+.PHONY: maybe-clean-target-libitm clean-target-libitm
+maybe-clean-target-libitm:
+@if target-libitm
+maybe-clean-target-libitm: clean-target-libitm
+
+clean-target-libitm:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libitm/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing clean in $(TARGET_SUBDIR)/libitm" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ clean) \
+ || exit 1
+
+@endif target-libitm
+
+.PHONY: maybe-distclean-target-libitm distclean-target-libitm
+maybe-distclean-target-libitm:
+@if target-libitm
+maybe-distclean-target-libitm: distclean-target-libitm
+
+distclean-target-libitm:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libitm/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing distclean in $(TARGET_SUBDIR)/libitm" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ distclean) \
+ || exit 1
+
+@endif target-libitm
+
+.PHONY: maybe-maintainer-clean-target-libitm maintainer-clean-target-libitm
+maybe-maintainer-clean-target-libitm:
+@if target-libitm
+maybe-maintainer-clean-target-libitm: maintainer-clean-target-libitm
+
+maintainer-clean-target-libitm:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libitm/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libitm" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libitm && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ maintainer-clean) \
+ || exit 1
+
+@endif target-libitm
+
+
+
+
+
+.PHONY: configure-target-libatomic maybe-configure-target-libatomic
+maybe-configure-target-libatomic:
+@if gcc-bootstrap
+configure-target-libatomic: stage_current
+@endif gcc-bootstrap
+@if target-libatomic
+maybe-configure-target-libatomic: configure-target-libatomic
+configure-target-libatomic:
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ echo "Checking multilib configuration for libatomic..."; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libatomic ; \
+ $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libatomic/multilib.tmp 2> /dev/null ; \
+ if test -r $(TARGET_SUBDIR)/libatomic/multilib.out; then \
+ if cmp -s $(TARGET_SUBDIR)/libatomic/multilib.tmp $(TARGET_SUBDIR)/libatomic/multilib.out; then \
+ rm -f $(TARGET_SUBDIR)/libatomic/multilib.tmp; \
+ else \
+ rm -f $(TARGET_SUBDIR)/libatomic/Makefile; \
+ mv $(TARGET_SUBDIR)/libatomic/multilib.tmp $(TARGET_SUBDIR)/libatomic/multilib.out; \
+ fi; \
+ else \
+ mv $(TARGET_SUBDIR)/libatomic/multilib.tmp $(TARGET_SUBDIR)/libatomic/multilib.out; \
+ fi; \
+ test ! -f $(TARGET_SUBDIR)/libatomic/Makefile || exit 0; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libatomic ; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo Configuring in $(TARGET_SUBDIR)/libatomic; \
+ cd "$(TARGET_SUBDIR)/libatomic" || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+ *) topdir=`echo $(TARGET_SUBDIR)/libatomic/ | \
+ sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ esac; \
+ srcdiroption="--srcdir=$${topdir}/libatomic"; \
+ libsrcdir="$$s/libatomic"; \
+ rm -f no-such-file || : ; \
+ CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+ --target=${target_alias} $${srcdiroption} \
+ || exit 1
+@endif target-libatomic
+
+
+
+
+
+.PHONY: all-target-libatomic maybe-all-target-libatomic
+maybe-all-target-libatomic:
+@if gcc-bootstrap
+all-target-libatomic: stage_current
+@endif gcc-bootstrap
+@if target-libatomic
+TARGET-target-libatomic=all
+maybe-all-target-libatomic: all-target-libatomic
+all-target-libatomic: configure-target-libatomic
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
+ $(TARGET-target-libatomic))
+@endif target-libatomic
+
+
+
+
+
+.PHONY: check-target-libatomic maybe-check-target-libatomic
+maybe-check-target-libatomic:
+@if target-libatomic
+maybe-check-target-libatomic: check-target-libatomic
+
+check-target-libatomic:
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) check)
+
+@endif target-libatomic
+
+.PHONY: install-target-libatomic maybe-install-target-libatomic
+maybe-install-target-libatomic:
+@if target-libatomic
+maybe-install-target-libatomic: install-target-libatomic
+
+install-target-libatomic: installdirs
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+
+@endif target-libatomic
+
+.PHONY: install-strip-target-libatomic maybe-install-strip-target-libatomic
+maybe-install-strip-target-libatomic:
+@if target-libatomic
+maybe-install-strip-target-libatomic: install-strip-target-libatomic
+
+install-strip-target-libatomic: installdirs
+ @: $(MAKE); $(unstage)
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) install-strip)
+
+@endif target-libatomic
+
+# Other targets (info, dvi, pdf, etc.)
+
+.PHONY: maybe-info-target-libatomic info-target-libatomic
+maybe-info-target-libatomic:
+@if target-libatomic
+maybe-info-target-libatomic: info-target-libatomic
+
+info-target-libatomic: \
+ configure-target-libatomic
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libatomic/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing info in $(TARGET_SUBDIR)/libatomic" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ info) \
+ || exit 1
+
+@endif target-libatomic
+
+.PHONY: maybe-dvi-target-libatomic dvi-target-libatomic
+maybe-dvi-target-libatomic:
+@if target-libatomic
+maybe-dvi-target-libatomic: dvi-target-libatomic
+
+dvi-target-libatomic: \
+ configure-target-libatomic
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libatomic/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing dvi in $(TARGET_SUBDIR)/libatomic" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ dvi) \
+ || exit 1
+
+@endif target-libatomic
+
+.PHONY: maybe-pdf-target-libatomic pdf-target-libatomic
+maybe-pdf-target-libatomic:
+@if target-libatomic
+maybe-pdf-target-libatomic: pdf-target-libatomic
+
+pdf-target-libatomic: \
+ configure-target-libatomic
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libatomic/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing pdf in $(TARGET_SUBDIR)/libatomic" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ pdf) \
+ || exit 1
+
+@endif target-libatomic
+
+.PHONY: maybe-html-target-libatomic html-target-libatomic
+maybe-html-target-libatomic:
+@if target-libatomic
+maybe-html-target-libatomic: html-target-libatomic
+
+html-target-libatomic: \
+ configure-target-libatomic
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libatomic/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing html in $(TARGET_SUBDIR)/libatomic" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ html) \
+ || exit 1
+
+@endif target-libatomic
+
+.PHONY: maybe-TAGS-target-libatomic TAGS-target-libatomic
+maybe-TAGS-target-libatomic:
+@if target-libatomic
+maybe-TAGS-target-libatomic: TAGS-target-libatomic
+
+TAGS-target-libatomic: \
+ configure-target-libatomic
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libatomic/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing TAGS in $(TARGET_SUBDIR)/libatomic" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ TAGS) \
+ || exit 1
+
+@endif target-libatomic
+
+.PHONY: maybe-install-info-target-libatomic install-info-target-libatomic
+maybe-install-info-target-libatomic:
+@if target-libatomic
+maybe-install-info-target-libatomic: install-info-target-libatomic
+
+install-info-target-libatomic: \
+ configure-target-libatomic \
+ info-target-libatomic
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libatomic/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing install-info in $(TARGET_SUBDIR)/libatomic" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-info) \
+ || exit 1
+
+@endif target-libatomic
+
+.PHONY: maybe-install-pdf-target-libatomic install-pdf-target-libatomic
+maybe-install-pdf-target-libatomic:
+@if target-libatomic
+maybe-install-pdf-target-libatomic: install-pdf-target-libatomic
+
+install-pdf-target-libatomic: \
+ configure-target-libatomic \
+ pdf-target-libatomic
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libatomic/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing install-pdf in $(TARGET_SUBDIR)/libatomic" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-pdf) \
+ || exit 1
+
+@endif target-libatomic
+
+.PHONY: maybe-install-html-target-libatomic install-html-target-libatomic
+maybe-install-html-target-libatomic:
+@if target-libatomic
+maybe-install-html-target-libatomic: install-html-target-libatomic
+
+install-html-target-libatomic: \
+ configure-target-libatomic \
+ html-target-libatomic
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libatomic/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing install-html in $(TARGET_SUBDIR)/libatomic" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ install-html) \
+ || exit 1
+
+@endif target-libatomic
+
+.PHONY: maybe-installcheck-target-libatomic installcheck-target-libatomic
+maybe-installcheck-target-libatomic:
+@if target-libatomic
+maybe-installcheck-target-libatomic: installcheck-target-libatomic
+
+installcheck-target-libatomic: \
+ configure-target-libatomic
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libatomic/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing installcheck in $(TARGET_SUBDIR)/libatomic" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ installcheck) \
+ || exit 1
+
+@endif target-libatomic
+
+.PHONY: maybe-mostlyclean-target-libatomic mostlyclean-target-libatomic
+maybe-mostlyclean-target-libatomic:
+@if target-libatomic
+maybe-mostlyclean-target-libatomic: mostlyclean-target-libatomic
+
+mostlyclean-target-libatomic:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libatomic/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing mostlyclean in $(TARGET_SUBDIR)/libatomic" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ mostlyclean) \
+ || exit 1
+
+@endif target-libatomic
+
+.PHONY: maybe-clean-target-libatomic clean-target-libatomic
+maybe-clean-target-libatomic:
+@if target-libatomic
+maybe-clean-target-libatomic: clean-target-libatomic
+
+clean-target-libatomic:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libatomic/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing clean in $(TARGET_SUBDIR)/libatomic" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ clean) \
+ || exit 1
+
+@endif target-libatomic
+
+.PHONY: maybe-distclean-target-libatomic distclean-target-libatomic
+maybe-distclean-target-libatomic:
+@if target-libatomic
+maybe-distclean-target-libatomic: distclean-target-libatomic
+
+distclean-target-libatomic:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libatomic/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing distclean in $(TARGET_SUBDIR)/libatomic" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ distclean) \
+ || exit 1
+
+@endif target-libatomic
+
+.PHONY: maybe-maintainer-clean-target-libatomic maintainer-clean-target-libatomic
+maybe-maintainer-clean-target-libatomic:
+@if target-libatomic
+maybe-maintainer-clean-target-libatomic: maintainer-clean-target-libatomic
+
+maintainer-clean-target-libatomic:
+ @: $(MAKE); $(unstage)
+ @[ -f $(TARGET_SUBDIR)/libatomic/Makefile ] || exit 0 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(NORMAL_TARGET_EXPORTS) \
+ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libatomic" ; \
+ for flag in $(EXTRA_TARGET_FLAGS); do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ (cd $(TARGET_SUBDIR)/libatomic && \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+ "RANLIB=$${RANLIB}" \
+ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+ maintainer-clean) \
+ || exit 1
+
+@endif target-libatomic
+
+
+
@if target-libmudflap
.PHONY: check-target-libmudflap-c++
check-target-libmudflap-c++:
@@ -40142,6 +44244,20 @@
@endif target-libmudflap
+@if target-libgomp
+.PHONY: check-target-libgomp-c++
+check-target-libgomp-c++:
+ $(MAKE) RUNTESTFLAGS="$(RUNTESTFLAGS) c++.exp" check-target-libgomp
+
+@endif target-libgomp
+
+@if target-libitm
+.PHONY: check-target-libitm-c++
+check-target-libitm-c++:
+ $(MAKE) RUNTESTFLAGS="$(RUNTESTFLAGS) c++.exp" check-target-libitm
+
+@endif target-libitm
+
# ----------
# GCC module
# ----------
@@ -40175,8 +44291,8 @@
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++ check-c++0x);
-check-c++: check-gcc-c++ check-target-libstdc++-v3 check-target-libmudflap-c++
+ (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++);
+check-c++: check-gcc-c++ check-target-libstdc++-v3 check-target-libmudflap-c++ check-target-libitm-c++ check-target-libgomp-c++
.PHONY: check-gcc-fortran check-fortran
check-gcc-fortran:
@@ -40227,25 +44343,16 @@
check-go: check-gcc-go check-target-libgo
-# Install the gcc headers files, but not the fixed include files,
-# which Cygnus is not allowed to distribute. This rule is very
-# dependent on the workings of the gcc Makefile.in.
-.PHONY: gcc-no-fixedincludes
-gcc-no-fixedincludes:
+# The gcc part of install-no-fixedincludes, which relies on an intimate
+# knowledge of how a number of gcc internal targets (inter)operate. Delegate.
+.PHONY: gcc-install-no-fixedincludes
+gcc-install-no-fixedincludes:
@if [ -f ./gcc/Makefile ]; then \
- rm -rf gcc/tmp-include; \
- mv gcc/include gcc/tmp-include 2>/dev/null; \
- mkdir gcc/include; \
- cp $(srcdir)/gcc/gsyslimits.h gcc/include/syslimits.h; \
- touch gcc/stmp-fixinc gcc/include/fixed; \
- rm -f gcc/stmp-headers gcc/stmp-int-hdrs; \
r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- (cd ./gcc && \
- $(MAKE) $(GCC_FLAGS_TO_PASS) install); \
- rm -rf gcc/include; \
- mv gcc/tmp-include gcc/include 2>/dev/null; \
+ (cd ./gcc \
+ && $(MAKE) $(GCC_FLAGS_TO_PASS) install-no-fixedincludes); \
else true; fi
@endif gcc
@@ -40347,11 +44454,11 @@
mkdir stage1-mpc; \
mv stage1-mpc mpc
@endif mpc
-@if ppl
- @cd $(HOST_SUBDIR); [ -d stage1-ppl ] || \
- mkdir stage1-ppl; \
- mv stage1-ppl ppl
-@endif ppl
+@if isl
+ @cd $(HOST_SUBDIR); [ -d stage1-isl ] || \
+ mkdir stage1-isl; \
+ mv stage1-isl isl
+@endif isl
@if cloog
@cd $(HOST_SUBDIR); [ -d stage1-cloog ] || \
mkdir stage1-cloog; \
@@ -40377,6 +44484,11 @@
mkdir stage1-ld; \
mv stage1-ld ld
@endif ld
+@if libbacktrace
+ @cd $(HOST_SUBDIR); [ -d stage1-libbacktrace ] || \
+ mkdir stage1-libbacktrace; \
+ mv stage1-libbacktrace libbacktrace
+@endif libbacktrace
@if libcpp
@cd $(HOST_SUBDIR); [ -d stage1-libcpp ] || \
mkdir stage1-libcpp; \
@@ -40447,11 +44559,11 @@
cd $(HOST_SUBDIR); mv mpc stage1-mpc ; \
fi
@endif mpc
-@if ppl
- @if test -d $(HOST_SUBDIR)/ppl ; then \
- cd $(HOST_SUBDIR); mv ppl stage1-ppl ; \
+@if isl
+ @if test -d $(HOST_SUBDIR)/isl ; then \
+ cd $(HOST_SUBDIR); mv isl stage1-isl ; \
fi
-@endif ppl
+@endif isl
@if cloog
@if test -d $(HOST_SUBDIR)/cloog ; then \
cd $(HOST_SUBDIR); mv cloog stage1-cloog ; \
@@ -40477,6 +44589,11 @@
cd $(HOST_SUBDIR); mv ld stage1-ld ; \
fi
@endif ld
+@if libbacktrace
+ @if test -d $(HOST_SUBDIR)/libbacktrace ; then \
+ cd $(HOST_SUBDIR); mv libbacktrace stage1-libbacktrace ; \
+ fi
+@endif libbacktrace
@if libcpp
@if test -d $(HOST_SUBDIR)/libcpp ; then \
cd $(HOST_SUBDIR); mv libcpp stage1-libcpp ; \
@@ -40598,12 +44715,12 @@
mv stage2-mpc mpc ; \
mv stage1-mpc prev-mpc || test -f stage1-lean
@endif mpc
-@if ppl
- @cd $(HOST_SUBDIR); [ -d stage2-ppl ] || \
- mkdir stage2-ppl; \
- mv stage2-ppl ppl ; \
- mv stage1-ppl prev-ppl || test -f stage1-lean
-@endif ppl
+@if isl
+ @cd $(HOST_SUBDIR); [ -d stage2-isl ] || \
+ mkdir stage2-isl; \
+ mv stage2-isl isl ; \
+ mv stage1-isl prev-isl || test -f stage1-lean
+@endif isl
@if cloog
@cd $(HOST_SUBDIR); [ -d stage2-cloog ] || \
mkdir stage2-cloog; \
@@ -40634,6 +44751,12 @@
mv stage2-ld ld ; \
mv stage1-ld prev-ld || test -f stage1-lean
@endif ld
+@if libbacktrace
+ @cd $(HOST_SUBDIR); [ -d stage2-libbacktrace ] || \
+ mkdir stage2-libbacktrace; \
+ mv stage2-libbacktrace libbacktrace ; \
+ mv stage1-libbacktrace prev-libbacktrace || test -f stage1-lean
+@endif libbacktrace
@if libcpp
@cd $(HOST_SUBDIR); [ -d stage2-libcpp ] || \
mkdir stage2-libcpp; \
@@ -40718,12 +44841,12 @@
mv prev-mpc stage1-mpc ; : ; \
fi
@endif mpc
-@if ppl
- @if test -d $(HOST_SUBDIR)/ppl ; then \
- cd $(HOST_SUBDIR); mv ppl stage2-ppl ; \
- mv prev-ppl stage1-ppl ; : ; \
+@if isl
+ @if test -d $(HOST_SUBDIR)/isl ; then \
+ cd $(HOST_SUBDIR); mv isl stage2-isl ; \
+ mv prev-isl stage1-isl ; : ; \
fi
-@endif ppl
+@endif isl
@if cloog
@if test -d $(HOST_SUBDIR)/cloog ; then \
cd $(HOST_SUBDIR); mv cloog stage2-cloog ; \
@@ -40754,6 +44877,12 @@
mv prev-ld stage1-ld ; : ; \
fi
@endif ld
+@if libbacktrace
+ @if test -d $(HOST_SUBDIR)/libbacktrace ; then \
+ cd $(HOST_SUBDIR); mv libbacktrace stage2-libbacktrace ; \
+ mv prev-libbacktrace stage1-libbacktrace ; : ; \
+ fi
+@endif libbacktrace
@if libcpp
@if test -d $(HOST_SUBDIR)/libcpp ; then \
cd $(HOST_SUBDIR); mv libcpp stage2-libcpp ; \
@@ -40904,12 +45033,12 @@
mv stage3-mpc mpc ; \
mv stage2-mpc prev-mpc || test -f stage2-lean
@endif mpc
-@if ppl
- @cd $(HOST_SUBDIR); [ -d stage3-ppl ] || \
- mkdir stage3-ppl; \
- mv stage3-ppl ppl ; \
- mv stage2-ppl prev-ppl || test -f stage2-lean
-@endif ppl
+@if isl
+ @cd $(HOST_SUBDIR); [ -d stage3-isl ] || \
+ mkdir stage3-isl; \
+ mv stage3-isl isl ; \
+ mv stage2-isl prev-isl || test -f stage2-lean
+@endif isl
@if cloog
@cd $(HOST_SUBDIR); [ -d stage3-cloog ] || \
mkdir stage3-cloog; \
@@ -40940,6 +45069,12 @@
mv stage3-ld ld ; \
mv stage2-ld prev-ld || test -f stage2-lean
@endif ld
+@if libbacktrace
+ @cd $(HOST_SUBDIR); [ -d stage3-libbacktrace ] || \
+ mkdir stage3-libbacktrace; \
+ mv stage3-libbacktrace libbacktrace ; \
+ mv stage2-libbacktrace prev-libbacktrace || test -f stage2-lean
+@endif libbacktrace
@if libcpp
@cd $(HOST_SUBDIR); [ -d stage3-libcpp ] || \
mkdir stage3-libcpp; \
@@ -41024,12 +45159,12 @@
mv prev-mpc stage2-mpc ; : ; \
fi
@endif mpc
-@if ppl
- @if test -d $(HOST_SUBDIR)/ppl ; then \
- cd $(HOST_SUBDIR); mv ppl stage3-ppl ; \
- mv prev-ppl stage2-ppl ; : ; \
+@if isl
+ @if test -d $(HOST_SUBDIR)/isl ; then \
+ cd $(HOST_SUBDIR); mv isl stage3-isl ; \
+ mv prev-isl stage2-isl ; : ; \
fi
-@endif ppl
+@endif isl
@if cloog
@if test -d $(HOST_SUBDIR)/cloog ; then \
cd $(HOST_SUBDIR); mv cloog stage3-cloog ; \
@@ -41060,6 +45195,12 @@
mv prev-ld stage2-ld ; : ; \
fi
@endif ld
+@if libbacktrace
+ @if test -d $(HOST_SUBDIR)/libbacktrace ; then \
+ cd $(HOST_SUBDIR); mv libbacktrace stage3-libbacktrace ; \
+ mv prev-libbacktrace stage2-libbacktrace ; : ; \
+ fi
+@endif libbacktrace
@if libcpp
@if test -d $(HOST_SUBDIR)/libcpp ; then \
cd $(HOST_SUBDIR); mv libcpp stage3-libcpp ; \
@@ -41266,12 +45407,12 @@
mv stage4-mpc mpc ; \
mv stage3-mpc prev-mpc || test -f stage3-lean
@endif mpc
-@if ppl
- @cd $(HOST_SUBDIR); [ -d stage4-ppl ] || \
- mkdir stage4-ppl; \
- mv stage4-ppl ppl ; \
- mv stage3-ppl prev-ppl || test -f stage3-lean
-@endif ppl
+@if isl
+ @cd $(HOST_SUBDIR); [ -d stage4-isl ] || \
+ mkdir stage4-isl; \
+ mv stage4-isl isl ; \
+ mv stage3-isl prev-isl || test -f stage3-lean
+@endif isl
@if cloog
@cd $(HOST_SUBDIR); [ -d stage4-cloog ] || \
mkdir stage4-cloog; \
@@ -41302,6 +45443,12 @@
mv stage4-ld ld ; \
mv stage3-ld prev-ld || test -f stage3-lean
@endif ld
+@if libbacktrace
+ @cd $(HOST_SUBDIR); [ -d stage4-libbacktrace ] || \
+ mkdir stage4-libbacktrace; \
+ mv stage4-libbacktrace libbacktrace ; \
+ mv stage3-libbacktrace prev-libbacktrace || test -f stage3-lean
+@endif libbacktrace
@if libcpp
@cd $(HOST_SUBDIR); [ -d stage4-libcpp ] || \
mkdir stage4-libcpp; \
@@ -41386,12 +45533,12 @@
mv prev-mpc stage3-mpc ; : ; \
fi
@endif mpc
-@if ppl
- @if test -d $(HOST_SUBDIR)/ppl ; then \
- cd $(HOST_SUBDIR); mv ppl stage4-ppl ; \
- mv prev-ppl stage3-ppl ; : ; \
+@if isl
+ @if test -d $(HOST_SUBDIR)/isl ; then \
+ cd $(HOST_SUBDIR); mv isl stage4-isl ; \
+ mv prev-isl stage3-isl ; : ; \
fi
-@endif ppl
+@endif isl
@if cloog
@if test -d $(HOST_SUBDIR)/cloog ; then \
cd $(HOST_SUBDIR); mv cloog stage4-cloog ; \
@@ -41422,6 +45569,12 @@
mv prev-ld stage3-ld ; : ; \
fi
@endif ld
+@if libbacktrace
+ @if test -d $(HOST_SUBDIR)/libbacktrace ; then \
+ cd $(HOST_SUBDIR); mv libbacktrace stage4-libbacktrace ; \
+ mv prev-libbacktrace stage3-libbacktrace ; : ; \
+ fi
+@endif libbacktrace
@if libcpp
@if test -d $(HOST_SUBDIR)/libcpp ; then \
cd $(HOST_SUBDIR); mv libcpp stage4-libcpp ; \
@@ -41616,12 +45769,12 @@
mv stageprofile-mpc mpc ; \
mv stage1-mpc prev-mpc || test -f stage1-lean
@endif mpc
-@if ppl
- @cd $(HOST_SUBDIR); [ -d stageprofile-ppl ] || \
- mkdir stageprofile-ppl; \
- mv stageprofile-ppl ppl ; \
- mv stage1-ppl prev-ppl || test -f stage1-lean
-@endif ppl
+@if isl
+ @cd $(HOST_SUBDIR); [ -d stageprofile-isl ] || \
+ mkdir stageprofile-isl; \
+ mv stageprofile-isl isl ; \
+ mv stage1-isl prev-isl || test -f stage1-lean
+@endif isl
@if cloog
@cd $(HOST_SUBDIR); [ -d stageprofile-cloog ] || \
mkdir stageprofile-cloog; \
@@ -41652,6 +45805,12 @@
mv stageprofile-ld ld ; \
mv stage1-ld prev-ld || test -f stage1-lean
@endif ld
+@if libbacktrace
+ @cd $(HOST_SUBDIR); [ -d stageprofile-libbacktrace ] || \
+ mkdir stageprofile-libbacktrace; \
+ mv stageprofile-libbacktrace libbacktrace ; \
+ mv stage1-libbacktrace prev-libbacktrace || test -f stage1-lean
+@endif libbacktrace
@if libcpp
@cd $(HOST_SUBDIR); [ -d stageprofile-libcpp ] || \
mkdir stageprofile-libcpp; \
@@ -41736,12 +45895,12 @@
mv prev-mpc stage1-mpc ; : ; \
fi
@endif mpc
-@if ppl
- @if test -d $(HOST_SUBDIR)/ppl ; then \
- cd $(HOST_SUBDIR); mv ppl stageprofile-ppl ; \
- mv prev-ppl stage1-ppl ; : ; \
+@if isl
+ @if test -d $(HOST_SUBDIR)/isl ; then \
+ cd $(HOST_SUBDIR); mv isl stageprofile-isl ; \
+ mv prev-isl stage1-isl ; : ; \
fi
-@endif ppl
+@endif isl
@if cloog
@if test -d $(HOST_SUBDIR)/cloog ; then \
cd $(HOST_SUBDIR); mv cloog stageprofile-cloog ; \
@@ -41772,6 +45931,12 @@
mv prev-ld stage1-ld ; : ; \
fi
@endif ld
+@if libbacktrace
+ @if test -d $(HOST_SUBDIR)/libbacktrace ; then \
+ cd $(HOST_SUBDIR); mv libbacktrace stageprofile-libbacktrace ; \
+ mv prev-libbacktrace stage1-libbacktrace ; : ; \
+ fi
+@endif libbacktrace
@if libcpp
@if test -d $(HOST_SUBDIR)/libcpp ; then \
cd $(HOST_SUBDIR); mv libcpp stageprofile-libcpp ; \
@@ -41899,12 +46064,12 @@
mv stagefeedback-mpc mpc ; \
mv stageprofile-mpc prev-mpc || test -f stageprofile-lean
@endif mpc
-@if ppl
- @cd $(HOST_SUBDIR); [ -d stagefeedback-ppl ] || \
- mkdir stagefeedback-ppl; \
- mv stagefeedback-ppl ppl ; \
- mv stageprofile-ppl prev-ppl || test -f stageprofile-lean
-@endif ppl
+@if isl
+ @cd $(HOST_SUBDIR); [ -d stagefeedback-isl ] || \
+ mkdir stagefeedback-isl; \
+ mv stagefeedback-isl isl ; \
+ mv stageprofile-isl prev-isl || test -f stageprofile-lean
+@endif isl
@if cloog
@cd $(HOST_SUBDIR); [ -d stagefeedback-cloog ] || \
mkdir stagefeedback-cloog; \
@@ -41935,6 +46100,12 @@
mv stagefeedback-ld ld ; \
mv stageprofile-ld prev-ld || test -f stageprofile-lean
@endif ld
+@if libbacktrace
+ @cd $(HOST_SUBDIR); [ -d stagefeedback-libbacktrace ] || \
+ mkdir stagefeedback-libbacktrace; \
+ mv stagefeedback-libbacktrace libbacktrace ; \
+ mv stageprofile-libbacktrace prev-libbacktrace || test -f stageprofile-lean
+@endif libbacktrace
@if libcpp
@cd $(HOST_SUBDIR); [ -d stagefeedback-libcpp ] || \
mkdir stagefeedback-libcpp; \
@@ -42019,12 +46190,12 @@
mv prev-mpc stageprofile-mpc ; : ; \
fi
@endif mpc
-@if ppl
- @if test -d $(HOST_SUBDIR)/ppl ; then \
- cd $(HOST_SUBDIR); mv ppl stagefeedback-ppl ; \
- mv prev-ppl stageprofile-ppl ; : ; \
+@if isl
+ @if test -d $(HOST_SUBDIR)/isl ; then \
+ cd $(HOST_SUBDIR); mv isl stagefeedback-isl ; \
+ mv prev-isl stageprofile-isl ; : ; \
fi
-@endif ppl
+@endif isl
@if cloog
@if test -d $(HOST_SUBDIR)/cloog ; then \
cd $(HOST_SUBDIR); mv cloog stagefeedback-cloog ; \
@@ -42055,6 +46226,12 @@
mv prev-ld stageprofile-ld ; : ; \
fi
@endif ld
+@if libbacktrace
+ @if test -d $(HOST_SUBDIR)/libbacktrace ; then \
+ cd $(HOST_SUBDIR); mv libbacktrace stagefeedback-libbacktrace ; \
+ mv prev-libbacktrace stageprofile-libbacktrace ; : ; \
+ fi
+@endif libbacktrace
@if libcpp
@if test -d $(HOST_SUBDIR)/libcpp ; then \
cd $(HOST_SUBDIR); mv libcpp stagefeedback-libcpp ; \
@@ -42199,6 +46376,18 @@
configure-stageprofile-target-libstdc++-v3: maybe-all-stageprofile-gcc
configure-stagefeedback-target-libstdc++-v3: maybe-all-stagefeedback-gcc
configure-target-libmudflap: stage_last
+configure-stage1-target-libsanitizer: maybe-all-stage1-gcc
+configure-stage2-target-libsanitizer: maybe-all-stage2-gcc
+configure-stage3-target-libsanitizer: maybe-all-stage3-gcc
+configure-stage4-target-libsanitizer: maybe-all-stage4-gcc
+configure-stageprofile-target-libsanitizer: maybe-all-stageprofile-gcc
+configure-stagefeedback-target-libsanitizer: maybe-all-stagefeedback-gcc
+configure-stage1-target-libvtv: maybe-all-stage1-gcc
+configure-stage2-target-libvtv: maybe-all-stage2-gcc
+configure-stage3-target-libvtv: maybe-all-stage3-gcc
+configure-stage4-target-libvtv: maybe-all-stage4-gcc
+configure-stageprofile-target-libvtv: maybe-all-stageprofile-gcc
+configure-stagefeedback-target-libvtv: maybe-all-stagefeedback-gcc
configure-target-libssp: stage_last
configure-target-newlib: stage_last
configure-stage1-target-libgcc: maybe-all-stage1-gcc
@@ -42207,6 +46396,7 @@
configure-stage4-target-libgcc: maybe-all-stage4-gcc
configure-stageprofile-target-libgcc: maybe-all-stageprofile-gcc
configure-stagefeedback-target-libgcc: maybe-all-stagefeedback-gcc
+configure-target-libbacktrace: stage_last
configure-target-libquadmath: stage_last
configure-target-libgfortran: stage_last
configure-target-libobjc: stage_last
@@ -42226,14 +46416,19 @@
configure-stage4-target-libgomp: maybe-all-stage4-gcc
configure-stageprofile-target-libgomp: maybe-all-stageprofile-gcc
configure-stagefeedback-target-libgomp: maybe-all-stagefeedback-gcc
+configure-target-libitm: stage_last
+configure-target-libatomic: stage_last
@endif gcc-bootstrap
@if gcc-no-bootstrap
configure-target-libstdc++-v3: maybe-all-gcc
configure-target-libmudflap: maybe-all-gcc
+configure-target-libsanitizer: maybe-all-gcc
+configure-target-libvtv: maybe-all-gcc
configure-target-libssp: maybe-all-gcc
configure-target-newlib: maybe-all-gcc
configure-target-libgcc: maybe-all-gcc
+configure-target-libbacktrace: maybe-all-gcc
configure-target-libquadmath: maybe-all-gcc
configure-target-libgfortran: maybe-all-gcc
configure-target-libobjc: maybe-all-gcc
@@ -42248,6 +46443,8 @@
configure-target-rda: maybe-all-gcc
configure-target-libada: maybe-all-gcc
configure-target-libgomp: maybe-all-gcc
+configure-target-libitm: maybe-all-gcc
+configure-target-libatomic: maybe-all-gcc
@endif gcc-no-bootstrap
@@ -42283,6 +46480,14 @@
configure-stage4-gcc: maybe-configure-stage4-intl
configure-stageprofile-gcc: maybe-configure-stageprofile-intl
configure-stagefeedback-gcc: maybe-configure-stagefeedback-intl
+configure-gcc: maybe-all-gmp
+
+configure-stage1-gcc: maybe-all-stage1-gmp
+configure-stage2-gcc: maybe-all-stage2-gmp
+configure-stage3-gcc: maybe-all-stage3-gmp
+configure-stage4-gcc: maybe-all-stage4-gmp
+configure-stageprofile-gcc: maybe-all-stageprofile-gmp
+configure-stagefeedback-gcc: maybe-all-stagefeedback-gmp
configure-gcc: maybe-all-lto-plugin
configure-stage1-gcc: maybe-all-stage1-lto-plugin
@@ -42339,14 +46544,6 @@
all-stage4-gcc: all-stage4-libiberty
all-stageprofile-gcc: all-stageprofile-libiberty
all-stagefeedback-gcc: all-stagefeedback-libiberty
-all-gcc: maybe-all-gmp
-
-all-stage1-gcc: maybe-all-stage1-gmp
-all-stage2-gcc: maybe-all-stage2-gmp
-all-stage3-gcc: maybe-all-stage3-gmp
-all-stage4-gcc: maybe-all-stage4-gmp
-all-stageprofile-gcc: maybe-all-stageprofile-gmp
-all-stagefeedback-gcc: maybe-all-stagefeedback-gmp
all-gcc: maybe-all-intl
all-stage1-gcc: maybe-all-stage1-intl
@@ -42371,14 +46568,6 @@
all-stage4-gcc: maybe-all-stage4-mpc
all-stageprofile-gcc: maybe-all-stageprofile-mpc
all-stagefeedback-gcc: maybe-all-stagefeedback-mpc
-all-gcc: maybe-all-ppl
-
-all-stage1-gcc: maybe-all-stage1-ppl
-all-stage2-gcc: maybe-all-stage2-ppl
-all-stage3-gcc: maybe-all-stage3-ppl
-all-stage4-gcc: maybe-all-stage4-ppl
-all-stageprofile-gcc: maybe-all-stageprofile-ppl
-all-stagefeedback-gcc: maybe-all-stagefeedback-ppl
all-gcc: maybe-all-cloog
all-stage1-gcc: maybe-all-stage1-cloog
@@ -42435,6 +46624,14 @@
all-stage4-gcc: maybe-all-stage4-zlib
all-stageprofile-gcc: maybe-all-stageprofile-zlib
all-stagefeedback-gcc: maybe-all-stagefeedback-zlib
+all-gcc: all-libbacktrace
+
+all-stage1-gcc: all-stage1-libbacktrace
+all-stage2-gcc: all-stage2-libbacktrace
+all-stage3-gcc: all-stage3-libbacktrace
+all-stage4-gcc: all-stage4-libbacktrace
+all-stageprofile-gcc: all-stageprofile-libbacktrace
+all-stagefeedback-gcc: all-stagefeedback-libbacktrace
all-gcc: all-libcpp
all-stage1-gcc: all-stage1-libcpp
@@ -42503,6 +46700,7 @@
install-gcc: maybe-install-fixincludes
install-gcc: maybe-install-lto-plugin
install-strip-gcc: maybe-install-strip-fixincludes
+install-strip-gcc: maybe-install-strip-lto-plugin
configure-libcpp: configure-libiberty
configure-stage1-libcpp: configure-stage1-libiberty
@@ -42562,30 +46760,30 @@
configure-stage4-mpc: maybe-all-stage4-mpfr
configure-stageprofile-mpc: maybe-all-stageprofile-mpfr
configure-stagefeedback-mpc: maybe-all-stagefeedback-mpfr
-configure-ppl: maybe-all-gmp
+configure-isl: maybe-all-gmp
-configure-stage1-ppl: maybe-all-stage1-gmp
-configure-stage2-ppl: maybe-all-stage2-gmp
-configure-stage3-ppl: maybe-all-stage3-gmp
-configure-stage4-ppl: maybe-all-stage4-gmp
-configure-stageprofile-ppl: maybe-all-stageprofile-gmp
-configure-stagefeedback-ppl: maybe-all-stagefeedback-gmp
-configure-ppl: maybe-all-mpfr
+configure-stage1-isl: maybe-all-stage1-gmp
+configure-stage2-isl: maybe-all-stage2-gmp
+configure-stage3-isl: maybe-all-stage3-gmp
+configure-stage4-isl: maybe-all-stage4-gmp
+configure-stageprofile-isl: maybe-all-stageprofile-gmp
+configure-stagefeedback-isl: maybe-all-stagefeedback-gmp
+configure-cloog: maybe-all-isl
-configure-stage1-ppl: maybe-all-stage1-mpfr
-configure-stage2-ppl: maybe-all-stage2-mpfr
-configure-stage3-ppl: maybe-all-stage3-mpfr
-configure-stage4-ppl: maybe-all-stage4-mpfr
-configure-stageprofile-ppl: maybe-all-stageprofile-mpfr
-configure-stagefeedback-ppl: maybe-all-stagefeedback-mpfr
-configure-cloog: maybe-all-ppl
+configure-stage1-cloog: maybe-all-stage1-isl
+configure-stage2-cloog: maybe-all-stage2-isl
+configure-stage3-cloog: maybe-all-stage3-isl
+configure-stage4-cloog: maybe-all-stage4-isl
+configure-stageprofile-cloog: maybe-all-stageprofile-isl
+configure-stagefeedback-cloog: maybe-all-stagefeedback-isl
+configure-cloog: maybe-all-gmp
-configure-stage1-cloog: maybe-all-stage1-ppl
-configure-stage2-cloog: maybe-all-stage2-ppl
-configure-stage3-cloog: maybe-all-stage3-ppl
-configure-stage4-cloog: maybe-all-stage4-ppl
-configure-stageprofile-cloog: maybe-all-stageprofile-ppl
-configure-stagefeedback-cloog: maybe-all-stagefeedback-ppl
+configure-stage1-cloog: maybe-all-stage1-gmp
+configure-stage2-cloog: maybe-all-stage2-gmp
+configure-stage3-cloog: maybe-all-stage3-gmp
+configure-stage4-cloog: maybe-all-stage4-gmp
+configure-stageprofile-cloog: maybe-all-stageprofile-gmp
+configure-stagefeedback-cloog: maybe-all-stagefeedback-gmp
configure-gdb: maybe-all-intl
configure-gdb: maybe-configure-sim
configure-gdb: maybe-all-bfd
@@ -42707,6 +46905,14 @@
all-stage4-binutils: maybe-all-stage4-intl
all-stageprofile-binutils: maybe-all-stageprofile-intl
all-stagefeedback-binutils: maybe-all-stagefeedback-intl
+all-binutils: maybe-all-gas
+
+all-stage1-binutils: maybe-all-stage1-gas
+all-stage2-binutils: maybe-all-stage2-gas
+all-stage3-binutils: maybe-all-stage3-gas
+all-stage4-binutils: maybe-all-stage4-gas
+all-stageprofile-binutils: maybe-all-stageprofile-gas
+all-stagefeedback-binutils: maybe-all-stagefeedback-gas
install-binutils: maybe-install-opcodes
install-strip-binutils: maybe-install-strip-opcodes
install-opcodes: maybe-install-bfd
@@ -42756,6 +46962,7 @@
all-gprof: maybe-all-bfd
all-gprof: maybe-all-opcodes
all-gprof: maybe-all-intl
+all-gprof: maybe-all-gas
configure-ld: maybe-configure-intl
configure-stage1-ld: maybe-configure-stage1-intl
@@ -42812,6 +47019,14 @@
all-stage4-ld: maybe-all-stage4-intl
all-stageprofile-ld: maybe-all-stageprofile-intl
all-stagefeedback-ld: maybe-all-stagefeedback-intl
+all-ld: maybe-all-gas
+
+all-stage1-ld: maybe-all-stage1-gas
+all-stage2-ld: maybe-all-stage2-gas
+all-stage3-ld: maybe-all-stage3-gas
+all-stage4-ld: maybe-all-stage4-gas
+all-stageprofile-ld: maybe-all-stageprofile-gas
+all-stagefeedback-ld: maybe-all-stagefeedback-gas
install-ld: maybe-install-gold
install-strip-ld: maybe-install-strip-gold
configure-gold: maybe-configure-intl
@@ -42854,6 +47069,14 @@
all-stage4-gold: maybe-all-build-bison
all-stageprofile-gold: maybe-all-build-bison
all-stagefeedback-gold: maybe-all-build-bison
+all-gold: maybe-all-gas
+
+all-stage1-gold: maybe-all-stage1-gas
+all-stage2-gold: maybe-all-stage2-gas
+all-stage3-gold: maybe-all-stage3-gas
+all-stage4-gold: maybe-all-stage4-gas
+all-stageprofile-gold: maybe-all-stageprofile-gas
+all-stagefeedback-gold: maybe-all-stagefeedback-gas
check-gold: maybe-all-binutils
check-stage1-gold: maybe-all-stage1-binutils
@@ -42949,7 +47172,9 @@
all-target-fastjar: maybe-all-target-zlib
configure-target-libgo: maybe-configure-target-libffi
configure-target-libgo: maybe-all-target-libstdc++-v3
+all-target-libgo: maybe-all-target-libbacktrace
all-target-libgo: maybe-all-target-libffi
+all-target-libgo: maybe-all-target-libatomic
configure-target-libjava: maybe-configure-target-zlib
configure-target-libjava: maybe-configure-target-boehm-gc
configure-target-libjava: maybe-configure-target-libffi
@@ -42967,6 +47192,22 @@
configure-stage4-target-libstdc++-v3: maybe-configure-stage4-target-libgomp
configure-stageprofile-target-libstdc++-v3: maybe-configure-stageprofile-target-libgomp
configure-stagefeedback-target-libstdc++-v3: maybe-configure-stagefeedback-target-libgomp
+configure-target-libsanitizer: maybe-all-target-libstdc++-v3
+
+configure-stage1-target-libsanitizer: maybe-all-stage1-target-libstdc++-v3
+configure-stage2-target-libsanitizer: maybe-all-stage2-target-libstdc++-v3
+configure-stage3-target-libsanitizer: maybe-all-stage3-target-libstdc++-v3
+configure-stage4-target-libsanitizer: maybe-all-stage4-target-libstdc++-v3
+configure-stageprofile-target-libsanitizer: maybe-all-stageprofile-target-libstdc++-v3
+configure-stagefeedback-target-libsanitizer: maybe-all-stagefeedback-target-libstdc++-v3
+configure-target-libvtv: maybe-all-target-libstdc++-v3
+
+configure-stage1-target-libvtv: maybe-all-stage1-target-libstdc++-v3
+configure-stage2-target-libvtv: maybe-all-stage2-target-libstdc++-v3
+configure-stage3-target-libvtv: maybe-all-stage3-target-libstdc++-v3
+configure-stage4-target-libvtv: maybe-all-stage4-target-libstdc++-v3
+configure-stageprofile-target-libvtv: maybe-all-stageprofile-target-libstdc++-v3
+configure-stagefeedback-target-libvtv: maybe-all-stagefeedback-target-libstdc++-v3
all-target-libstdc++-v3: maybe-configure-target-libgomp
all-stage1-target-libstdc++-v3: maybe-configure-stage1-target-libgomp
@@ -42975,6 +47216,17 @@
all-stage4-target-libstdc++-v3: maybe-configure-stage4-target-libgomp
all-stageprofile-target-libstdc++-v3: maybe-configure-stageprofile-target-libgomp
all-stagefeedback-target-libstdc++-v3: maybe-configure-stagefeedback-target-libgomp
+install-target-libgo: maybe-install-target-libatomic
+install-target-libgfortran: maybe-install-target-libquadmath
+install-target-libgfortran: maybe-install-target-libgcc
+install-target-libsanitizer: maybe-install-target-libstdc++-v3
+install-target-libsanitizer: maybe-install-target-libgcc
+install-target-libvtv: maybe-install-target-libstdc++-v3
+install-target-libvtv: maybe-install-target-libgcc
+install-target-libjava: maybe-install-target-libgcc
+install-target-libitm: maybe-install-target-libgcc
+install-target-libobjc: maybe-install-target-libgcc
+install-target-libstdc++-v3: maybe-install-target-libgcc
all-target-libgloss: maybe-all-target-newlib
all-target-winsup: maybe-all-target-libtermcap
configure-target-newlib: maybe-all-binutils
@@ -42994,6 +47246,18 @@
configure-stage4-target-libstdc++-v3: maybe-all-stage4-target-libgcc
configure-stageprofile-target-libstdc++-v3: maybe-all-stageprofile-target-libgcc
configure-stagefeedback-target-libstdc++-v3: maybe-all-stagefeedback-target-libgcc
+configure-stage1-target-libsanitizer: maybe-all-stage1-target-libgcc
+configure-stage2-target-libsanitizer: maybe-all-stage2-target-libgcc
+configure-stage3-target-libsanitizer: maybe-all-stage3-target-libgcc
+configure-stage4-target-libsanitizer: maybe-all-stage4-target-libgcc
+configure-stageprofile-target-libsanitizer: maybe-all-stageprofile-target-libgcc
+configure-stagefeedback-target-libsanitizer: maybe-all-stagefeedback-target-libgcc
+configure-stage1-target-libvtv: maybe-all-stage1-target-libgcc
+configure-stage2-target-libvtv: maybe-all-stage2-target-libgcc
+configure-stage3-target-libvtv: maybe-all-stage3-target-libgcc
+configure-stage4-target-libvtv: maybe-all-stage4-target-libgcc
+configure-stageprofile-target-libvtv: maybe-all-stageprofile-target-libgcc
+configure-stagefeedback-target-libvtv: maybe-all-stagefeedback-target-libgcc
configure-stage1-target-libgomp: maybe-all-stage1-target-libgcc
configure-stage2-target-libgomp: maybe-all-stage2-target-libgcc
configure-stage3-target-libgomp: maybe-all-stage3-target-libgcc
@@ -43005,8 +47269,11 @@
@if gcc-no-bootstrap
configure-target-libstdc++-v3: maybe-all-target-libgcc
configure-target-libmudflap: maybe-all-target-libgcc
+configure-target-libsanitizer: maybe-all-target-libgcc
+configure-target-libvtv: maybe-all-target-libgcc
configure-target-libssp: maybe-all-target-libgcc
configure-target-newlib: maybe-all-target-libgcc
+configure-target-libbacktrace: maybe-all-target-libgcc
configure-target-libquadmath: maybe-all-target-libgcc
configure-target-libgfortran: maybe-all-target-libgcc
configure-target-libobjc: maybe-all-target-libgcc
@@ -43021,6 +47288,8 @@
configure-target-rda: maybe-all-target-libgcc
configure-target-libada: maybe-all-target-libgcc
configure-target-libgomp: maybe-all-target-libgcc
+configure-target-libitm: maybe-all-target-libgcc
+configure-target-libatomic: maybe-all-target-libgcc
@endif gcc-no-bootstrap
@@ -43028,10 +47297,16 @@
configure-target-libmudflap: maybe-all-target-newlib maybe-all-target-libgloss
+configure-target-libsanitizer: maybe-all-target-newlib maybe-all-target-libgloss
+
+configure-target-libvtv: maybe-all-target-newlib maybe-all-target-libgloss
+
configure-target-libssp: maybe-all-target-newlib maybe-all-target-libgloss
+configure-target-libbacktrace: maybe-all-target-newlib maybe-all-target-libgloss
+
configure-target-libquadmath: maybe-all-target-newlib maybe-all-target-libgloss
configure-target-libgfortran: maybe-all-target-newlib maybe-all-target-libgloss
@@ -43060,6 +47335,11 @@
configure-target-libgomp: maybe-all-target-newlib maybe-all-target-libgloss
+configure-target-libitm: maybe-all-target-newlib maybe-all-target-libgloss
+configure-target-libitm: maybe-all-target-libstdc++-v3
+
+configure-target-libatomic: maybe-all-target-newlib maybe-all-target-libgloss
+
CONFIGURE_GDB_TK = @CONFIGURE_GDB_TK@
GDB_TK = @GDB_TK@
diff --git a/Makefile.tpl b/Makefile.tpl
index 4dd2391..3233a78 100644
--- a/Makefile.tpl
+++ b/Makefile.tpl
@@ -6,7 +6,7 @@
#
# 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
+# 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
# Free Software Foundation
#
# This file is free software; you can redistribute it and/or modify
@@ -209,6 +209,7 @@
WINDMC="$(WINDMC)"; export WINDMC; \
OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
+ READELF="$(READELF)"; export READELF; \
AR_FOR_TARGET="$(AR_FOR_TARGET)"; export AR_FOR_TARGET; \
AS_FOR_TARGET="$(AS_FOR_TARGET)"; export AS_FOR_TARGET; \
GCC_FOR_TARGET="$(GCC_FOR_TARGET)"; export GCC_FOR_TARGET; \
@@ -216,12 +217,12 @@
NM_FOR_TARGET="$(NM_FOR_TARGET)"; export NM_FOR_TARGET; \
OBJDUMP_FOR_TARGET="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP_FOR_TARGET; \
RANLIB_FOR_TARGET="$(RANLIB_FOR_TARGET)"; export RANLIB_FOR_TARGET; \
+ READELF_FOR_TARGET="$(READELF_FOR_TARGET)"; export READELF_FOR_TARGET; \
TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \
HOST_LIBS="$(STAGE1_LIBS)"; export HOST_LIBS; \
GMPLIBS="$(HOST_GMPLIBS)"; export GMPLIBS; \
GMPINC="$(HOST_GMPINC)"; export GMPINC; \
- PPLLIBS="$(HOST_PPLLIBS)"; export PPLLIBS; \
- PPLINC="$(HOST_PPLINC)"; export PPLINC; \
+ ISLINC="$(HOST_ISLINC)"; export ISLINC; \
CLOOGLIBS="$(HOST_CLOOGLIBS)"; export CLOOGLIBS; \
CLOOGINC="$(HOST_CLOOGINC)"; export CLOOGINC; \
LIBELFLIBS="$(HOST_LIBELFLIBS)" ; export LIBELFLIBS; \
@@ -237,7 +238,7 @@
@if target-libstdc++-v3-bootstrap
# Override the above if we're bootstrapping C++.
POSTSTAGE1_CXX_EXPORT = \
- CXX="$(STAGE_CC_WRAPPER) $$r/$(HOST_SUBDIR)/prev-gcc/g++$(exeext) \
+ CXX="$(STAGE_CC_WRAPPER) $$r/$(HOST_SUBDIR)/prev-gcc/xg++$(exeext) \
-B$$r/$(HOST_SUBDIR)/prev-gcc/ -B$(build_tooldir)/bin/ -nostdinc++ \
-B$$r/prev-$(TARGET_SUBDIR)/libstdc++-v3/src/.libs \
-B$$r/prev-$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs \
@@ -288,6 +289,7 @@
NM="$(COMPILER_NM_FOR_TARGET)"; export NM; \
OBJDUMP="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP; \
RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
+ READELF="$(READELF_FOR_TARGET)"; export READELF; \
STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
WINDMC="$(WINDMC_FOR_TARGET)"; export WINDMC; \
@@ -310,9 +312,8 @@
HOST_GMPLIBS = @gmplibs@
HOST_GMPINC = @gmpinc@
-# Where to find PPL
-HOST_PPLLIBS = @ppllibs@
-HOST_PPLINC = @pplinc@
+# Where to find ISL
+HOST_ISLINC = @islinc@
# Where to find CLOOG
HOST_CLOOGLIBS = @clooglibs@
@@ -366,7 +367,7 @@
# here so that they can be overridden by Makefile fragments.
BOOT_CFLAGS= -g -O2
BOOT_LDFLAGS=
-BOOT_ADAFLAGS=-gnatpg -gnata
+BOOT_ADAFLAGS= -gnatpg
AWK = @AWK@
SED = @SED@
@@ -400,6 +401,7 @@
NM = @NM@
OBJDUMP = @OBJDUMP@
RANLIB = @RANLIB@
+READELF = @READELF@
STRIP = @STRIP@
WINDRES = @WINDRES@
WINDMC = @WINDMC@
@@ -421,7 +423,6 @@
STAGE_CFLAGS = $(BOOT_CFLAGS)
STAGE_TFLAGS = $(TFLAGS)
STAGE_CONFIGURE_FLAGS=@stage2_werror_flag@
-POSTSTAGE1_CONFIGURE_FLAGS = @POSTSTAGE1_CONFIGURE_FLAGS@
[+ FOR bootstrap-stage +]
# Defaults for stage [+id+]; some are overridden below.
@@ -432,10 +433,7 @@
STAGE[+id+]_CXXFLAGS = $(STAGE[+id+]_CFLAGS)
@endif target-libstdc++-v3-bootstrap
STAGE[+id+]_TFLAGS = $(STAGE_TFLAGS)
-# STAGE1_CONFIGURE_FLAGS overridden below, so we can use
-# POSTSTAGE1_CONFIGURE_FLAGS here.
-STAGE[+id+]_CONFIGURE_FLAGS = \
- $(STAGE_CONFIGURE_FLAGS) $(POSTSTAGE1_CONFIGURE_FLAGS)
+STAGE[+id+]_CONFIGURE_FLAGS = $(STAGE_CONFIGURE_FLAGS)
[+ ENDFOR bootstrap-stage +]
# Only build the C compiler for stage1, because that is the only one that
@@ -453,9 +451,6 @@
# the last argument when conflicting --enable arguments are passed.
# * Likewise, we force-disable coverage flags, since the installed
# compiler probably has never heard of them.
-# * Don't remove this, because above we added
-# POSTSTAGE1_CONFIGURE_FLAGS to STAGE[+id+]_CONFIGURE_FLAGS, which
-# we don't want for STAGE1_CONFIGURE_FLAGS.
STAGE1_CONFIGURE_FLAGS = --disable-intermodule $(STAGE1_CHECKING) \
--disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
@@ -493,6 +488,7 @@
NM_FOR_TARGET=@NM_FOR_TARGET@
OBJDUMP_FOR_TARGET=@OBJDUMP_FOR_TARGET@
RANLIB_FOR_TARGET=@RANLIB_FOR_TARGET@
+READELF_FOR_TARGET=@READELF_FOR_TARGET@
STRIP_FOR_TARGET=@STRIP_FOR_TARGET@
WINDRES_FOR_TARGET=@WINDRES_FOR_TARGET@
WINDMC_FOR_TARGET=@WINDMC_FOR_TARGET@
@@ -612,12 +608,19 @@
'NM=$(NM)' \
'OBJDUMP=$(OBJDUMP)' \
'RANLIB=$(RANLIB)' \
+ 'READELF=$(READELF)' \
'STRIP=$(STRIP)' \
'WINDRES=$(WINDRES)' \
'WINDMC=$(WINDMC)'
FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS)
+# Flags to pass to stage1 or when not bootstrapping.
+
+STAGE1_FLAGS_TO_PASS = \
+ LDFLAGS="$${LDFLAGS}" \
+ HOST_LIBS="$${HOST_LIBS}"
+
# Flags to pass to stage2 and later makes.
POSTSTAGE1_FLAGS_TO_PASS = \
@@ -652,6 +655,7 @@
'NM=$(COMPILER_NM_FOR_TARGET)' \
'OBJDUMP=$$(OBJDUMP_FOR_TARGET)' \
'RANLIB=$$(RANLIB_FOR_TARGET)' \
+ 'READELF=$$(READELF_FOR_TARGET)' \
'WINDRES=$$(WINDRES_FOR_TARGET)' \
'WINDMC=$$(WINDMC_FOR_TARGET)' \
'XGCC_FLAGS_FOR_TARGET=$(XGCC_FLAGS_FOR_TARGET)' \
@@ -668,10 +672,7 @@
EXTRA_GCC_FLAGS = \
"GCC_FOR_TARGET=$(GCC_FOR_TARGET)" \
"`echo 'STMP_FIXPROTO=$(STMP_FIXPROTO)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
- "`echo 'LIMITS_H_TEST=$(LIMITS_H_TEST)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
- "`echo 'LIBGCC2_CFLAGS=$(LIBGCC2_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
- "`echo 'LIBGCC2_DEBUG_CFLAGS=$(LIBGCC2_DEBUG_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
- "`echo 'LIBGCC2_INCLUDES=$(LIBGCC2_INCLUDES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"
+ "`echo 'LIMITS_H_TEST=$(LIMITS_H_TEST)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"
GCC_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS)
@@ -902,11 +903,12 @@
true ; \
fi
-# install-no-fixedincludes is used because Cygnus can not distribute
-# the fixed header files.
+# install-no-fixedincludes is used to allow the elaboration of binary packages
+# suitable for distribution, where we cannot include the fixed system header
+# files.
.PHONY: install-no-fixedincludes
install-no-fixedincludes: installdirs install-host-nogcc \
- install-target gcc-no-fixedincludes
+ install-target gcc-install-no-fixedincludes
.PHONY: install-strip
install-strip:
@@ -1080,7 +1082,7 @@
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
[+exports+] [+extra_exports+] \
(cd [+subdir+]/[+module+] && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) [+args+] [+extra_make_flags+] \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) [+args+] [+stage1_args+] [+extra_make_flags+] \
$(TARGET-[+prefix+][+module+]))
@endif [+prefix+][+module+]
@@ -1113,9 +1115,8 @@
CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
- [+args+] [+
- IF prev +][+poststage1_args+][+ ENDIF prev
- +] [+extra_make_flags+] \
+ [+args+] [+IF prev +][+poststage1_args+][+ ELSE prev +] \
+ [+stage1_args+][+ ENDIF prev +] [+extra_make_flags+] \
TFLAGS="$(STAGE[+id+]_TFLAGS)" \
$(TARGET-stage[+id+]-[+prefix+][+module+])
@@ -1129,9 +1130,8 @@
$(MAKE) stage[+id+]-start; \
fi; \
cd [+subdir+]/[+module+] && \
- $(MAKE) [+args+] [+ IF prev +] \
- [+poststage1_args+] [+ ENDIF prev +] \
- [+extra_make_flags+] clean
+ $(MAKE) [+args+] [+ IF prev +][+poststage1_args+][+ ELSE prev +] \
+ [+stage1_args+][+ ENDIF prev +] [+extra_make_flags+] clean
@endif [+prefix+][+module+]-bootstrap
[+ ENDFOR bootstrap_stage +]
@@ -1166,6 +1166,7 @@
exports="$(HOST_EXPORTS)"
poststage1_exports="$(POSTSTAGE1_HOST_EXPORTS)"
args="$(EXTRA_HOST_FLAGS)"
+ stage1_args="$(STAGE1_FLAGS_TO_PASS)"
poststage1_args="$(POSTSTAGE1_FLAGS_TO_PASS)" +]
.PHONY: check-[+module+] maybe-check-[+module+]
@@ -1410,6 +1411,20 @@
@endif target-libmudflap
+@if target-libgomp
+.PHONY: check-target-libgomp-c++
+check-target-libgomp-c++:
+ $(MAKE) RUNTESTFLAGS="$(RUNTESTFLAGS) c++.exp" check-target-libgomp
+
+@endif target-libgomp
+
+@if target-libitm
+.PHONY: check-target-libitm-c++
+check-target-libitm-c++:
+ $(MAKE) RUNTESTFLAGS="$(RUNTESTFLAGS) c++.exp" check-target-libitm
+
+@endif target-libitm
+
# ----------
# GCC module
# ----------
@@ -1439,25 +1454,16 @@
check-[+language+]: check-gcc-[+language+][+ FOR lib-check-target +] [+ lib-check-target +][+ ENDFOR lib-check-target +]
[+ ENDFOR languages +]
-# Install the gcc headers files, but not the fixed include files,
-# which Cygnus is not allowed to distribute. This rule is very
-# dependent on the workings of the gcc Makefile.in.
-.PHONY: gcc-no-fixedincludes
-gcc-no-fixedincludes:
+# The gcc part of install-no-fixedincludes, which relies on an intimate
+# knowledge of how a number of gcc internal targets (inter)operate. Delegate.
+.PHONY: gcc-install-no-fixedincludes
+gcc-install-no-fixedincludes:
@if [ -f ./gcc/Makefile ]; then \
- rm -rf gcc/tmp-include; \
- mv gcc/include gcc/tmp-include 2>/dev/null; \
- mkdir gcc/include; \
- cp $(srcdir)/gcc/gsyslimits.h gcc/include/syslimits.h; \
- touch gcc/stmp-fixinc gcc/include/fixed; \
- rm -f gcc/stmp-headers gcc/stmp-int-hdrs; \
r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
- (cd ./gcc && \
- $(MAKE) $(GCC_FLAGS_TO_PASS) install); \
- rm -rf gcc/include; \
- mv gcc/tmp-include gcc/include 2>/dev/null; \
+ (cd ./gcc \
+ && $(MAKE) $(GCC_FLAGS_TO_PASS) install-no-fixedincludes); \
else true; fi
@endif gcc
diff --git a/OWNERS b/OWNERS
deleted file mode 100644
index fdf94a7..0000000
--- a/OWNERS
+++ /dev/null
@@ -1,6 +0,0 @@
-set noparent
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
diff --git a/README.google b/README.google
index d6bc446..39998e0 100644
--- a/README.google
+++ b/README.google
@@ -1,4 +1,4 @@
-Patches applied to binutils-2.22:
+Patches applied to binutils-2.24:
Please include a change to this file with each patch, *and* each
subsequent modification of the patch. Do NOT combine patch
@@ -17,35 +17,6 @@
DO NOT add entries to the GNU ChangeLog files.
gas/as.c
- Status: local
- Owner: eraman
- Ignore --save-temps flag (to enable use of the GNU assembler with a
- compiler that passes --save-temps for MAO).
-
-
-gold/dwarf_reader.cc
-gold/i386.cc
-gold/resolve.cc
-gold/x86_64.cc
- Status: Upstream
- Owner: ccoutant
- Fix C++11 warnings about narrowing in initializers.
- http://sourceware.org/ml/binutils-cvs/2011-12/msg00095.html
-
-gold/options.cc
- Status: Backport
- Owner: ccoutant
- Backport dnovillo's patch to fix bug in option parsing.
- http://sourceware.org/ml/binutils-cvs/2011-10/msg00006.html
-
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
- Status: local
- Owner: aaw
- Disable the initpri3b test. GCC 4.7 no longer executes functions from the
- .ctors and .dtors sections when built against binutils-2.22.
-
-gas/as.c
gas/as.h
gas/doc/as.texinfo
gas/read.c
@@ -54,9 +25,15 @@
Owner: aaw
Disable .incbin, unless explicitly enabled with new flag --allow-incbin.
-bfd/doc/bfd.info
binutils/doc/Makefile.am
binutils/doc/Makefile.in
+gas/doc/Makefile.am
+gas/doc/Makefile.in
+gprof/Makefile.am
+gprof/Makefile.in
+ld/Makefile.am
+ld/Makefile.in
+bfd/doc/bfd.info # delete this and all following:
binutils/doc/addr2line.1
binutils/doc/ar.1
binutils/doc/binutils.info
@@ -75,1016 +52,44 @@
binutils/doc/windres.1
etc/configure.info
etc/standards.info
-gas/doc/Makefile.am
-gas/doc/Makefile.in
gas/doc/as.1
gas/doc/as.info
-gprof/Makefile.am
-gprof/Makefile.in
gprof/gprof.1
gprof/gprof.info
-ld/Makefile.am
-ld/Makefile.in
ld/ld.1
ld/ld.info
Status: local
- Owner: aaw
+ Owner: bmoses
Remove all pre-formatted manual and info pages so that they will
consistently be formatted during the build process. When formatting them,
pass --date=" " to pod2man to avoid including build dates.
-gas/config/tc-arm.c
- Status: local workaround
- Owner: kbaclawski
- Fixed an uninitialized variable warning in line 6569 (under gcc 4.4.3), that
- prevented arm-linux-gnueabi targeted cross compiler to build cleanly.
-
-ltmain.sh
- Status: libtool 74c8993c178a1386ea5e2363a01d919738402f30 (not in binutils yet)
- Owner: cgd
- Sort output of 'find' to ensure deterministic builds.
-
-gold/Makefile.am
-gold/Makefile.in
-gold/configure
-gold/configure.ac
-gold/testsuite/Makefile.in
- Status: Backport
- Owner: simonb
- Backport upstream fix that adds --with-gold-ldflags and --with-gold-ldadd.
- http://sourceware.org/ml/binutils/2011-09/msg00123.html
-
-gold/gold.cc
-gold/options.cc
-gold/incremental.cc
-gold/symtab.cc
- Status: Backport
- Owner: ccoutant
- Integrate CLs 55764 and 55815 from binutils-2.21.
- (55764) Backport upstream patch to fix problem with incremental linking and
- --gc-sections.
- http://sourceware.org/ml/binutils-cvs/2011-09/msg00099.html
- (55815) Backport upstream patch to fix problems with incremental linking and
- shared libraries when all references to a PLT come from changed files.
- Also fixes a problem when a changed object file references a versioned
- symbol defined in an unchanged shared library.
- http://sourceware.org/ml/binutils-cvs/2011-09/msg00124.html
-
-gold/gold.cc
-gold/plugin.cc
-gold/layout.cc
-gold/layout.h
-gold/plugin.cc
-gold/plugin.h
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
-gold/testsuite/plugin_final_layout.sh
-gold/testsuite/plugin_final_layout.cc
-gold/testsuite/plugin_section_order.c
- Status: Backport
- Owner: tmsriram
- Integrate CL 55837 from binutils-2.21.
- Backport upstream patch to fix a bug in plugin section order and delayed
- layout.
- http://www.cygwin.com/ml/binutils/2011-09/msg00265.html
-
-include/demangle.h
-libiberty/cp-demangle.c
-libiberty/testsuite/demangle-expected
- Status: Backport
- Owner: ppluzhnikov
- Integrate CLs 55889 and 55914 from binutils-2.21.
- For http://b/2713120, backport Cary's upstream fix to demangle cloned
- functions.
- http://gcc.gnu.org/ml/gcc-patches/2011-02/msg01545.html
- http://gcc.gnu.org/viewcvs?view=revision&revision=179132
-
-gold/output.cc
-gold/output.h
-gold/powerpc.cc
-gold/sparc.cc
-gold/x86_64.cc
- Status: Backport
- Owner: ccoutant
- [Originally backported to binutils-2.21 as part of CL 56015.]
- Backport upstream patch for PR gold/13249 (gold creates incorrect RELATIVE
- dynamic relocation for local IFUNC GOT entries).
- http://sourceware.org/ml/binutils-cvs/2011-10/msg00040.html
-
-gold/fileread.cc
-gold/incremental.cc
-gold/incremental.h
-gold/output.cc
-gold/plugin.cc
-gold/readsyms.cc
- Status: Backport
- Owner: ccoutant
- Integrate CLs 56018, 56036, 56110, 56146, 56151 from binutils-2.21.
- (56018) Backport upstream patch to add support for --print-symbol-counts
- for incremental links and plugins.
- http://sourceware.org/ml/binutils-cvs/2011-10/msg00041.html
- (56036) Backport upstream patch to fix problem with --incremental-base when
- base file is too large.
- http://sourceware.org/ml/binutils-cvs/2011-10/msg00055.html
- (56110) Backport upstream patch to fix problem detecting truncated or
- corrupt files.
- http://sourceware.org/ml/binutils-cvs/2011-10/msg00078.html
- (56146) Backport upstream patch to fix crash when member of lib group
- can't be opened.
- http://sourceware.org/ml/binutils-cvs/2011-10/msg00080.html
- (56151) Backport upstream patch to fix problem detecting out-of-space
- condition when calling posix_fallocate.
- http://sourceware.org/ml/binutils-cvs/2011-10/msg00086.html
-
-gold/expression.cc
-gold/i386.cc
-gold/options.h
-gold/script.cc
-gold/script.h
-gold/script-sections.cc
-gold/symtab.cc
-gold/symtab.cc
-gold/symtab.h
-gold/x86_64.cc
-gold/testsuite/script_test_2.t
- Status: Backport
- Owner: ccoutant
- Integrate CLs 56268, 56366, 56367, 56368, 56708 from binutils-2.21.
- (56268) Add --no-gnu-unique option to disable STB_GNU_UNIQUE binding.
- (Adapted from CL 49473.)
- (56366) Backport upstream patch to fix internal error on TLS relocation.
- http://sourceware.org/ml/binutils-cvs/2011-10/msg00186.html
- (56367) Backport upstream patch to fix problems with assignment to dot in
- linker scripts.
- http://sourceware.org/ml/binutils-cvs/2011-10/msg00188.html
- (56368) Backport upstream patch to not gc symbols that go into dynamic
- symbol table.
- http://cygwin.com/ml/binutils/2011-10/msg00306.html
- (56708) Backport upstream patch to fix linker crash.
- http://www.cygwin.com/ml/binutils-cvs/2011-10/msg00095.html
-
-gprof/hist.c
- Status: Backport
- Owner: carrot
- Integrate CL 56274 from binutils-2.21.
- Backport upstream patch to fix the out of range of an array index in gprof.
- http://sourceware.org/bugzilla/show_bug.cgi?id=13325.
-
-binutils/Makefile.am
-binutils/Makefile.in
- Status: Backport
- Owner: yunlian
- Integrate CL 56431 from binutils-2.21.
- Backport upstream patch to fix out of treebuilding with syslex regens.
- http://sourceware.org/ml/binutils-cvs/2011-10/msg00158.html
-
-gold/arm.cc
- Status: Upstream
- Owner: dougkwan
- Integrate CL 58241 from binutils-2.21.
- Fix PIE crashes on ARM.
- http://sourceware.org/ml/binutils-cvs/2012-02/msg00012.html
-
-gas/config/tc-i386.c
-gas/config/tc-i386.h
+gas/testsuite/gas/aarch64/mapmisc.d
Status: local
- Owner: martint
- Move types/enums/structs/macros used by MAO into header-file.
+ Owner: bmoses
+ Add "--allow-incbin" directive to avoid errors with .incbin patch.
-gold/dirsearch.cc
-gold/dirsearch.h
-gold/script.cc.cc
-gold/yyscript.y
- Status: Backport
- Owner: saugustine
- Integrate CLs 56741, 56860 from binutils-2.21.
- (56741) Backport upstream patch to fix INCLUDE syntax errors.
- http://sourceware.org/ml/binutils/2011-11/msg00089.html
- (56860) Backport upstream patch to implement INCLUDE directive.
- http://sourceware.org/ml/binutils/2011-11/msg00165.html
-
-ld/lexsup.c
- Status: Local
- Owner: dougkwan
- Add dummy --icf option to ld for gold compatibility.
-
-elfcpp/dwarf.h
-gold/dwarf_reader.cc
-gold/reduced_debug_output.cc
- Status: Backport
- Update DWARF enums with DWARF-4 and Fission extensions.
- Fix bug in handling of DW_LNE_define_file opcode.
- http://sourceware.org/ml/binutils-cvs/2012-03/msg00043.html
- http://sourceware.org/ml/binutils-cvs/2012-03/msg00044.html
-
-gas/testsuite/gas/arm/mapmisc.d
- Status: Google local
- Owner: dougkwan
- Integrate CL 55082 from binutils-2.21.
- Enable .incbin to make test pass.
-
-gold/int_encoding.cc
-gold/int_encoding.h
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
-gold/testsuite/leb128_unittest.cc
- Status: Backport
- Owner: ccoutant
- Port CL 58078 from binutils-2.21.
- Add inlined fast path for decoding LEB128 numbers.
- Backport from upstream patch:
- http://sourceware.org/ml/binutils-cvs/2012-01/msg00118.html
-
-gold/arm.cc
- Status: Backport
- Owner: dougkwan
- Backport fix from upstream for ARM regression.
- http://sourceware.org/ml/binutils-cvs/2012-03/msg00059.html
-
-gold/arm.cc
-gold/gold.cc
-gold/target.h
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
-gold/testsuite/arm_exidx_test.s
-gold/testsuite/arm_exidx_test.sh
- Status: Backport
- Owner: dougkwan
- Backport fix from upstream for __exidx_start & __exidx_end section
- symbols on ARM.
- http://sourceware.org/ml/binutils-cvs/2012-03/msg00086.html
-
-gold/arm.cc
-gold/layout.cc
- Status: Backport
- Owner: dougkwan
- Backport fix from upstream for -z relro.
- http://sourceware.org/ml/binutils-cvs/2012-03/msg00064.html
- http://sourceware.org/ml/binutils-cvs/2012-03/msg00067.html
-
-gold/incremental.cc
- Status: Local
- Owner: ccoutant
- Incremental linker performance:
- Don't store section names in incremental info (unless debugging).
-
-gold/dwarf_reader.cc
-gold/dwarf_reader.h
-gold/gdb-index.cc
-gold/gdb-index.h
-gold/merge.cc
-gold/object.cc
-gold/object.h
-gold/readsyms.cc
-gold/testsuite/gdb_index_test.cc
-gold/testsuite/gdb_index_test_1.sh
-gold/testsuite/gdb_index_test_2.sh
- Status: Backport
- Owner: ccoutant
- Backport support for pre-decompressed debug sections and --gdb-index option.
- http://sourceware.org/ml/binutils-cvs/2012-02/msg00137.html
- http://sourceware.org/ml/binutils-cvs/2012-03/msg00001.html
- http://sourceware.org/ml/binutils-cvs/2012-03/msg00094.html
-
-gold/Makefile.am
-gold/Makefile.in
-gold/dynobj.h
-gold/incremental.cc
-gold/incremental.h
-gold/layout.cc
-gold/layout.h
-gold/main.cc
-gold/options.h
-gold/plugin.cc
-gold/plugin.h
-gold/reloc.h
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
-gold/testsuite/gdb_index_test.cc
-gold/testsuite/gdb_index_test_1.sh
-gold/testsuite/gdb_index_test_2.sh
- Status: Backport
- Owner: ccoutant
- Checkin rest of above patch to support --gdb-index option.
-
-gold/gdb-index.cc
- Status: Backport
- Owner: ccoutant
- Fix problem with --gdb-index where DW_AT_low_pc/high_pc is ignored.
- http://sourceware.org/ml/binutils-cvs/2012-04/msg00031.html
-
-gold/archive.cc
-gold/options.h
-gold/symtab.cc
- Status: Backport
- Owner: ccoutant
- Add --export-dynamic-symbol option.
- http://sourceware.org/ml/binutils/2012-04/msg00128.html
-
-binutils/doc/binutils.texi
-binutils/objcopy.c
- Status: Backport
- Owner: ccoutant
- Fix strip/objcopy to produce deterministic output when stripping archives.
- http://sourceware.org/ml/binutils-cvs/2012-04/msg00102.html
-
-bfd/elfcode.h
- Status: backport
- Owner: ppluzhnikov
- For b/6410576, backport fix for PR binutils/12451
- http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/elfcode.h.diff?cvsroot=src&r1=1.109&r2=1.111
-
-gold/options.cc
- Status: Upstream
- Owner: ccoutant
- Integrate CL 58455 from binutils-2.21.
- Backport fix for internal error when -pie and -static are both on.
- http://sourceware.org/ml/binutils-cvs/2012-02/msg00074.html
-
-binutils/doc/binutils.texi
-binutils/dwarf.c
-binutils/dwarf.h
-binutils/objdump.c
-binutils/readelf.c
-include/dwarf2.h
- Status: Upstream
- Owner: ccoutant
- Backport Fission support for objdump/readelf.
- http://sourceware.org/ml/binutils-cvs/2012-01/msg00123.html
- http://sourceware.org/ml/binutils-cvs/2012-01/msg00123.html
- http://sourceware.org/ml/binutils-cvs/2012-05/msg00009.html
- http://sourceware.org/ml/binutils-cvs/2012-05/msg00072.html
-
-binutils/doc/binutils.texi
-binutils/objcopy.c
- Status: Upstream
- Owner: ccoutant
- Backport Fission support for objcopy/strip.
- http://sourceware.org/ml/binutils-cvs/2012-05/msg00049.html
-
-gold/layout.cc
-gold/testsuite/relro_test.cc
- Status: Backport
- Owner: ccoutant
- Backport fix for problem with -z relro.
- http://sourceware.org/ml/binutils-cvs/2012-05/msg00087.html
-
-gold/symtab.cc
- Status: Backport
- Owner: ccoutant
- Backport upstream patch to fix problem with --export-dynamic-symbol when
- a versioned symbol is found in a shared object (b/6529486).
- http://sourceware.org/ml/binutils/2012-05/msg00331.html
-
-gold/symtab.cc
- Status: Backport
- Owner: ccoutant
- Update fix for b/6529486 to match upstream commit.
- http://sourceware.org/ml/binutils-cvs/2012-05/msg00170.html
-
-ld/scripttempl/armbpabi.sc
-ld/scripttempl/elf.sc
-ld/scripttempl/elf64hppa.sc
-ld/scripttempl/elfxtensa.sc
-ld/scripttempl/mep.sc
-gold/layout.cc
- Status: Backport
- Owner: ccoutant
- Backport gold and gnu ld fixes for problem with relro and symbols that
- begin with "ro" (b/6543153).
- http://sourceware.org/ml/binutils-cvs/2012-05/msg00173.html
- http://sourceware.org/ml/binutils-cvs/2012-05/msg00176.html
- http://sourceware.org/ml/binutils-cvs/2012-05/msg00177.html
-
-gold/dwarf_reader.cc
-gold/dwarf_reader.h
-gold/gdb-index.cc
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
-gold/testsuite/gdb_index_test_3.c
-gold/testsuite/gdb_index_test_3.sh
- Status: Backport
- Owner: ccoutant
- Backport patches to support DW_AT_high_pc as a constant offset.
- http://sourceware.org/ml/binutils-cvs/2012-05/msg00003.html
- http://sourceware.org/ml/binutils-cvs/2012-05/msg00004.html
-
-gold/testsuite/gdb_index_test_3.sh
- Status: Backport
- Owner: ccoutant
- Make shell script executable.
-
-gold/dynobj.cc
- Status: Backport
- Owner: ccoutant
- Fix internal error with --output-symbol-counts.
- http://sourceware.org/ml/binutils/2012-06/msg00035.html
-
-gold/options.h
-gold/output.cc
- Status: Upstream
- Add --[no-]posix-fallocate and --[no-]mmap-output-file options;
- set --no-posix-fallocate as the default (b/4080187).
-
-gold/layout.cc
-gold/options.h
- Status: Backport
- Owner: ccoutant
- Fix --strip-debug-gdb to work with compressed debug sections;
- automatically strip pubnames, pubtypes and aranges sections when
- generating .gdb_index; add .debug_macro to list of gdb sections.
- http://sourceware.org/ml/binutils-cvs/2012-06/msg00026.html
-
-gold/gold.cc
-gold/layout.cc
-gold/layout.h
-gold/object.h
-gold/reloc.cc
- Status: Local
- Owner: ccoutant
- Add --build-id=md5-incr option to implement incremental build-id
- generation for incremental links.
-
+bfd/bfd-in.h
bfd/bfd-in2.h
bfd/bfd.c
-bfd/coff-rs6000.c
-bfd/coff64-rs6000.c
-bfd/coffgen.c
-bfd/dwarf2.c
-bfd/elf-bfd.h
-bfd/elf.c
-bfd/elf32-arm.c
-bfd/elf64-alpha.c
-bfd/elfxx-mips.c
-bfd/libbfd-in.h
-bfd/libbfd.c
-bfd/libbfd.h
-bfd/targets.c
-binutils/addr2line.c
-binutils/objdump.c
- Status: Backport
- Owner: tejohnson
- Add a new interface bfd_find_nearest_line_discriminator() to
- also return the discriminator (which was previously being ignored when
- reading the dwarf), and also add support to print non-zero
- discriminators along with the source position information from objdump
- and addr2line.
- http://sourceware.org/ml/binutils-cvs/2012-07/msg00089.html
+bfd/section.c
+ Status: backport
+ Owner: ppluzhnikov
+ Backport commit 27b829ee701e29804216b3803fbaeb629be27491:
+ Replace the various bfd_xxx_set macros with static inline functions,
+ so that we can avoid compile time warnings about comma expressions
+ with unused values.
-bfd/dwarf2.c
- Status: Backport
- Owner: tejohnson
- Missing initialization caused failures for the mips target.
- http://sourceware.org/ml/binutils-cvs/2012-07/msg00101.html
-
-gas/config/tc-i386.c
-gas/doc/c-i386.texi
-gas/testsuite/gas/i386/i386.exp
-gas/testsuite/gas/i386/vmfunc.d
-gas/testsuite/gas/i386/vmfunc.s
-gas/testsuite/gas/i386/x86-64-vmfunc.d
-opcodes/i386-dis.c
-opcodes/i386-gen.c
-opcodes/i386-init.h
-opcodes/i386-opc.h
-opcodes/i386-opc.tbl
-opcodes/i386-tbl.h
- Status: Backport
- Owner: eraman
- Add vmfunc.
- http://sourceware.org/ml/binutils-cvs/2012-01/msg00071.html
-
-gas/config/tc-i386.c
-gas/config/tc-i386.h
-gas/doc/c-i386.texi
-gas/testsuite/gas/i386/hle-intel.d
-gas/testsuite/gas/i386/hle.d
-gas/testsuite/gas/i386/hlebad.l
-gas/testsuite/gas/i386/hlebad.s
-gas/testsuite/gas/i386/rtm-intel.d
-gas/testsuite/gas/i386/rtm.d
-gas/testsuite/gas/i386/rtm.s
-gas/testsuite/gas/i386/x86-64-hle-intel.d
-gas/testsuite/gas/i386/x86-64-hle.d
-gas/testsuite/gas/i386/x86-64-hle.s
-gas/testsuite/gas/i386/x86-64-hlebad.l
-gas/testsuite/gas/i386/x86-64-hlebad.s
-gas/testsuite/gas/i386/x86-64-rtm-intel.d
-gas/testsuite/gas/i386/x86-64-rtm.d
-gas/testsuite/gas/i386/x86-64-rtm.s
-include/opcode/i386.h
-opcodes/i386-dis.c
-opcodes/i386-gen.c
-opcodes/i386-init.h
-opcodes/i386-opc.h
-opcodes/i386-opc.tbl
-opcodes/i386-tbl.h
- Status: Backport
- Owner: eraman
- ImplementIntel Transactional Synchronization Extensions.
- http://sourceware.org/ml/binutils-cvs/2012-02/msg00030.html
-
-gas/config/tc-i386.c
-opcodes/i386-opc.h
- Status: Backport
- Owner: eraman
- Add HLEPrefixNone/HLEPrefixLock/HLEPrefixAny/HLEPrefixRelease.
- http://sourceware.org/ml/binutils-cvs/2012-02/msg00103.html
-
-gold/configure
-gold/configure.ac
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
-gold/testsuite/gdb_index_test_1.sh
-gold/testsuite/gdb_index_test_2.sh
+gold/dwarf_reader.cc
+gold/dwarf_reader.h
+gold/gdb-index.cc
+gold/gdb-index.h
gold/testsuite/gdb_index_test_3.sh
-gold/testsuite/gdb_index_test_4.sh
gold/testsuite/gdb_index_test_comm.sh
- Status: Backport
+ Status: backport
Owner: ccoutant
- Backport upstream configure change to disable gdb_index tests
- where GCC is not recent enough.
- http://sourceware.org/ml/binutils-cvs/2012-07/msg00072.html
-
-binutils/dwarf.c
-include/gdb/gdb-index.h
- Status: Backport
- Owner: saugustine
- Backport change to display gdb_index v7.
- http://sourceware.org/ml/binutils-cvs/2012-07/msg00007.html
-
-gold/symtab.cc
- Status: Backport
- Owner: ccoutant
- Backport fix for internal error with --gc-sections and undefined
- symbol named by --export-dynamic-symbol.
- http://sourceware.org/ml/binutils-cvs/2012-08/msg00141.html
-
-gold/layout.cc
- Status: Backport
- Owner: ccoutant
- Backport fix for internal error with --emit-relocs and GROUP sections.
- http://sourceware.org/ml/binutils-cvs/2012-08/msg00146.html
-
-binutils/dwarf.c
- Status: Upstream
- Owner: dje
- Pretty-print static/global flag of .gdb_index symbols.
- http://sourceware.org/ml/binutils/2012-09/msg00114.html
-
-gold/gdb-index.cc
-gold/gdb-index.h
- Status: Backport
- Owner: saugustine
- Backport fix for relobject/section/offset bug in pubnames reading.
- http://sourceware.org/ml/binutils/2012-09/msg00092.html
-
-gold/gdb-index.cc
-gold/gdb-index.h
- Status: Local
- Owner: saugustine
- Generate gdb-index from .debug_gnu_pubnames.
-
-bfd/elf64-ppc.c
- Status: Backport
- Owner: dougkwan
- Backport upstream fix for b/7120813.
- http://sourceware.org/ml/binutils-cvs/2012-09/msg00077.html
-
-bfd/dwarf2.c
- Status: Backport
- Owner: ccoutant
- Backport upstream patch to support relative form of DW_AT_high_pc.
- http://sourceware.org/ml/binutils-cvs/2012-04/msg00119.html
-
-bfd/elf-bfd.h
-bfd/elf.c
-bfd/elf64-ppc.c
-bfd/elfxx-target.h
- Status: Backport
- Owner: dougkwan
- Backport upstream patch to fix addr2line on PowerPC64.
- http://sourceware.org/ml/binutils-cvs/2012-01/msg00109.html
-
-bfd/elf64-ppc.c
- Status: Backport
- Owner: dougkwan
- Backport upstream performance fix for PR 13897
- http://sourceware.org/ml/binutils-cvs/2012-04/msg00038.html
- http://sourceware.org/ml/binutils-cvs/2012-06/msg00004.html
-
-bfd/elf-bfd.h
-bfd/elf.c
-bfd/elf64-ppc.c
- Status: Backport
- Owner: dougwan
- Backport a dependent change for PR 13897's fix.
- http://sourceware.org/ml/binutils-cvs/2012-02/msg00026.html
-
-bfd/elf-bfd.h
-bfd/elf.c
-bfd/elf64-ppc.c
- Status: Backport
- Owner: dougwan
- Backport last patch for upstream performance fix for PR 13897
- http://sourceware.org/ml/binutils-cvs/2012-06/msg00011.html
-
-gold/layout.cc
- Status: Local
- Owner: ccoutant
- Fix linker to strip .debug_gnu_pubnames/pubtypes when generating
- .gdb_index.
-
-bfd/elf.c
- Status: Backport
- Owner: dje
- Fix http://sourceware.org/bugzilla/show_bug.cgi?id=14662
- to make strip remove .gdb_index.
-
-binutils/dwarf.h
- Status: Backport
- Owner: ccoutant
- Add missing enum for gdb_index section.
- http://sourceware.org/ml/binutils-cvs/2011-09/msg00130.html
-
-binutils/dwarf.c
-include/dwarf2.h
- Status: Backport
- Owner: ccoutant
- Backport upstream patch to add readelf support for DW_OP_GNU_const_index.
- http://sourceware.org/ml/binutils-cvs/2012-09/msg00036.html
-
-gold/layout.cc
- Status: Backport
- Owner: tmsriram
- Keep SHF_EXCLUDE sections when doing relocatable links.
- http://sourceware.org/ml/binutils/2012-10/msg00172.html
-
-binutils/dwarf.c
-binutils/dwarf.h
-binutils/elfcomm.c
-binutils/elfcomm.h
-binutils/objdump.c
-binutils/readelf.c
- Status: Upstream
- Backport patches to add readelf support for dwp files.
- http://sourceware.org/ml/binutils-cvs/2012-02/msg00075.html
- http://sourceware.org/ml/binutils/2012-10/msg00233.html
-
-gold/Makefile.am
-gold/Makefile.in
-gold/dwarf_reader.cc
-gold/dwarf_reader.h
-gold/dwp.cc
-gold/dwp.h
-gold/fileread.cc
-gold/fileread.h
-gold/gdb-index.cc
-gold/object.h
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
-gold/testsuite/dwp_test.h
-gold/testsuite/dwp_test_1.cc
-gold/testsuite/dwp_test_1.s
-gold/testsuite/dwp_test_1.sh
-gold/testsuite/dwp_test_1b.cc
-gold/testsuite/dwp_test_1b.s
-gold/testsuite/dwp_test_2.cc
-gold/testsuite/dwp_test_2.s
-gold/testsuite/dwp_test_2.sh
-gold/testsuite/dwp_test_main.cc
-gold/testsuite/dwp_test_main.s
- Status: Upstream
- Backport patches to add dwp utility to binutils/gold.
- http://sourceware.org/ml/binutils/2012-10/msg00229.html
- http://sourceware.org/ml/binutils/2012-10/msg00230.html
- http://sourceware.org/ml/binutils/2012-10/msg00231.html
- http://sourceware.org/ml/binutils/2012-10/msg00232.html
- http://sourceware.org/ml/binutils/2012-10/msg00234.html
- http://sourceware.org/ml/binutils/2012-10/msg00235.html
-
-gold/dwp.cc
- Status: Upstream
- Fix C++11 warning.
-
-gold/Makefile.am
-gold/Makefile.in
- Status: Upstream
- Add install commands for dwp utility.
-
-gas/as.c
- Status: Backport
- Owner: simonb
- Backport upstream patch for as -statistics.
- http://sourceware.org/ml/binutils/2012-10/msg00248.html
-
-binutils/objcopy.c
-binutils/testsuite/binutils-all/i386/compressed-1b.d
-binutils/testsuite/binutils-all/i386/compressed-1c.d
-binutils/testsuite/binutils-all/x86-64/compressed-1b.d
-binutils/testsuite/binutils-all/x86-64/compressed-1c.d
- Status: Backport
- Owner: ccoutant
- Backport upstream patch to handle empty relocations sections properly
- in objcopy.
- http://sourceware.org/ml/binutils-cvs/2012-04/msg00049.html
-
-gold/dwarf_reader.cc
-gold/dwarf_reader.h
- Status: Local
- Owner: ccoutant
- Fix DWARF reader to recognize compressed debug sections everywhere.
- When reading GNU-style pubnames tables, read to end of table
- instead of stopping when die_offset == 0.
-
-gold/dwarf_reader.cc
- Status: Local
- Owner: ccoutant
- Fix "set but not used" error.
-
-ld/ldmain.c
- Status: Backport
- Owner: simonb
- Backport upstream patch for ld -stats
- http://sourceware.org/ml/binutils/2012-10/msg00378.html
-
-gold/arm.cc
-gold/common.cc
-gold/dwarf_reader.cc
-gold/ehframe.cc
-gold/incremental.cc
-gold/powerpc.cc
- Status: Backport
- Owner: saugustine
- Backport upstream patch for unused typedefs
- http://sourceware.org/ml/binutils/2012-07/msg00108.html
-
-gold/gold.cc
-gold/layout.cc
-gold/layout.h
-gold/object.cc
-gold/output.cc
-gold/plugin.cc
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
-gold/testsuite/plugin_final_layout.sh
-gold/testsuite/plugin_section_order.c
-include/plugin-api.h
- Status: Backport
- Owner: tmsriram
- Backport upstream patch to enable plugin APIs to map specific
- function sections to unique segments.
- http://sourceware.org/ml/binutils/2012-08/msg00447.html
-
-Makefile.def
-Makefile.in
- Status: Backport
- Owner: shenhan
- Backport upstream patch for PR binutils/4970.
- http://sourceware.org/ml/binutils/2012-08/msg00451.html
-
-gold/dwp.cc
- Status: Backport
- Owner: ccoutant
- Backport upstream patch to fix dwp internal error when adding
- a duplicate CU.
- http://sourceware.org/ml/binutils-cvs/2012-12/msg00082.html
-
-gold/layout.cc
-gold/layout.h
-gold/output.cc
-testsuite/Makefile.am
-testsuite/Makefile.in
-testsuite/text_section_grouping.cc
-testsuite/text_section_grouping.sh
- Status:Backport
- Owner:tmsriram
- Backport patches http://sourceware.org/ml/binutils/2012-11/msg00319.html
- and http://sourceware.org/ml/binutils/2012-12/msg00227.html to allow gold
- to group ".text.hot", ".text.unlikely", ".text.startup" and ".text.exit"
- sections by default.
-
-gold/output.cc
- Status: Backport
- Owner: ccoutant
- Backport upstream patch to fix incremental update problem exposed by
- text section reordering.
- http://sourceware.org/ml/binutils-cvs/2013-01/msg00039.html
-
-gold/output.h
-gold/script-sections.cc
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
- Status: Backport
- Owner: tmsriram
- Backport patch http://sourceware.org/ml/binutils/2013-01/msg00108.html
- to allow linker scripts and section ordering to co-exist.
-
-gold/dwp.cc
- Status: Backport
- Owner: ccoutant
- Backport patches to fix 32-bit build problem, check for bad fwrite return
- value, and add --help option.
- http://sourceware.org/ml/binutils-cvs/2012-10/msg00132.html
- http://sourceware.org/ml/binutils-cvs/2012-10/msg00133.html
- http://sourceware.org/ml/binutils-cvs/2012-10/msg00162.html
-
-gold/layout.cc
-gold/testsuite/plugin_final_layout.cc
- Status: Backport
- Owner: tmsriram
- Backport patch http://sourceware.org/ml/binutils/2013-01/msg00252.html to
- fix a bug in function reordering.
-
-gold/layout.cc
-gold/options.h
-gold/output.cc
-gold/output.h
-testsuite/Makefile.am
-testsuite/Makefile.in
-testsuite/text_section_grouping.sh
- Status: Backport
- Owner: tmsriram
- Backport patch http://sourceware.org/ml/binutils/2013-01/msg00357.html to
- fix a bug in default text section ordering in gold.
-
-binutils/dwarf.c
- Status: Backport
- Owner: ccoutant
- Backport patches to fix problems with readelf dumping of loclists and
- addr tables.
- http://sourceware.org/ml/binutils/2013-01/msg00379.html
- http://sourceware.org/ml/binutils/2013-01/msg00388.html
-
-gold/dwp.cc
- Status: Backport
- Owner: ccoutant
- Backport patch to add --exec option to dwp.
- http://sourceware.org/ml/binutils-cvs/2013-01/msg00181.html
-
-include/plugin-api.h
- Status: Backport
- Owner: tmsriram
- Backport to get plugin-api.h in sync with upstream binutils.
- http://sourceware.org/ml/binutils/2013-02/msg00136.html
- http://sourceware.org/ml/binutils/2012-06/msg00129.html
-
-binutils/dwarf.c
-binutils/dwarf.h
-binutils/objdump.c
-binutils/readelf.c
- Status: Local
- Owner: saugustine
- Dump new accelerator tables .debug_[names|typenames|namespaces].
-
-binutils/dwarf.c
-elfcpp/dwarf.h
-include/dwarf2.h
- Status: Backport
- Owner: ccoutant
- Add support for version 2 DWARF package file format.
- http://sourceware.org/ml/binutils-cvs/2013-03/msg00000.html
- http://sourceware.org/ml/binutils-cvs/2013-03/msg00001.html
- http://sourceware.org/ml/binutils-cvs/2013-03/msg00002.html
-
-gold/dwp.cc
-gold/fileread.cc
-gold/fileread.h
- Status: Local
- Owner: ccoutant
- Make dwp print warning instead of fatal error when it can't open
- an input .dwo file.
-
-gold/dwarf_reader.cc
-gold/object.cc
-gold/testsuite/gdb_index_test.cc
-gold/testsuite/gdb_index_test_comm.sh
- Status: Backport
- Owner: ccoutant
- Backport patch to support new FORM codes in DWARF reader.
- http://sourceware.org/ml/binutils-cvs/2012-09/msg00038.html
-
-gold/archive.cc
- Status: Backport
- Owner: tmsriram
- Backport patch to make linker plugin APIs work with archives:
- http://sourceware.org/ml/binutils/2013-03/msg00322.html
-
-gold/layout.cc
-gold/script-sections.cc
-gold/symtab.cc
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
-gold/testsuite/script_test_11.c
-gold/testsuite/script_test_11.t
- Status: Backport
- Owner: ccoutant
- Backport patches to fix problems with dot assignment in scripts
- used with -r option.
- http://sourceware.org/ml/binutils-cvs/2013-04/msg00069.html
- http://sourceware.org/ml/binutils-cvs/2013-04/msg00070.html
- http://sourceware.org/ml/binutils-cvs/2013-04/msg00071.html
-
-gold/layout.cc
- Status: Local
- Owner: tmsriram
- Map input section name prefixes "_function_patch_prologue." and
- "_function_patch_epilogue." to output section names
- "_function_patch_prologue" and "_function_patch_epilogue".
- The compiler patch that creates these sections:
- http://gcc.gnu.org/ml/gcc-patches/2013-04/msg01835.html
-
-gold/dwp.h
-gold/dwp.cc
- Status: Local
- Owner: ccoutant
- Add --verify-only option to dwp.
-
-gold/object.cc
-gold/object.h
-gold/symtab.h
-gold/target-reloc.h
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
-gold/testsuite/debug_msg.sh
-gold/testsuite/missing_key_func.cc
-gold/testsuite/missing_key_func.sh
- Status: Backport
- Owner: ccoutant
- Backport upstream patches to fix problem where non-function symbols
- in error messages are labelled as "function", and to add an extra
- line of info when vtable symbols are undefined.
- http://sourceware.org/ml/binutils-cvs/2013-05/msg00099.html
- http://sourceware.org/ml/binutils-cvs/2013-05/msg00100.html
-
-include/demangle.h
-libiberty/cp-demangle.c
-libiberty/testsuite/demangle-expected
- Status: Backport
- Owner: ccoutant
- Backport demangler patches to sync binutils with GCC 4.8.
- r179772 | ian | 2011-10-10 13:34:20 -0700 (Mon, 10 Oct 2011) | 5 lines
- r180944 | jason | 2011-11-04 05:54:08 -0700 (Fri, 04 Nov 2011) | 20 lines
- r181154 | aldyh | 2011-11-08 03:13:41 -0800 (Tue, 08 Nov 2011) | 2 lines
- r182969 | jason | 2012-01-06 13:39:34 -0800 (Fri, 06 Jan 2012) | 3 lines
- r182970 | jason | 2012-01-06 13:39:43 -0800 (Fri, 06 Jan 2012) | 32 lines
- r183072 | jason | 2012-01-10 09:02:52 -0800 (Tue, 10 Jan 2012) | 2 lines
- r185082 | jason | 2012-03-07 15:19:06 -0800 (Wed, 07 Mar 2012) | 2 lines
- r185595 | jason | 2012-03-20 21:04:39 -0700 (Tue, 20 Mar 2012) | 6 lines
- r187773 | tromey | 2012-05-22 06:55:02 -0700 (Tue, 22 May 2012) | 4 lines
- r189630 | jason | 2012-07-18 12:51:36 -0700 (Wed, 18 Jul 2012) | 3 lines
- r192211 | jason | 2012-10-08 07:45:37 -0700 (Mon, 08 Oct 2012) | 24 lines
- r193367 | jason | 2012-11-09 08:14:37 -0800 (Fri, 09 Nov 2012) | 22 lines
- r193401 | jason | 2012-11-10 18:11:15 -0800 (Sat, 10 Nov 2012) | 2 lines
- r196065 | jason | 2013-02-14 17:26:44 -0800 (Thu, 14 Feb 2013) | 8 lines
- r197436 | jason | 2013-04-03 10:24:12 -0700 (Wed, 03 Apr 2013) | 16 lines
-
-gold/dwarf_reader.cc
-gold/dwarf_reader.h
- Status: Backport
- Owner: ccoutant
- Backport upstream patch to fix problem building gdb index on piii.
- http://sourceware.org/ml/binutils-cvs/2013-07/msg00004.html
-
-gold/dwarf_reader.cc
-gold/dwarf_reader.h
-gold/gdb-index.cc
-gold/gdb-index.h
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
- Status: local in two patches
- Owner: saugustine
- Newer editions of GCC generate DW_AT_gnu_pubnames attribute
- with a DW_FORM_flag_present, rather than as
- DW_FORM_sec_offset. Add support for reading them as such.
-
-gold/resolve.cc
-gold/testsuite/Makefile.am
-gold/testsuite/Makefile.in
-gold/testsuite/plugin_test_tls.sh
-gold/testsuite/two_file_test_2_tls.cc
-gold/testsuite/two_file_test_tls.cc
- Status: Backport
- Owner: ccoutant
- Backport patch to fix LTO problem with __thread variables.
- http://sourceware.org/ml/binutils-cvs/2013-06/msg00058.html
-
-gold/Makefile.am
-gold/Makefile.in
- Status: Backport
- Owner: bmoses
- Backport changes made to the (above-backported) dwp Makefile
- targets during upstream review. Namely, to put it in
- bin_PROGRAMS so that it gets installed correctly when we are
- building a cross-compiler. See discussion here:
- http://sourceware.org/ml/binutils/2012-10/msg00261.html
- http://sourceware.org/ml/binutils/2012-10/msg00262.html
-
-binutils/dwarf.c
- Status: Backport
- Owner: saugustine
- Backport handling for gdb_index version 8.
- https://sourceware.org/ml/binutils/2013-01/msg00350.html
+ Backport upstream patch to add support for .gdb_index version 7.
+ https://sourceware.org/ml/binutils-cvs/2014-01/msg00156.html
gold/configure.ac
gold/configure
@@ -1098,24 +103,12 @@
build tools, even if we are building for a non-native
target.
-libiberty/cp-demangle.c
-libiberty/testsuite/demangle-expected
- Status: Backport
- Owner: ppluzhnikov
- Backport cxxfilter fix for local source name demangling.
- http://gcc.gnu.org/viewcvs/gcc?view=revision&revision=203476
-
-gas/write.c
- Status: Backport
- Owner: bmoses
- Backport fix to avoid uninitialized variable warning.
- https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=4fc0b46e62cec696390862c9eb7d80b35d24f0f8
-
gold/options.cc
gold/options.h
gold/symtab.cc
gold/symtab.h
gold/testsuite/Makefile.am
+gold/testsuite/Makefile.in
gold/testsuite/dynamic_list_2.cc
gold/testsuite/dynamic_list_2.t
gold/testsuite/dynamic_list_lib1.cc
@@ -1123,7 +116,6 @@
gold/testsuite/gc_dynamic_list_test.c
gold/testsuite/gc_dynamic_list_test.sh
gold/testsuite/gc_dynamic_list_test.t
-gold/testsuite/Makefile.in
Status: Backport
Owner: ccoutant
Fix problems with --dynamic-list option.
@@ -1159,6 +151,20 @@
Backported from:
https://sourceware.org/ml/binutils-cvs/2014-02/msg00031.html
+gold/testsuite/Makefile.am
+gold/testsuite/Makefile.in
+ Status: backport
+ Owner: ccoutant
+ Backport upstream patch to fix dependencies in gold testsuite.
+ https://sourceware.org/ml/binutils-cvs/2013-10/msg00022.html
+
+binutils/dwarf.c
+ Status: backport
+ Owner: ccoutant
+ Backport upstream patch to fix bogus complaint about corrupt attribute
+ when DW_FORM_flag_present falls at end of section.
+ https://sourceware.org/ml/binutils-cvs/2014-02/msg00054.html
+
libiberty/cp-demangle.c
libiberty/cp-demangle.h
libiberty/testsuite/demangle-expected
@@ -1166,3 +172,64 @@
Owner: ccoutant
Fix demangler to handle conversion operators correctly.
Backported from GCC trunk at r205292.
+
+gold/configure
+gold/configure.ac
+gold/testsuite/Makefile.am
+gold/testsuite/Makefile.in
+ Status: backport
+ Owner: ccoutant
+ Modify gold testsuite to disable plugins added by GCC driver.
+ https://sourceware.org/ml/binutils-cvs/2014-04/msg00010.html
+
+gold/icf.cc
+ Status: backport
+ Owner: tmsriram
+ Use references to reloc info vectors in icf.cc. This also fixes
+ bug b/13588967
+ https://sourceware.org/ml/binutils/2014-04/msg00026.html
+
+gold/x86_64.cc
+ Status: backport
+ Owner: ccoutant
+ Add missing break statement (PR gold/16870).
+ https://sourceware.org/ml/binutils-cvs/2014-04/msg00141.html
+
+gold/options.h
+ Status: local
+ Owner: ccoutant
+ Make --disable-new-dtags the default. See b/12844098.
+
+gold/gdb-index.cc
+ Status: backport
+ Owner: ccoutant
+ Don't complain about the source language when we have pubnames/pubtypes info.
+ https://sourceware.org/ml/binutils-cvs/2014-05/msg00025.html
+
+gold/layout.cc
+ Status: Local
+ Owner: ccoutant
+ Fix linker to strip .debug_gnu_pubnames/pubtypes when generating
+ .gdb_index.
+
+gold/arm.cc
+gold/i386.cc
+gold/powerpc.cc
+gold/sparc.cc
+gold/x86_64.cc
+gold/symtab.h
+testsuite/Makefile.am
+testsuite/Makefile.in
+testsuite/pie_copyrelocs_test.cc
+testsuite/pie_copyrelocs_shared_test.cc
+ Status: backport
+ Owner: tmsriram
+ Backport fix to allow copy relocations with pie links when possible.
+ https://sourceware.org/ml/binutils/2014-05/msg00092.html
+
+libiberty/configure.ac
+libiberty/configure
+ Status: backport
+ Owner: bmoses
+ Fix bug that prevented --enable-install-libiberty from working.
+ https://gcc.gnu.org/ml/gcc-patches/2014-01/msg00213.html
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 65db027..2c4719c 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,2699 +1,2785 @@
-2011-11-21 Tristan Gingold <[email protected]>
+2013-12-02 Tristan Gingold <[email protected]>
- * configure.in: Bump version to 2.22
+ * configure.in: Bump version to 2.24
* Makefile.am (RELEASE): Set.
* configure, Makefile.in: Regenerate.
-2011-11-15 Maxim Kuvyrkov <[email protected]>
+2013-11-26 Tristan Gingold <[email protected]>
- Backport from mainline:
-
- 2011-11-14 Maxim Kuvyrkov <[email protected]>
- * elfxx-mips.c (mips_n64_exe_plt0_entry): Use 64-bit move.
-
-2011-11-15 Alan Modra <[email protected]>
- Andreas Tobler <[email protected]>
-
- * elflink.c (_bfd_elf_create_got_section): Replace
- bfd_make_section_with_flags with bfd_make_section_anyway_with_flags.
- (_bfd_elf_link_create_dynamic_sections): Likewise.
- * elf32-ppc.c (ppc_elf_create_glink): Likewise.
- (ppc_elf_create_dynamic_sections): Likewise.
-
-2011-11-09 Alan Modra <[email protected]>
-
- * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Mark syms in
- executables when export_dynamic.
-
-2011-11-08 Alan Modra <[email protected]>
-
- * elf64-ppc.c (struct ppc64_elf_obj_tdata): Rename
- ha_relocs_not_using_r2 to unexpected_toc_insn.
- (ok_lo_toc_insn): New function.
- (ppc64_elf_edit_toc): Check insn on lo toc reloc. Emit warning.
- (ppc64_elf_relocate_section): Don't check insn on lo toc reloc here.
- Handle addic on lo toc reloc.
-
-2011-10-25 Alan Modra <[email protected]>
-
- Apply mainline patches
- 2011-10-20 Alan Modra <[email protected]>
- * elf32-i386.c (i386_opcode16): Delete.
- (elf_i386_check_tls_transition): Use memcmp to compare contents.
- * elf64-x86-64.c (x86_64_opcode16, x86_64_opcode32): Delete.
- (elf_x86_64_check_tls_transition): Use memcmp to compare contents.
-
- 2011-10-19 Alan Modra <[email protected]>
- PR ld/13311
- * elflink.c (elf_link_output_extsym): Correct test for warning when
- forced local executable syms are referenced from shared libraries.
-
- 2011-10-19 Alan Modra <[email protected]>
- PR ld/13254
- * elflink.c (bfd_elf_final_link): Emit error_textrel error.
-
- 2011-10-17 Alan Modra <[email protected]>
- PR ld/12975
- PR ld/13195
- * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Apply 2011-09-15
- and 2011-09-29 bfd_elf_gc_mark_dynamic_ref_symbol changes here too.
-
- 2011-10-11 Alan Modra <[email protected]>
- PR binutils/13278
- * archive.c (bfd_generic_archive_p): Only check first element
- when target_defaulted.
- (_bfd_construct_extended_name_table): Use ar_maxnamelen.
- (_bfd_archive_bsd44_construct_extended_name_table): Likewise.
-
- 2011-10-11 Alan Modra <[email protected]>
- PR binutils/13257
- * archive.c (_bfd_find_nested_archive, _bfd_get_elt_at_filepos): Open
- thin archive element using container target if not defaulted.
-
- 2011-10-10 Alan Modra <[email protected]>
- * elf64-ppc.c (ppc64_elf_howto_table): Add R_PPC64_TOCSAVE entry.
- (struct ppc_link_hash_table): Add tocsave_htab.
- (struct tocsave_entry): New.
- (tocsave_htab_hash, tocsave_htab_eq, tocsave_find): New functions.
- (ppc64_elf_link_hash_table_create): Create tocsave_htab..
- (ppc64_elf_link_hash_table_free): ..and delete it.
- (build_plt_stub): Always put STD_R2_40R1 first.
- (ppc64_elf_size_stubs): Check for R_PPC64_TOCSAVE following reloc
- on plt call. If present add prologue nop location to tocsave_htab.
- (ppc64_elf_relocate_section): Convert prologue nop to std. Skip
- first insn of plt call stub when R_PPC64_TOCSAVE present.
-
- 2011-10-08 H.J. Lu <[email protected]>
- PR ld/13250
- * elflink.c (elf_link_add_object_symbols): Preserve the maximum
- alignment and size for common symbols.
-
- 2011-10-08 Alan Modra <[email protected]>
- PR ld/13229
- PR ld/13244
- * elflink.c (elf_link_add_object_symbols): Don't make IR symbols
- dynamic.
-
- 2011-10-08 Alan Modra <[email protected]>
- * elflink.c (elf_link_output_extsym): Strip defined plugin symbols
- even when strip_discarded is false.
-
- 2011-09-30 Alan Modra <[email protected]>
- PR ld/13235
- * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add ha_relocs_not_using_r2.
- (ppc64_elf_edit_toc): Check HA relocs.
- (ha_reloc_match): Delete function.
- (ppc64_elf_relocate_section): Remove delayed HA nop optimization.
- Instead do it and low part optimization based on
- ha_relocs_not_using_r2.
-
-2011-10-18 David S. Miller <[email protected]>
-
- PR binutils/13301
- * elfxx-sparc.c (sparc_elf_find_reloc_at_ofs): New function.
- (_bfd_sparc_elf_relocate_section): Always move the __tls_get_addr
- call delay slot instruction forward 4 bytes when performing
- relaxation.
-
-2011-10-18 H.J. Lu <[email protected]>
-
- PR ld/13177
- * elflink.c (elf_gc_sweep_symbol): Don't hide symbols without PLT
- nor GOT references.
-
-2011-10-14 Hans-Peter Nilsson <[email protected]>
-
- * elf32-cris.c (cris_elf_gc_sweep_hook) <R_CRIS_16_GOTPLT>
- <R_CRIS_32_GOTPLT>: Fix missing update of gotplt refcount for
- global symbols.
- <R_CRIS_8, R_CRIS_16, R_CRIS_32>: New cases for similar missing
- updates of the plt refcount.
- (elf_cris_adjust_gotplt_to_got): Assert integrity of the gotplt
- refcount in relation to the plt refcount.
-
-2011-10-13 Richard Sandiford <[email protected]>
-
- * elf32-arm.c (elf32_arm_final_link_relocate): Mark PLT calls via
- stubs as resolved.
-
-2011-09-29 H.J. Lu <[email protected]>
-
- PR ld/13195
- * elflink.c (_bfd_elf_merge_symbol): Don't set dynamic_def when
- clearing def_dynamic.
- (elf_link_add_object_symbols): Likewise. Set dynamic_def when
- setting def_dynamic.
- (bfd_elf_gc_mark_dynamic_ref_symbol): Check if a symbol is
- versioned.
-
-2011-09-29 Alan Modra <[email protected]>
-
- PR ld/13233
- * elflink.c (_bfd_elf_gc_mark_extra_sections): Mark single member
- debug and special section groups.
-
-2011-09-26 Tristan Gingold <[email protected]>
-
- * configure.in: Bump version to 2.21.90
+ * configure.in: Bump version to 2.23.92
* configure: Regenerate.
-2011-09-21 David S. Miller <[email protected]>
+2013-11-22 Cory Fields <[email protected]>
- * elfxx-sparc.c (_bfd_sparc_elf_merge_private_bfd_data): New.
- * elfxx-sparc.h: Declare it.
- * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Call it.
- * elf64-sparc.c (elf64_sparc_merge_private_bfd_data): Likewise.
-
-2011-09-21 Tristan Gingold <[email protected]>
-
- * mach-o.c (bfd_mach_o_convert_section_name_to_bfd): Add comment.
- Deals with size limited strings.
- (bfd_mach_o_build_commands): Initialize more fields.
-
-2011-09-15 H.J. Lu <[email protected]>
-
- PR ld/13177
- * elflink.c (elf_gc_sweep_symbol): Also hide symbols without PLT
- nor GOT references.
-
-2011-09-15 H.J. Lu <[email protected]>
-
- PR ld/12975
- * bfd-in.h (bfd_elf_size_dynamic_sections): Remove pointer
- to struct bfd_elf_version_tree.
-
- * elflink.c (elf_info_failed): Remove verdefs.
- (_bfd_elf_export_symbol): Updated.
- _bfd_elf_link_assign_sym_version): Likewise.
- (bfd_elf_size_dynamic_sections): Remove pointer to struct
- bfd_elf_version_tree. Updated.
- (bfd_elf_gc_mark_dynamic_ref_symbol): Check if a symbol is hidden
- by linker script.
-
- * linker.c (bfd_hide_sym_by_version): New.
-
- * bfd-in2.h: Regenerated.
-
-2011-09-12 H.J. Lu <[email protected]>
-
- PR ld/13178
- * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Use .got.plt
- if there are no GOT relocations.
-
-2011-09-09 Kai Tietz <[email protected]>
-
- * peicode.h (pe_ILF_build_a_bfd): Don't remove leading underscore
- for targets without symbol_leading_char.
-
-2011-09-08 Bernd Jendrissek <[email protected]>
-
- * bfdwin.c (bfd_get_file_window): Fix memory leak.
-
-2011-09-07 Alan Modra <[email protected]>
-
- PR ld/13131
- * bfd/elf64-ppc.c (adjust_toc_syms): Ensure ppc64_elf_howto_table
- is initialized.
-
-2011-09-06 Alan Modra <[email protected]>
-
- PR ld/13131
- * elf64-ppc.c (adjust_toc_syms): Delete redundant code.
- (ppc64_elf_edit_toc): Fix style nit. Report some details
- on linker failure due to reference in debug or non-alloc
- sections to optimized away toc entry, and don't abort.
-
-2011-09-01 Christophe Lyon <[email protected]>
-
- * elf32-arm.c (elf32_arm_output_arch_local_syms): Skip excluded
- sections.
-
-2011-08-26 Nick Clifton <[email protected]>
-
- * po/es.po: Updated Spanish translation.
-
-2011-08-19 Alan Modra <[email protected]>
-
- * elf64-ppc.c (ppc64_elf_edit_toc): Ignore can_optimize bit if
- we haven't seen expected -mcmodel=medium/large code relocs.
-
-2011-08-18 Tristan Gingold <[email protected]>
-
- * mach-o.c (bfd_mach_o_read_segment): Initialize list.
-
-2011-08-17 Tristan Gingold <[email protected]>
-
- * mach-o.c (bfd_mach_o_write_section_32): Fix typo.
-
-2011-08-17 Alan Modra <[email protected]>
-
- PR ld/12762
- * bfd-in.h (struct bfd_section_already_linked): Forward declare.
- (_bfd_handle_already_linked): Declare.
- * coff-alpha.c (_bfd_ecoff_section_already_linked): Define as
- _bfd_coff_section_already_linked.
- * coff-mips.c (_bfd_ecoff_section_already_linked): Likewise.
- * coffcode.h (coff_section_already_linked): Likewise.
- * cofflink.c (coff_link_add_symbols): Revert 2011-07-09 changes.
- * elf-bfd.h: Likewise.
- * libbfd-in.h: Likewise.
- * targets.c: Likewise.
- * linker.c (bfd_section_already_linked): Likewise.
- (bfd_section_already_linked_table_lookup): Likewise.
- (bfd_section_already_linked_table_insert): Likewise.
- (_bfd_generic_section_already_linked): Likewise. Call
- _bfd_handle_already_linked.
- (_bfd_handle_already_linked): New function, split out from..
- * elflink.c (_bfd_elf_section_already_linked): ..here. Revert
- 2011-07-09 changes. Avoid unnecessary strcmp when matching
- already_linked_list entries. Match plugin linkonce section.
- (section_signature): Delete.
- * coffgen.c (_bfd_coff_section_already_linked): New function.
- * libcoff-in.h (_bfd_coff_section_already_linked): Declare.
- * libbfd.h: Regenerate.
+ * libcoff-in.h: Add insert_timestamp flag to the pe_data struct.
* libcoff.h: Regenerate.
- * bfd-in2.h: Regenerate.
+ * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): Only use a real
+ timestamp if --insert-timestamp was used.
-2011-08-14 Alan Modra <[email protected]>
+2013-11-19 Roland McGrath <[email protected]>
- * elf32-ppc.c (ppc_elf_select_plt_layout): Force bss-plt when
- shared and call to _mcount will go via plt.
+ * elf-nacl.c (nacl_modify_segment_map): Calculate SIZEOF_HEADERS
+ when not doing linking (i.e. INFO is a null pointer).
-2011-08-14 Alan Modra <[email protected]>
+2013-11-18 Tristan Gingold <[email protected]>
- * elf64-ppc.c: Prefix all einfo error strings with "%P: ".
- * elf32-ppc.c: Likewise.
- (ppc_elf_select_plt_layout): Use einfo rather than info to report
- forced bss-plt.
+ * configure.in: Bump version to 2.23.91
+ * configure: Regenerate.
-2011-08-12 H.J. Lu <[email protected]>
+2013-11-17 H.J. Lu <[email protected]>
- PR ld/13082
- * elf64-x86-64.c (x86_64_elf_howto_table): Add R_X86_64_RELATIVE64.
- (elf_x86_64_relocate_section): Treat R_X86_64_64 like R_X86_64_32
- and zero-extend it to 64bit if addend is zero for x32. Generate
- R_X86_64_RELATIVE64 for x32.
-
-2011-08-09 Matthew Gretton-Dann <[email protected]>
-
- * bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
- * bfd-in2.h (bfd_elf32_arm_set_target_relocs): Likewise.
- * elf32-arm.c (elf32_arm_link_hash_table): New field.
- (elf232_arm_link_hash_table_create): Initialise new field.
- (check_use_blx): Change test depending on fix_arm1176.
- (bfd_elf32_arm_set_target_relocs): Set fix_arm1176 from
- command line options.
-
-2011-08-08 Tristan Gingold <[email protected]>
-
- * mach-o.c (struct mach_o_segment_name_xlat): Add comments.
- (segsec_names_xlat): Reorder elements.
- (bfd_mach_o_read_section_32): Fix typo.
- (bfd_mach_o_read_section_64): Fix typo.
-
-2011-08-08 Tristan Gingold <[email protected]>
-
- * mach-o.h (BFD_MACH_O_SEGNAME_SIZE): New macro.
- (BFD_MACH_O_SECTNAME_SIZE): Ditto.
- (bfd_mach_o_section): Use them. Add next field.
- (bfd_mach_o_segment_command): Replace sections array by
- sect_head and sect_tail.
- (bfd_mach_o_get_mach_o_section): New macro.
- (bfd_mach_o_lookup_section): Remove.
- (bfd_mach_o_new_section_hook): New function.
- * mach-o.c (bfd_mach_o_normalize_section_name): Use strncmp
- instead of strcmp.
- (bfd_mach_o_convert_section_name_to_bfd): Replaces section
- parameter with segname and sectname parameters. Adjust.
- (bfd_mach_o_append_section_to_segment): New function. Use a
- linked list for Mach-O sections.
- (bfd_mach_o_write_segment_32): Adjust.
- (bfd_mach_o_write_segment_64): Ditto.
- (bfd_mach_o_build_commands): Fix comment. Adjust.
- (bfd_mach_o_flatten_sections): Adjust.
- (bfd_mach_o_print_section_map): Adjust.
- (bfd_mach_o_set_section_flags_from_bfd): Ditto.
- (bfd_mach_o_new_section_hook): New function.
- (bfd_mach_o_init_section_from_mach_o): Ditto.
- (bfd_mach_o_read_section_32): Remove section parameter.
- Return a section instead.
- (bfd_mach_o_read_section_64): Ditto.
- (bfd_mach_o_read_section): Ditto.
- (bfd_mach_o_make_bfd_section): Adjust.
- (bfd_mach_o_read_segment): Adjust for new profile of
- bfd_mach_o_read_section.
- (bfd_mach_o_lookup_section): Remove.
- * mach-o-target.c (bfd_mach_o_new_section_hook): Remove.
-
-2011-08-08 Tristan Gingold <[email protected]>
-
- * mach-o.h (bfd_mach_o_version_min_command): New structure.
- (bfd_mach_o_load_command): Add version_min.
- (mach_o_data_struct): Fix comment.
- * mach-o.c (bfd_mach_o_read_version_min): New function.
- (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_FUNCTION_STARTS,
- BFD_MACH_O_LC_VERSION_MIN_MACOSX and
- BFD_MACH_O_LC_VERSION_MIN_IPHONEOS.
- (bfd_mach_o_get_name_or_null): New function.
- (bfd_mach_o_get_name): Use the above new one.
- (bfd_mach_o_load_command_name): Add the above new commands.
- (bfd_mach_o_bfd_print_private_bfd_data): Display numerically
- unknown commands. Handle BFD_MACH_O_LC_FUNCTION_STARTS,
- BFD_MACH_O_LC_VERSION_MIN_MACOSX and
- BFD_MACH_O_LC_VERSION_MIN_IPHONEOS.
-
-2011-08-08 Tristan Gingold <[email protected]>
-
- * mach-o.h: Move size macros to external.h
- Move reloc macros to reloc.h and x86-64.h.
- * mach-o-i386.c: Includes mach-o/reloc.h
- * mach-o-x86-64.c: Ditto and includes mach-o/x86-64.h
- * mach-o.c: Add includes.
- (bfd_mach_o_write_header): Use structure from external.h to convert.
- (bfd_mach_o_write_thread): Ditto.
- (bfd_mach_o_write_relocs): Ditto.
- (bfd_mach_o_write_section_32): Ditto.
- (bfd_mach_o_write_section_64): Ditto.
- (bfd_mach_o_write_segment_32): Ditto.
- (bfd_mach_o_write_segment_64): Ditto.
- (bfd_mach_o_write_symtab): Ditto.
- (bfd_mach_o_write_contents): Ditto.
- (bfd_mach_o_read_header): Ditto.
- (bfd_mach_o_read_section_32): Ditto.
- (bfd_mach_o_read_section_64): Ditto.
- (bfd_mach_o_read_symtab_symbol): Ditto.
- (bfd_mach_o_read_dylinker): Ditto.
- (bfd_mach_o_read_dylib): Ditto.
- (bfd_mach_o_read_dysymtab): Ditto.
- (bfd_mach_o_read_symtab): Ditto.
- (bfd_mach_o_read_linkedit): Ditto.
- (bfd_mach_o_read_str): Ditto.
- (bfd_mach_o_read_dyld_info): Ditto.
- (bfd_mach_o_read_segment): Ditto.
- (bfd_mach_o_read_command): Ditto.
- (bfd_mach_o_archive_p): Ditto.
- (bfd_mach_o_canonicalize_one_reloc): Ditto. Change the BUF parameter.
- (bfd_mach_o_canonicalize_relocs): Adjust to call the above function.
- (bfd_mach_o_read_dysymtab_symbol): Rename BUF variable.
- (bfd_mach_o_read_uuid): Remove useless cast. Use a macro instead
- of an hard-coded value.
-
-2011-08-08 Tristan Gingold <[email protected]>
-
- * mach-o-x86-64.c (bfd_mach_o_x86_64_mkobject): Fix cut-and-past typos.
- (bfd_mach_o_x86_64_swap_reloc_out): Handle BFD_RELOC_32_PCREL,
- BFD_RELOC_MACH_O_X86_64_SUBTRACTOR64 and
- BFD_RELOC_MACH_O_X86_64_GOT_LOAD. Share common code.
-
-2011-08-08 Tristan Gingold <[email protected]>
-
- * mach-o.c (bfd_mach_o_normalize_section_name): New function.
- (bfd_mach_o_convert_section_name_to_bfd): Use it.
- (bfd_mach_o_get_section_type_from_name): New function.
- (bfd_mach_o_get_section_attribute_from_name): Ditto.
- * mach-o.h (bfd_mach_o_section): Move bfdsection field at the end.
- Add comments. Add prototypes for the above new functions.
-
-2011-08-05 Mark Kettenis <[email protected]>
-
- * netbsd-core.c (netbsd_core_vec): Init match_priority field.
-
-2011-08-05 Alan Modra <[email protected]>
-
- * elf64-ppc.c (maybe_strip_output): New function.
- (ppc64_elf_size_stubs): Use it to strip .branch_lt and .eh_frame.
-
-2011-08-05 Alan Modra <[email protected]>
-
- PR ld/12762
- * elflink.c (_bfd_elf_section_already_linked): Return matched
- status. Remove COFF comdat section handling.
- * linker.c (_bfd_generic_section_already_linked): Return matched
- status. Don't set SEC_GROUP in l_flags for plugin entries.
- (bfd_section_already_linked): Update prototype.
- * targets.c (_section_already_linked): Likewise.
- * elf-bfd.h (_bfd_elf_section_already_linked): Likewise.
- * libbfd-in.h (_bfd_generic_section_already_linked): Likewise.
- (_bfd_nolink_section_already_linked): Update.
- * libbfd.h: Regenerate.
- * bfd-in2.h: Regenerate.
-
-2011-08-05 Alan Modra <[email protected]>
-
- * elf32-ppc.c: Include dwarf2.h.
- (struct ppc_elf_link_hash_table): Add glink_eh_frame.
- (ppc_elf_create_glink): Create .eh_frame section.
- (glink_eh_frame_cie): New array.
- (ppc_elf_size_dynamic_sections): Size glink_eh_frame.
- (ppc_elf_finish_dynamic_sections): Write glink_eh_frame.
-
-2011-08-04 Tristan Gingold <[email protected]>
-
- * vms-alpha.c (_bfd_vms_write_eeom): Round vms_linkage_index.
- (_bfd_vms_write_etir): Initialize vms_linkage_index to 0.
-
-2011-08-03 Tristan Gingold <[email protected]>
-
- * mach-o.c (bfd_mach_o_canonicalize_symtab): Handle no symbols case.
- (bfd_mach_o_read_symtab_symbols): Return if no symbols.
-
-2011-08-02 Maciej W. Rozycki <[email protected]>
-
- * elfxx-mips.c (check_4byte_branch): Remove function.
- (check_relocated_bzc): New function.
- (_bfd_mips_elf_relax_section): Permit the relaxation of LUI
- instructions that immediately follow a compact branch
- instruction.
-
-2011-08-02 Alan Modra <[email protected]>
-
- * elf64-ppc.c (build_plt_stub): Correct emitted relocs when no
- plt_static_chain.
- (ppc_build_one_stub): Adjust get_relocs call to suit..
- (ppc_size_one_stub): ..and reloc sizing. Correct plt size corner case.
-
-2011-08-01 H.J. Lu <[email protected]>
-
- PR ld/13048
- * archures.c (bfd_mach_i386_intel_syntax): New.
- (bfd_mach_i386_i8086): Updated.
- (bfd_mach_i386_i386): Likewise.
- (bfd_mach_x86_64): Likewise.
- (bfd_mach_x64_32): Likewise.
- (bfd_mach_i386_i386_intel_syntax): Likewise.
- (bfd_mach_x86_64_intel_syntax): Likewise.
- (bfd_mach_x64_32_intel_syntax): Likewise.
- (bfd_mach_l1om): Likewise.
- (bfd_mach_l1om_intel_syntax): Likewise.
- (bfd_mach_k1om): Likewise.
- (bfd_mach_k1om_intel_syntax): Likewise.
-
- * bfd-in2.h: Regenerated.
-
- * cpu-i386.c (bfd_i386_compatible): Check mach instead of
- bits_per_address.
- (bfd_x64_32_arch_intel_syntax): Set bits_per_address to 64.
- (bfd_x64_32_arch): Likewise.
-
- * elf64-x86-64.c: Include "libiberty.h".
- (x86_64_elf_howto_table): Append x32 R_X86_64_32.
- (elf_x86_64_rtype_to_howto): Support x32 R_X86_64_32.
- (elf_x86_64_reloc_type_lookup): Likewise.
- (elf_x86_64_reloc_name_lookup): Likewise.
+ * elf64-x86-64.c (x86_64_elf_howto_table): Add R_X86_64_PC32_BND
+ and R_X86_64_PLT32_BND.
+ (R_X86_64_standard): Replace R_X86_64_RELATIVE64 with
+ R_X86_64_PLT32_BND.
+ (IS_X86_64_PCREL_TYPE): Add R_X86_64_PLT32_BND.
+ (x86_64_reloc_map): Add BFD_RELOC_X86_64_PC32_BND and
+ BFD_RELOC_X86_64_PLT32_BND.
+ (elf_x86_64_check_relocs): Handle R_X86_64_PC32_BND and
+ R_X86_64_PLT32_BND.
+ (elf_x86_64_gc_sweep_hook): Likewise.
(elf_x86_64_relocate_section): Likewise.
- (elf_x86_64_check_relocs): Allow R_X86_64_64 relocations for x32.
-
-2011-07-29 Maciej W. Rozycki <[email protected]>
-
- * elfxx-mips.c (check_br32): Fix return type.
-
-2011-07-29 Maciej W. Rozycki <[email protected]>
-
- * elfxx-mips.c (bz_insn_16): Correct opcode mask.
-
-2011-07-29 Maciej W. Rozycki <[email protected]>
-
- * elfxx-mips.c: Adjust comments throughout.
- (mips_elf_relax_delete_bytes): Reshape code.
- (_bfd_mips_elf_relax_section): Remove check for
- R_MICROMIPS_GPREL16 relocations. Reshape code.
-
-2011-07-28 Roland McGrath <[email protected]>
-
- * elf32-i386.c (NACL_PLT_ENTRY_SIZE, NACLMASK): New macros.
- (elf_i386_nacl_plt0_entry): New variable.
- (elf_i386_plt_entry): New variable.
- (elf_i386_nacl_pic_plt0_entry): New variable.
- (elf_i386_nacl_pic_plt_entry): New variable.
- (elf_i386_nacl_plt, elf_i386_nacl_arch_bed): New variables.
- (elf_backend_arch_data): New macro setting for elf_i386_nacl_vec stanza.
- (elf_backend_plt_alignment): Likewise.
-
- * config.bfd: Handle i[3-7]86-*-nacl*.
- * elf32-i386.c (bfd_elf32_i386_nacl_vec): New backend vector stanza.
- * targets.c: Support bfd_elf32_i386_nacl_vec.
- * configure.in: Likewise.
- * configure: Regenerated.
-
- * elf32-i386.c (struct elf_i386_plt_layout): New type.
- (GET_PLT_ENTRY_SIZE): New macro.
- (elf_i386_plt): New variable.
- (struct elf_i386_backend_data): New member `plt'.
- (elf_i386_arch_bed): Add initializer for it.
- (elf_i386_vxworks_arch_bed): Likewise.
- (elf_i386_allocate_dynrelocs): Use GET_PLT_ENTRY_SIZE.
- (elf_i386_plt_sym_val): Likewise.
- (elf_i386_relocate_section): Likewise.
- (elf_i386_finish_dynamic_symbol): Likewise.
- Also use other elf_i386_plt_layout members for PLT details.
- (elf_i386_finish_dynamic_sections): Likewise.
-
- * elf32-i386.c (struct elf_i386_backend_data): New type.
- (get_elf_i386_backend_data): New macro.
- (elf_i386_arch_bed): New variable.
- (elf_backend_arch_data): New macro.
- (struct elf_i386_link_hash_table): Remove plt0_pad_byte and is_vxworks.
- (elf_i386_link_hash_table_create): Don't initialize them.
- (elf_i386_create_dynamic_sections): Find is_vxworks flags in
- elf_i386_backend_data, not elf_i386_link_hash_table.
- (elf_i386_adjust_dynamic_symbol): Likewise.
- (elf_i386_allocate_dynrelocs): Likewise.
- (elf_i386_readonly_dynrelocs): Likewise.
- (elf_i386_size_dynamic_sections): Likewise.
- (elf_i386_relocate_section): Likewise.
- (elf_i386_finish_dynamic_symbol): Likewise.
- (elf_i386_finish_dynamic_sections): Likewise. Same for plt0_pad_byte.
- (elf_i386_vxworks_link_hash_table_create): Function removed.
- (elf_i386_vxworks_arch_bed): New variable.
- (elf_backend_arch_data): New macro in elf32-i386-vxworks stanza.
-
- * elf-bfd.h (elf_backend_data): New member arch_backend_data.
- * elfxx-target.h (elf_backend_arch_data): New macro.
- (elfNN_bed): Use it as initializer for the new member.
-
-2011-07-28 Mikulas Patocka <[email protected]>
-
- * elf64-hppa.c (elf_hppa_final_link_relocate): Fix handling of out
- of range branches.
-
-2011-07-26 Jakub Jelinek <[email protected]>
-
- * dwarf2.c (dwarf_debug_sections): Add .debug_macro
- and .zdebug_macro entry.
- (dwarf_debug_section_enum): Add debug_macro.
-
-2011-07-26 Alan Modra <[email protected]>
-
- * elf64-ppc.c: Include dwarf2.h.
- (struct ppc_link_hash_table): Add glink_eh_frame.
- (create_linkage_sections): Create .eh_frame section.
- (ppc64_elf_size_dynamic_sections): Arrange to drop unneeded
- glink_eh_frame.
- (glink_eh_frame_cie): New array.
- (ppc64_elf_size_stubs): Size glink_eh_frame.
- (ppc64_elf_build_stubs): Init glink_eh_frame contents.
- (ppc64_elf_finish_dynamic_sections): Write glink_eh_frame.
-
-2011-07-25 Hans-Peter Nilsson <[email protected]>
-
- PR ld/12815
- * elf64-mmix.c (struct _mmix_elf_section_data): New members
- has_warned_bpo and has_warned_pushj.
- (mmix_final_link_relocate): Remove PARAMS and PTR macros,
- converting to ISO C. Add new parameter error_message. All
- callers changed.
- (mmix_elf_perform_relocation): Ditto.
- <case R_MMIX_PUSHJ_STUBBABLE, case R_MMIX_BASE_PLUS_OFFSET>:
- Handle the case where mmix_elf_check_common_relocs has not been
- called, missing preparations for relocs of the respective type.
-
-2011-07-24 Chao-ying Fu <[email protected]>
- Ilie Garbacea <[email protected]>
- Maciej W. Rozycki <[email protected]>
- Joseph Myers <[email protected]>
- Catherine Moore <[email protected]>
- Richard Sandiford <[email protected]>
-
- * archures.c (bfd_mach_mips_micromips): New macro.
- * cpu-mips.c (I_micromips): New enum value.
- (arch_info_struct): Add bfd_mach_mips_micromips.
- * elfxx-mips.h (_bfd_mips_elf_is_target_special_symbol): New
- prototype.
- (_bfd_mips_elf_relax_section): Likewise.
- (_bfd_mips16_elf_reloc_unshuffle): Rename to...
- (_bfd_mips_elf_reloc_unshuffle): ... this. Handle microMIPS
- ASE.
- (_bfd_mips16_elf_reloc_shuffle): Rename to...
- (_bfd_mips_elf_reloc_shuffle): ... this. Handle microMIPS ASE.
- (gprel16_reloc_p): Handle microMIPS ASE.
- (literal_reloc_p): New function.
- * elf32-mips.c (elf_micromips_howto_table_rel): New variable.
- (_bfd_mips_elf32_gprel16_reloc): Handle microMIPS ASE.
- (mips16_gprel_reloc): Update for _bfd_mips_elf_reloc_unshuffle
- and _bfd_mips_elf_reloc_shuffle changes.
- (mips_elf_gprel32_reloc): Update comment.
- (micromips_reloc_map): New variable.
- (bfd_elf32_bfd_reloc_type_lookup): Handle microMIPS ASE.
- (mips_elf32_rtype_to_howto): Likewise.
- (mips_info_to_howto_rel): Likewise.
- (bfd_elf32_bfd_is_target_special_symbol): Define.
- (bfd_elf32_bfd_relax_section): Likewise.
- * elf64-mips.c (micromips_elf64_howto_table_rel): New variable.
- (micromips_elf64_howto_table_rela): Likewise.
- (mips16_gprel_reloc): Update for _bfd_mips_elf_reloc_unshuffle
- and _bfd_mips_elf_reloc_shuffle changes.
- (micromips_reloc_map): Likewise.
- (bfd_elf64_bfd_reloc_type_lookup): Handle microMIPS ASE.
- (bfd_elf64_bfd_reloc_name_lookup): Likewise.
- (mips_elf64_rtype_to_howto): Likewise.
- (bfd_elf64_bfd_is_target_special_symbol): Define.
- * elfn32-mips.c (elf_micromips_howto_table_rel): New variable.
- (elf_micromips_howto_table_rela): Likewise.
- (mips16_gprel_reloc): Update for _bfd_mips_elf_reloc_unshuffle
- and _bfd_mips_elf_reloc_shuffle changes.
- (micromips_reloc_map): Likewise.
- (bfd_elf32_bfd_reloc_type_lookup): Handle microMIPS ASE.
- (bfd_elf32_bfd_reloc_name_lookup): Likewise.
- (mips_elf_n32_rtype_to_howto): Likewise.
- (bfd_elf32_bfd_is_target_special_symbol): Define.
- * elfxx-mips.c (LA25_LUI_MICROMIPS_1): New macro.
- (LA25_LUI_MICROMIPS_2): Likewise.
- (LA25_J_MICROMIPS_1, LA25_J_MICROMIPS_2): Likewise.
- (LA25_ADDIU_MICROMIPS_1, LA25_ADDIU_MICROMIPS_2): Likewise.
- (TLS_RELOC_P): Handle microMIPS ASE.
- (mips_elf_create_stub_symbol): Adjust value of stub symbol if
- target is a microMIPS function.
- (micromips_reloc_p): New function.
- (micromips_reloc_shuffle_p): Likewise.
- (got16_reloc_p, call16_reloc_p): Handle microMIPS ASE.
- (got_disp_reloc_p, got_page_reloc_p): New functions.
- (got_ofst_reloc_p): Likewise.
- (got_hi16_reloc_p, got_lo16_reloc_p): Likewise.
- (call_hi16_reloc_p, call_lo16_reloc_p): Likewise.
- (hi16_reloc_p, lo16_reloc_p, jal_reloc_p): Handle microMIPS ASE.
- (micromips_branch_reloc_p): New function.
- (tls_gd_reloc_p, tls_ldm_reloc_p): Likewise.
- (tls_gottprel_reloc_p): Likewise.
- (_bfd_mips16_elf_reloc_unshuffle): Rename to...
- (_bfd_mips_elf_reloc_unshuffle): ... this. Handle microMIPS
- ASE.
- (_bfd_mips16_elf_reloc_shuffle): Rename to...
- (_bfd_mips_elf_reloc_shuffle): ... this. Handle microMIPS ASE.
- (_bfd_mips_elf_lo16_reloc): Handle microMIPS ASE.
- (mips_tls_got_index, mips_elf_got_page): Likewise.
- (mips_elf_create_local_got_entry): Likewise.
- (mips_elf_relocation_needs_la25_stub): Likewise.
- (mips_elf_calculate_relocation): Likewise.
- (mips_elf_perform_relocation): Likewise.
- (_bfd_mips_elf_symbol_processing): Likewise.
- (_bfd_mips_elf_add_symbol_hook): Likewise.
- (_bfd_mips_elf_link_output_symbol_hook): Likewise.
- (mips_elf_add_lo16_rel_addend): Likewise.
- (_bfd_mips_elf_check_relocs): Likewise.
- (mips_elf_adjust_addend): Likewise.
- (_bfd_mips_elf_relocate_section): Likewise.
- (mips_elf_create_la25_stub): Likewise.
- (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
- (_bfd_mips_elf_gc_sweep_hook): Likewise.
- (_bfd_mips_elf_is_target_special_symbol): New function.
- (mips_elf_relax_delete_bytes): Likewise.
- (opcode_descriptor): New structure.
- (RA): New macro.
- (OP32_SREG, OP32_TREG, OP16_VALID_REG): Likewise.
- (b_insns_32, bc_insn_32, bz_insn_32, bzal_insn_32): New variables.
- (beq_insn_32): Likewise.
- (b_insn_16, bz_insn_16): New variables.
- (BZC32_REG_FIELD): New macro.
- (bz_rs_insns_32, bz_rt_insns_32): New variables.
- (bzc_insns_32, bz_insns_16):Likewise.
- (BZ16_REG, BZ16_REG_FIELD): New macros.
- (jal_insn_32_bd16, jal_insn_32_bd32): New variables.
- (jal_x_insn_32_bd32): Likewise.
- (j_insn_32, jalr_insn_32): Likewise.
- (ds_insns_32_bd16, ds_insns_32_bd32): Likewise.
- (jalr_insn_16_bd16, jalr_insn_16_bd32, jr_insn_16): Likewise.
- (JR16_REG): New macro.
- (ds_insns_16_bd16): New variable.
- (lui_insn): Likewise.
- (addiu_insn, addiupc_insn): Likewise.
- (ADDIUPC_REG_FIELD): New macro.
- (MOVE32_RD, MOVE32_RS): Likewise.
- (MOVE16_RD_FIELD, MOVE16_RS_FIELD): Likewise.
- (move_insns_32, move_insns_16): New variables.
- (nop_insn_32, nop_insn_16): Likewise.
- (MATCH): New macro.
- (find_match): New function.
- (check_br16_dslot, check_br32_dslot): Likewise.
- (check_br16, check_br32): Likewise.
- (IS_BITSIZE): New macro.
- (check_4byte_branch): New function.
- (_bfd_mips_elf_relax_section): Likewise.
- (_bfd_mips_elf_merge_private_bfd_data): Disallow linking MIPS16
- and microMIPS modules together.
- (_bfd_mips_elf_print_private_bfd_data): Handle microMIPS ASE.
- * reloc.c (BFD_RELOC_MICROMIPS_7_PCREL_S1): New relocation.
- (BFD_RELOC_MICROMIPS_10_PCREL_S1): Likewise.
- (BFD_RELOC_MICROMIPS_16_PCREL_S1): Likewise.
- (BFD_RELOC_MICROMIPS_GPREL16): Likewise.
- (BFD_RELOC_MICROMIPS_JMP, BFD_RELOC_MICROMIPS_HI16): Likewise.
- (BFD_RELOC_MICROMIPS_HI16_S): Likewise.
- (BFD_RELOC_MICROMIPS_LO16): Likewise.
- (BFD_RELOC_MICROMIPS_LITERAL): Likewise.
- (BFD_RELOC_MICROMIPS_GOT16): Likewise.
- (BFD_RELOC_MICROMIPS_CALL16): Likewise.
- (BFD_RELOC_MICROMIPS_GOT_HI16): Likewise.
- (BFD_RELOC_MICROMIPS_GOT_LO16): Likewise.
- (BFD_RELOC_MICROMIPS_CALL_HI16): Likewise.
- (BFD_RELOC_MICROMIPS_CALL_LO16): Likewise.
- (BFD_RELOC_MICROMIPS_SUB): Likewise.
- (BFD_RELOC_MICROMIPS_GOT_PAGE): Likewise.
- (BFD_RELOC_MICROMIPS_GOT_OFST): Likewise.
- (BFD_RELOC_MICROMIPS_GOT_DISP): Likewise.
- (BFD_RELOC_MICROMIPS_HIGHEST): Likewise.
- (BFD_RELOC_MICROMIPS_HIGHER): Likewise.
- (BFD_RELOC_MICROMIPS_SCN_DISP): Likewise.
- (BFD_RELOC_MICROMIPS_JALR): Likewise.
- (BFD_RELOC_MICROMIPS_TLS_GD): Likewise.
- (BFD_RELOC_MICROMIPS_TLS_LDM): Likewise.
- (BFD_RELOC_MICROMIPS_TLS_DTPREL_HI16): Likewise.
- (BFD_RELOC_MICROMIPS_TLS_DTPREL_LO16): Likewise.
- (BFD_RELOC_MICROMIPS_TLS_GOTTPREL): Likewise.
- (BFD_RELOC_MICROMIPS_TLS_TPREL_HI16): Likewise.
- (BFD_RELOC_MICROMIPS_TLS_TPREL_LO16): Likewise.
- * bfd-in2.h: Regenerate.
- * libbfd.h: Regenerate.
-
-2011-07-22 H.J. Lu <[email protected]>
-
- * Makefile.am (ALL_MACHINES): Add cpu-k1om.lo.
- (ALL_MACHINES_CFILES): Add cpu-k1om.c.
- * Makefile.in: Regenerated.
-
- * archures.c (bfd_architecture): Add bfd_arch_k1om.
- (bfd_k1om_arch): New.
- (bfd_archures_list): Add &bfd_k1om_arch.
+ * reloc.c (bfd_reloc_code_real): Add BFD_RELOC_X86_64_PC32_BND
+ and BFD_RELOC_X86_64_PLT32_BND.
* bfd-in2.h: Regenerated.
+ * libbfd.h: Likewise.
- * config.bfd (targ64_selvecs): Add bfd_elf64_k1om_vec if
- bfd_elf64_x86_64_vec is supported. Add bfd_elf64_k1om_freebsd_vec
- if bfd_elf64_x86_64_freebsd_vec is supported.
- (targ_selvecs): Likewise.
+2013-11-15 Alan Modra <[email protected]>
- * configure.in: Support bfd_elf64_k1om_vec and
- bfd_elf64_k1om_freebsd_vec.
- * configure: Regenerated.
+ Apply changes from mainline to 2.24
+ 2013-11-11 Alan Modra <[email protected]>
+ * elf64-ppc.c (allocate_dynrelocs): Revert 2013-11-04 change.
- * cpu-k1om.c: New.
+ 2013-11-11 Ulrich Weigand <[email protected]>
+ * elf64-ppc.c (ppc64_elf_edit_toc): Use SYMBOL_REFERENCES_LOCAL
+ here, not SYMBOL_CALLS_LOCAL.
+ (ppc64_elf_relocate_section): Likewise.
+ (size_global_entry_stubs): Set undefined symbols on their global
+ entry stubs here..
+ (build_global_entry_stubs): ..rather than here.
+ (ppc64_elf_build_stubs): Don't reset glink->size before calling
+ build_global_entry_stubs.
- * elf64-x86-64.c (elf64_k1om_elf_object_p): New.
- (bfd_elf64_k1om_vec): Likewise.
- (bfd_elf64_k1om_freebsd_vec): Likewise.
+ 2013-11-05 Alan Modra <[email protected]>
+ * elf64-ppc.c (ppc64_elf_func_desc_adjust): Make .TOC. defined and
+ hidden.
+ (ppc64_elf_set_toc): Adjust.
- * targets.c (bfd_elf64_k1om_vec): New.
- (bfd_elf64_k1om_freebsd_vec): Likewise.
- (_bfd_target_vector): Add bfd_elf64_k1om_vec and
- bfd_elf64_k1om_freebsd_vec.
+ 2013-11-05 Alan Modra <[email protected]>
+ * elf64-ppc.c (struct ppc_link_hash_table): Remove got, plt, relplt,
+ iplt, reliplt. Update all references to use elf.sgot, elf.splt,
+ elf.srelplt, elf.iplt and elf.irelplt.
-2011-07-20 Jan Kratochvil <[email protected]>
+ 2013-11-04 Alan Modra <[email protected]>
+ * elf64-ppc.c (ppc64_elf_relocate_section): Edit global entry
+ prologue to non-PIC in non-PIC executables.
- Fix false coff-go32-exe matches.
- * coff-i386.c (TARGET_SYM) <_bfd_check_format>: Conditionally use
- COFF_CHECK_FORMAT.
- * coff-stgo32.c (go32_check_format): New forward declaration.
- (COFF_CHECK_FORMAT): New defintion.
- (go32_check_format): New function.
+ 2013-11-04 Alan Modra <[email protected]>
+ * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Copy
+ pointer_equality_needed flag.
+ (ppc64_elf_check_relocs): For ELFv2 arrange to emit plt
+ entries for references to functions in shared libraries on
+ non-call relocs.
+ (readonly_dynrelocs): Split into function of the same name and..
+ (maybe_set_textrel): ..this new function. Update call.
+ (ppc64_elf_adjust_dynamic_symbol): Don't emit dynrelocs for
+ ELFv2 in most cases if we have a plt entry. Use new
+ readonly_relocs.
+ (allocate_dynrelocs): For ELFv2, don't allocate dynreloc space
+ for ifunc in static executables.
+ (size_global_entry_stubs): New function.
+ (ppc64_elf_size_dynamic_sections): Call size_global_entry_stubs.
+ Save end of glink branch table.
+ (ppc64_elf_hash_symbol): New function.
+ (build_global_entry_stubs): New function.
+ (ppc64_elf_build_stubs): Call build_global_entry_stubs. Adjust
+ glink sizing.
+ (ppc64_elf_relocate_section): Tidy plt16/32/64 reloc code.
+ (ppc64_elf_finish_dynamic_symbol): For ELFv2, adjust symbols
+ defined on plt code.
-2011-07-15 Alan Modra <[email protected]>
+ 2013-11-02 Alan Modra <[email protected]>
+ * elf64-ppc.c (ppc64_elf_next_input_section): Always set toc_off
+ to value for object file.
- * configure.in: Bump version.
- * configure: Regenerate.
+ 2013-10-30 Alan Modra <[email protected]>
+ * elf32-ppc.c (ppc_elf_size_dynamic_sections): Use new DT_PPC_OPT
+ tag to specify tls optimisation.
+ * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Likewise.
+ (ppc64_elf_finish_dynamic_sections): Specify whether multiple
+ toc pointers are used via DT_PPC64_OPT.
-2011-07-14 Alan Modra <[email protected]>
+ 2013-10-30 Alan Modra <[email protected]>
+ * elf64-ppc.c (STK_LR, STK_TOC, STK_LINKER): Define.
+ (savegpr0_tail, restgpr0_tail, savefpr0_tail, restfpr0_tail)
+ build_plt_stub, build_tls_get_addr_stub, ppc_build_one_stub,
+ ppc64_elf_relocate_section): Use new defines.
- * linker.c (_bfd_generic_section_already_linked): Set l_flags.
- * elf-bfd.h (struct already_linked): Forward declare.
+ 2013-10-30 Alan Modra <[email protected]>
+ * elf64-ppc.c (PLT_ENTRY_SIZE, PLT_INITIAL_ENTRY_SIZE): Add htab
+ parameter and adjust for ELFv2. Update all uses.
+ (PLT_CALL_STUB_SIZE): Delete.
+ (ppc64_elf_get_synthetic_symtab): Support new glink layout.
+ (allocate_dynrelocs): Likewise.
+ (plt_stub_size, build_plt_stub): Adjust for ELFv2.
+ (get_r2off): Return 0 for ELFv2 -R.
+ (ppc_build_one_stub, ppc_size_one_stub): Adjust for ELFv2.
+ (ppc64_elf_size_stubs): Likewise.
+ (ppc64_elf_build_stubs): Add new ELFv2 glink.
-2011-07-14 Alan Modra <[email protected]>
-
- * elflink.c (_bfd_elf_fix_symbol_flags): Loop on indirect syms.
- (_bfd_elf_adjust_dynamic_symbol): Remove FIXME.
-
-2011-07-14 Alan Modra <[email protected]>
-
- * elf64-ppc.c (struct ppc_link_hash_table): Add plt_static_chain.
- (build_plt_stub): Add plt_static_chain param, don't load r11 if false.
- (build_tls_get_addr_stub): Likewise.
- (ppc_build_one_stub): Update calls to above.
- (ppc_size_one_stub): Adjust stub size.
- (ppc64_elf_size_stubs): Add plt_static_chain param, save to htab.
- * elf64-ppc.h (ppc64_elf_size_stubs): Update prototype.
-
-2011-07-12 Nick Clifton <[email protected]>
-
- * elf32-arm.c (elf32_arm_section_flags): Delete.
- (elf_backend_section_flags): Remove.
-
-2011-07-11 H.J. Lu <[email protected]>
-
- PR ld/12982
- * elflink.c (bfd_elf_size_dynamic_sections): Also skip BFD_PLUGIN
- when setting stack_flags.
-
-2011-07-11 Catherine Moore <[email protected]>
-
- * aout-adobe.c (aout_32_bfd_lookup_section_flags): New definition.
- * aout-target.h (MY_bfd_lookup_section_flags): New definition.
- * aout-tic30.c (MY_bfd_lookup_section_flags): New definition.
- * bfd-in2.h: Regenerated.
- * bfd.c (bfd_lookup_section_flags): New definition.
- * binary.c (binary_bfd_lookup_section_flags): New definition.
- * bout.c (b_out_bfd_lookup_section_flags): New definition.
- * coff-alpha.c (_bfd_ecoff_bfd_lookup_section_flags): New definition.
- * coff-mips.c (_bfd_ecoff_bfd_lookup_section_flags): New definition.
- * coff-rs6000.c (rs6000coff_vec): Include
- bfd_generic_lookup_section_flags.
- (pmac_xcoff_vec): Likewise.
- * coffcode.h (coff_bfd_lookup_section_flags): New definition.
- * coff64-rs6000.c (rs6000coff64_vec): Include
- bfd_generic_lookup_section_flags.
- (aix5coff64_vec): Likewise.
- * ecoff.c (bfd_debug_section): Initialize flag_info field.
- * elf-bfd.h (elf_backend_lookup_section_flags_hook): Declare.
- (bfd_elf_lookup_section_flags): Declare.
- * elflink.c (bfd_elf_lookup_section_flags): New function.
- * elfxx-target.h (bfd_elfNN_bfd_lookup_section_flags): Define.
- (elf_backend_lookup_section_flags_hook): Define.
- (elf_backend_data): Add elf_backend_lookup_section_flags_hook.
- * i386msdos.c (msdos_bfd_lookup_section_flags): New define.
- * i386os9k.c (os9k_bfd_lookup_section_flags): New define.
- * ieee.c (ieee_bfd_lookup_section_flags): New define.
- * ihex.c (ihex_bfd_lookup_section_flags): New define.
- * libbfd-in.h (_bfd_nolink_bfd_lookup_section_flags): Declare.
- (bfd_generic_lookup_section_flags): Declare.
- * libbfd.h: Regenerated.
- * mach-o-target.c (bfd_mach_o_bfd_lookup_section_flags): New.
- * mmo.c (mmo_bfd_lookup_section_flags): New definition.
- * nlm-target.h (nlm_bfd_lookup_section_flags): New definition.
- * oasys.c (oasys_bfd_lookup_section_flags): New definition.
- * pef.c (bfd_pef_bfd_lookup_section_flags): New definition.
- * plugin.c (bfd_plugin_bfd_lookup_section_flags): New definition.
- * ppcboot.c (ppcboot_bfd_lookup_section_flags): New definition.
- * reloc.c (bfd_generic_lookup_section_flags): New function.
- * som.c (som_bfd_lookup_section_flags): New definition.
- * srec.c (srec_bfd_lookup_section_flags): New definition.
- * targets.c (flag_info): Declare.
- (NAME##_bfd_lookup_section_flags): Add to LINK jump table.
- (_bfd_lookup_section_flags): New.
- * tekhex.c (tekhex_bfd_lookup_section_flags): New definition.
- * versados.c (versados_bfd_lookup_section_flags): New definition.
- * vms-alpha.c (alpha_vms_bfd_lookup_section_flag): New definition.
- * xsym.c (bfd_sym_bfd_lookup_section_flags): New definition.
-
-2011-07-11 H.J. Lu <[email protected]>
-
- PR ld/12978
- * elfnn-ia64.c (count_dyn_reloc): Fix a typo.
-
-2011-07-09 Alan Modra <[email protected]>
-
- PR ld/12942
- * elflink.c (elf_link_add_object_symbols): Use elf_discarded_section
- rather than kept_section to determine whether a symbol is from
- a discarded section.
- * cofflink.c (coff_link_add_symbols): Make symbols from discarded
- sections appear undefined.
-
-2011-07-09 H.J. Lu <[email protected]>
-
- PR ld/12942
- * elf-bfd.h (_bfd_elf_section_already_linked): Replace
- "asection *" with "struct already_linked *".
- * libbfd-in.h (_bfd_nolink_section_already_linked): Likewise.
- (_bfd_generic_section_already_linked): Likewise.
- (bfd_section_already_linked_table_insert): Likewise.
- (struct already_linked): New.
- (struct bfd_section_already_linked): Use it.
- * elflink.c (_bfd_elf_section_already_linked): Replace.
- "asection *" with "struct already_linked *". Replace the plugin
- dummy with the LTO output.
- * linker.c (_bfd_generic_section_already_linked): Likewise.
- * targets.c (struct already_linked): Add forward declaration.
- (bfd_target): Replace "struct bfd_section *" with
- "struct already_linked *" in _section_already_linked.
- * bfd-in2.h: Regenerate.
- * libbfd.h: Regenerate.
-
-2011-07-06 Tristan Gingold <[email protected]>
-
- * mach-o.h: Move loader related definitions to
- include/mach-o/loader.h. Include it.
-
-2011-07-05 H.J. Lu <[email protected]>
-
- * elf64-x86-64.c (elf_backend_post_process_headers): Always
- define to _bfd_elf_set_osabi.
-
-2011-07-03 Samuel Thibault <[email protected]>
- Thomas Schwinge <[email protected]>
-
- PR binutils/12913
- * elf.c (_bfd_elf_set_osabi): Use ELFOSABI_GNU name instead of
- ELFOSABI_LINUX alias.
- * elf32-hppa.c: Likewise.
- * elf32-i370.c: Likewise.
- * elf64-hppa.c: Likewise.
-
-2011-07-01 Ian Lance Taylor <[email protected]>
-
- * elf32-i386.c (elf_i386_eh_frame_plt): Correct expression: change
- DW_OP_lit3 to DW_OP_lit2.
-
-2011-07-01 Alan Modra <[email protected]>
-
- * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Don't look at
- dyn relocs when called to copy flags for a weak sym.
- * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
- (ppc64_elf_merge_private_bfd_data): Delete.
- (bfd_elf64_bfd_merge_private_bfd_data): Define as
- _bfd_generic_verify_endian_match.
-
-2011-06-30 Bernd Schmidt <[email protected]>
-
- * bfd/elf32-tic6x.c (elf32_tic6x_set_osabi): Also set it if
- link_info is NULL.
-
-2011-06-28 Tristan Gingold <[email protected]>
-
- * vms-alpha.c (vms_private_data_struct): Make vms_linkage_index
- unsigned int.
- (_bfd_vms_write_etir): Write linkage index from reloc.
-
-2011-06-28 Fawzi Mohamed <[email protected]>
-
- * mach-o.c (bfd_mach_o_read_command): Also ignore
- BFD_MACH_O_LC_ROUTINES_64.
-
-2011-06-27 Tristan Gingold <[email protected]>
-
- * vms-alpha.c (_bfd_vms_write_etir): Use 'section' to get current
- section target index.
-
-2011-06-27 Nick Clifton <[email protected]>
-
- * cisco-core.c (cisco_core_little_vec): Add initialization of
- match_priority field.
-
-2011-06-27 Tristan Gingold <[email protected]>
-
- * cache.c: Include bfd_stdint.h.
- (cache_bmmap): Change profile. Return region start and size.
- * bfdio.c (struct bfd_iovec): Change bmmap profile.
- (bfd_mmap): Change profile and adjust. Update comment.
- (memory_bmmap): Change profile.
- * opncls.c (opncls_bmmap): Change profile.
- * vms-lib.c (vms_lib_bmmap): Likewise.
- * libbfd.h: Regenerate.
- * bfd-in2.h: Regenerate.
-
-2011-06-27 Tristan Gingold <[email protected]>
-
- * vms-misc.c (vms_time_to_time_t): Adjust overflow detection.
- Add comment.
-
-2011-06-25 H.J. Lu <[email protected]>
-
- * elf64-x86-64.c (elf_backend_post_process_headers): Don't
- define for FreeBSD/x86-64 nor FreeBSD/L1OM. Define for L1OM.
-
-2011-06-25 Jan Kratochvil <[email protected]>
-
- * elf64-x86-64.c (elf_x86_64_link_hash_table_create): Initialize
- PLT_EH_FRAME.
- * elf32-i386.c (elf_i386_link_hash_table): Likewise.
-
-2011-06-24 Richard Henderson <[email protected]>
-
- PR ld/12928
- * elf64-alpha.c (elf64_alpha_relax_tls_get_addr): Recover the
- tlsgd insn before swapping adjacent insns.
-
-2011-06-24 Tristan Gingold <[email protected]>
-
- * vms-alpha.c (alpha_vms_slurp_relocs): Add a guard for relocs in the
- absolute section.
-
-2011-06-24 Alan Modra <[email protected]>
-
- PR ld/12921
- * elf.c (assign_file_positions_for_load_sections): Don't align
- sh_offset for all SHT_NOBITS sections here, just .tbss sections
- that don't get a PT_LOAD.
-
-2011-06-22 Kaz Kojima <[email protected]>
-
- * elf32-sh.c (sh_elf_relocate_section): Allow R_SH_TLS_LE_32 for PIE.
- (sh_elf_check_relocs): Likewise.
-
-2011-06-22 Richard Henderson <[email protected]>
-
- * elf64-alpha.c (elf64_alpha_check_relocs): No dynamic reloc for
- TPREL in a PIE image.
- (alpha_dynamic_entries_for_reloc): Likewise.
- (elf64_alpha_relocate_section): Allow TPREL in PIE images.
- (elf64_alpha_relax_got_load): Likewise.
-
-2011-06-22 Ramana Radhakrishnan <[email protected]>
-
- * elf32-arm.c (elf32_arm_final_link_relocate): Allow R_ARM_TLS_LE32
- for PIE.
-
-2011-06-22 Alan Modra <[email protected]>
-
- * elflink.c (_bfd_elf_merge_symbol): Allow type changes for
- plugin symbols. Fix segfault on linker scrip defined syms.
-
-2011-06-20 Jakub Jelinek <[email protected]>
-
- PR ld/12570
- * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Allow no relocations
- at all for linker created .eh_frame sections.
- (_bfd_elf_discard_section_eh_frame): Handle linker created
- .eh_frame sections with no relocations.
- * elf64-x86-64.c: Include dwarf2.h.
- (elf_x86_64_eh_frame_plt): New variable.
- (PLT_CIE_LENGTH, PLT_FDE_LENGTH, PLT_FDE_START_OFFSET,
- PLT_FDE_LEN_OFFSET): Define.
- (struct elf_x86_64_link_hash_table): Add plt_eh_frame field.
- (elf_x86_64_create_dynamic_sections): Create and fill in
- .eh_frame section for .plt section.
- (elf_x86_64_size_dynamic_sections): Write .plt section size
- into .eh_frame FDE covering .plt section.
- (elf_x86_64_finish_dynamic_sections): Write .plt section
- start into .eh_frame FDE covering .plt section. Call
- _bfd_elf_write_section_eh_frame on htab->plt_eh_frame section.
- (elf_backend_plt_alignment): Define to 4.
- * elf32-i386.c: Include dwarf2.h.
- (elf_i386_eh_frame_plt): New variable.
- (PLT_CIE_LENGTH, PLT_FDE_LENGTH, PLT_FDE_START_OFFSET,
- PLT_FDE_LEN_OFFSET): Define.
- (struct elf_i386_link_hash_table): Add plt_eh_frame field.
- (elf_i386_create_dynamic_sections): Create and fill in
- .eh_frame section for .plt section.
- (elf_i386_size_dynamic_sections): Write .plt section size
- into .eh_frame FDE covering .plt section.
- (elf_i386_finish_dynamic_sections): Write .plt section
- start into .eh_frame FDE covering .plt section. Call
- _bfd_elf_write_section_eh_frame on htab->plt_eh_frame section.
- (elf_backend_plt_alignment): Define to 4.
-
-2011-06-19 H.J. Lu <[email protected]>
-
- * elf64-x86-64.c (elf_backend_post_process_headers): Defined
- for x32.
-
-2011-06-16 H.J. Lu <[email protected]>
-
- * elf64-x86-64.c: Include <stdarg.h> and CORE_HEADER if
- CORE_HEADER is defined.
- (elf_x86_64_write_core_note): New.
- (elf_backend_write_core_note): Likewise.
-
- * hosts/x86-64linux.h (uint64_t): New.
- (user_regsx32_struct): Likewise.
- (elf_gregx32_t): Likewise.
- (ELF_NGREGX32): Likewise.
- (elf_gregsetx32_t): Likewise.
- (elf_prstatusx32): Likewise.
- (prstatusx32_t): Likewise.
- (user_fpregs32_struct): Removed.
- (user_fpxregs32_struct): Likewise.
- (user32): Likewise.
- (elf_fpregset32_t): Likewise.
- (elf_fpxregset32_t): Likewise.
- (prgregset32_t): Likewise.
- (prfpregset32_t): Likewise.
-
-2011-06-16 H.J. Lu <[email protected]>
-
- * elf64-x86-64.c (elf_x86_64_grok_prstatus): Support x32.
- (elf_x86_64_grok_psinfo): Likewise.
-
-2011-06-16 Nick Clifton <[email protected]>
-
- * elf.c (elf_find_function): Fail if not provided with a symbol
- table.
-
-2011-06-15 Ulrich Weigand <[email protected]>
-
- * elf-bfd.h (elfcore_write_arm_vfp): Add prototype.
- * elf.c (elfcore_grok_arm_vfp): New function.
- (elfcore_grok_note): Call it to handle NT_ARM_VFP notes.
- (elfcore_write_arm_vfp): New function.
- (elfcore_write_register_note): Call it to handle .reg-arm-vfp.
-
-2011-06-14 Richard Henderson <[email protected]>
-
- * elf64-alpha.c (elf64_alpha_copy_indirect_symbol): Rename from
- elf64_alpha_merge_ind_symbols; adjust for the generic interface.
- (elf64_alpha_always_size_sections): Don't call
- elf64_alpha_merge_ind_symbols.
- (elf_backend_copy_indirect_symbol): New.
-
-2011-06-14 Alan Modra <[email protected]>
-
- PR ld/12887
- * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Check sec_info_type
- before doing anything.
- (_bfd_elf_discard_section_eh_frame): Likewise.
-
-2011-06-14 Alan Modra <[email protected]>
-
- * Makefile.am: Formatting.
- * Makefile.in: Regenerate.
- * configure.in (bfd_elf64_tilegx_vec): Add elfxx-tilegx.lo.
- * po/SRC-POTFILES.in: Regnerate.
-
-2011-06-14 Alan Modra <[email protected]>
-
- * elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Don't use PTR.
- (allocate_dynrelocs, readonly_dynrelocs): Replace PTR with void *.
- Don't handle warning symbols here.
- * elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): As above.
- (allocate_dynrelocs, readonly_dynrelocs): As above.
-
-2011-06-14 Alan Modra <[email protected]>
-
- PR ld/12851
- * elflink.c (_bfd_elf_gc_mark_extra_sections): New function.
- (elf_gc_sweep): Don't treat debug and sections like .comment
- specially here.
- (bfd_elf_gc_sections): Treat note sections as gc roots only when
- not part of a group. Always call gc_mark_extra_sections.
- * elf-bfd.h (_bfd_elf_gc_mark_extra_sections): Declare.
- * elfxx-target.h (elf_backend_gc_mark_extra_sections): Default to
- _bfd_elf_gc_mark_extra_sections.
- * elf32-arm.c (elf32_arm_gc_mark_extra_sections): Call
- _bfd_elf_gc_mark_extra_sections.
- * elf32-tic6x.c (elf32_tic6x_gc_mark_extra_sections): Likewise.
-
-2011-06-13 Nick Clifton <[email protected]>
-
- * elf32-tilepro.c (tilepro_elf_check_relocs): Delete unused local
- variable 'local_got_offsets'.
- * elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise.
- (tilegx_finish_dyn): Delete unused local variable 'abi_64_p'.
-
-2011-06-13 Walter Lee <[email protected]>
-
- * Makefile.am (ALL_MACHINES): Add cpu-tilegx.lo and cpu-tilepro.lo.
- (ALL_MACHINE_CFILES): Add cpu-tilegx.c and cpu-tilepro.c.
- (BFD32_BACKENDS): Add elf32-tilegx.lo, elf32-tilepro.lo,
- and elfxx-tilegx.lo.
- (BFD32_BACKENDS_CFILES): Add elf32-tilegx.c elf32-tilepro.c, and
- elfxx-tilegx.c.
- (BFD64_BACKENDS): Add elf64-tilegx.lo.
- (BFD64_BACKENDS_CFILES): Add elf64-tilegx.c.
- * Makefile.in: Regenerate.
- * arctures.c (bfd_architecture): Define bfd_arch_tilepro,
- bfd_arch_tilegx, bfd_mach_tilepro, bfd_mach_tilegx.
- (bfd_arch_info): Add bfd_tilegx_arch, bfd_tilepro_arch.
- (bfd_archures_list): Add bfd_tilegx_arch, bfd_tilepro_arch.
- bfd-in2.h: Regenerate.
- * config.bfd: Handle tilegx-*-* and tilepro-*-*.
- * configure.in: Handle bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
- and bfd_elf64_tilegx_vec.
- * configure: Regenerate.
- * elf-bfd.h (enum elf_target_id): Define TILEGX_ELF_DATA and
- TILEPRO_ELF_DATA.
- * libbfd.h: Regenerate.
- * reloc.c: Add BFD_RELOC_TILEPRO_{COPY, GLOB_DAT, JMP_SLOT,
- RELATIVE, BROFF_X1, JOFFLONG_X1, JOFFLONG_X1_PLT, IMM8_X0,
- IMM8_Y0, IMM8_X1, IMM8_Y1, DEST_IMM8_X1, MT_IMM15_X1, MF_IMM15_X1,
- IMM16_X0, IMM16_X1, IMM16_X0_LO, IMM16_X1_LO, IMM16_X0_HI,
- IMM16_X1_HI, IMM16_X0_HA, IMM16_X1_HA, IMM16_X0_PCREL,
- IMM16_X1_PCREL, IMM16_X0_LO_PCREL, IMM16_X1_LO_PCREL,
- IMM16_X0_HI_PCREL, IMM16_X1_HI_PCREL, IMM16_X0_HA_PCREL,
- IMM16_X1_HA_PCREL, IMM16_X0_GOT, IMM16_X1_GOT, IMM16_X0_GOT_LO,
- IMM16_X1_GOT_LO, IMM16_X0_GOT_HI, IMM16_X1_GOT_HI,
- IMM16_X0_GOT_HA, IMM16_X1_GOT_HA, MMSTART_X0, MMEND_X0,
- MMSTART_X1, MMEND_X1, SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1,
- IMM16_X0_TLS_GD, IMM16_X1_TLS_GD, IMM16_X0_TLS_GD_LO,
- IMM16_X1_TLS_GD_LO, IMM16_X0_TLS_GD_HI, IMM16_X1_TLS_GD_HI,
- IMM16_X0_TLS_GD_HA, IMM16_X1_TLS_GD_HA, IMM16_X0_TLS_IE,
- IMM16_X1_TLS_IE, IMM16_X0_TLS_IE_LO, IMM16_X1_TLS_IE_LO,
- IMM16_X0_TLS_IE_HI, IMM16_X1_TLS_IE_HI, IMM16_X0_TLS_IE_HA,
- IMM16_X1_TLS_IE_HA, TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
- Add BFD_RELOC_TILEGX_{HW0, HW1, HW2, HW3, HW0_LAST, HW1_LAST,
- HW2_LAST, COPY, GLOB_DAT, JMP_SLOT, RELATIVE, BROFF_X1,
- JUMPOFF_X1, JUMPOFF_X1_PLT, IMM8_X0, IMM8_Y0, IMM8_X1, IMM8_Y1,
- DEST_IMM8_X1, MT_IMM14_X1, MF_IMM14_X1, MMSTART_X0, MMEND_X0,
- SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1, IMM16_X0_HW0,
- IMM16_X1_HW0, IMM16_X0_HW1, IMM16_X1_HW1, IMM16_X0_HW2,
- IMM16_X1_HW2, IMM16_X0_HW3, IMM16_X1_HW3, IMM16_X0_HW0_LAST,
- IMM16_X1_HW0_LAST, IMM16_X0_HW1_LAST, IMM16_X1_HW1_LAST,
- IMM16_X0_HW2_LAST, IMM16_X1_HW2_LAST, IMM16_X0_HW0_PCREL,
- IMM16_X1_HW0_PCREL, IMM16_X0_HW1_PCREL, IMM16_X1_HW1_PCREL,
- IMM16_X0_HW2_PCREL, IMM16_X1_HW2_PCREL, IMM16_X0_HW3_PCREL,
- IMM16_X1_HW3_PCREL, IMM16_X0_HW0_LAST_PCREL,
- IMM16_X1_HW0_LAST_PCREL, IMM16_X0_HW1_LAST_PCREL,
- IMM16_X1_HW1_LAST_PCREL, IMM16_X0_HW2_LAST_PCREL,
- IMM16_X1_HW2_LAST_PCREL, IMM16_X0_HW0_GOT, IMM16_X1_HW0_GOT,
- IMM16_X0_HW1_GOT, IMM16_X1_HW1_GOT, IMM16_X0_HW2_GOT,
- IMM16_X1_HW2_GOT, IMM16_X0_HW3_GOT, IMM16_X1_HW3_GOT,
- IMM16_X0_HW0_LAST_GOT, IMM16_X1_HW0_LAST_GOT,
- IMM16_X0_HW1_LAST_GOT, IMM16_X1_HW1_LAST_GOT,
- IMM16_X0_HW2_LAST_GOT, IMM16_X1_HW2_LAST_GOT, IMM16_X0_HW0_TLS_GD,
- IMM16_X1_HW0_TLS_GD, IMM16_X0_HW1_TLS_GD, IMM16_X1_HW1_TLS_GD,
- IMM16_X0_HW2_TLS_GD, IMM16_X1_HW2_TLS_GD, IMM16_X0_HW3_TLS_GD,
- IMM16_X1_HW3_TLS_GD, IMM16_X0_HW0_LAST_TLS_GD,
- IMM16_X1_HW0_LAST_TLS_GD, IMM16_X0_HW1_LAST_TLS_GD,
- IMM16_X1_HW1_LAST_TLS_GD, IMM16_X0_HW2_LAST_TLS_GD,
- IMM16_X1_HW2_LAST_TLS_GD, IMM16_X0_HW0_TLS_IE,
- IMM16_X1_HW0_TLS_IE, IMM16_X0_HW1_TLS_IE, IMM16_X1_HW1_TLS_IE,
- IMM16_X0_HW2_TLS_IE, IMM16_X1_HW2_TLS_IE, IMM16_X0_HW3_TLS_IE,
- IMM16_X1_HW3_TLS_IE, IMM16_X0_HW0_LAST_TLS_IE,
- IMM16_X1_HW0_LAST_TLS_IE, IMM16_X0_HW1_LAST_TLS_IE,
- IMM16_X1_HW1_LAST_TLS_IE, IMM16_X0_HW2_LAST_TLS_IE,
- IMM16_X1_HW2_LAST_TLS_IE, TLS_DTPMOD64, TLS_DTPOFF64, TLS_TPOFF64,
- TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
- * targets.c (bfd_elf32_tilegx_vec): Declare.
- (bfd_elf32_tilepro_vec): Declare.
- (bfd_elf64_tilegx_vec): Declare.
- (bfd_target_vector): Add bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
- and bfd_elf64_tilegx_vec.
- * cpu-tilegx.c: New file.
- * cpu-tilepro.c: New file.
- * elf32-tilepro.h: New file.
- * elf32-tilepro.c: New file.
- * elf32-tilegx.c: New file.
- * elf32-tilegx.h: New file.
- * elf64-tilegx.c: New file.
- * elf64-tilegx.h: New file.
- * elfxx-tilegx.c: New file.
- * elfxx-tilegx.h: New file.
-
-2011-06-13 Alan Modra <[email protected]>
-
- * linker.c (bfd_link_hash_traverse): Follow warning symbol link.
- (_bfd_generic_link_write_global_symbol, fix_syms): Don't handle
- warning symbols here.
- * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Likewise.
- * elf32-arm.c (allocate_dynrelocs_for_symbol,
- elf32_arm_readonly_dynrelocs): Likewise.
- * elf32-bfin.c (bfin_discard_copies): Likewise.
- * elf32-cris.c (elf_cris_adjust_gotplt_to_got,
- elf_cris_discard_excess_dso_dynamics,
- elf_cris_discard_excess_program_dynamics): Likewise.
- * elf32-hppa.c (allocate_plt_static, allocate_dynrelocs,
- clobber_millicode_symbols, readonly_dynrelocs): Likewise.
- * elf32-i370.c (i370_elf_adjust_dynindx): Likewise.
- * elf32-i386.c (elf_i386_allocate_dynrelocs,
- elf_i386_readonly_dynrelocs): Likewise.
- * elf32-lm32.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
- * elf32-m32c.c (m32c_relax_plt_check, m32c_relax_plt_realloc): Likewise.
- * elf32-m32r.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
- * elf32-m68k.c (elf_m68k_discard_copies): Likewise.
- * elf32-microblaze.c (allocate_dynrelocs): Likewise.
- * elf32-ppc.c (allocate_dynrelocs, maybe_set_textrel): Likewise.
- * elf32-s390.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
- * elf32-score.c (score_elf_sort_hash_table_f): Likewise.
- * elf32-score7.c (score_elf_sort_hash_table_f): Likewise.
- * elf32-sh.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
- * elf32-tic6x.c (elf32_tic6x_allocate_dynrelocs,
- elf32_tic6x_readonly_dynrelocs): Likewise.
- * elf32-vax.c (elf_vax_discard_copies): Likewise.
- * elf32-xstormy16.c (xstormy16_relax_plt_check,
- xstormy16_relax_plt_realloc): Likewise.
- * elf32-xtensa.c (elf_xtensa_allocate_dynrelocs): Likewise.
- * elf64-alpha.c (elf64_alpha_output_extsym,
- elf64_alpha_calc_got_offsets_for_symbol,
- elf64_alpha_calc_dynrel_sizes, elf64_alpha_size_rela_got_1): Likewise.
- * elf64-hppa.c (elf64_hppa_mark_exported_functions,
- allocate_global_data_opd, elf64_hppa_mark_milli_and_exported_functions,
- elf_hppa_unmark_useless_dynamic_symbols,
- elf_hppa_remark_useless_dynamic_symbols): Likewise.
- * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref, func_desc_adjust,
- adjust_opd_syms, adjust_toc_syms, allocate_dynrelocs,
- readonly_dynrelocs, merge_global_got, reallocate_got,
- undo_symbol_twiddle): Likewise.
- * elf64-s390.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
- * elf64-sh64.c (sh64_elf64_discard_copies): Likewise.
- * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs,
- elf_x86_64_readonly_dynrelocs): Likewise.
- * elflink.c (elf_link_renumber_hash_table_dynsyms,
- elf_link_renumber_local_hash_table_dynsyms, _bfd_elf_export_symbol,
- _bfd_elf_link_find_version_dependencies,
- _bfd_elf_link_assign_sym_version, _bfd_elf_adjust_dynamic_symbol,
- _bfd_elf_link_sec_merge_syms, elf_adjust_dynstr_offsets,
- elf_collect_hash_codes, elf_collect_gnu_hash_codes,
- elf_renumber_gnu_hash_syms, elf_gc_sweep_symbol,
- elf_gc_propagate_vtable_entries_used,
- elf_gc_smash_unused_vtentry_relocs, bfd_elf_gc_mark_dynamic_ref_symbol,
- elf_gc_allocate_got_offsets): Likewise.
- * elfnn-ia64.c (elfNN_ia64_global_dyn_info_free,
- elfNN_ia64_global_dyn_sym_thunk): Likewise.
- * elfxx-mips.c (mips_elf_check_symbols, mips_elf_output_extsym,
- mips_elf_sort_hash_table_f, allocate_dynrelocs): Likewise.
- * elfxx-sparc.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
- * i386linux.c (linux_tally_symbols): Likewise.
- * m68klinux.c (linux_tally_symbols): Likewise.
- * sparclinux.c (linux_tally_symbols): Likewise.
- * sunos.c (sunos_scan_dynamic_symbol): Likewise.
- * xcofflink.c (xcoff_post_gc_symbol): Likewise.
-
- * elflink.c (elf_link_output_extsym): Make it a bfd_hash_traverse
- function. Update all callers.
- * aoutx.h (aout_link_write_other_symbol): Likewise.
- * pdp11.c (aout_link_write_other_symbol): Likewise.
- * cofflink.c (_bfd_coff_write_global_sym): Likewise.
- * ecoff.c (ecoff_link_write_external): Likewise.
- * xcofflink.c (xcoff_write_global_symbol): Likewise.
- * vms-alpha.c (alpha_vms_link_output_symbol): Likewise. Handle
- warning symbols.
- * ecoff.c (ecoff_link_hash_traverse): Delete.
- * coff-ppc.c (ppc_bfd_coff_final_link): Use bfd_hash_traverse for
- _bfd_coff_write_global_sym.
- * libcoff-in.h (_bfd_coff_write_global_sym): Update prototype.
- * libcoff.h: Regenerate.
-
-2011-06-10 Nick Clifton <[email protected]>
-
- * elflink.c (_bfd_elf_link_create_dynamic_sections): If the
- backend does not provide a function for creating dynamic sections
- then fail.
- (bfd_elf_final_link): Issue a warning message if a dynamic section
- has the SHT_NOTE type.
- (bfd_elf_final_link): Do not look for dynamic strings in a section
- that does not have the SHT_STRTAB type or the name .dynstr.
- * elf32-arm.c (elf32_arm_finish_dynamic_sections): Fail if the got
- section is not in the output binary.
- * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Likewise.
-
-2011-06-09 Tristan Gingold <[email protected]>
-
- * elfnn-ia64.c (elfNN_ia64_relax_section, elfNN_ia64_choose_gp)
- (elfNN_ia64_relocate_section, elfNN_vms_object_p): Remove trailing
- spaces.
-
-2011-06-09 Tristan Gingold <[email protected]>
-
- * bfd.c (bfd_get_sign_extend_vma): Handle aixcoff.
-
-2011-06-09 Nick Clifton <[email protected]>
-
- PR ld/12845
- * elf.c (_bfd_elf_init_private_section_data): Add an assertion
- that the output section has an allocated bfd_elf_section_data
- structure.
- * elfxx-mips.c (mips_elf_check_symbols): Do not create a stub for
- symbols in sections that have been removed by garbage collection.
-
-2011-06-08 H.J. Lu <[email protected]>
-
- * elf64-x86-64.c (elf_x86_64_check_relocs): Allow R_X86_64_64
- relocations in SEC_DEBUGGING sections when building shared
- libraries.
-
-2011-06-08 H.J. Lu <[email protected]>
-
- PR ld/12851
- * elflink.c (elf_gc_sweep): Don't check SHT_NOTE sections here.
- (bfd_elf_gc_sections): Also check SHT_NOTE sections.
-
-2011-06-08 Tristan Gingold <[email protected]>
-
- * makefile.vms (OBJS): Add elfxx-ia64.obj
- Remove vax case.
-
-2011-06-08 Alan Modra <[email protected]>
-
- * aix386-core.c, * cisco-core.c, * hpux-core.c, * osf-core.c,
- * sco5-core.c: Init match_priority field.
-
-2011-06-08 Alan Modra <[email protected]>
-
- * elflink.c (_bfd_elf_archive_symbol_lookup): Follow warning and
- indirect links here.
-
-2011-06-07 Joel Brobecker <[email protected]>
-
- * irix-core.c (irix_core_vec): Add match_priority field.
-
-2011-06-06 Alan Modra <[email protected]>
-
- * targets.c (bfd_target): Make ar_max_namelen an unsigned char.
- Add match_priority.
- * configure.in: Bump bfd version.
- * elfcode.h (elf_object_p): Delete hacks preventing match of
- EM_NONE and ELFOSABI_NONE targets when a better match exists.
- * elfxx-target.h (elf_match_priority): Define and use.
- * format.c (bfd_check_format_matches): Use target match_priority
- to choose best of multiple matching targets. In cases with multiple
- matches rerun _bfd_check_format if we don't choose the last match.
- * aout-adobe.c, * aout-arm.c, * aout-target.h, * aout-tic30.c,
- * binary.c, * bout.c, * coff-alpha.c, * coff-i386.c, * coff-i860.c,
- * coff-i960.c, * coff-ia64.c, * coff-mips.c, * coff-or32.c,
- * coff-ppc.c, * coff-rs6000.c, * coff-sh.c, * coff-tic30.c,
- * coff-tic54x.c, * coff-x86_64.c, * coff64-rs6000.c, * coffcode.h,
- * i386msdos.c, * i386os9k.c, * ieee.c, * ihex.c, * mach-o-target.c,
- * mipsbsd.c, * mmo.c, * nlm-target.h, * oasys.c, * pdp11.c,
- * pe-mips.c, * pef.c, * plugin.c, * ppcboot.c, * som.c, * srec.c,
- * tekhex.c, * trad-core.c, * verilog.c, * versados.c, * vms-alpha.c,
- * vms-lib.c, * xsym.c: Init match_priority field.
- * configure: Regenerate.
- * bfd-in2.h: Regenerate.
-
-2011-06-04 H.J. Lu <[email protected]>
-
- PR ld/12842
- * elfcode.h (elf_object_p): Revert the last change.
-
-2011-06-04 Alan Modra <[email protected]>
-
- * archures.c (bfd_arch_get_compatible): If one arch is unknown,
- return the other arch.
- * elfcode.h (elf_object_p): Allow explicit match to generic ELF
- target.
-
-2011-06-03 Bertram Felgenhauer <[email protected]>
-
- PR ld/12682
- * hash.c (higher_primer_number): Add more, small, prime numbers.
- (bfd_hash_set_default_size): Likewise.
-
-2011-06-02 Nick Clifton <[email protected]>
-
- * coff-mcore.c: Fix spelling typo.
- * coff-stgo32.c: Likewise.
- * elf32-arm.c: Likewise.
- * elf32-avr.c: Likewise.
- * elf-m68hc1x.c: Likewise.
- * elf32-mcore.c: Likewise.
- * elf32-mep.c: Likewise.
- * elf32-mt.c: Likewise.
- * elf32-ppc.c: Likewise.
- * elf32-xtensa.c: Likewise.
- * elf64-ppc.c: Likewise.
- * elfxx-mips.c: Likewise.
- * netbsd.h: Likewise.
- * nlmcode.h: Likewise.
- * vms-alpha.c: Likewise.
- * po/bfd.pot: Regenerate.
- * po/SRC-POTFILES.in: Regenerate.
-
-2011-06-01 DJ Delorie <[email protected]>
-
- * config.bfd: Add bfd_elf32_rx_be_ns_vec.
- * target.c: Likewise.
- * configure.in: Likewise.
- * configure.in: Regenerate.
- * elf32-rx.c: Add elf32-rx-be-ns target.
- (rx_elf_object_p): Never allow the be-ns target by default,
- only allow it if the user requests it.
-
-2011-06-01 H.J. Lu <[email protected]>
-
- * elf32-i386.c (elf_i386_size_dynamic_sections): Properly warn
- relocation in readonly section in a shared object.
- * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Likewise.
-
-2011-05-31 Nick Clifton <[email protected]>
-
- * archive.c (adjust_relative_path): Fix comment to prevent it
- corrupting the auto-generated bfd.h.
-
-2011-05-31 Paul Brook <[email protected]>
-
- * elf32-arm.c (elf32_arm_final_link_relocate): Only do bl conversion
- for known functions.
- (elf32_arm_swap_symbol_in): Only set ST_BRANCH_TO_ARM for function
- symbols.
-
-2011-05-31 Paul Brook <[email protected]>
-
- * elf32-arm.c (arm_stub_is_thumb): Add
- arm_stub_long_branch_v4t_thumb_tls_pic.
- (elf32_arm_final_link_relocate): TLS stubs are always ARM.
- Handle Thumb stubs.
-
-2011-05-27 Nick Clifton <[email protected]>
-
- PR binutils/12710
- * archive.c (_bfd_get_elt_at_filepos): Set correct error value if
- unable to read a file pointed to by an entry in a thin archive.
- (adjust_relative_path): Use lrealpath to canonicalize paths.
- Handle the case where the reference path is above the current
- path in the directory tree.
-
-2011-05-26 H.J. Lu <[email protected]>
-
- PR ld/12809
- * elf64-x86-64.c (elf_x86_64_relocate_section): Handle
- R_X86_64_TPOFF64 in executable.
-
-2011-05-26 Alan Modra <[email protected]>
-
- * elf-bfd.h (SYMBOL_REFERENCES_LOCAL): Remove most of comment.
- * elflink.c (_bfd_elf_symbol_refs_local_p): Expand
- local_protected comment.
-
-2011-05-25 Tristan Gingold <[email protected]>
-
- * configure.in (bfd_elf32_ia64_big_vec, bfd_elf32_ia64_hpux_big_vec)
- (bfd_elf64_ia64_big_vec, bfd_elf64_ia64_hpux_big_vec)
- (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_vms_vec): Add elfxx-ia64.lo
- * Makefile.am (BFD64_BACKENDS): Add elfxx-ia64.lo
- (BFD64_BACKENDS_CFILES): Add elfxx-ia64.c
- (elf32-ia64.c): Created from elfnn-ia64.c
- (elf64-ia64.c): Likewise.
- * elfxx-ia64.h: New file.
- * elfxx-ia64.c: Split with elfnn-ia64.c. Keep only the following
- functions.Includes elfxx-ia64.h.
- (elfNN_ia64_reloc): Renames to ia64_elf_reloc. Adjust error message.
- (IA64_HOWTO): Adjust.
- (lookup_howto): Renames to ia64_elf_lookup_howto. Make it public.
- (elfNN_ia64_reloc_type_lookup): Renames to
- ia64_elf_reloc_type_lookup. Make it public. Adjust calls.
- (elfNN_ia64_reloc_name_lookup): Renames to
- ia64_elf_reloc_name_lookup. Make it public.
- (elfNN_ia64_relax_br): Renames to ia64_elf_relax_br. Make it public.
- (elfNN_ia64_relax_brl): Renames to ia64_elf_relax_brl. Make it
- public.
- (elfNN_ia64_relax_ldxmov): Renames to ia64_elf_relax_ldxmov.
- Move it and make it public. Move prototype to elfxx-ia64.h
- (elfNN_ia64_install_value): Renames to ia64_elf_install_value.
- Move prototype to elfxx-ia64.h
- * elfnn-ia64.c: New file, split from elfxx-ia64.c.
- (elfNN_ia64_info_to_howto): Adjust calls.
- (elfNN_ia64_relax_section): Adjust calls.
- (count_dyn_reloc): Fix typo.
- (elfNN_ia64_relocate_section): Adjust calls.
- (elfNN_ia64_finish_dynamic_symbol): Likewise.
- (bfd_elfNN_bfd_reloc_type_lookup)
- (bfd_elfNN_bfd_reloc_name_lookup): Adjust macros.
- * configure: Regenerate.
- * Makefile.in: Regenerate.
-
-2011-05-23 DJ Delorie <[email protected]>
-
- * elf32-rx.c (rx_elf_object_p): When reading an RX object in, undo
- the vma/lma swapping done in elf32_rx_modify_program_headers.
-
-2011-05-23 Nick Clifton <[email protected]>
-
- * elf-m10300.c (mn10300_elf_mkobject): New function.
- (bfd_elf32_mkobject): Define.
-
-2011-05-23 Alan Modra <[email protected]>
-
- * elf-bfd.h: Comment typo fix.
- * elf32-ppc.c (struct ppc_elf_dyn_relocs): Delete. Replace with
- struct elf_dyn_relocs throughout.
- * elf64-ppc.c (struct ppc_dyn_relocs): Likewise.
-
-2011-05-23 Alan Modra <[email protected]>
-
- * elf32-frv.c: Use info->callbacks->einfo throughout file in linker
- functions rather than warning callback or _bfd_error_handler.
- * elf32-ppc.c: Likewise.
- * elf64-ppc.c: Likewise.
- * elf32-ppc.c (ppc_elf_tls_optimize): Use %H in __tls_get_addr lost
- arg error.
- * elf64-ppc.c (ppc64_elf_tls_optimize): Likewise.
-
-2011-05-23 Alan Modra <[email protected]>
-
- PR 12763
- * elf.c (assign_file_positions_for_load_sections): Set sh_offset for
- .tbss, and page align same for all SHT_NOBITS sections.
-
-2011-05-21 Alan Modra <[email protected]>
-
- PR 12763
- * elf.c (_bfd_elf_make_section_from_shdr): Set up TLS section LMAs
- from PT_TLS header.
- (_bfd_elf_map_sections_to_segments): Don't create a final PT_LOAD
- segment if just for .tbss.
- (assign_file_positions_for_load_sections): Don't report "can't
- allocate in segment" errors for .tbss.
- (assign_file_positions_for_non_load_sections): Don't set p_filesz
- from SHT_NOBITS section filepos.
-
-2011-05-20 Bernd Schmidt <[email protected]>
-
- * elf32-tic6x.c (elf32_tic6x_howto_table): Add entries for
- R_C6000_PCR_H16 and R_C6000_PCR_L16.
- (elf32_tic6x_relocate_section): Handle them.
-
-2011-05-18 Nick Clifton <[email protected]>
-
- PR ld/12761
- * elflink.c (elf_link_add_object_symbols): Process .gnu.warning
- sections when building shared libraries.
-
-2011-05-18 Rafał Krypa <[email protected]>
-
- PR ld/12778
- * elf32-arm.c (elf32_arm_gc_sweep_hook): Use the computed dynamic
- reloc pointer.
-
-2011-05-18 Tristan Gingold <[email protected]>
-
- * xcofflink.c (xcoff_link_add_symbols): Handle C_DWARF symbols.
- (xcoff_sweep): Always keep dwarf sections.
- (xcoff_link_input_bfd): Handle dwarf symbols and sections.
-
-2011-05-18 Tristan Gingold <[email protected]>
-
- * libxcoff.h (struct xcoff_dwsect_name): New type.
- (XCOFF_DWSECT_NBR_NAMES): New macro.
- (xcoff_dwsect_names): Declare.
- * coffcode.h (sec_to_styp_flags): Handle xcoff dwarf sections.
- (styp_to_sec_flags): Ditto.
- (coff_new_section_hook): Ditto.
- (coff_slurp_symbol_table): Handle C_DWARF and C_INFO.
- * coff-rs6000.c (xcoff_dwsect_name): New variable.
-
-2011-05-17 Tomohiro Kashiwada <[email protected]>
-
- PR ld/12759
- * elf32-rx.c (ignore_lma): New variable.
- (bfd_elf32_rx_set_target_flags): Add ignore_lma parameter.
- (rx_modify_program_headers): Only copy the LMA into the VMA if
- ignore_lma is true.
-
-2011-05-17 Alan Modra <[email protected]>
-
- PR ld/12760
- * coff-aux.c (coff_m68k_aux_link_add_one_symbol): Adjust "notice" call.
- * elflink.c (elf_link_add_object_symbols): Likewise.
- * linker.c (_bfd_generic_link_add_one_symbol): Likewise.
-
-2011-05-16 Alan Modra <[email protected]>
-
- * linker.c (_bfd_generic_link_add_one_symbol): Don't init u.undef.weak.
-
-2011-05-15 Richard Sandiford <[email protected]>
-
- * elfxx-mips.c (_bfd_mips_elf_check_relocs): Record both local and
- global GOT entries for GOT_PAGE relocations against global symbols.
-
-2011-05-13 Bernd Schmidt <[email protected]>
-
- * config.bfd (tic6x-*-elf, tic6x-*-uclinux): New.
- (tic6x-*-*): Replaced by these.
- * elf32-tic6x.c (elf32_tic6x_set_osabi): New static function.
- (elf32_tic6x_check_relocs): Create dynamic sections if -shared.
- (elf_backend_relocs_compatible, elf_backend_post_process_headers):
- Define.
- (elf32_bed, TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, TARGET_BIG_SYM,
- TARGET_BIG_NAME, ELF_OSABI): Redefine twice, and include
- "elf32-target.h" two more times.
- * configure.in: Handle bfd_elf32_tic6x_linux_be_vec,
- bfd_elf32_tic6x_linux_le_vec, bfd_elf32_tic6x_elf_be_vec and
- bfd_elf32_tic6x_elf_le_vec.
- * configure: Regenerate.
-
-2011-05-13 Jan Beulich <[email protected]>
-
- * config.bfd: Add targets x86_64-*-pe and x86_64-*-pep.
-
-2011-05-12 Jan Kratochvil <[email protected]>
-
- * config.in: Regenerated.
- * configure: Regenerated.
- * configure.in: New tests for HAVE_PRPSINFO_T_PR_PID,
- HAVE_PRPSINFO32_T_PR_PID, HAVE_PSINFO_T_PR_PID and
- HAVE_PSINFO32_T_PR_PID.
- * elf.c (elfcore_grok_psinfo): Protect reading psinfo.pr_pid by
- HAVE_PRPSINFO_T_PR_PID, HAVE_PRPSINFO32_T_PR_PID, HAVE_PSINFO_T_PR_PID
- and HAVE_PSINFO32_T_PR_PID.
- * hosts/x86-64linux.h (HAVE_PRPSINFO32_T_PR_PID): New redefinition.
-
-2011-05-10 Jan Kratochvil <[email protected]>
-
- * elf.c (elfcore_grok_psinfo): Initialize CORE_PID for both native and
- 32bit psinfo.
- * elf32-ppc.c (ppc_elf_grok_psinfo): Initialize core_pid.
- * elf64-ppc.c (ppc64_elf_grok_psinfo): Likewise.
-
-2011-05-09 Paul Brook <[email protected]>
-
- * bfd-in.h (elf32_tic6x_fix_exidx_coverage): Add prototype.
- * bfd-in2.h: Regenerate.
- * elf32-tic6x.c: Include limits.h.
- (tic6x_unwind_edit_type, tic6x_unwind_table_edit,
- _tic6x_elf_section_data): New.
- (elf32_tic6x_section_data): Define.
- (elf32_tic6x_new_section_hook): Allocate target specific data.
- (elf32_tic6x_add_unwind_table_edit): New function.
- (get_tic6x_elf_section_data, elf32_tic6x_adjust_exidx_size,
- elf32_tic6x_insert_cantunwind_after, elf32_tic6x_add_low31,
- elf32_tic6x_copy_exidx_entry): New functions.
- (elf_backend_write_section): Define.
-
-2011-05-09 Paul Brook <[email protected]>
-
- * elf32-tic6x.c (is_tic6x_elf_unwind_section_name,
- elf32_tic6x_fake_sections): New functions.
- (elf_backend_fake_sections): Define.
-
-2011-05-09 Paul Brook <[email protected]>
-
- * elf32-tic6x.c (elf32_tic6x_gc_mark_extra_sections): New function.
- (elf_backend_gc_mark_extra_sections): Define.
-
-2011-05-07 Dave Korn <[email protected]>
-
- PR ld/12365
- * cofflink.c (bfd_coff_link_input_bfd): Check for and warn about
- references to symbols defined in discarded sections.
-
-2011-05-07 Dave Korn <[email protected]>
-
- PR ld/12365
- * coffgen.c (coff_write_symbol): Assume input section is its own
- output section if output_section member not set.
- (coff_write_alien_symbol): Likewise.
-
-2011-05-07 H.J. Lu <[email protected]>
-
- PR ld/12730
- * elf.c (_bfd_elf_section_offset): Check SEC_ELF_REVERSE_COPY.
-
- * elflink.c (elf_link_input_bfd): Reverse copy .ctors/.dtors
- sections if needed.
-
- * section.c (SEC_ELF_REVERSE_COPY): New.
- * bfd-in2.h: Regenerated.
-
-2011-05-07 Anders Kaseorg <[email protected]>
-
- PR 12739
- * libbfd.c (bfd_get_8, bfd_get_signed_8): Use const cast.
- * bfd-in2.h: Regenerate.
-
-2011-05-06 Tristan Gingold <[email protected]>
-
- * vms-alpha.c (evax_section_flags): Remove SEC_IN_MEMORY.
- (_bfd_vms_slurp_egsd): Rename old_flags to vms_flags. Handle
- any code section. Add comments.
- (alpha_vms_object_p): Use void * instead of PTR.
- (alpha_vms_create_eisd_for_section): Fix test for setting DZRO.
- (build_module_list): Guard against no DST section. Add comments.
- (alpha_vms_link_output_symbol): Discard undefined symbols.
- (alpha_vms_get_section_contents): Simply memcpy if the section was
- already loaded. Fix typo.
- (vms_new_section_hook): Use void * instead of PTR.
- (vms_alpha_vec): Ditto.
-
-2011-05-06 Richard Sandiford <[email protected]>
-
- * elf32-arm.c (cortex_a8_erratum_scan): If the stub is a Thumb
- branch to a PLT entry, redirect it to the PLT's Thumb entry point.
-
-2011-05-05 Bernd Schmidt <[email protected]>
-
- * elf32-tic6x.c (elf32_tic6x_final_link): New function.
- (elf32_tic6x_merge_attributes): Do not warn for PID or PIC
- mismatch. Choose the lower of the two values.
- (bfd_elf32_bfd_final_link): New macro.
-
-2011-04-28 Tristan Gingold <[email protected]>
-
- * coff-rs6000.c (_bfd_xcoff_swap_aux_in): Adjust for x_file.
- (bfd_xcoff_swap_aux_out): Ditto.
- * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Ditto.
- (bfd_xcoff64_swap_aux_out): Ditto.
-
-2011-05-04 Alan Modra <[email protected]>
-
- PR ld/12727
- * elf64-ppc.c (ppc_build_one_stub <ppc_sub_plt_call>): Clear
- was_undefined on dot-symbols.
-
-2011-05-03 Paul Brook <[email protected]>
-
-
- * elf32-tic6x.c (elf32_tic6x_howto_table,
- elf32_tic6x_howto_table_rel, (elf32_tic6x_gc_sweep_hook,
- elf32_tic6x_relocate_section, elf32_tic6x_check_relocs):
- Add R_C6000_EHTYPE.
-
-2011-05-01 Alan Modra <[email protected]>
-
- PR ld/12718
- * elf32-i386.c (elf_i386_check_relocs): Ensure dynobj set before
- creating ifunc sections.
- * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
-
-2011-04-30 H.J. Lu <[email protected]>
-
- * elf64-x86-64.c (elf_x86_64_merge_symbol): Correct parameter
- names.
-
-2011-04-28 Tom Tromey <[email protected]>
-
- * bfdio.c (memory_bstat): Pass correct size to memset.
-
-2011-04-28 Mike Frysinger <[email protected]>
-
- * dwarf2.c (dwarf_debug_sections): Mark const.
- * elf.c (special_sections): Likewise.
- * libbfd-in.h (dwarf_debug_sections): Likewise.
- * libbfd.h: Regenerate.
-
-2011-04-26 Kai Tietz <[email protected]>
-
- * coffcode.h (sec_to_styp_flags): Allow linkonce for
- debugging sections.
-
-2011-04-26 Tristan Gingold <[email protected]>
-
- * coff64-rs6000.c: Convert to ISO-C. Remove PARAMS and PTR macros.
-
-2011-04-24 Alan Modra <[email protected]>
-
- PR ld/12365
- PR ld/12696
- * coff-aux.c (coff_m68k_aux_link_add_one_symbol): Update "notice" call.
- * linker.c (_bfd_link_hash_newfunc): Clear bitfields.
- (_bfd_generic_link_add_one_symbol): Update "notice" call.
- * elflink.c (_bfd_elf_merge_symbol): Don't skip weak redefs when
- it is a redef of an IR symbol in a real BFD.
-
-2011-04-22 H.J. Lu <[email protected]>
-
- * elf32-i386.c (elf_i386_readonly_dynrelocs): Warn relocation
- in readonly section in a shared object.
- (elf_i386_size_dynamic_sections): Likewise.
- * elf64-x86-64.c (elf_x86_64_readonly_dynrelocs): Likewise.
- (elf_x86_64_size_dynamic_sections): Likewise.
-
-2011-04-21 H.J. Lu <[email protected]>
-
- PR ld/12694
- * elf32-i386.c (elf_i386_readonly_dynrelocs): Skip local IFUNC
- symbols.
- * elf64-x86-64.c (elf_x86_64_readonly_dynrelocs): Likewise.
-
-2011-04-21 H.J. Lu <[email protected]>
-
- * elf32-i386.c (elf_i386_finish_dynamic_symbol): Return false
- on dynamic symbol error.
- * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
-
-2011-04-20 Tristan Gingold <[email protected]>
-
- * config.bfd (alpha*-*-*vms*, ia64*-*-*vms*): Define targ_selvecs.
-
-2011-04-20 Alan Modra <[email protected]>
-
- * hash.c (bfd_default_hash_table_size): Make it an unsigned long.
- (bfd_hash_table_init_n): Overflow checking.
- (bfd_hash_set_default_size): Return current size. Take unsigned long
- arg. Add 65537 to hash_size primes.
- * bfd-in.h (bfd_hash_set_default_size): Update prototype.
- * bfd-in2.h: Regenerate.
-
-2011-04-20 Jan Kratochvil <[email protected]>
-
- * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Fix +1 overrun of
- memmove elements.
-
-2011-04-20 Alan Modra <[email protected]>
-
- * libbfd.c (bfd_log2): Do return rounded up value.
- * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Replace bfd_log2
- call with expanded old round down version of the function.
-
- * archive.c (_bfd_get_elt_at_filepos): Don't release n_nfd.
- * elflink.c (elf_link_add_object_symbols): Delete redundant code.
-
-2011-04-20 Alan Modra <[email protected]>
-
- PR ld/12365
- * elfcode.h (elf_slurp_symbol_table): Put common plugin IR symbols
- in their own common section.
- * elflink.c (elf_link_add_object_symbols): Likewise.
- * linker.c (generic_link_check_archive_element): Don't lose flags
- if common section is pre-existing.
- (_bfd_generic_link_add_one_symbol): Likewise.
-
-2011-04-20 Alan Modra <[email protected]>
-
- PR ld/12365
- * elflink.c (_bfd_elf_merge_symbol): Update multiple_common calls.
- * linker.c (_bfd_generic_link_add_one_symbol): Likewise. Call
- multiple_definition regardless of allow_multiple_definition.
- * simple.c (simple_dummy_multiple_definition): Update.
- * xcofflink.c (xcoff_link_add_symbols): Update multiple_definition
+ 2013-10-30 Alan Modra <[email protected]>
+ Ulrich Weigand <[email protected]>
+ * elf64-ppc.c (struct ppc_stub_hash_entry): Add "other".
+ (stub_hash_newfunc): Init new ppc_stub_hash_entry field, and one
+ we forgot, "plt_ent".
+ (ppc64_elf_add_symbol_hook): Check ELFv1 objects don't have
+ st_other bits only valid in ELFv2.
+ (ppc64_elf_merge_symbol_attribute): New function.
+ (ppc_type_of_stub): Add local_off param to test branch range.
+ (ppc_build_one_stub): Adjust destinations for ELFv2 locals.
+ (ppc_size_one_stub, toc_adjusting_stub_needed): Similarly.
+ (ppc64_elf_size_stubs): Pass local_off to ppc_type_of_stub.
+ Set "other" field.
+ (ppc64_elf_relocate_section): Adjust destination for ELFv2 local
calls.
-2011-04-18 Tristan Gingold <[email protected]>
+ 2013-10-30 Alan Modra <[email protected]>
+ * elf64-ppc.c (abiversion, set_abiversion): New functions.
+ (ppc64_elf_get_synthetic_symtab): Handle ELFv2 objects without .opd.
+ (struct ppc_link_hash_table): Add opd_abi.
+ (ppc64_elf_check_relocs): Check no .opd with ELFv2.
+ (ppc64_elf_merge_private_bfd_data): New function.
+ (ppc64_elf_print_private_bfd_data): New function.
+ (ppc64_elf_tls_setup): Set htab->opd_abi.
+ (ppc64_elf_size_dynamic_sections): Don't emit OPD related dynamic
+ tags for ELFv2.
+ (ppc_build_one_stub): Use R_PPC64_IRELATIVE for ELFv2 ifunc.
+ (ppc64_elf_finish_dynamic_symbol): Likewise
- * coff-rs6000.c: Convert to ISO-C. Remove PARAMS macro.
+ 2013-10-30 Alan Modra <[email protected]>
+ * elf64-ppc.c (build_plt_stub): Switch stubs to use r11 as base
+ reg and r12 as destination.
+ (ppc_build_one_stub): Likewise.
+ (ppc64_elf_build_stubs): Likewise for glink.
-2011-04-18 Alan Modra <[email protected]>
-
- PR ld/12365
- PR ld/12672
- * bfd.c (BFD_PLUGIN): Define.
- (BFD_FLAGS_SAVED, BFD_FLAGS_FOR_BFD_USE_MASK): Add BFD_PLUGIN.
- * bfd-in2.h: Regenerate.
- * elflink.c (elf_link_output_extsym): Strip undefined plugin syms.
- * opncls.c (bfd_make_readable): Don't lose original bfd flags.
-
-2011-04-17 Jan Kratochvil <[email protected]>
-
- * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Do not check for
- SEC_LOAD.
-
-2011-04-15 Sergio Durigan Junior <[email protected]>
-
- * elf-bfd.h (struct sdt_note): New struct.
- (struct elf_obj_tdata) <sdt_note_head>: New field.
- * elf.c (elfobj_grok_stapsdt_note_1): New function.
- (elfobj_grok_stapsdt_note): Likewise.
- (elf_parse_notes): Added code to treat SystemTap note
- sections.
-
-2011-04-12 Richard Henderson <[email protected]>
-
- * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Do not
- exclude empty .got sections.
-
-2011-04-11 H.J. Lu <[email protected]>
-
- * elf32-i386.c (elf_i386_reloc_type_lookup): Fix the out of bound
- array access for BFD_RELOC_386_IRELATIVE.
-
-2011-04-11 Bernd Schmidt <[email protected]>
-
- * elf32-tic6x.c (elf32_tic6x_check_relocs): Initialize pc_count field.
-
-2011-04-11 Mark Wielaard <[email protected]>
-
- PR 10549
- * elf-bfd.h (has_ifunc_symbols): Renamed to has_gnu_symbols.
- (has_gnu_symbols): Renamed from has_ifunc_symbols.
- * elf.c (_bfd_elf_set_osabi): Use new has_gnu_symbols name.
- * elf32-arm.c (elf32_arm_add_symbol_hook): Set has_gnu_symbols
- also if STB_GNU_UNIQUE symbol binding was seen.
- * elf32-i386.c (elf_i386_add_symbol_hook): Likewise.
- * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
- * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
- * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
- * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
- * elf64-x86-64.c (elf_x86_64_add_symbol_hook): Likewise.
-
-2011-04-11 Alan Modra <[email protected]>
-
- * bfd-in.h (bfd_get_section_limit): Don't use rawsize with output
- sections.
- * libbfd.c (_bfd_generic_get_section_contents): Likewise.
- (_bfd_generic_get_section_contents_in_window): Likewise.
- * section.c (bfd_get_section_contents): Likewise.
- * compress.c (bfd_get_full_section_contents): Likewise.
- * elf32-rx.c (rx_final_link): Ignore rawsize.
- * elf32-microblaze.c (microblaze_elf_relocate_section): Use correct
- bfd with bfd_get_section_limit.
- * elfxx-ia64.c (elfNN_ia64_choose_gp): Add "final" parameter. Use
- os->size during final link. Update callers.
- * bfd-in2.h: Regenerate.
-
-2011-04-10 Richard Sandiford <[email protected]>
-
- PR ld/12637
- * elfxx-mips.c (mips_elf_merge_got_with): Use arg->global_count
- as the number of global entries when merging with the primary GOT.
-
-2011-04-09 H.J. Lu <[email protected]>
-
- * elf32-i386.c: Update copyright year.
- * elf64-x86-64.c: Likewise.
-
-2011-04-09 Kai Tietz <[email protected]>
-
- * peXXigen.c (_bfd_XXi_final_link_postscripte): Sort pdata in temporary
- buffer and use rawsize for sorting.
- * coffcode.h (coff_compute_section_file_positions): Set rawsize
- before doing alignment.
-
-2011-04-09 H.J. Lu <[email protected]>
-
- * elf32-i386.c (elf_i386_relocate_section): Return relocation
- error on unsupported relocation.
- * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
-
-2011-04-09 H.J. Lu <[email protected]>
-
- PR binutils/12657
- * hosts/x86-64linux.h (elf_prstatus32): Replace __pid_t with
- pid_t.
-
-2011-04-08 H.J. Lu <[email protected]>
-
- PR ld/12654
- * elf32-i386.c (elf_i386_relocate_section): Check !executable
- instead of shared for R_386_TLS_LDO_32.
-
-2011-04-08 Tristan Gingold <[email protected]>
-
- * Makefile.am (SOURCE_HFILES): Remove xcoff-target.h
- * coff-pmac: Remove
- * xcoff-target.h: Remove
- * Makefile.in: Regenerate.
-
-2011-04-07 Cary Coutant <[email protected]>
-
- * dwarf2.c (scan_unit_for_symbols): Check for DW_AT_specification.
-
-2011-04-07 Paul Brook <[email protected]>
-
- * elf32-tic6x.c (elf32_tic6x_howto_table): R_C6000_PREL31 is
- pc-relative.
- (elf32_tic6x_howto_table_rel): Ditto.
- (elf32_tic6x_relocate_section): Implement R_C6000_PREL31.
- (elf32_tic6x_check_relocs): Ditto.
-
-2011-04-06 Joseph Myers <[email protected]>
-
- * config.bfd (thumb-*-oabi): Don't handle in list of obsolete
- targets.
- (strongarm*, thumb*, xscale*): Remove architectures.
- (strongarm-*-kaos*, thumb-*-coff, thumb-*-elf, thumb-epoc-pe*,
- thumb-*-pe*, strongarm-*-elf, strongarm-*-coff, xscale-*-elf,
- xscale-*-coff): Remove targets.
-
-2011-04-01 Tristan Gingold <[email protected]>
-
- * elfxx-ia64.c: include bfd_stdint.h
-
-2011-03-31 Jan Kratochvil <[email protected]>
-
- * elf32-tic6x.c (elf32_tic6x_relocate_section): Remove unused variable
- dynobj and its initialization.
-
-2011-03-31 Tristan Gingold <[email protected]>
-
- * makefile.vms (DEFS): Add HAVE_bfd_elf64_ia64_vms_vec.
- * configure.com: Set BFD_HOST_64BIT_LONG_LONG and
- BFD_HOST_LONG_LONG to 1.
-
-2011-03-31 Tristan Gingold <[email protected]>
-
- * vms-alpha.c (vms_get_remaining_object_record): Fix dec-c warning.
- (_bfd_vms_write_etir): Ditto.
- (_bfd_vms_slurp_etir): Avoid to use intptr_t
- * configure.com: Generate bfd_stdint.h
-
-2011-03-31 Bernd Schmidt <[email protected]>
-
- * elf32-tic6x.h (struct elf32_tic6x_params): New.
- (elf32_tic6x_setup): Declare.
- * elf32-tic6x.c: Include <limits.h>.
- (ELF_DYNAMIC_LINKER, DEFAULT_STACK_SIZE, PLT_ENTRY_SIZE): Define.
- (struct elf32_tic6x_link_hash_table, struct elf32_link_hash_entry):
- New structures.
- (elf32_tic6x_link_hash_table, is_tic6x_elf): New macros.
- (tic6x_elf_scom_section, tic6x_elf_scom_symbol,
- tic6x_elf_scom_symbol_ptr): New static variables.
- (elf32_tic6x_howto_table, elf32_tic6x_howto_table_rel,
- elf32_tic6x_reloc_map): Add R_C6000_JUMP_SLOT, R_C6000_EHTYPE,
- R_C6000_PCR_H16 and R_C6000_PCR_L16.
- (elf32_tic6x_link_hash_newfunc, elf32_tic6x_link_hash_table_create,
- elf32_tic6x_link_hash_table_free, elf32_tic6x_setup,
- elf32_tic6x_using_dsbt, elf32_tic6x_install_rela,
- elf32_tic6x_create_dynamic_sections, elf32_tic6x_make_got_dynreloc,
- elf32_tic6x_finish_dynamic_symbol, elf32_tic6x_gc_sweep_hook,
- elf32_tic6x_adjust_dynamic_symbol): New static functions.
- (elf32_tic6x_relocate_section): For R_C6000_PCR_S21, convert branches
- to weak symbols as required by the ABI.
- Handle GOT and DSBT_INDEX relocs, and copy relocs to the output file
- as needed when generating DSBT output.
- (elf32_tic6x_check_relocs, elf32_tic6x_add_symbol_hook,
- elf32_tic6x_symbol_processing, elf32_tic6x_section_from_bfd_section,
- elf32_tic6x_allocate_dynrelocs, elf32_tic6x_size_dynamic_sections,
- elf32_tic6x_always_size_sections, elf32_tic6x_modify_program_headers,
- elf32_tic6x_finish_dynamic_sections, elf32_tic6x_plt_sym_val,
- elf32_tic6x_copy_private_data, elf32_tic6x_link_omit_section_dynsym):
- New static functions.
- (ELF_MAXPAGESIZE): Define to 0x1000.
- (bfd_elf32_bfd_copy_private_bfd_data,
- bfd_elf32_bfd_link_hash_table_create,
- bfd_elf32_bfd_link_hash_table_free, elf_backend_can_refcount,
- elf_backend_want_got_plt, elf_backend_want_dynbss,
- elf_backend_plt_readonly, elf_backend_got_header_size,
- elf_backend_gc_sweep_hook, elf_backend_modify_program_headers,
- elf_backend_create_dynamic_sections, elf_backend_adjust_dynamic_symbol,
- elf_backend_check_relocs, elf_backend_add_symbol_hook,
- elf_backend_symbol_processing, elf_backend_link_output_symbol_hook,
- elf_backend_section_from_bfd_section,
- elf_backend_finish_dynamic_symbol, elf_backend_always_size_sections,
- elf32_tic6x_size_dynamic_sections, elf_backend_finish_dynamic_sections,
- elf_backend_omit_section_dynsym, elf_backend_plt_sym_val): Define.
-
- * bfd/reloc.c (BFD_RELOC_C6000_JUMP_SLOT, BFD_RELOC_C6000_EHTYPE,
- BFD_RELOC_C6000_PCR_H16, BFD_RELOC_C6000_PCR_S16): Add.
- * bfd/bfd-in2.h: Regenerate.
- * bfd/libbfd.h: Regenerate.
- * config.bfd: Accept tic6x-*-* instead of tic6x-*-elf.
-
-2011-03-31 Tristan Gingold <[email protected]>
-
- * coffcode.h (coff_slurp_symbol_table): Silently discard C_NULL
- entry on xcoff when value is C_NULL_VALUE.
-
-2011-03-31 Tristan Gingold <[email protected]>
-
- * libcoff-in.h (exec_hdr): Remove.
- * libcoff.h: Regenerate.
-
-2011-03-30 Nick Clifton <[email protected]>
-
- * po/da.po: Updated Danish translation.
-
-2011-03-29 Richard Henderson <[email protected]>
-
- * elf64-alpha.c (elf64_alpha_gc_mark_hook): New.
- (elf64_alpha_gc_sweep_hook): New.
- (elf_backend_gc_mark_hook, elf_backend_gc_sweep_hook): New.
- (elf_backend_can_gc_sections): New.
-
-2011-03-26 John Marino <[email protected]>
-
- * config.bfd: Add x86_64-*-dragonfly*, fix i386-*-dragonfly*.
- * configure.in: Delete unused bfd_elf32_i386_dragonfly_vec.
- * configure: Regenerate.
-
-2011-03-25 Michael Snyder <[email protected]>
-
- * coffcode.h (coff_set_alignment_hook): Check return of bfd_seek.
-
-2011-03-25 Tristan Gingold <[email protected]>
-
- * vms-alpha.c (_bfd_vms_find_nearest_dst_line): Allow the use
- of find_nearest_line on object files.
-
-2011-03-25 Tristan Gingold <[email protected]>
-
- * vms-alpha.c (evax_section_flags): Make $CODE$ section read-only.
- Minor reordering.
- (alpha_vms_create_eisd_for_section): Make code sections read-only.
-
-2011-03-24 Alan Modra <[email protected]>
-
- * elf32-ppc.c (ppc_elf_tls_optimize): Catch more cases where
- old-style __tls_get_addr calls without marker relocs don't match
- their arg setup insn one for one. If such mismatches are found
- report the reloc and don't do any tls optimization.
- * elf64-ppc.c (ppc64_elf_tls_optimize): Likewise.
-
-2011-03-22 Eric B. Weddington <[email protected]>
-
- * bfd-in2.h: Regenerate.
-
-2011-03-22 Eric B. Weddington <[email protected]>
-
- * archures.c: Add AVR XMEGA architecture information.
- * cpu-avr.c (arch_info_struct): Likewise.
- * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
- (elf32_avr_object_p): Likewise.
-
-2011-03-14 Richard Sandiford <[email protected]>
-
- * reloc.c (BFD_RELOC_ARM_IRELATIVE): New relocation.
- * bfd-in2.h: Regenerate.
- * elf32-arm.c (elf32_arm_howto_table_2): Rename existing definition
- to elf32_arm_howto_table_3 and replace with a single R_ARM_IRELATIVE
- entry.
- (elf32_arm_howto_from_type): Update accordingly.
- (elf32_arm_reloc_map): Map BFD_RELOC_ARM_IRELATIVE to R_ARM_IRELATIVE.
- (elf32_arm_reloc_name_lookup): Handle elf32_arm_howto_table_3.
- (arm_plt_info): New structure, split out from elf32_arm_link_hash_entry
- with an extra noncall_refcount field.
- (arm_local_iplt_info): New structure.
- (elf_arm_obj_tdata): Add local_iplt.
- (elf32_arm_local_iplt): New accessor macro.
- (elf32_arm_link_hash_entry): Replace plt_thumb_refcount,
- plt_maybe_thumb_refcount and plt_got_offset with an arm_plt_info.
- Change tls_type to a bitfield and add is_iplt.
- (elf32_arm_link_hash_newfunc): Update accordingly.
- (elf32_arm_allocate_local_sym_info): New function.
- (elf32_arm_create_local_iplt): Likewise.
- (elf32_arm_get_plt_info): Likewise.
- (elf32_arm_plt_needs_thumb_stub_p): Likewise.
- (elf32_arm_get_local_dynreloc_list): Likewise.
- (create_ifunc_sections): Likewise.
- (elf32_arm_copy_indirect_symbol): Update after the changes to
- elf32_arm_link_hash_entry. Assert the is_iplt has not yet been set.
- (arm_type_of_stub): Add an st_type argument. Use elf32_arm_get_plt_info
- to get PLT information. Assert that all STT_GNU_IFUNC references
- are turned into PLT references.
- (arm_build_one_stub): Pass the symbol type to
- elf32_arm_final_link_relocate.
- (elf32_arm_size_stubs): Pass the symbol type to arm_type_of_stub.
- (elf32_arm_allocate_irelocs): New function.
- (elf32_arm_add_dynreloc): In static objects, use .rel.iplt for
- all R_ARM_IRELATIVE.
- (elf32_arm_allocate_plt_entry): New function.
- (elf32_arm_populate_plt_entry): Likewise.
- (elf32_arm_final_link_relocate): Add an st_type parameter.
- Set srelgot to null for static objects. Use separate variables
- to record which st_value and st_type should be used when generating
- a dynamic relocation. Use elf32_arm_get_plt_info to find the
- symbol's PLT information, setting has_iplt_entry, splt,
- plt_offset and gotplt_offset accordingly. Check whether
- STT_GNU_IFUNC symbols should resolve to an .iplt entry, and change
- the relocation target accordingly. Broaden assert to include
- .iplts. Don't set sreloc for static relocations. Assert that
- we only generate dynamic R_ARM_RELATIVE relocations for R_ARM_ABS32
- and R_ARM_ABS32_NOI. Generate R_ARM_IRELATIVE relocations instead
- of R_ARM_RELATIVE relocations if the target is an STT_GNU_IFUNC
- symbol. Pass the symbol type to arm_type_of_stub. Conditionally
- resolve GOT references to the .igot.plt entry.
- (elf32_arm_relocate_section): Update the call to
- elf32_arm_final_link_relocate.
- (elf32_arm_gc_sweep_hook): Use elf32_arm_get_plt_info to get PLT
- information. Treat R_ARM_REL32 and R_ARM_REL32_NOI as call
- relocations in shared libraries and relocatable executables.
- Count non-call PLT references. Use elf32_arm_get_local_dynreloc_list
- to get the list of dynamic relocations for a local symbol.
- (elf32_arm_check_relocs): Always create ifunc sections. Set isym
- at the same time as setting h. Use elf32_arm_allocate_local_sym_info
- to allocate local symbol information. Treat R_ARM_REL32 and
- R_ARM_REL32_NOI as call relocations in shared libraries and
- relocatable executables. Record PLT information for local
- STT_GNU_IFUNC functions as well as global functions. Count
- non-call PLT references. Use elf32_arm_get_local_dynreloc_list
- to get the list of dynamic relocations for a local symbol.
- (elf32_arm_adjust_dynamic_symbol): Handle STT_GNU_IFUNC symbols.
- Don't remove STT_GNU_IFUNC PLTs unless all references have been
- removed. Update after the changes to elf32_arm_link_hash_entry.
- (allocate_dynrelocs_for_symbol): Decide whether STT_GNU_IFUNC PLT
- entries should live in .plt or .iplt. Check whether the .igot.plt
- and .got entries can be combined. Use elf32_arm_allocate_plt_entry
- to allocate .plt and .(i)got.plt entries. Detect which .got
- entries will need R_ARM_IRELATIVE relocations and use
- elf32_arm_allocate_irelocs to allocate them. Likewise other
- non-.got dynamic relocations.
- (elf32_arm_size_dynamic_sections): Allocate .iplt, .igot.plt
- and dynamic relocations for local STT_GNU_IFUNC symbols.
- Check whether the .igot.plt and .got entries can be combined.
- Detect which .got entries will need R_ARM_IRELATIVE relocations
- and use elf32_arm_allocate_irelocs to allocate them. Use stashed
- section pointers intead of strcmp checks. Handle iplt and igotplt.
- (elf32_arm_finish_dynamic_symbol): Use elf32_arm_populate_plt_entry
- to fill in .plt, .got.plt and .rel(a).plt entries. Point
- STT_GNU_IFUNC symbols at an .iplt entry if non-call relocations
- resolve to it.
- (elf32_arm_output_plt_map_1): New function, split out from
- elf32_arm_output_plt_map. Handle .iplt entries. Use
- elf32_arm_plt_needs_thumb_stub_p.
- (elf32_arm_output_plt_map): Call it.
- (elf32_arm_output_arch_local_syms): Add mapping symbols for
- local .iplt entries.
- (elf32_arm_swap_symbol_in): Handle Thumb STT_GNU_IFUNC symbols.
- (elf32_arm_swap_symbol_out): Likewise.
- (elf32_arm_add_symbol_hook): New function.
- (elf_backend_add_symbol_hook): Define for all targets.
-
-2011-03-14 Richard Sandiford <[email protected]>
-
- * elf-bfd.h (elf_link_hash_entry): Add target_internal.
- * elf.c (swap_out_syms): Set st_target_internal for each
- Elf_Internal_Sym.
- * elfcode.h (elf_swap_symbol_in): Likewise.
- * elf32-i370.c (i370_elf_finish_dynamic_sections): Likewise.
- * elf32-sh-symbian.c (sh_symbian_relocate_section): Likewise.
- * elf64-sparc.c (elf64_sparc_output_arch_syms): Likewise.
- * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise.
- * elflink.c (elf_link_output_extsym): Likewise.
- (bfd_elf_final_link): Likewise.
- (elf_link_add_object_symbols): Copy st_target_internal
- to the hash table if we see a definition.
- (_bfd_elf_copy_link_hash_symbol_type): Copy target_internal.
- * elf32-arm.c (elf32_arm_stub_hash_entry): Replace st_type with
- a branch_type field.
- (a8_erratum_fix, a8_erratum_reloc): Likewise.
- (arm_type_of_stub): Replace actual_st_type with an
- actual_branch_type parameter.
- (arm_build_one_stub): Use branch types rather than st_types to
- determine the type of branch.
- (cortex_a8_erratum_scan): Likewise.
- (elf32_arm_size_stubs): Likewise.
- (bfd_elf32_arm_process_before_allocation): Likewise.
- (allocate_dynrelocs_for_symbol): Likewise.
- (elf32_arm_finish_dynamic_sections): Likewise.
- (elf32_arm_final_link_relocate): Replace sym_flags parameter with
- a branch_type parameter.
- (elf32_arm_relocate_section): Update call accordingly.
- (elf32_arm_adjust_dynamic_symbol): Don't check STT_ARM_TFUNC.
- (elf32_arm_output_map_sym): Initialize st_target_internal.
- (elf32_arm_output_stub_sym): Likewise.
- (elf32_arm_symbol_processing): Delete.
- (elf32_arm_swap_symbol_in): Convert STT_ARM_TFUNCs into STT_FUNCs.
- Use st_target_internal to record the branch type.
- (elf32_arm_swap_symbol_out): Use st_target_internal to test for
- Thumb functions.
- (elf32_arm_is_function_type): Delete.
- (elf_backend_symbol_processing): Likewise.
- (elf_backend_is_function_type): Likewise.
-
-2011-03-14 Richard Sandiford <[email protected]>
-
- * elf32-arm.c (elf32_arm_check_relocs): Always assign a dynobj.
- (elf32_arm_finish_dynamic_sections): Move sgot != NULL assertion
- into the PLT block.
-
-2011-03-14 Richard Sandiford <[email protected]>
-
- * elf32-arm.c (elf32_arm_check_relocs): Use call_reloc_p,
- may_need_local_target_p and may_become_dynamic_p to classify
- the relocation type. Don't check info->symbolic or h->def_regular
- when deciding whether to record a potential dynamic reloc.
- Don't treat potential dynamic relocs as PLT references.
- (elf32_arm_gc_sweep_hook): Update to match. Assert that we don't
- try to make the PLT reference count go negative.
-
-2011-03-14 Richard Sandiford <[email protected]>
-
- * elf32-arm.c (elf32_arm_final_link_relocate): Always fill in the
- GOT entry here, rather than leaving it to finish_dynamic_symbol.
- Only create a dynamic relocation for local references if
- info->shared.
- (allocate_dynrelocs_for_symbol): Update dynamic relocation
- allocation accordingly.
- (elf32_arm_finish_dynamic_symbol): Don't initialise the GOT entry here.
-
-2011-03-14 Richard Sandiford <[email protected]>
-
- * elf32-arm.c (elf32_arm_allocate_dynrelocs): New function.
- (elf32_arm_add_dynreloc): Likewise.
- (elf32_arm_adjust_dynamic_symbol): Use elf32_arm_allocate_dynrelocs
- to allocate dynamic relocations.
- (elf32_arm_size_dynamic_sections): Likewise.
- (allocate_dynrelocs): Likewise. Rename to
- allocate_dynrelocs_for_symbol.
- (elf32_arm_final_link_relocate): Use elf32_arm_add_dynreloc to
- create dynamic relocations.
- (elf32_arm_finish_dynamic_symbol): Likewise.
-
-2011-03-12 H.J. Lu <[email protected]>
-
- * elf64-x86-64.c (elf_x86_64_check_tls_transition): Supprt TLS
- x32 GD->IE and GD->LE transitions.
- (elf_x86_64_relocate_section): Supprt TLS x32 GD->IE, GD->LE
- and LD->LE transitions.
-
-2011-03-10 Alan Modra <[email protected]>
-
- * elf64-ppc.c (ppc64_elf_relocate_section): Provide section/offset
- for LO_DS error message and correct multiple.
-
-2011-03-10 Alan Modra <[email protected]>
-
- * elf64-ppc.c (bfd_elf64_bfd_link_just_syms): Define.
- (ppc64_elf_link_just_syms): New function.
- (opd_entry_value): Don't assume big-endian host.
- (get_r2off): New function.
- (ppc_build_one_stub, ppc_size_one_stub): Use it here.
-
-2011-03-06 Michael Snyder <[email protected]>
-
- * compress.c (bfd_compress_section_contents): Check for out of mem.
-
- * elf64-x86-64.c (elf_x86_64_relocate_section): Document
- that case statement falls through intentionally.
-
- * elf32-i386.c (elf_i386_relocate_section): Document fall through.
-
-2011-03-04 Alan Modra <[email protected]>
-
- * archive.c (bsd_write_armap): Don't call stat in deterministic
- mode, and don't use st_mtime if stat returns error.
-
-2011-03-03 Michael Snyder <[email protected]>
-
- * elf64-x86-64.c (elf_x86_64_relocate_section): Remove dead code.
-
- * coff-x86_64.c (coff_amd64_rtype_to_howto): Fencepost error.
-
- * aoutx.h (aout_final_link): Use sizeof int not sizeof int*.
- (aout_link_write_other_symbol): Missing break statement.
-
- * dwarf2.c (scan_unit_for_symbols): Stop memory leak.
-
- * archive.c (_bfd_slurp_extended_name_table): Fail if bfd_seek fails.
-
-2011-03-03 H.J. Lu <[email protected]>
-
- * elf64-x86-64.c (elf_x86_64_check_tls_transition): Supprt TLS
- x32 IE->LE transition.
- (elf_x86_64_relocate_section): Likewise.
-
-2011-03-02 Bernd Schmidt <[email protected]>
-
- * elflink.c (is_reloc_section): Remove function.
- (get_dynamic_reloc_section_name): Construct string manually.
-
-2011-02-28 Kai Tietz <[email protected]>
-
- * archive.c (_bfd_find_nested_archive): Use filename_(n)cmp.
- (adjust_relative_path): Likewise.
- (_bfd_construct_extended_name_table): Likewise.
- * corefile.c (generic_core_file_matches_executable_p): Likewise.
- * elf32-bfin.c (bfinfdpic_relocate_section): Likewise.
- * elf32-frv.c (elf32_frv_relocate_section): Likewise.
- * elf32-spu.c (sort_bfds): Likewise.
- (spu_elf_auto_overlay): Likewise.
- * syms.c (_bfd_stab_section_find_nearest_line): Likewise.
- * xcofflink.c (xcoff_set_import_path): Likewise.
- * xtensa-isa.c (xtensa_regfile_lookup): Likewise.
- (xtensa_regfile_lookup_shortname): Likewise.
-
-2011-02-28 Alan Modra <[email protected]>
-
- PR 12513
- * archive.c (bfd_slurp_bsd_armap_f2): Sanity check parsed_size and
- stringsize. Properly sanity check symdef_count. Remove redundant
- bfd_release.
-
-2011-02-25 Rafael Ávila de Espíndola <[email protected]>
-
- * plugin.c (bfd_plugin_object_p): Correctly set the filesize
- and handle claim_file seeking. Only try to load the plugin once.
-
-2011-02-22 Andreas Schwab <[email protected]>
-
- * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): For a TLS_GD
- relocation read the value from the second GOT slot.
-
-2011-02-15 Tristan Gingold <[email protected]>
-
- * vms-alpha.c (alpha_vms_link_add_archive_symbols): Add a comment.
-
-2011-02-15 Alan Modra <[email protected]>
-
- * elf64-ppc.c (ppc64_elf_edit_toc): Reinstate second read of
- toc relocs. Fuss over free(NULL).
-
-2011-02-14 Mike Frysinger <[email protected]>
-
- * elflink.c (bfd_elf_size_dynamic_sections): Add
- bfd_get_symbol_leading_char to the start of newname.
-
-2011-02-13 Ralf Wildenhues <[email protected]>
-
- * configure: Regenerate.
-
-2011-02-09 Alan Modra <[email protected]>
-
- * elf64-ppc.c (ppc64_elf_edit_toc): Don't free toc relocs until
- we are done. When optimising large toc, check that a global
- symbol on a toc reloc is defined in a kept section.
-
-2011-02-08 Nick Clifton <[email protected]>
-
- PR binutils/12467
- * elf.c (assign_file_positions_for_load_sections): Set the program
- header offset and entry size to zero if there are no program
- headers.
-
-2011-02-08 Alan Modra <[email protected]>
-
- * elf64-ppc.c (ppc64_elf_edit_toc): Don't segfault on NULL
- local_syms when looking for local symbols in .toc.
-
-2011-02-01 Alan Modra <[email protected]>
-
- * elf64-ppc.c (ppc64_elf_next_input_section): Use elf_gp value
- for toc pointer on any section having makes_toc_func_call set.
- (check_pasted_section): Ensure pasted .init/.fini fragments use
- the same toc if any has makes_toc_func_call set.
-
-2011-01-28 Joseph Myers <[email protected]>
-
- * elf32-ppc.c (ppc_elf_link_hash_newfunc): Initialize has_sda_refs
- field.
-
-2011-01-22 Richard Sandiford <[email protected]>
-
- * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Ignore
- common sections too.
-
-2011-01-18 H.J. Lu <[email protected]>
-
- * elf64-x86-64.c (elf_backend_want_plt_sym): Redefine to 0 after
- Solaris target.
-
-2011-01-18 Pierre Muller <[email protected]>
-
- Fix compilation for mingw64.
- * coffcode.h (coff_slurp_symbol_table): Add intptr_t intermediate
- typecast to avoid warning.
- * elf32-rx.c: Add "bfd_stdint.h" include required for int32_t type
- usage.
- * elfxx-ia64.c (elfNN_ia64_relax_br): Use intptr_t typeacast instead
- of long for pointer to avoid warning.
- (elfNN_ia64_relax_brl): Idem.
- (elfNN_ia64_install_value): Idem.
- * vms-alpha.c (_bfd_vms_slurp_etir): Idem.
-
-2011-01-17 Richard Sandiford <[email protected]>
-
- * elf32-arm.c (elf32_arm_check_relocs): Check needs_plt rather than
- h->needs_plt when deciding whether to record a possible dynamic reloc.
-
-2011-01-17 Richard Sandiford <[email protected]>
-
- * elf32-arm.c (elf32_arm_gc_sweep_hook): Remove all registered
- dynamic relocs for the removed section.
-
-2011-01-15 H.J. Lu <[email protected]>
-
- * elf64-x86-64.c (elf_x86_64_check_relocs): Check invalid x32
- relocations.
-
-2011-01-14 H.J. Lu <[email protected]>
-
- * elf64-x86-64.c (elf_x86_64_link_hash_table): Add pointer_r_type.
- (elf_x86_64_link_hash_table_create): Set pointer_r_type.
- (elf_x86_64_check_relocs): Handle R_X86_64_32 like R_X86_64_64
- for ILP32. Remove ABI_64_P PIC check for R_X86_64_8,
- R_X86_64_16, R_X86_64_32 and R_X86_64_32S.
- (elf_x86_64_relocate_section): Handle R_X86_64_32 like R_X86_64_64
- for ILP32.
-
-2011-01-14 Alan Modra <[email protected]>
-
- * bfd.c (bfd_perror): Flush stdout before and stderr after printing
- error.
- (_bfd_default_error_handler): Likewise.
- * elf.c (print_segment_map): Likewise.
- * libbfd.c (warn_deprecated): Likewise.
- * som.c (som_sizeof_headers): No need to do so here.
- * coff-i860.c: Replace use of printf for error messages with
- _bfd_error_handler.
- * coff-ppc.c: Likewise.
- * coff-sh.c: Likewise.
- * elf32-bfin.c: Likewise.
- * elf32-dlx.c: Likewise.
- * elf32-mep.c: Likewise.
- * elf32-v850.c: Likewise.
- * mach-o.c: Likewise.
- * pef.c: Likewise.
-
-2011-01-13 H.J. Lu <[email protected]>
-
- * elf64-x86-64.c (elf_x86_64_link_hash_table): Remove
- swap_reloca_out.
- (elf_x86_64_link_hash_table_create): Don't set swap_reloca_out.
- (elf_x86_64_check_relocs): Align relocation section to 4 byte
- for 32bit.
- (elf_x86_64_gc_sweep_hook): Replace ELF64_ST_TYPE with
- ELF_ST_TYPE.
- (elf_x86_64_finish_dynamic_symbol): Updated.
- (elf_x86_64_finish_dynamic_sections): Don't use
- Elf64_External_Dyn, bfd_elf64_swap_dyn_in, nor
- bfd_elf64_swap_dyn_out.
-
-2011-01-14 J. Park <[email protected]>
-
- PR ld/12339
- * elf32-arm.c (allocate_dynrelocs): Don't set up eh before
- following bfd_link_hash_warning symbol link.
-
-2011-01-10 Nathan Sidwell <[email protected]>
- Glauber de Oliveira Costa <[email protected]>
-
- * reloc.c (BFD_RELOC_ARM_TLS_GOTDESC, BFD_RELOC_ARM_TLS_CALL,
- BFD_RELOC_ARM_THM_TLS_CALL, BFD_RELOC_ARM_TLS_DESCSEQ,
- BFD_RELOC_ARM_THM_TLS_DESCSEQ, BFD_RELOC_ARM_TLS_DESC): New
- relocations.
- * libbfd.h: Rebuilt.
- * bfd-in2.h: Rebuilt.
- * elf32-arm.c (elf32_arm_howto_table_1): Add new relocations.
- (elf32_arm_reloc_map): Likewise.
- (tls_trampoline, dl_tlsdesc_lazy_trampoline): New PLT templates.
- (elf32_arm_stub_long_branch_any_tls_pic,
- elf32_arm_stub_long_branch_v4t_thumb_tls_pic): New stub templates.
- (DEF_STUBS): Add new stubs.
- (struct_elf_arm_obj_data): Add local_tlsdesc_gotent field.
- (elf32_arm_local_tlsdesc_gotent): New.
- (GOT_TLS_GDESC): New mask.
- (GOT_TLS_GD_ANY): Define.
- (struct elf32_arm_link_hash_entry): Add tlsdesc_got field.
- (elf32_arm_compute_jump_table_size): New.
- (struct elf32_arm_link_hash_table): Add next_tls_desc_index,
- num_tls_desc, dt_tlsdesc_plt, dt_tlsdesc_got, tls_trampoline,
- sgotplt_jump_table_size fields.
- (elf32_arm_link_hash_newfunc): Initialize tlsdesc_got field.
- (elf32_arm_link_hash_table_create): Initialize new fields.
- (arm_type_of_stub): Check TLS desc relocs too.
- (elf32_arm_stub_name): TLS desc relocs can be shared.
- (elf32_arm_tls_transition): Determine relaxation.
- (arm_stub_required_alignment): Add tls stubs.
- (elf32_arm_size_stubs): Likewise.
- (elf32_arm_tls_relax): Perform TLS relaxing.
- (elf32_arm_final_link_relocate): Process TLS DESC relocations.
- (IS_ARM_TLS_GNU_RELOC): New.
- (IS_ARM_TLS_RELOC): Use it.
- (elf32_arm_relocate_section): Perform TLS relaxing.
- (elf32_arm_check_relocs): Anticipate TLS relaxing, process tls
- desc relocations.
- (allocate_dynrelocs): Allocate tls desc relcoations.
- (elf32_arm_output_arch_local_syms): Emit tls trampoline mapping
- symbols.
- (elf32_arm_size_dynamic_sections): Allocate tls trampolines and
- got slots.
- (elf32_arm_always_size_sections): New. Create _TLS_MODULE_BASE
- symbol.
- (elf32_arm_finish_dynamic_symbol): Adjust.
- (arm_put_trampoline): New.
- (elf32_arm_finish_dynamic_sections): Emit new dynamic tags and tls
- trampolines.
- (elf_backend_always_size_sections): Define.
-
-2011-01-06 H.J. Lu <[email protected]>
-
- * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Optimized.
-
-2011-01-06 H.J. Lu <[email protected]>
-
- PR ld/12366
- PR ld/12371
- * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Properly
- handle symbols marked with regular reference, but not non-GOT
- reference when building shared library.
-
- * elf32-i386.c (elf_i386_gc_sweep_hook): Properly handle
- local and global STT_GNU_IFUNC symols when building shared
- library.
- * elf64-x86-64.c (elf_x86_64_gc_sweep_hook): Likewise.
-
-2011-01-05 DJ Delorie <[email protected]>
-
- * reloc.c: Add BFD_RELOC_RX_OP_NEG.
+ 2013-10-30 Alan Modra <[email protected]>
+ * reloc.c (BFD_RELOC_PPC64_ADDR16_HIGH, BFD_RELOC_PPC64_ADDR16_HIGHA,
+ BFD_RELOC_PPC64_TPREL16_HIGH, BFD_RELOC_PPC64_TPREL16_HIGHA,
+ BFD_RELOC_PPC64_DTPREL16_HIGH, BFD_RELOC_PPC64_DTPREL16_HIGHA): New.
+ * elf64-ppc.c (ppc64_elf_howto_raw): Add entries for new relocs.
+ Make all _HA and _HI relocs report signed overflow.
+ (ppc64_elf_reloc_type_lookup): Handle new relocs.
+ (must_be_dyn_reloc, ppc64_elf_check_relocs): Likewise.
+ (dec_dynrel_count, ppc64_elf_relocate_section): Likewise.
+ (ppc64_elf_relocate_section): Don't apply 0x8000 adjust to
+ R_PPC64_TPREL16_HIGHER, R_PPC64_TPREL16_HIGHEST,
+ R_PPC64_DTPREL16_HIGHER, and R_PPC64_DTPREL16_HIGHEST.
* libbfd.h: Regenerate.
* bfd-in2.h: Regenerate.
- * elf32-rx.c: Add it to the list, corresponding to R_RX_OPneg.
-2011-01-03 H.J. Lu <[email protected]>
+2013-11-13 Yufeng Zhang <[email protected]>
- * cpu-i386.c (bfd_i386_compatible): New.
- (bfd_x64_32_arch_intel_syntax): Replace bfd_default_compatible
- with bfd_i386_compatible.
- (bfd_x86_64_arch_intel_syntax): Likewise.
- (bfd_i386_arch_intel_syntax): Likewise.
- (i8086_arch): Likewise.
- (bfd_x64_32_arch): Likewise.
- (bfd_x86_64_arch): Likewise.
- (bfd_i386_arch): Likewise.
+ * elfnn-aarch64.c (elfNN_aarch64_howto_table): Use
+ R_AARCH64_TLS_DTPMOD64 instead of R_AARCH64_TLS_DTPMOD;
+ likewise for R_AARCH64_TLS_DTPREL and R_AARCH64_TLS_TPREL.
-For older changes see ChangeLog-2010
+2013-11-12 Matthew Leach <[email protected]>
+
+ * elfxx-aarch64.c (_bfd_aarch64_elf_grok_prstatus): Fix hard-coded
+ size of struct elf_prstatus.
+
+2013-11-07 Roland McGrath <[email protected]>
+
+ * archures.c (bfd_mach_i386_nacl): Fix definition so it doesn't
+ collide with bfd_mach_l1om.
+ * bfd-in2.h: Regenerate.
+
+ * elf32-i386.c (elf32_i386_nacl_elf_object_p): New function.
+ (elf_backend_object_p): Use that in elf32-i386-nacl definition.
+ * elf64-x86-64.c (elf64_x86_64_nacl_elf_object_p): New function.
+ (elf_backend_object_p): Use that in elf64-x86-64-nacl definition.
+ (elf32_x86_64_nacl_elf_object_p): New function.
+ (elf_backend_object_p): Use that in elf32-x86-64-nacl definition.
+
+2013-11-01 Roland McGrath <[email protected]>
+
+ * elf-nacl.c (segment_eligible_for_headers): Drop requirement that
+ some section have SEC_HAS_CONTENTS set. It's not set for
+ .note.gnu.build-id, and a segment of only read-only SHT_NOBITS
+ sections is implausible and not really supportable anyway.
+
+2013-10-29 Roland McGrath <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_nacl_plt0_entry): Correct 9-byte nop
+ sequence to match what the assembler generates.
+
+2013-10-17 Alan Modra <[email protected]>
+
+ PR 16056
+ * elf.c (copy_elf_program_header): Only consider SEC_ALLOC sections
+ when finding lowest_section.
+
+2013-10-09 Roland McGrath <[email protected]>
+
+ * elf64-alpha.c (elf64_alpha_relax_tls_get_addr): Cast switch
+ expression to int to silence over-eager compiler warnings.
+
+2013-10-09 Roland McGrath <[email protected]>
+
+ * xcofflink.c (_bfd_xcoff_bfd_final_link): Don't touch EREL in
+ loop that doesn't use (or initialize) it.
+
+2013-10-09 Roland McGrath <[email protected]>
+
+ * elfxx-tilegx.c (tilegx32_plt_tail_entry, tilegx32_plt_tail_entry):
+ Move second const qualifier so it applies to the pointer.
+
+2013-10-05 Gregory Fong <[email protected]>
+
+ * elfxx-mips.c (mips_elf_create_got_section): Hide
+ _GLOBAL_OFFSET_TABLE_.
+
+2013-10-04 Will Newton <[email protected]>
+
+ * configure: Regenerate.
+ * configure.in: Build elf-ifunc.o for AArch64.
+ * elfnn-aarch64.c: Include objalloc.h.
+ (elfNN_aarch64_local_htab_hash): New function.
+ (elfNN_aarch64_local_htab_eq): New function.
+ (elfNN_aarch64_get_local_sym_hash): New function.
+ (elfNN_aarch64_link_hash_table_create): Initialize local STT_GNU_IFUNC
+ symbol hash.
+ (elfNN_aarch64_hash_table_free): Free local STT_GNU_IFUNC symbol hash.
+ (elfNN_aarch64_final_link_relocate): Add sym argument. Add support
+ for handling STT_GNU_IFUNC symbols.
+ (elfNN_aarch64_gc_sweep_hook): Add support for garbage collecting
+ references to STT_GNU_IFUNC symbols.
+ (elfNN_aarch64_adjust_dynamic_symbol): Add support for handling
+ STT_GNU_IFUNC symbols.
+ (elfNN_aarch64_check_relocs): Add support for handling STT_GNU_IFUNC
+ symbols. Ensure we don't increase plt.refcount from -1 to 0.
+ (elfNN_aarch64_post_process_headers): Call _bfd_elf_set_osabi.
+ (elfNN_aarch64_is_function_type): Remove function.
+ (elfNN_aarch64_allocate_dynrelocs): Handle STT_GNU_IFUNC symbols.
+ (elfNN_aarch64_allocate_ifunc_dynrelocs): New function.
+ (elfNN_aarch64_allocate_local_dynrelocs): New function.
+ (elfNN_aarch64_allocate_local_ifunc_dynrelocs): New function.
+ (elfNN_aarch64_size_dynamic_sections): Call
+ elfNN_aarch64_allocate_local_dynrelocs.
+ (elfNN_aarch64_create_small_pltn_entry): Add info argument.
+ Add support for creating .iplt entries for STT_GNU_IFUNC symbols.
+ (elfNN_aarch64_finish_dynamic_symbol): Add support for handling
+ STT_GNU_IFUNC symbols and .iplt.
+ (elfNN_aarch64_finish_local_dynamic_symbol): New function.
+ (elfNN_aarch64_finish_dynamic_sections): Call
+ elfNN_aarch64_finish_local_dynamic_symbol.
+
+2013-09-24 Alan Modra <[email protected]>
+
+ * elf32-mips.c (ELF_OSABI): Undef for vxworks.
+
+2013-09-20 Alan Modra <[email protected]>
+
+ * configure: Regenerate.
+
+2013-09-18 Tristan Gingold <[email protected]>
+
+ * configure.in: Bump version to 2.23.90
+ * configure: Regenerate.
+
+2013-09-17 Doug Gilmore <[email protected]>
+
+ * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): Handle
+ EF_MIPS_FP64.
+
+2013-08-31 John David Anglin <[email protected]>
+
+ * elf64-hppa.c (elf_hppa_final_link_relocate): Add missing '%' to
+ format string.
+
+2013-08-29 Jakub Jelinek <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_check_tls_transition): Allow
+ 64-bit -mcmodel=large -fpic TLS GD and LD sequences.
+ (elf_x86_64_relocate_section): Handle -mcmodel=large -fpic
+ TLS GD and LD sequences in GD->LE, GD->IE and LD->LE transitions.
+
+2013-08-27 Alan Modra <[email protected]>
+
+ * elf-bfd.h (struct elf_backend_data): Remove as_needed_cleanup.
+ Add notice_as_needed.
+ * elf64-ppc.c (elf_backend_as_needed_cleanup): Don't define.
+ (elf_backend_notice_as_needed): Define.
+ (ppc64_elf_as_needed_cleanup): Rename and adjust..
+ (ppc64_elf_notice_as_needed): ..to this.
+ * elflink.c (_bfd_elf_notice_as_needed): New function, extracted..
+ (elf_link_add_object_symbols): ..from here.
+ * elfxx-target.h (elf_backend_as_needed_cleanup): Don't define.
+ (elf_backend_notice_as_needed): Define..
+ (elfNN_bed): ..and use here.
+
+2013-08-26 Roland McGrath <[email protected]>
+
+ * archures.c (bfd_mach_i386_nacl, bfd_mach_i386_i386_nacl): New macros.
+ (bfd_mach_x86_64_nacl, bfd_mach_x64_32_nacl): New macros.
+ * cpu-i386.c (bfd_arch_i386_onebyte_nop_fill): New function.
+ (bfd_i386_nacl_arch): New variable.
+ (bfd_x86_64_nacl_arch, bfd_x64_32_nacl_arch): New variables.
+ (bfd_x64_32_arch_intel_syntax): Link them into the list.
+ * bfd-in2.h: Regenerate.
+
+2013-08-26 Roland McGrath <[email protected]>
+
+ * elf-nacl.c (nacl_modify_segment_map): Fix logic reordering the
+ elf_segment_map list. If an executable segment is page-aligned
+ but does not end with a full page, then append a fake section into
+ the segment map entry that pads out the page.
+ (nacl_final_write_processing): New function. Write the code fill
+ laid out in nacl_modify_segment_map.
+ * elf-nacl.h: Declare it.
+ * elf32-arm.c (elf32_arm_nacl_final_write_processing): New function.
+ (elf_backend_final_write_processing): Define it for NaCl backend.
+ * elf32-i386.c (elf_backend_final_write_processing): Likewise.
+ * elf64-x86-64.c (elf_backend_final_write_processing): Likewise.
+
+ * elf-nacl.c (segment_eligible_for_headers): Rename MAXPAGESIZE
+ parameter to MINPAGESIZE.
+ (nacl_modify_segment_map): Use minpagesize instead of maxpagesize.
+
+ * elf32-arm.c (ELF_MINPAGESIZE, ELF_COMMONPAGESIZE): #undef for NaCl.
+
+2013-08-24 Maciej W. Rozycki <[email protected]>
+
+ * elf32-tilepro.c (tilepro_elf_finish_dynamic_sections): Don't
+ set GOT's entry size if there is no ELF section data.
+ * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_sections):
+ Likewise.
+
+2013-08-23 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (get_elf_x86_64_arch_data): New.
+ (get_elf_x86_64_backend_data): Use it.
+ (elf_x86_64_size_dynamic_sections): Likewise.
+
+2013-08-23 Yuri Chornoivan <[email protected]>
+
+ PR binutils/15834
+ * bfdio.c: Fix typos.
+ * elf32-spu.c: Likewise.
+ * elfnn-aarch64.c: Likewise.
+
+2013-08-21 Tristan Gingold <[email protected]>
+
+ * coff-rs6000.c (_bfd_xcoff_sizeof_headers): Also count
+ .ovrflo sections.
+ * coffcode.h (coff_compute_section_file_positions): Force
+ match between file offset and vma offset.
+
+2013-08-21 Alan Modra <[email protected]>
+
+ * elflink.c (_bfd_elf_merge_symbol): Set *poldbfd, *poldweak,
+ and *poldalignment before exiting when !relocs_compatible.
+
+2013-08-21 Alan Modra <[email protected]>
+
+ * elflink.c (_bfd_elf_define_linkage_sym): Don't set STV_INTERNAL
+ symbols to STV_HIDDEN.
+
+2013-08-14 John Tytgat <[email protected]>
+
+ PR ld/15787
+ * elf32-arm.c (elf32_arm_final_link_relocate): Use origin of output
+ segment containing the relocating symbol instead of assuming 0 for
+ sb group relocations.
+
+2013-08-09 Nick Clifton <[email protected]>
+
+ * elf32-rl78.c (rl78_elf_merge_private_bfd_data): Complain if G10
+ flag bits do not match.
+ (rl78_elf_print_private_bfd_data): Describe G10 flag.
+
+2013-08-05 John Tytgat <[email protected]>
+
+ * po/BLD-POTFILES.in: Regenerate.
+ * po/SRC-POTFILES.in: Likewise.
+
+2013-07-31 John Tytgat <[email protected]>
+
+ PR ld/15787
+ * elf32-arm.c (elf32_arm_final_link_relocate): Base SB on the
+ output section VMA.
+
+2013-07-28 Maciej W. Rozycki <[email protected]>
+
+ * elf64-hppa.c (elf64_hppa_finish_dynamic_sections)
+ <DT_HP_LOAD_MAP>: Return unsuccessfully if there's no `.data'
+ section.
+
+2013-07-27 Andrew Pinski <[email protected]>
+
+ * elfnn-aarch64.c (elfNN_aarch64_check_relocs):
+ Use the correct alignment for
+ _bfd_elf_make_dynamic_reloc_section for ILP32.
+
+2013-07-27 Andrew Pinski <[email protected]>
+
+ * elfnn-aarch64.c (elfNN_aarch64_howto_from_bfd_reloc): Handle
+ BFD_RELOC_AARCH64_NONE explicitly.
+
+2013-07-27 Maciej W. Rozycki <[email protected]>
+
+ * elf32-vax.c (elf_vax_finish_dynamic_sections): Don't set GOT's
+ entry size if there is no ELF section data.
+
+2013-07-27 Maciej W. Rozycki <[email protected]>
+
+ * elf32-vax.c (elf_vax_check_relocs) <R_VAX_GOT32, R_VAX_PLT32>:
+ Don't check symbol visibility here. Remove a check already
+ asserted for.
+ (elf_vax_instantiate_got_entries): Use SYMBOL_REFERENCES_LOCAL
+ instead of individual checks.
+ (elf_vax_relocate_section) <R_VAX_GOT32, R_VAX_PLT32>: Only
+ check the offset to decide if produce a GOT or PLT entry.
+ Remove redundant assertions. Remove code to produce GOT entries
+ for local symbols. Remove a duplicate comment and add a comment
+ on GOT relocations.
+ (elf_vax_finish_dynamic_symbol): Remove code to produce RELATIVE
+ dynamic relocs.
+
+2013-07-27 Maciej W. Rozycki <[email protected]>
+
+ * elf32-vax.c (elf_vax_always_size_sections): Correct a comment
+ typo.
+
+2013-07-27 Maciej W. Rozycki <[email protected]>
+
+ * elf32-vax.c (elf_vax_discard_got_entries): New function.
+ (elf_vax_always_size_sections): Likewise.
+ (elf_vax_size_dynamic_sections): Remove code moved to
+ elf_vax_always_size_sections. Make comment on
+ elf_vax_instantiate_got_entries match reality.
+ (elf_vax_instantiate_got_entries): Assert that rather than check
+ if dynobj is null. Don't check for dynamic_sections_created.
+ Make function description match reality.
+ (elf_backend_always_size_sections): New macro.
+
+2013-07-25 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (struct ppc64_elf_obj_tdata): Replace opd_relocs
+ with a union.
+ (opd_entry_value): Cache .opd section contents.
+ (ppc64_elf_relocate_section): Adjust.
+
+2013-07-25 Alan Modra <[email protected]>
+
+ PR ld/15762
+ PR ld/12761
+ * elflink.c (elf_link_add_object_symbols): Correct test in
+ last patch. Remove unnecessary code.
+
+2013-07-24 Tristan Gingold <[email protected]>
+
+ * coff-rs6000.c (xcoff_howto_table): Fix masks and pc_relative for
+ R_RBR. Add numbers in comments.
+ (_bfd_xcoff_reloc_type_lookup): Handle BFD_RELOC_PPC_B16.
+ * coff64-rs6000.c: Likewise.
+
+2013-07-20 Alan Modra <[email protected]>
+
+ PR ld/15762
+ PR ld/12761
+ * elflink.c (elf_link_add_object_symbols): Don't clobber
+ .gnu.warning.symbol sections when shared.
+
+2013-07-19 Nick Clifton <[email protected]>
+
+ * elf32-rx.c (rx_elf_relocate_section): Fix typo: move
+ saw_subtract from R_RX_OPdiv to R_RX_OPneg.
+
+2013-07-18 Travis Snoozy <[email protected]>
+
+ PR ld/15721
+ * elf32-msp430.c (R_MSP430_10_PCREL): Use 10-bit source and
+ destination masks.
+ * R_MSP430_2X_PCREL: Likewise.
+ * R_MSP430X_10_PCREL: Likewise.
+ * R_MSP430X_2X_PCREL: Likewise.
+
+2013-07-18 Terry Guo <[email protected]>
+
+ * elf32-arm.c (arm_type_of_stub): Don't use ST_BRANCH_TO_ARM for
+ thumb only targets.
+ (elf32_arm_final_link_relocate): Likewise.
+
+2013-07-18 Bill Neubauer <[email protected]>
+
+ * mach-o.c (mach_o_section_name_xlat dw): Add entry for
+ .debug_gdb_scripts
+
+2013-07-18 Roland McGrath <[email protected]>
+
+ * elf32-arm.c (elf32_arm_stub_long_branch_arm_nacl): New variable.
+ (elf32_arm_stub_long_branch_arm_nacl_pic): New variable.
+ (arm_build_one_stub): Increase MAXRELOCS to 3.
+ (arm_type_of_stub): Use them if GLOBALS->nacl_p.
+ (struct elf32_arm_link_hash_table): Give add_stub_section member's
+ pointee type a third argument.
+ (elf32_arm_create_or_find_stub_sec): Update caller.
+ (elf32_arm_size_stubs): Update argument type.
+ * bfd-in.h (elf32_arm_size_stubs): Update decl.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2013-07-15 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (mips_elf_merge_obj_attributes): Replace hardcoded
+ magic numbers with enum values.
+
+2013-07-12 Roland McGrath <[email protected]>
+
+ * reloc.c: Add BFD_RELOC_390_PC12DBL, BFD_RELOC_390_PLT12DBL,
+ BFD_RELOC_390_PC24DBL, BFD_RELOC_390_PLT24DBL (should have
+ been added here with 2013-07-05 elf32-s390.c change).
+ * bfd-in2.h: Regenerate (no-op).
+ * libbfd.h: Regenerate (no-op).
+
+2013-07-12 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Handle
+ EF_MIPS_NAN2008.
+ (_bfd_mips_elf_print_private_bfd_data): Likewise.
+
+2013-07-09 Tristan Gingold <[email protected]>
+
+ * vms-alpha.c (struct vms_private_data_struct): Remove
+ flag_hash_long_names and flag_show_after_trunc.
+ (hash_string): Remove.
+ (_bfd_vms_length_hash_symbol): Remove.
+ (alpha_vms_write_exec): Remove call to _bfd_vms_length_hash_symbol.
+ (_bfd_vms_write_egsd): Likewise. Rewrite condition.
+ (_bfd_vms_write_ehdr): Remove code that set removed flags.
+ (_bfd_vms_write_etir): Remove call to _bfd_vms_length_hash_symbol.
+ (vms_bfd_is_local_label_name): Remove trace call.
+
+2013-07-09 Tristan Gingold <[email protected]>
+
+ * hosts/alphavms.h: Include config.h and ansidecl.h, remove useless
+ macros.
+ * configure.com: Adjust to match changes in configure.
+ * makefile.vms (OBJS): Update list.
+
+2013-07-05 Tristan Gingold <[email protected]>
+
+ * coffcode.h (coff_write_object_contents): Use ".ovrflo" name for
+ overflow sections.
+
+2013-07-05 Andreas Krebbel <[email protected]>
+
+ * elf32-s390.c: Add new relocation definitions R_390_PC12DBL,
+ R_390_PLT12DBL, R_390_PC24DBL, and R_390_PLT24DBL.
+ (elf_s390_reloc_type_lookup, elf_s390_check_relocs)
+ (elf_s390_gc_sweep_hook, elf_s390_relocate_section): Support new
+ relocations.
+ * elf64-s390.c: See elf32-s390.c
+ * bfd-in2.h: Add new relocs to enum bfd_reloc_code_real.
+ * libbfd.h: Add new reloc strings.
+
+2013-07-03 Marcus Shawcroft <[email protected]>
+
+ * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Reorder case
+ values.
+ (elfNN_aarch64_relocate_section): Likewise.
+ (elfNN_aarch64_gc_sweep_hook): Likewise.
+ (elfNN_aarch64_check_relocs): Likewise.
+
+2013-07-03 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_func_desc_adjust): Don't hide .TOC.
+ when relocatable. Don't change root.type or type here.
+ (ppc64_elf_set_toc): Set type of .TOC. to STT_OBJECT.
+
+2013-07-03 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (struct ppc_stub_hash_entry): Delete "addend".
+ (ppc64_elf_size_stubs): Don't set "addend".
+ (ppc64_elf_relocate_section): Don't allow calls via
+ toc-adjusting stubs without a following nop even in an
+ executable, except for self-calls and both libc_start_main
+ and .libc_start_main.
+
+2013-07-03 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_func_desc_adjust): Hide ".TOC.".
+
+2013-07-02 Tristan Gingold <[email protected]>
+
+ * coff-rs6000.c (xcoff_find_nearest_line_discriminator): Add missing
+ line.
+
+2013-07-02 Tristan Gingold <[email protected]>
+
+ * vms-alpha.c (_bfd_generic_find_nearest_line_discriminator): Define.
+ (_bfd_vms_find_nearest_line_discriminator): New function.
+
+2013-07-02 Tristan Gingold <[email protected]>
+
+ * coff-rs6000.c (xcoff_create_csect_from_smclas): Handle more smclas.
+
+2013-07-02 Tristan Gingold <[email protected]>
+
+ * coff-rs6000.c (xcoff_find_nearest_line_discriminator): New function.
+ (rs6000coff_vec): Reference it.
+
+2013-07-02 Marcus Shawcroft <[email protected]>
+
+ * elfnn-aarch64.c (aarch64_elf_create_got_section): New.
+ (elfNN_aarch64_check_relocs): Use aarch64_elf_create_got_section.
+ (elfNN_aarch64_create_dynamic_sections): Do not define
+ _GLOBAL_OFFSET_TABLE_; call aarch64_elf_create_got_section.
+
+2013-07-02 Marcus Shawcroft <[email protected]>
+
+ * ld-aarch64/emit-relocs-309-low.d: Adjust .text address.
+ * ld-aarch64/emit-relocs-309-up.d: Adjust .got address.
+ * ld-aarch64/emit-relocs-312.d: Adjust offsets into .got.
+ * ld-aarch64/tls-relax-all.d: Likewise.
+ * ld-aarch64/gc-got-relocs.d: Adjust expected .got content.
+ * ld-aarch64/gc-tls-relocs.d: Likewise.
+ * ld-aarch64/tls-relax-gd-ie.d: Likewise.
+ * ld-aarch64/tls-relax-gdesc-ie-2.d: Likewise.
+ * ld-aarch64/tls-relax-gdesc-ie.d: Likewise.
+
+2013-07-02 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_relocate_section): Set "relocation" for
+ .TOC. after relocatable check.
+
+2013-07-01 Alan Modra <[email protected]>
+
+ * elf64-ppc.h (ppc64_elf_toc): Delete.
+ (ppc64_elf_set_toc): Declare.
+ * elf64-ppc.c (ppc64_elf_toc_reloc): Replace call to ppc64_elf_toc
+ with call the ppc64_elf_set_toc.
+ (ppc64_elf_toc_ha_reloc, ppc64_elf_toc64_reloc): Likewise.
+ (ppc64_elf_start_multitoc_partition): Likewise.
+ (struct ppc_link_hash_table): Delete dot_toc_dot. Replace all uses
+ with elf.hgot.
+ (ppc64_elf_process_dot_syms): Don't make a fake function descriptor
+ for ".TOC.".
+ (ppc64_elf_check_relocs): Mark sections with a reference to .TOC.
+ as needing a toc pointer.
+ (ppc64_elf_size_stubs): Don't set dot_toc_dot here.
+ (ppc64_elf_set_toc): Rename from ppc64_elf_toc. Add info param.
+ Set elf.hgot value.
+
+2013-06-28 H.J. Lu <[email protected]>
+
+ PR ld/15685
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Handle
+ R_X86_64_DTPOFF64.
+
+2013-06-28 Nick Clifton <[email protected]>
+
+ PR ld/15302
+ * elf32-arm.c (allocate_dynrelocs_for_symbol): Revert previous patch.
+
+2013-06-27 Marcus Shawcroft <[email protected]>
+
+ * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Reserve one slot
+ in sgot.
+ (elfNN_aarch64_finish_dynamic_sections): Place the &_DYNAMIC reference
+ in sgot[0] rather than sgotplt[0].
+
+2013-06-26 Yufeng Zhang <[email protected]>
+
+ * Makefile.am (elf32-aarch64.c): Add a #line cpp directive at the
+ beginning of the generated file.
+ (elf64-aarch64.c): Likewise.
+ * Makefile.in: Re-generated.
+
+2013-06-26 Yufeng Zhang <[email protected]>
+
+ * Makefile.am (BFD64_BACKENDS): Add elfxx-aarch64.c.
+ (BFD64_BACKENDS_CFILES): Add elfxx-aarch64.lo.
+ * Makefile.in: Re-generated.
+ * configure.in (bfd_elf64_bigaarch64_vec): Add elfxx-aarch64.lo.
+ (bfd_elf64_littleaarch64_vec): Likewise.
+ (bfd_elf32_bigaarch64_vec): Likewise.
+ (bfd_elf32_littleaarch64_vec): Likewise.
+ * configure: Re-generated.
+ * elfxx-aarch64.c: New file; split from elf64-aarch64.c.
+ * elfxx-aarch64.h: New file.
+ * elfnn-aarch64.c: Include "elfxx-aarch64.h"; move the following
+ stuff to elfxx-aarch64.c.
+ (bfd_elf_aarch64_put_addend): Removed.
+ (PG_OFFSET, PG): Likewise.
+ (elfNN_aarch64_small_plt0_entry): Support ELF32.
+ (elfNN_aarch64_tlsdesc_small_plt_entry): Likewise.
+ (elf64_aarch64_grok_prstatus): Removed.
+ (elf_backend_grok_prstatus): Removed.
+ (insn32): Likewise.
+ (aarch64_unsigned_overflow): Likewise.
+ (aarch64_signed_overflow): Likewise.
+ (aarch64_resolve_relocation): Likewise.
+ (MASK): Likewise.
+ (decode_branch_ofs_26): Likewise.
+ (decode_cond_branch_ofs_19): Likewise.
+ (decode_ld_lit_ofs_19): Likewise.
+ (decode_tst_branch_ofs_14): Likewise.
+ (decode_movw_imm): Likewise.
+ (decode_adr_imm): Likewise.
+ (decode_add_imm): Likewise.
+ (reencode_branch_ofs_26): Likewise.
+ (reencode_cond_branch_ofs_19): Likewise.
+ (reencode_ld_lit_ofs_19): Likewise.
+ (reencode_tst_branch_ofs_14): Likewise.
+ (reencode_movw_imm): Likewise.
+ (reencode_adr_imm): Likewise.
+ (reencode_ldst_pos_imm): Likewise.
+ (reencode_add_imm): Likewise.
+ (reencode_movzn_to_movz): Likewise.
+ (reencode_movzn_to_movn): Likewise.
+ (aarch64_relocate): Update to call the new function names in
+ elfxx-aarch64.c.
+ (aarch64_calculate_got_entry_vma): Likewise.
+ (elfNN_aarch64_final_link_relocate): Likewise.
+ (elf64_aarch64_update_plt_entry): Likewise; change the type of the
+ parameter 'r_type' to bfd_reloc_code_real_type; rename to ...
+ (elf_aarch64_update_plt_entry): ... this.
+ (elfNN_aarch64_create_small_pltn_entry): Update.
+ (elfNN_aarch64_init_small_plt0_entry): Remove plt_got_base; add
+ bfd_vma plt_got_2nd_ent; update to call elf_aarch64_update_plt_entry.
+ (elfNN_aarch64_finish_dynamic_sections): Add plt_entry; update to
+ call elf_aarch64_update_plt_entry.
+
+2013-06-26 Yufeng Zhang <[email protected]>
+
+ * bfd-in2.h: Re-generated.
+ * elfnn-aarch64.c (HOWTO64, HOWTO32): New define.
+ (IS_AARCH64_TLS_RELOC): Change to be based on the
+ bfd reloc enumerators.
+ (IS_AARCH64_TLSDESC_RELOC): Likewise.
+ (PG, PG_OFFSET): Cast literal to bfd_vma.
+ (elf64_aarch64_howto_table): Removed.
+ (elf64_aarch64_howto_dynrelocs): Removed.
+ (elf64_aarch64_tls_howto_table): Removed.
+ (elf64_aarch64_tlsdesc_howto_table): Removed.
+ (elfNN_aarch64_howto_table): New table to host all howto entires..
+ (R_AARCH64_*): Replaced by AARCH64_R (*) and AARCH64_R_STR (*).
+ (elfNN_aarch64_bfd_reloc_from_howto): New function.
+ (elfNN_aarch64_bfd_reloc_from_type): Ditto.
+ (struct elf_aarch64_reloc_map): New.
+ (elf_aarch64_reloc_map): New table.
+ (elfNN_aarch64_howto_from_bfd_reloc): New function.
+ (elfNN_aarch64_howto_from_type): Update to look up the new table
+ elfNN_aarch64_howto_table.
+ (struct elf64_aarch64_reloc_map): Remove.
+ (elf64_aarch64_reloc_map): Remove.
+ (elfNN_aarch64_reloc_type_lookup): Change to call
+ elfNN_aarch64_howto_from_bfd_reloc.
+ (elfNN_aarch64_reloc_name_lookup): Change to look up the new table
+ elfNN_aarch64_howto_table.
+ (aarch64_resolve_relocation): Refactor to switch on the bfd
+ reloc enumerators.
+ (bfd_elf_aarch64_put_addend): Likewise.
+ (elfNN_aarch64_final_link_relocate): Likewise.
+ (aarch64_tls_transition_without_check): Likewise.
+ (aarch64_reloc_got_type): Likewise.
+ (aarch64_can_relax_tls): Likewise.
+ (aarch64_tls_transition): Likewise.
+ (elfNN_aarch64_tls_relax): Likewise.
+ (elfNN_aarch64_final_link_relocate): Likewise.
+ (elfNN_aarch64_relocate_section): Likewise.
+ (elfNN_aarch64_gc_sweep_hook): Likewise.
+ (elfNN_aarch64_check_relocs): Likewise.
+ (aarch64_tls_transition): Change to return a bfd reloc enumerator.
+ * libbfd.h: Re-generated.
+ * reloc.c: Re-order the AArch64 bfd reloc enumerators.
+ (BFD_RELOC_AARCH64_RELOC_START)
+ (BFD_RELOC_AARCH64_RELOC_END)
+ (BFD_RELOC_AARCH64_LD_GOT_LO12_NC)
+ (BFD_RELOC_AARCH64_LD32_GOT_LO12_NC)
+ (BFD_RELOC_AARCH64_TLSDESC_LD_LO12_NC)
+ (BFD_RELOC_AARCH64_TLSDESC_LD32_LO12_NC)
+ (BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_LO12_NC)
+ (BFD_RELOC_AARCH64_TLSIE_LD32_GOTTPREL_LO12_NC)
+ (BFD_RELOC_AARCH64_IRELATIVE): New relocs.
+
+2013-06-26 Yufeng Zhang <[email protected]>
+
+ * Makefile.am (BFD64_BACKENDS): Add elf32-aarch64.lo.
+ (BUILD_CFILES): Add elf32-aarch64.c.
+ (elf32-aarch64.c): New rule for generating from elfnn-aarch64.c.
+ * Makefile.in: Re-generated.
+ * archures.c (bfd_mach_aarch64_ilp32): New define.
+ * bfd-in.h (bfd_elf32_aarch64_init_maps): New declaration.
+ (bfd_elf32_aarch64_set_options): Ditto.
+ (elf32_aarch64_setup_section_lists): Ditto.
+ (elf32_aarch64_next_input_section): Ditto.
+ (elf32_aarch64_size_stubs): Ditto.
+ (elf32_aarch64_build_stubs): Ditto.
+ * bfd-in2.h: Re-generated.
+ * config.bfd (aarch64-*-elf): Add bfd_elf32_littleaarch64_vec
+ and bfd_elf32_bigaarch64_vec.
+ (aarch64-*-linux*): Likewise.
+ (aarch64_be-*-elf): Likewise.
+ (aarch64_be-*-linux*): Likewise.
+ * configure.in (bfd_elf32_bigaarch64_vec)
+ (bfd_elf32_littleaarch64_vec): New.
+ * configure: Re-generated.
+ * cpu-aarch64.c (compatible): Don't allow mixing ilp32 objects with
+ lp64 ones.
+ (bfd_aarch64_arch_ilp32): New.
+ (bfd_aarch64_arch): Link to bfd_aarch64_arch_ilp32.
+ * elfnn-aarch64.c (ARCH_SIZE): New define.
+ (AARCH64_R, AARCH64_R_STR, LOG_FILE_ALIGN): New defines.
+ (GOT_ENTRY_SIZE): Re-define as (ARCH_SIZE / 8).
+ (elf64_aarch64_*): Rename to elfNN_aarch64_*.
+ (ELF64_R_*): Rename to ELFNN_R_*.
+ Plus other paramaterization.
+ * targets.c (bfd_elf32_bigaarch64_vec, bfd_elf32_littleaarch64_vec):
+ New declarations.
+ (_bfd_target_vector): Add bfd_elf32_bigaarch64_vec and
+ bfd_elf32_littleaarch64_vec.
+
+2013-06-26 Yufeng Zhang <[email protected]>
+
+ * Makefile.am (BFD64_BACKENDS_CFILES): Remove elf64-aarch64.c.
+ (BUILD_CFILES): Add elf64-aarch64.c.
+ (elf64-aarch64.c): New rule for generating from elfnn-aarch64.c.
+ * Makefile.in: Re-generated.
+ * elf64-aarch64.c: Rename to ...
+ * elfnn-aarch64.c: ... this.
+
+2013-06-25 Maciej W. Rozycki <[email protected]>
+ Paul Brook <[email protected]>
+
+ * elfxx-mips.h (_bfd_mips_elf_insn32): New prototype.
+ * elfxx-mips.c (mips_elf_link_hash_table): Add insn32 member.
+ (STUB_MOVE32_MICROMIPS, STUB_JALR32_MICROMIPS): New macros.
+ (MICROMIPS_INSN32_FUNCTION_STUB_NORMAL_SIZE): Likewise.
+ (MICROMIPS_INSN32_FUNCTION_STUB_BIG_SIZE): Likewise.
+ (micromips_insn32_o32_exec_plt0_entry): New variable.
+ (micromips_insn32_o32_exec_plt_entry): Likewise.
+ (_bfd_mips_elf_adjust_dynamic_symbol): Handle insn32 mode.
+ (mips_elf_estimate_stub_size): Likewise.
+ (_bfd_mips_elf_size_dynamic_sections): Likewise.
+ (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
+ (mips_finish_exec_plt): Likewise.
+ (_bfd_mips_elf_relax_section): Likewise.
+ (_bfd_mips_elf_insn32): New function.
+ (_bfd_mips_elf_get_synthetic_symtab): Handle insn32 PLT.
+
+2013-06-24 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.h (_bfd_mips_elf_get_synthetic_symtab): New
+ prototype.
+ * elf32-mips.c (elf_backend_plt_sym_val): Remove macro.
+ (bfd_elf32_get_synthetic_symtab): New macro.
+ * elfxx-mips.c (plt_entry): New structure.
+ (mips_elf_link_hash_entry): Add use_plt_entry member.
+ (mips_elf_link_hash_table): Rename plt_entry_size member to
+ plt_mips_entry_size. Add plt_comp_entry_size, plt_mips_offset,
+ plt_comp_offset, plt_got_index entries and plt_header_is_comp
+ members.
+ (STUB_LW_MICROMIPS, STUB_MOVE_MICROMIPS): New macros.
+ (STUB_LUI_MICROMIPS, STUB_JALR_MICROMIPS): Likewise.
+ (STUB_ORI_MICROMIPS, STUB_LI16U_MICROMIPS): Likewise.
+ (STUB_LI16S_MICROMIPS): Likewise.
+ (MICROMIPS_FUNCTION_STUB_NORMAL_SIZE): Likewise.
+ (MICROMIPS_FUNCTION_STUB_BIG_SIZE): Likewise.
+ (micromips_o32_exec_plt0_entry): New variable.
+ (mips16_o32_exec_plt_entry): Likewise.
+ (micromips_o32_exec_plt_entry): Likewise.
+ (mips_elf_link_hash_newfunc): Initialize use_plt_entry.
+ (mips_elf_output_extsym): Update to use gotplt_union's plist
+ member rather than offset.
+ (mips_elf_gotplt_index): Likewise. Remove the VxWorks
+ restriction. Use MIPS_ELF_GOT_SIZE to calculate GOT address.
+ (mips_elf_count_got_symbols): Update to use gotplt_union's plist
+ member rather than offset.
+ (mips_elf_calculate_relocation): Handle MIPS16/microMIPS PLT
+ entries.
+ (_bfd_mips_elf_create_dynamic_sections): Don't set PLT sizes
+ here.
+ (mips_elf_make_plt_record): New function.
+ (_bfd_mips_elf_check_relocs): Update comment. Record occurences
+ of JAL relocations that might need a PLT entry.
+ (_bfd_mips_elf_adjust_dynamic_symbol): Update to use
+ gotplt_union's plist member rather than offset. Set individual
+ PLT entry sizes here. Handle MIPS16/microMIPS PLT entries.
+ Don't set the symbol's value in the symbol table for PLT
+ references here. Don't set the PLT or PLT GOT section sizes
+ here.
+ (mips_elf_estimate_stub_size): Handle microMIPS stubs.
+ (mips_elf_allocate_lazy_stub): Likewise.
+ (mips_elf_lay_out_lazy_stubs): Likewise. Define a _MIPS_STUBS_
+ magic symbol.
+ (mips_elf_set_plt_sym_value): New function.
+ (_bfd_mips_elf_size_dynamic_sections): Set PLT header size and
+ PLT and PLT GOT section sizes here. Set the symbol values in
+ the symbol table for PLT references here. Handle microMIPS
+ annotation of the _PROCEDURE_LINKAGE_TABLE_ magic symbol.
+ (_bfd_mips_elf_finish_dynamic_symbol): Update to use
+ gotplt_union's plist member rather than offset. Handle
+ MIPS16/microMIPS PLT entries. Handle microMIPS stubs.
+ (_bfd_mips_vxworks_finish_dynamic_symbol): Update to use
+ gotplt_union's plist member rather than offset. Use
+ MIPS_ELF_GOT_SIZE to calculate GOT address.
+ (mips_finish_exec_plt): Handle microMIPS PLT. Return status.
+ (_bfd_mips_elf_finish_dynamic_sections): Handle result from
+ mips_finish_exec_plt.
+ (_bfd_mips_elf_link_hash_table_create): Update to use
+ gotplt_union's plist member rather than offset.
+ (_bfd_mips_elf_get_synthetic_symtab): New function.
+
+2013-06-24 Wawa <[email protected]>
+
+ PR 15657
+ * hash.c (_bfd_stringtab_add): Copy the string if COPY is true.
+
+2013-06-23 Richard Sandiford <[email protected]>
+
+ * Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Move MIPS ELF
+ files to...
+ (BFD64_BACKENDS, BFD64_BACKENDS_CFILES): ...here.
+ * Makefile.in: Regenerate.
+ * config.bfd: Enclose all MIPS ELF targets in #ifdef BFD64.
+ Set want64 to true for them at the end.
+ * targets.c (_bfd_target_vector): Protect MIPS ELF targets with
+ #ifdef BFD64.
+
+2013-06-22 Sandra Loosemore <[email protected]>
+
+ * elf32-nios2.c (nios2_elf32_finish_dynamic_sections): Don't
+ set sh_entsize for PLT section.
+
+2013-06-20 Yufeng Zhang <[email protected]>
+
+ * bfd-in.h (bfd_elf64_aarch64_set_options): Add 'extern'.
+ * bfd-in2.h: Re-generated.
+ * elf64-aarch64.c (RELOC_SECTION): Removed.
+ (SWAP_RELOC_IN, SWAP_RELOC_OUT): Ditto.
+ (AARCH64_ELF_OS_ABI_VERSION): Ditto.
+ (elf64_aarch64_link_hash_traverse): Ditto.
+ (elf64_aarch64_size_stubs): Change 'Aarch64' to 'AArch64' in the
+ comment.
+
+2013-06-19 Will Newton <[email protected]>
+
+ * configure: Regenerated.
+ * configure.in: Remove aarch64 dependency on elf-ifunc.c.
+ * elf64-aarch64.c: Remove objalloc.h include.
+ (elf64_aarch64_howto_dynrelocs): Remove R_AARCH64_IRELATIVE howto.
+ (struct elf64_aarch64_link_hash_table): Remove ifunc related
+ members. (elf_aarch64_local_htab_hash): Remove function.
+ (elf_aarch64_local_htab_eq): Remove function.
+ (elf_aarch64_get_local_sym_hash): Remove function.
+ (elf64_aarch64_link_hash_table_create): Remove local hash
+ table initialization.
+ (elf64_aarch64_final_link_relocate): Remove sym argument and
+ handling of ifunc symbols.
+ (elf64_aarch64_relocate_section): Don't pass sym argument to
+ elf64_aarch64_final_link_relocate.
+ (elf64_aarch64_gc_sweep_hook): Remove handling of ifunc symbols.
+ (elf64_aarch64_adjust_dynamic_symbol): Likewise.
+ (elf64_aarch64_check_relocs): Likewise.
+ (elf64_aarch64_post_process_headers): Remove call to
+ _bfd_elf_set_osabi.
+ (elf64_aarch64_is_function_type): New function.
+ (elf64_aarch64_allocate_dynrelocs): Remove handling of ifunc
+ symbols. (elf_aarch64_allocate_local_dynrelocs): Remove function.
+ (elf64_aarch64_size_dynamic_sections): Remove call to
+ elf_aarch64_allocate_local_dynrelocs.
+ (elf64_aarch64_create_small_pltn_entry): Remove info argument.
+ Remove creation of R_AARCH64_IRELATIVE dynamic relocs.
+ (elf64_aarch64_finish_dynamic_symbol): Remove handling of ifunc
+ symbols. (elf_aarch64_finish_local_dynamic_symbol): Remove
+ function. (elf64_aarch64_finish_dynamic_sections): Remove call to
+ elf_aarch64_finish_local_dynamic_symbol.
+ (elf64_aarch64_add_symbol_hook): Remove function.
+
+2013-06-14 Yufeng Zhang <[email protected]>
+
+ * elf64-aarch64.c (elf64_aarch64_final_link_relocate): Call
+ aarch64_resolve_relocation and bfd_elf_aarch64_put_addend to
+ handle the relocations of R_AARCH64_JUMP26, R_AARCH64_CALL26,
+ R_AARCH64_LD64_GOT_LO12_NC, R_AARCH64_ADR_GOT_PAGE and
+ R_AARCH64_GOT_LD_PREL19.
+
+2013-06-13 Terry Guo <[email protected]>
+
+ PR ld/15302
+ * elf32-arm.c (allocate_dynrelocs_for_symbol): Transform
+ ST_BRANCH_TO_ARM into ST_BRANCH_TO_THUMB if the target only
+ supports thumb instructions.
+
+2013-06-11 DJ Delorie <[email protected]>
+
+ * elf32-rl78.c (rl78_elf_relocate_section): Fix OPsub math.
+
+2013-06-11 Will Newton <[email protected]>
+
+ * elf64-aarch64.c (elf_aarch64_get_local_sym_hash): Use
+ ELF64_R_SYM instead of ELF32_R_SYM.
+
+2013-06-11 Nick Clifton <[email protected]>
+
+ * elf32-rl78.c (rl78_elf_finish_dynamic_sections): Onlly run
+ checks if the dynamic sections have been created and relaxation
+ has not been performed.
+
+2013-06-07 Will Newton <[email protected]>
+
+ * configure: Regenerate.
+ * configure.in: Build elf-ifunc.o for AArch64.
+ * elf64-aarch64.c: Include objalloc.h.
+ (elf64_aarch64_howto_dynrelocs): Add R_AARCH64_IRELATIVE howto.
+ (struct elf64_aarch64_link_hash_table): Add members for handling
+ R_AARCH64_IRELATIVE relocations.
+ (elf_aarch64_local_htab_hash): New function.
+ (elf_aarch64_local_htab_eq): New function.
+ (elf_aarch64_get_local_sym_hash): New function.
+ (elf64_aarch64_link_hash_table_create): Initialize local STT_GNU_IFUNC
+ symbol hash.
+ (elf64_aarch64_hash_table_free): Free local STT_GNU_IFUNC symbol hash.
+ (elf64_aarch64_final_link_relocate): Add sym argument. Add support
+ for handling STT_GNU_IFUNC symbols.
+ (elf64_aarch64_gc_sweep_hook): Add support for garbage collecting
+ references to STT_GNU_IFUNC symbols.
+ (elf64_aarch64_adjust_dynamic_symbol): Add support for handling
+ STT_GNU_IFUNC symbols.
+ (elf64_aarch64_check_relocs): Add support for handling STT_GNU_IFUNC
+ symbols. Ensure we don't increase plt.refcount from -1 to 0.
+ (elf64_aarch64_post_process_headers): Call _bfd_elf_set_osabi.
+ (elf64_aarch64_is_function_type): Remove function.
+ (elf64_aarch64_allocate_dynrelocs): Call
+ _bfd_elf_allocate_ifunc_dyn_relocs for STT_GNU_IFUNC symbols.
+ (elf_aarch64_allocate_local_dynrelocs): New function.
+ (elf64_aarch64_size_dynamic_sections): Call
+ elf_aarch64_allocate_local_dynrelocs. Initialize next_irelative_index.
+ (elf64_aarch64_create_small_pltn_entry): Add info argument.
+ Add support for creating .iplt entries for STT_GNU_IFUNC symbols.
+ (elf64_aarch64_finish_dynamic_symbol): Add support for handling
+ STT_GNU_IFUNC symbols and .iplt.
+ (elf_aarch64_finish_local_dynamic_symbol): New function.
+ (elf64_aarch64_finish_dynamic_sections): Call
+ elf_aarch64_finish_local_dynamic_symbol.
+ (elf64_aarch64_add_symbol_hook): New function.
+
+2013-06-03 Alan Modra <[email protected]>
+
+ * syms.c (_bfd_stab_section_find_nearest_line): Add last_str
+ var. Use it with last_stab.
+
+2013-05-30 Paul Brook <[email protected]>
+
+ * bfd-in2.h: Regenerate.
+ * elf32-mips.c (elf_mips_eh_howto): New.
+ (bfd_elf32_bfd_reloc_type_lookup ): Support BFD_RELOC_MIPS_EH.
+ (bfd_elf32_bfd_reloc_name_lookup): Likewise.
+ (mips_elf32_rtype_to_howto): Support R_MIPS_EH.
+ * elf64-mips.c (elf_mips_eh_howto): New.
+ (bfd_elf64_bfd_reloc_type_lookup): Support BFD_RELOC_MIPS_EH.
+ (bfd_elf64_bfd_reloc_name_lookup): Likewise.
+ (mips_elf64_rtype_to_howto): Support R_MIPS_EH.
+ * libbfd.h: Regenerate.
+ * reloc.c (BFD_RELOC_MIPS_EH): New.
+
+2013-05-29 Nick Clifton <[email protected]>
+
+ * dwarf2.c (struct dwarf2_debug): Add fields for handling
+ alternate debug info source.
+ (dwarf_debug_sections): Add entries for alternate .debug_str and
+ .debug_info sections.
+ (dwarf_debug_section_enum): Likewise.
+ (read_alt_indirect_string): New function. Handles a
+ DW_FORM_GNU_strp_alt attribute.
+ (read_alt_indirect_ref): New function. Handles a
+ DW_FORM_GNU_ref_alt attribute.
+ (read_attribute_value): Process DW_FORM_GNU_ref_alt and
+ DW_FORM_GNU_strp_alt.
+ (find_abstract_instance_name): Handle DW_FORM_GNU_ref_alt
+ attributes.
+ (_bfd_dwarf2_cleanup_debug_info): Free alternate debug info
+ sources.
+ * opncls.c (GNU_DEBUGALTLINK): Define.
+ (bfd_get_alt_debug_link_info): New function.
+ (separate_alt_debug_file_exists): New function.
+ (find_separate_debug_file): Add parameters for fetch and check
+ functions.
+ (bfd_follow_gnu_debugaltlink): New function.
+ * bfd-in2.h: Regenerate.
+
+2013-05-28 Yufeng Zhang <[email protected]>
+
+ * reloc.c (BFD_RELOC_AARCH64_TLSDESC_ADR_PAGE): Rename to ...
+ (BFD_RELOC_AARCH64_TLSDESC_ADR_PAGE21): ... this.
+ (BFD_RELOC_AARCH64_TLSDESC_LD64_PREL19): Rename to ...
+ (BFD_RELOC_AARCH64_TLSDESC_LD_PREL19): ... this.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+ * elf64-aarch64.c (IS_AARCH64_TLSDESC_RELOC): Update to use
+ the correct names.
+ (elf64_aarch64_tlsdesc_howto_table): Likewise.
+ (elf64_aarch64_reloc_map): Likewise.
+ (aarch64_resolve_relocation): Likewise.
+ (bfd_elf_aarch64_put_addend): Likewise.
+ (aarch64_tls_transition_without_check): Likewise.
+ (aarch64_reloc_got_type): Likewise.
+ (elf64_aarch64_final_link_relocate): Likewise.
+ (elf64_aarch64_tls_relax): Likewise.
+ (elf64_aarch64_relocate_section): Likewise.
+ (elf64_aarch64_gc_sweep_hook): Likewise.
+ (elf64_aarch64_check_relocs): Likewise.
+
+2013-05-26 Mark Wielaard <[email protected]>
+
+ * cache.c (BFD_CACHE_MAX_OPEN): Remove define.
+ (max_open_files): New static int initialized to zero.
+ (bfd_cache_max_open): New static function to set and return
+ max_open_files.
+ (bfd_cache_init): Use bfd_cache_max_open.
+ (bfd_open_file): Likewise.
+ * configure.in (AC_CHECK_HEADERS): Add sys/resource.h.
+ (AC_CHECK_FUNCS): Add getrlimit.
+ * configure: Regenerated.
+ * config.in: Likewise.
+ * sysdep.h: Check and include sys/resource.h for getrlimit.
+
+2013-05-23 Alan Modra <[email protected]>
+
+ * format.c (bfd_check_format_matches): Don't match a target in
+ targ_selvecs if some other target is a better match. If
+ targets implement match priority, fall back to the first of
+ the best matches.
+
+2013-05-22 Eric Herman <[email protected]>
+
+ PR binutils/15462
+ * elfxx-mips.c (_bfd_mips_elf_relocate_section): Warning fix.
+
+2013-05-22 Ralf Dreesen <[email protected]>
+
+ PR binutils/15474
+ * srec.c (srec_set_section_contents): Properly convert size
+ and offset to address when octets_per_byte is not unity.
+
+2013-05-20 Maciej W. Rozycki <[email protected]>
+
+ * elf32-vax.c (elf_vax_instantiate_got_entries): Only set the
+ refcount member of the gotplt_union when resetting the reference
+ count. Adjust comment.
+
+2013-05-20 Will Newton <[email protected]>
+
+ * elf64-aarch64.c (elf64_aarch64_link_hash_entry): Remove
+ relocs_copied member.
+ (elf64_aarch64_link_hash_newfunc): Remove initialization of
+ relocs_copied member.
+ (elf64_aarch64_copy_indirect_symbol): Remove code to copy
+ relocs_copied member.
+
+2013-05-19 Maciej W. Rozycki <[email protected]>
+
+ * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Convert K&R
+ function definition.
+
+2013-05-16 Cary Coutant <[email protected]>
+
+ * ecoff.c (ecoff_link_check_archive_element): Add initializers for
+ external_ext_size and esize.
+
+2013-05-16 Tristan Gingold <[email protected]>
+
+ * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Handle BFD_RELOC_16.
+ * coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise.
+
+2013-05-15 Andreas Schwab <[email protected]>
+
+ * elf64-aarch64.c (elf_backend_default_execstack): Define to 0.
+
+2013-05-10 Joel Brobecker <[email protected]>
+
+ * coffcode.h (styp_to_sec_flags) [RS6000COFF_C]: Add handling
+ of STYP_EXCEPT, STYP_LOADER and STYP_TYPCHK sections.
+
+2013-05-09 Joel Brobecker <[email protected]>
+
+ * bfd.c (_bfd_default_error_handler): Replace use of putc
+ by fputc. Add comment explaining why.
+
+2013-05-09 Alan Modra <[email protected]>
+
+ * elflink.c (elf_link_add_object_symbols): Don't omit reading
+ of symbols when hashes already exist.
+
+2013-05-07 Will Newton <[email protected]>
+
+ * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Add a
+ plt_header_size argument for ports where it differs from
+ plt_entry_size.
+ * elf-bfd.h: Likewise.
+ * elf32-i386.c: Pass plt_header_size to
+ _bfd_elf_allocate_ifunc_dyn_relocs.
+ * elf64-x86-64.c: Likewise.
+
+2013-05-07 Will Newton <[email protected]>
+
+ * elf-ifunc.c (_bfd_elf_create_ifunc_dyn_reloc): Remove unused
+ function.
+ * elf-bfd.h: Likewise.
+
+2013-05-06 Paul Brook <[email protected]>
+
+ * elf64-mips.c (elf_mips_gnu_pcrel32): New.
+ (bfd_elf64_bfd_reloc_type_lookup, bfd_elf64_bfd_reloc_name_lookup,
+ mips_elf64_rtype_to_howto): Handle R_MIPS_PC32.
+ * elfn32-mips.c (elf_mips_gnu_pcrel32): New.
+ (bfd_elfn32_bfd_reloc_type_lookup, bfd_elfn32_bfd_reloc_name_lookup,
+ mips_elfn32_rtype_to_howto): Handle R_MIPS_PC32.
+
+2013-05-06 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (opd_entry_value): Handle case where symbol
+ hashes are not available.
+
+2013-05-06 Alan Modra <[email protected]>
+
+ * elflink.c (elf_link_add_object_symbols): Don't save symbol
+ hashes around loading as-needed library. Zero them on allocation,
+ and restore to initial all-zero state if library not needed.
+ Arrange to reuse hashes if we load library again later.
+
+2013-05-04 Richard Sandiford <[email protected]>
+
+ * elf32-mips.c (elf_mips_copy_howto, elf_mips_jump_slot_howto):
+ Use _bfd_mips_elf_generic_reloc instead of bfd_elf_generic_reloc.
+ * elfn32-mips.c: Likewise.
+ * elf64-mips.c: Likewise.
+
+2013-05-02 Nick Clifton <[email protected]>
+
+ * archures.c: Add some more MSP430 machine numbers.
+ * config.bfd (msp430): Define targ_selvecs.
+ * configure.in: Add bfd_elf32_msp430_ti_vec.
+ * cpu-msp430.c: Add some more MSP430 machine numbers.
+ * elf32-msp430.c Add support for MSP430X relocations.
+ Add support for TI compiler generated relocations.
+ Add support for sym_diff relocations.
+ Add support for relaxing out of range short branches into long
+ branches.
+ Add support for MSP430 attribute section.
+ * reloc.c: Add MSP430X relocations.
+ * targets.c: Add bfd_elf32_msp430_ti_vec.
+ * bfd-in2.h: Regenerate.
+ * configure: Regenerate.
+ * libbfd.h: Regenerate.
+
+2013-05-01 Maciej W. Rozycki <[email protected]>
+
+ * config.bfd: Replace alpha*-*-linuxecoff* pattern with
+ alpha*-*-linux*ecoff*.
+
+2013-04-30 Olaf Flebbe <[email protected]>
+
+ PR binutils/15417
+ * elflink.c (elf_link_add_object_symbols): Initialise 'idx' to
+ zero.
+
+2013-04-30 Alan Modra <[email protected]>
+
+ * elflink.c (bfd_elf_record_link_assignment): Dont make
+ STV_INTERNAL symbols STV_HIDDEN.
+
+2013-04-29 Nick Clifton <[email protected]>
+
+ * elflink.c (_bfd_elf_gc_mark_extra_sections): Remove mark from
+ fragmented .debug_line sections associated with unmarked code
+ sections.
+
+2013-04-29 Will Newton <[email protected]>
+
+ * elf32-arm.c (elf32_arm_populate_plt_entry): Call
+ elf32_arm_add_dynreloc when emitting R_ARM_IRELATIVE relocs.
+
+2013-04-29 Will Newton <[email protected]>
+
+ * elf64-aarch64.c (elf64_aarch64_check_relocs): Move relocation
+ error check up and add error message.
+
+2013-04-26 Will Newton <[email protected]>
+
+ * elf64-aarch64.c (elf64_aarch64_check_relocs): Remove dead code.
+
+2013-04-25 Alan Modra <[email protected]>
+
+ * config.bfd: Add powerpc64le-linux.
+
+2013-04-24 H.J. Lu <[email protected]>
+
+ * config.bfd (targ_selvecs): Add bfd_elf32_x86_64_vec for
+ x86_64-*-elf*.
+
+2013-04-24 Roland McGrath <[email protected]>
+
+ * elf32-arm.c (elf32_arm_allocate_plt_entry): If HTAB->nacl_p,
+ allocate space for PLT header even if IS_IPLT_ENTRY.
+ (arm_nacl_put_plt0): New function, broken out of ...
+ (elf32_arm_finish_dynamic_sections): ... here. Call it.
+ If HTAB->nacl_p, set up the PLT header in .iplt too.
+ (elf32_arm_output_arch_local_syms): If HTAB->nacl_p, write
+ a mapping symbol for the start of .iplt too.
+
+2013-04-19 Luca Pizzamiglio <[email protected]>
+
+ * ecoff.c (_bfd_ecoff_sizeof_headers): Cast the return value of
+ BFD_ALIGN to int.
+ * elf32-tic6x.c (elf32_tic6x_size_dynamic_sections): Remove unused
+ variables.
+ * elf32-v850.c (v850_elf_relax_section): Redefine the type of 'i'
+ to bfd_vma.
+ * vms-alpha.c (evax_bfd_print_etir): Initialize sec_len.
+
+2013-04-22 Alan Modra <[email protected]>
+
+ PR ld/15382
+ * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Don't multiply
+ sh_size or reloc_count adjustment by count.
+
+2013-04-22 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_check_relocs): Don't call
+ create_linkage_sections here..
+ (ppc64_elf_init_stub_bfd): ..do so here. Return status.
+ (create_linkage_sections): Move earlier in file.
+ (ppc64_elf_setup_section_lists): Remove now useless htab->brlt test.
+ * elf64-ppc.h (ppc64_elf_init_stub_bfd): Update proto.
+
+2013-04-19 Nick Clifton <[email protected]>
+
+ PR binutils/15356
+ * compress.c (decompress_contents): Always call inflateEnd, even
+ when another inflation operation fails.
+
+2013-04-17 H.J. Lu <[email protected]>
+
+ * elf-ifunc.c: Update copyright year.
+
+2013-04-17 Luca Pizzamiglio <[email protected]>
+
+ * coffcode.h: Added a cast to void when a bfd_set_section_*()
+ macro's return value is ignored.
+ * elf32-hppa.c: Likewise.
+ * elf32-tic6x.c: Likewise.
+ * mach-o.c: Likewise.
+ * mmo.c: Likewise.
+ * opncls.c: Likewise.
+ * peicode.h: Likewise.
+ * elf32-m32r.c: Check return value of bfd_set_section_*().
+ * elfnn-ia64.c: Likewise.
+ * elfxx-mips.c: Likewise.
+ * vms-alpha.c: Likewise.
+
+2013-04-15 H.J. Lu <[email protected]>
+
+ PR ld/15371
+ * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Check
+ regular reference without non-GOT reference when building
+ shared library.
+
+2013-04-15 Alan Modra <[email protected]>
+
+ * archive.c (_bfd_archive_close_and_cleanup): Clear parent
+ cache slot for archives.
+
+2013-04-14 Hans-Peter Nilsson <[email protected]>
+
+ * mmo.c (mmo_write_chunk): Break out abfd->tdata.mmo_data to new
+ local variable mmop.
+
+2013-04-09 Senthil Kumar Selvaraj <[email protected]>
+
+ PR ld/12494
+ * elf32-avr.c: Consider all sections to determine if linker
+ relaxation can safely delete a ret after a call/jmp
+
+2013-04-09 Mingjie Xing <[email protected]>
+
+ * bfd.c (typedef bfd, Error reporting, Miscellaneous): Add
+ INODEs.
+
+2013-04-08 Tom Tromey <[email protected]>
+
+ * som.c (bfd_section_from_som_symbol): No longer static.
+ * som.h (bfd_section_from_som_symbol): Declare.
+
+2013-04-06 Alan Modra <[email protected]>
+
+ * elf32-ppc.c (ppc_elf_check_relocs): Use SYMBOLIC_BIND.
+ * elf64-ppc.c (ppc64_elf_check_relocs, dec_dynrel_count): Likewise.
+
+2013-04-05 Nick Clifton <[email protected]>
+
+ * elflink.c (elf_link_add_object_symbols): Revert accidental commit.
+
+2013-04-04 Alan Modra <[email protected]>
+
+ * bfd.c (bfd_error_type, bfd_errmsgs): Add bfd_error_missing_dso.
+ * bfd-in2.h: Regenerate.
+ * elflink.c (elf_link_add_object_symbols): Use new error.
+
+2013-04-03 Nick Clifton <[email protected]>
+
+ * elf32-v850.c (v850_elf_is_target_special_symbol): New function.
+ (bfd_elf32_bfd_is_target_special_symbol): Define.
+
+2013-04-03 Venkataramanan Kumar <[email protected]>
+
+ * elf64-aarch64.c (elf64_aarch64_gc_sweep_hook): Use
+ elf64_aarch64_locals to get local GOT reference counts.
+
+2013-04-02 DJ Delorie <[email protected]>
+
+ * elf32-rl78.c (GET_RELOC): Assert that there are relocs to get.
+ (rl78_elf_relax_section): Only fetch the next reloc if there is
+ one expected.
+
+2013-03-30 Alan Modra <[email protected]>
+
+ PR ld/15323
+ * elf-m10300.c (mn10300_elf_check_relocs): Set non_ir_ref for
+ global symbols referenced by relocs.
+ * elf32-arm.c (elf32_arm_check_relocs): Likewise.
+ * elf32-bfin.c (bfin_check_relocs): Likewise.
+ * elf32-cr16.c (cr16_elf_check_relocs): Likewise.
+ * elf32-cris.c (cris_elf_check_relocs): Likewise.
+ * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
+ * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
+ * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
+ * elf32-frv.c (elf32_frv_check_relocs): Likewise.
+ * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
+ * elf32-i370.c (i370_elf_check_relocs): Likewise.
+ * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
+ * elf32-lm32.c (lm32_elf_check_relocs): Likewise.
+ * elf32-m32c.c (m32c_elf_check_relocs): Likewise.
+ * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
+ * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
+ * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
+ * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
+ * elf32-metag.c (elf_metag_check_relocs): Likewise.
+ * elf32-microblaze.c (microblaze_elf_check_relocs): Likewise.
+ * elf32-moxie.c (moxie_elf_check_relocs): Likewise.
+ * elf32-msp430.c (elf32_msp430_check_relocs): Likewise.
+ * elf32-mt.c (mt_elf_check_relocs): Likewise.
+ * elf32-nios2.c (nios2_elf32_check_relocs): Likewise.
+ * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
+ * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
+ * elf32-rl78.c (rl78_elf_check_relocs): Likewise.
+ * elf32-s390.c (elf_s390_check_relocs): Likewise.
+ * elf32-score.c (s3_bfd_score_elf_check_relocs): Likewise.
+ * elf32-score7.c (s7_bfd_score_elf_check_relocs): Likewise.
+ * elf32-sh.c (sh_elf_check_relocs): Likewise.
+ * elf32-tic6x.c (elf32_tic6x_check_relocs): Likewise.
+ * elf32-tilepro.c (tilepro_elf_check_relocs): Likewise.
+ * elf32-v850.c (v850_elf_check_relocs): Likewise.
+ * elf32-vax.c (elf_vax_check_relocs): Likewise.
+ * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
+ * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
+ * elf64-aarch64.c (elf64_aarch64_check_relocs): Likewise.
+ * elf64-alpha.c (elf64_alpha_check_relocs): Likewise.
+ * elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
+ * elf64-ia64-vms.c (elf64_ia64_check_relocs): Likewise.
+ * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
+ * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
+ * elf64-s390.c (elf_s390_check_relocs): Likewise.
+ * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
+ * elfnn-ia64.c (elfNN_ia64_check_relocs): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
+ * elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. Don't
+ test indirect/warning links for NULL.
+
+2013-03-29 H.J. Lu <[email protected]>
+
+ PR ld/15323
+ * elf32-i386.c (elf_i386_check_relocs): Set non_ir_ref if a
+ symbol is referenced by a non-shared object.
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
+
+2013-03-28 Joe Seymour <[email protected]>
+
+ * elf32-sh.c (sh_elf_relocate_section): Suppress warnings for
+ R_SH_REL32 relocations against undefined weak symbols.
+
+2013-03-28 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (struct ppc_dyn_relocs): New.
+ (ppc64_elf_check_relocs): Separate dynrel counts for local syms
+ into ifunc and non-ifunc.
+ (dec_dynrel_count): Pass in sym rather than sym_sec. Handle
+ separate ifunc/non-ifunc dynrel counts.
+ (allocate_got): Always use reliplt for ifunc.
+ (allocate_dynrelocs): Likewise.
+ (ppc64_elf_size_dynamic_sections): Likewise.
+ (ppc64_elf_layout_multitoc): Likewise.
+ (ppc64_elf_relocate_section): Likewise.
+
+2013-03-28 Alan Modra <[email protected]>
+
+ * elf32-ppc.c (struct ppc_dyn_relocs): New.
+ (ppc_elf_check_relocs): Separate dynrel counts for local syms
+ into ifunc and non-ifunc.
+ (allocate_dynrelocs): Always put ifunc relocs into reliplt.
+ (ppc_elf_size_dynamic_sections): Likewise.
+ (ppc_elf_relocate_section): Likewise.
+
+2013-03-28 Alan Modra <[email protected]>
+
+ * elf-bfd.h (enum elf_reloc_type_class): Add reloc_class_ifunc.
+ (struct elf_backend_data <elf_backed_reloc_type_class>): Add
+ bfd_link_info* and asection* params.
+ (_bfd_elf_reloc_type_class): Likewise.
+ * elf.c (_bfd_elf_reloc_type_class): Likewise.
+ * elflink.c (elf_link_sort_cmp2): Sort first on reloc class.
+ (elf_link_sort_relocs): Update elf_backed_reloc_type_class call.
+ * elf32-ppc.c (ppc_elf_reloc_type_class): Return reloc_class_ifunc
+ for any reliplt reloc. Don't return reloc_class_plt for
+ R_PPC_REL24 and R_PPC_ADDR24.
+ * elf64-ppc.c (allocate_got): Formatting.
+ (ppc64_elf_reloc_type_class): Return reloc_class_ifunc for any
+ reliplt reloc.
+ * elf-m10300.c, * elf32-arm.c, * elf32-bfin.c, * elf32-cr16.c,
+ * elf32-cris.c, * elf32-hppa.c, * elf32-i386.c, * elf32-lm32.c,
+ * elf32-m32r.c, * elf32-m68k.c, * elf32-metag.c, * elf32-nios2.c,
+ * elf32-s390.c, * elf32-sh.c, * elf32-sparc.c, * elf32-tilepro.c,
+ * elf32-vax.c, * elf32-xtensa.c, * elf64-aarch64.c, * elf64-alpha.c,
+ * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-s390.c, * elf64-sparc.c,
+ * elf64-x86-64.c, * elfnn-ia64.c, * elfxx-tilegx.c, * elfxx-tilegx.h:
+ Add extra params to the various reloc_type_class functions.
+
+2013-03-27 Alan Modra <[email protected]>
+
+ * elf32-ppc.c (ppc_elf_check_relocs): Set PLT_IFUNC in local got
+ masks for all local ifunc syms.
+ (allocate_dynrelocs): Don't use htab->relgot for ifunc.
+ (ppc_elf_size_dynamic_sections): Likewise.
+ (ppc_elf_relocate_section): Likewise.
+
+2013-03-27 Will Newton <[email protected]>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate): Avoid emitting a
+ dynamic reloc for symbols with dynindx == -1.
+ (allocate_dynrelocs_for_symbol): Avoid allocating space for a
+ dynamic reloc for symbols with dynindx == -1.
+
+2013-03-27 Will Newton <[email protected]>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate): Avoid emitting a
+ dynamic reloc for non-default visibility undefined weaks.
+ (allocate_dynrelocs_for_symbol): Avoid allocating space for a
+ dynamic reloc for non-default visibility undefined weaks.
+
+2013-03-26 Alan Modra <[email protected]>
+
+ * elflink.c (_bfd_elf_add_default_symbol): Preserve section
+ over _bfd_elf_merge_symbol calls.
+
+2013-03-26 Alan Modra <[email protected]>
+
+ * elflink.c (elf_link_add_object_symbols): Add assertion for
+ common override alignment check code. Formatting.
+
+2013-03-25 Alan Modra <[email protected]>
+
+ * elflink.c (_bfd_elf_merge_symbol): Set old_alignment for
+ usual common symbols as well as for dynamic. Add poldbfd param.
+ Save old bfd. Adjust callers.
+ (_bfd_elf_add_default_symbol): Add poldbfd param. Pass "section"
+ and "value" by value, not pointer. Adjust caller.
+ (elf_link_add_object_symbols): Combine undef_bfd and old_bfd vars.
+ Delete code to set same. Use old_bfd and old_alignment from
+ _bfd_elf_merge_symbol instead. Add default symbol before
+ alignment and size checks. Wrap overlong lines.
+
+2013-03-25 Alan Modra <[email protected]>
+
+ * elflink.c (_bfd_elf_add_default_symbol): Delete "override" param.
+ (elf_link_add_object_symbols): Don't call _bfd_elf_add_default_symbol
+ when override is true.
+
+2013-03-25 Alan Modra <[email protected]>
+
+ * elflink.c (_bfd_elf_merge_symbol): Use local var holding value
+ of *sym_hash.
+
+2013-03-25 Alan Modra <[email protected]>
+
+ * elflink.c (_bfd_elf_merge_symbol): Don't discard TLS symbols here.
+ Wrap long lines.
+ (elf_link_add_object_symbols): Discard TLS symbols for --just-syms
+ early in symbol loop.
+
+2013-03-25 Alan Modra <[email protected]>
+
+ * elf-bfd.h (struct elf_backend_data <merge_symbol>): Update proto.
+ (_bfd_elf_init_reloc_shdr): Delete.
+ * elf.c (_bfd_elf_init_reloc_shdr): Make static.
+ * elf64-x86-64.c (elf_x86_64_merge_symbol): Trim parameters to
+ just what is needed.
+ * elflink.c (_bfd_elf_merge_symbol): Update bed->merge_symbol call.
+
+2013-03-23 Alan Modra <[email protected]>
+
+ * elf-bfd.h (_bfd_elf_merge_symbol): Delete declaration.
+ * elflink.c (_bfd_elf_merge_symbol): Make static.
+ * elf32-sh-symbian.c (sh_symbian_relocate_section): Don't call
+ _bfd_elf_merge_symbol, call _bfd_generic_link_add_one_symbol.
+
+2013-03-23 Alan Modra <[email protected]>
+
+ PR ld/15270
+ * elflink.c (elf_link_add_object_symbols): Don't set def_regular
+ or ref_regular for BFD_PLUGIN owned syms, or have them affect
+ def_dynamic/ref_dynamic.
+ (_bfd_elf_fix_symbol_flags): Don't set def_regular for BFD_PLUGIN
+ owned syms.
+
+2013-03-22 David S. Miller <[email protected]>
+
+ * elfxx-sparc.c (_bfd_sparc_elf_merge_private_bfd_data): Set type of
+ hwcaps attribute.
+
+2013-03-22 Achille Fouilleul <[email protected]>
+
+ PR ld/14902
+ * elf32-h8300.c (elf32_h8_relax_delete_bytes): Fix off by one
+ errors adjusting relocs and symbols.
+
+2013-03-21 Michael Schewe <[email protected]>
+
+ * elf32-h8300 (h8_relax_section): Add new relaxation of mov
+ @(disp:32,ERx) to mov @(disp:16,ERx).
+ (R_H8_DISP32A16): New reloc.
+ Comments added and corrected.
+ * reloc.c (BFD_RELOC_H8_DISP32A16): New reloc.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2013-03-21 Kai Tietz <[email protected]>
+
+ * coffgen.c (coff_real_object_p): Make global.
+ * peicode.h (coff_real_object_p): Add prototype.
+ (FILHDR): Defined for COFF_IMAGE_WITH_PE as
+ external_PEI_IMAGE_hdr structure.
+ (coff_swap_filehdr_in): Handle variable header-size.
+ * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Just handle amount
+ of directory-entiries as specified in pe-header.
+
+2013-03-21 Nick Clifton <[email protected]>
+
+ PR sim/15286
+ * elf32-arm.c (bfd_arm_get_mach_from_attributes): Identify XScale,
+ iWMMXt and iWMMXt2 processors from attributes.
+
+2013-03-20 Alan Modra <[email protected]>
+
+ * elflink.c (_bfd_elf_make_dynamic_reloc_section): Override
+ sh_type according to is_rela.
+
+2013-03-18 Alan Modra <[email protected]>
+
+ PR ld/12549
+ * elflink.c (elf_link_add_object_symbols): Exclude weak refs when
+ considering whether an --as-needed library is needed.
+
+2013-03-14 Tom Tromey <[email protected]>
+
+ * opncls.c (bfd_get_debug_link_info): Rename from
+ get_debug_link_info. Export. Update comment.
+ (find_separate_debug_file): Update.
+ * bfd-in2.h: Rebuild.
+
+2013-03-08 Venkataramanan Kumar <[email protected]>
+
+ * elf64-aarch64.c (elf_backend_can_gc_sections): Enable gc-section
+ support.
+ (elf64_aarch64_gc_sweep_hook): Handle GOT, TLS and PLT related
+ relocs.
+
+2013-03-08 Andreas Arnez <[email protected]>
+
+ * elf-bfd.h (elfcore_write_s390_tdb): Add prototype.
+ * elf.c (elfcore_write_s390_tdb): New function.
+ (elfcore_write_register_note): Call it.
+ (elfcore_grok_s390_tdb): New function.
+ (elfcore_grok_note): Call it.
+
+2013-03-08 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (mips_elf_allocate_lazy_stub): Correct data type.
+
+2013-03-05 Corinna Vinschen <[email protected]>
+
+ * config.bfd: Add x86_64-*-cygwin to list of supported targets.
+
+2013-03-04 Alan Modra <[email protected]>
+
+ * elf32-ppc.c (ppc_elf_relocate_section <R_PPC_PLTREL24>): Adjust
+ non-zero addends when relocatable, rather than addends >= 32768.
+ Always zero "addend" before applying relocation.
+
+2013-03-04 Nick Clifton <[email protected]>
+
+ * archive64.c (bfd_elf64_archive_write_armap): Fix calculation of
+ file pointer offsets for thin archives.
+
+2013-02-28 Nathan Sidwell <[email protected]>
+
+ * elf32-arm.c (elf32_arm_size_dynamic_sections): Don't call
+ elf32_arm_allocate_dynrelocs for source reloc for non-dynamic link.
+
+2013-02-27 DJ Delorie <[email protected]>
+
+ * reloc.c (BFD_RELOC_RL78_CODE): Add.
+ * libbfd.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+ * elf32-rl78.c (rl78_elf_relocate_section): Handle weak code
+ references in compuated relocs.
+
+2013-02-26 Anthony Green <[email protected]>
+
+ * config.bfd: Extend moxie-rtems target triplet name support.
+
+2013-02-21 H.J. Lu <[email protected]>
+
+ PR ld/15167
+ * elf64-ia64-vms.c (elf64_vms_link_add_object_symbols): Set
+ unique_global only for definition.
+ * elflink.c (_bfd_elf_merge_symbol): Don't set unique_global
+ here.
+ (elf_link_add_object_symbols): Set unique_global only
+ for definition.
+
+2013-02-21 Alan Modra <[email protected]>
+
+ * elf-bfd.h (struct elf_build_id): Extracted from..
+ (struct elf_build_id_info): ..here. Delete.
+ (struct output_elf_obj_tdata): New, extracted from..
+ (struct elf_obj_tdata): ..here. Reorganize for better packing.
+ Add "o" field.
+ (elf_program_header_size): Reference tdata->o.
+ (elf_seg_map, elf_next_file_pos, elf_eh_frame_hdr, elf_linker,
+ elf_stack_flags, elf_shstrtab, elf_strtab_sec, elf_shstrtab_sec,
+ elf_section_syms, elf_num_section_syms, elf_flags_init): Likewise.
+ * elf.c (bfd_elf_allocate_object): Allocate output_elf_obj_tdata
+ when opening bfd in any mode that might write.
+ (_bfd_elf_write_object_contents): Use build_id field in
+ output_elf_obj_tdata.
+ (_bfd_elf_close_and_cleanup): Tweak elf_shstrtab test.
+ (elfobj_grok_gnu_build_id): Adjust for elf_tdata changes.
+
+2013-02-21 Alan Modra <[email protected]>
+
+ * elf-bfd.h (struct core_elf_obj_tdata): New.
+ (struct elf_obj_tdata): Delete core_signal, core_pid, core_lwpid,
+ core_program, and core_command. Add "core".
+ * elf.c (bfd_elf_mkcorefile): Allocate "core" struct.
+ Update all refs to tdata core fields.
+ * elf32-am33lin.c, * elf32-arm.c, * elf32-cris.c, * elf32-frv.c,
+ * elf32-hppa.c, * elf32-i386.c, * elf32-m68k.c, * elf32-mips.c,
+ * elf32-nios2.c, * elf32-ppc.c, * elf32-s390.c, * elf32-score.c,
+ * elf32-score7.c, * elf32-sh.c, * elf32-sparc.c, * elf32-tilegx.c,
+ * elf32-tilepro.c, * elf32-xtensa.c, * elf64-aarch64.c,
+ * elf64-hppa.c, * elf64-mips.c, * elf64-ppc.c, * elf64-tilegx.c,
+ * elf64-x86-64.c, * elfcore.h, * elfn32-mips.c: Update all refs
+ to tdata core fields.
+
+2013-02-21 Alan Modra <[email protected]>
+
+ * elf-bfd.h (struct elf_obj_tdata): Rename segment_map to seg_map.
+ Delete num_locals and num_globals.
+ (elf_num_locals, elf_num_globals): Don't define.
+ (elf_seg_map, elf_next_file_pos, elf_eh_frame_hdr, elf_linker,
+ elf_stack_flags, elf_strtab_sec, elf_shstrtab_sec): Define.
+ * bfd.c, * elf-eh-frame.c, * elf-nacl.c, * elf-vxworks.c, * elf.c,
+ * elf32-arm.c, * elf32-lm32.c, * elf32-ppc.c, * elf32-rx.c,
+ * elf32-spu.c, * elf64-hppa.c, * elfcode.h, * elflink.c,
+ * elfnn-ia64.c, * elfxx-mips.c: Use newly defined elf_obj_tdata
+ accessor macros.
+ * elf.c (elf_map_symbols): Add pnum_locals param. Return
+ number of locals syms via new param.
+ (swap_out_syms): Adjust to suit elf_map_symbols change.
+
+2013-02-19 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Also clear
+ STO_MICROMIPS annotation.
+
+2013-02-19 Alan Modra <[email protected]>
+
+ * configure.in: Bump version to 2.23.52.
+ * elf-bfd.h (struct elf_build_id_info): New.
+ (struct elf_obj_tdata): Delete after_write_object_contents,
+ after_write_object_contents_info and build_id_size. Make build_id
+ a pointer to struct elf_build_id_info.
+ * elf.c (_bfd_elf_write_object_contents): Style. Update
+ after_write_ibject_contents invocation.
+ (elfobj_grok_gnu_build_id): Update for new build_id struct. Don't
+ allow zero size notes.
+ * configure: Regenerate.
+
+2013-02-18 Maciej W. Rozycki <[email protected]>
+
+ * elf64-mips.c (micromips_elf64_howto_table_rel): Add
+ R_MICROMIPS_SCN_DISP and R_MICROMIPS_JALR.
+ (micromips_elf64_howto_table_rela): Likewise.
+ (micromips_reloc_map): Add BFD_RELOC_MICROMIPS_JALR.
+ * elfn32-mips.c (elf_micromips_howto_table_rel): Add
+ R_MICROMIPS_SCN_DISP and R_MICROMIPS_JALR.
+ (elf_micromips_howto_table_rela): Likewise.
+ (micromips_reloc_map): Add BFD_RELOC_MICROMIPS_JALR.
+
+2013-02-18 Paul Brook <[email protected]>
+
+ * elfxx-mips.c (MICROMIPS_P): New macro.
+ (_bfd_mips_elf_symbol_processing): Use it.
+
+2013-02-18 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (_bfd_mips_elf_create_dynamic_sections): Clarify
+ comment on _PROCEDURE_LINKAGE_TABLE_ creation.
+
+2013-02-18 Alan Modra <[email protected]>
+
+ PR ld/12549
+ * elf-bfd.h (_bfd_elf_strtab_clear_refs): Delete.
+ (_bfd_elf_strtab_clear_all_refs): Declare.
+ (_bfd_elf_strtab_resize): Declare.
+ * elf-strtab.c (_bfd_elf_strtab_clear_refs): Delete.
+ (_bfd_elf_strtab_clear_all_refs): New function.
+ (_bfd_elf_strtab_resize): Likewise.
+ * elflink.c (elf_link_add_object_symbols): Use _bfd_elf_strtab_resize.
+
+2013-02-18 Alan Modra <[email protected]>
+
+ * elf-bfd.h (struct elf_obj_tdata): Move find_line_info, local_stubs,
+ local_call_stubs, elf_data_symbol, elf_text_symbol, elf_data_section,
+ and elf_text_section to..
+ * elfxx-mips.c (struct mips_elf_obj_tdata): ..here. Update all refs.
+ * elf64-alpha.c (struct mips_elf_find_line): Rename to..
+ (struct alpha_elf_find_line): ..this.
+ (struct alpha_elf_obj_tdata): Add find_line_info, update refs.
+
+2013-02-16 H.J. Lu <[email protected]>
+
+ PR ld/15146
+ * elflink.c (elf_link_add_object_symbols): Don't add DT_NEEDED
+ for references from the dummy bfd.
+
+2013-02-16 H.J. Lu <[email protected]>
+
+ PR ld/15149
+ * elflink.c (elf_link_add_object_symbols): Also track weak
+ references.
+
+2013-02-15 H.J. Lu <[email protected]>
+
+ PR binutils/15151
+ * archive.c (_bfd_find_nested_archive): Don't allow a nested
+ archive pointing to itself.
+ (_bfd_get_elt_at_filepos): Revert the last 2 changes.
+
+2013-02-15 Nick Clifton <[email protected]>
+
+ PR binutils/15140
+ * archive.c (_bfd_get_elt_at_filepos): Prevent an infinite loop
+ accessing a corrupt nested archive.
+
+2013-02-13 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_got_page_ref): New structure.
+ (mips_got_page_entry): Use a section rather than a (bfd, symndx)
+ pair to represent the anchor point.
+ (mips_got_info): Add a got_page_refs field.
+ (mips_elf_link_hash_table): Add a sym_cache field.
+ (mips_got_page_ref_hash, mips_got_page_ref_eq): New functions.
+ (mips_got_page_entry_hash, mips_got_page_entry_eq): Update for
+ new anchor representation.
+ (mips_elf_create_got_info): Create got_page_refs rather than
+ got_page_entries.
+ (mips_elf_record_got_page_ref): New function.
+ (mips_elf_pages_for_range): Move further down file.
+ (mips_elf_record_got_page_entry): Likewise. Take a got as argument.
+ Use a section rather than a (bfd, symndx) pair to represent the
+ anchor point.
+ (mips_elf_resolve_got_page_ref): New function.
+ (mips_elf_resolve_final_got_entries): Use it to populate
+ got_page_entries.
+ (_bfd_mips_elf_check_relocs): Call mips_elf_record_got_page_ref
+ rather than mips_elf_record_got_page_entry. Only nullify h
+ afterwards.
+ (mips_elf_lay_out_got): Call mips_elf_resolve_final_got_entries
+ earlier.
+
+2013-02-12 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_lay_out_got): Count VxWorks GOT relocs
+ in g->relocs.
+
+2013-02-12 Alan Modra <[email protected]>
+
+ * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Provide
+ suitable definition when using generic linker hash table.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_count_got_entries): Delete.
+ (mips_elf_check_recreate_got, mips_elf_recreate_got): Take a
+ mips_elf_traverse_got_arg. Count GOT entries.
+ (mips_elf_resolve_final_got_entries): Take the bfd_link_info
+ as argument. Update after above changes.
+ (mips_elf_merge_got, mips_elf_lay_out_got): Don't call
+ mips_elf_count_got_entries. Update the calls to
+ mips_elf_resolve_final_got_entries.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_got_tls_type): New enum.
+ (mips_got_entry): Add tls_initialized.
+ (mips_elf_got_entry_hash, mips_elf_got_entry_eq, mips_tls_got_relocs)
+ (mips_elf_count_got_entry, mips_elf_initialize_tls_index): Remove
+ GOT_TLS_TYPE masks.
+ (mips_elf_reloc_tls_type, mips_tls_got_entries)
+ (mips_elf_record_global_got_symbol, mips_elf_initialize_tls_index)
+ (_bfd_mips_elf_finish_dynamic_symbol): Use GOT_TLS_NONE rather
+ than GOT_NORMAL.
+ (mips_elf_initialize_tls_slots): Replace got_offset and tls_type_p
+ arguments with a GOT entry. Remove GOT_TLS_TYPE masks. Use
+ tls_initialized rather than GOT_TLS_DONE.
+ (mips_tls_got_index): Delete.
+ (mips_elf_local_got_index, mips_elf_global_got_index): Use
+ mips_elf_initialize_tls_slots rather than mips_tls_got_index.
+ (mips_elf_record_got_entry): Initialize tls_initialized.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_got_entry): Remove tls_ldm_offset.
+ (mips_elf_link_hash_entry): Remove tls_ie_type, tls_gd_type,
+ tls_ie_got_offset and tls_gd_got_offset.
+ (mips_elf_link_hash_newfunc): Remove initialization.
+ (mips_elf_create_got_info): Likewise.
+ (mips_elf_count_local_got_entries, mips_elf_count_global_tls_entries)
+ (mips_tls_single_got_index): Delete.
+ (mips_elf_local_got_index): Always use the GOT entry to track
+ GOT indices.
+ (mips_elf_global_got_index): Likewise.
+ (mips_elf_create_local_got_entry): Assert that TLS entries have
+ already been allocated.
+ (mips_elf_record_global_got_symbol): Don't initialize
+ tls_ie_type or tls_gd_type.
+ (mips_elf_count_got_symbols): Only count reloc-only GOT entries here.
+ (mips_elf_initialize_tls_index): Allocate a GOT index for every TLS
+ entry.
+ (mips_elf_lay_out_got): Use mips_elf_count_got_entries to count
+ the GOT entries.
+ (_bfd_mips_elf_finish_dynamic_symbol): Assert that TLS GOT offsets
+ have been allocated.
+ (_bfd_mips_elf_copy_indirect_symbol): Remove handling of
+ tls_ie_type and tls_gd_type.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_create_local_got_entry): Tidy. Avoid
+ aliasing violation. Check for htab allocation failures.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_primary_global_got_index): New function,
+ split out from...
+ (mips_elf_global_got_index): ...here. Reorder arguments so that
+ the output bfd and info come first.
+ (mips_elf_calculate_relocation): Update the call to
+ mips_elf_global_got_index accordingly.
+ (_bfd_mips_elf_finish_dynamic_symbol): Use
+ mips_elf_primary_global_got_index rather than
+ mips_elf_global_got_index.
+ (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_got_entry): Update comments.
+ (mips_elf_multi_got_entry_eq): Rename to...
+ (mips_elf_got_entry_eq): ...this, deleting the old definition.
+ (mips_elf_create_got_info): Remove master_got_p argument.
+ Always use mips_elf_got_entry_eq.
+ (mips_elf_bfd_got, mips_elf_multi_got, mips_elf_create_got_section):
+ Update calls accordingly.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_got_info): Remove bfd2got.
+ (mips_elf_bfd2got_hash): Delete.
+ (mips_elf_got_per_bfd_arg): Remove bfd2got.
+ (mips_elf_replace_bfd_got, mips_elf_count_got_entries): New functions.
+ (mips_elf_global_got_index, mips_elf_create_local_got_entry): Use
+ g->next to test for the multigot case. Use mips_elf_bfd_got rather
+ than mips_elf_got_for_ibfd.
+ (mips_elf_bfd2got_entry_hash, mips_elf_bfd2got_entry_eq)
+ (mips_elf_got_for_ibfd, mips_elf_get_got_for_bfd): Delete.
+ (mips_elf_make_got_per_bfd): Replace with...
+ (mips_elf_add_got_entry): ...this new function.
+ (mips_elf_make_got_pages_per_bfd): Replace with...
+ (mips_elf_add_got_page_entry): ...this new function.
+ (mips_elf_merge_got_with): Replace bfd2got argument with separate
+ bfd and GOT arguments. Use mips_elf_add_got_entry and
+ mips_elf_add_got_page_entry instead of mips_elf_make_got_per_bfd
+ and mips_elf_make_got_pages_per_bfd. Use mips_elf_replace_bfd_got
+ to set the BFD's GOT and free the old table.
+ (mips_elf_merge_got): Replace bfd2got argument with separate
+ bfd and GOT arguments. Apply mips_elf_resolve_final_got_entries.
+ Use mips_elf_count_got_entries to count the number of entries in
+ each GOT. Update the calls to mips_elf_merge_got_with.
+ (mips_elf_adjust_gp): Use g->next to test for the multigot case.
+ Use mips_elf_bfd_got rather than mips_elf_got_for_ibfd.
+ (mips_elf_multi_got): Don't create the bfd2got hash table.
+ Replace hash table traversal with a walk over the input bfds,
+ updating the call to mips_elf_merge_got. Use mips_elf_replace_bfd_got
+ to set the output bfd's GOT.
+ (mips_elf_lay_out_got): Rename "sub" to "ibfd". Record that all
+ bfds use the master GOT in the single-GOT case.
+ (_bfd_mips_elf_finish_dynamic_sections): Use mips_elf_bfd_got
+ rather than mips_elf_got_for_ibfd.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_obj_tdata): Add a got field.
+ (mips_elf_bfd_got, mips_elf_record_got_entry): New functions.
+ (mips_elf_record_global_got_symbol): Update the hash entry before
+ adding the mips_got_entry. Use mips_elf_record_got_entry to do
+ the latter.
+ (mips_elf_record_local_got_symbol): Use mips_elf_record_got_entry.
+ (mips_elf_record_got_page_entry): Record the entry in both the
+ master and bfd GOTs.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_recreate_got): Don't change the entry;
+ create another one if necessary.
+ (mips_elf_set_gotidx): New function.
+ (mips_elf_set_global_gotidx): Use it.
+ (mips_elf_initialize_tls_index): Likewise. Take a
+ mips_elf_traverse_got_arg as argument.
+ (mips_elf_lay_out_got): Update use of mips_elf_initialize_tls_index.
+ (mips_elf_multi_got): Likewise. Cope with error returns from
+ mips_elf_set_global_gotidx.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_got_info): Add relocs field.
+ (mips_elf_set_global_got_offset_arg, mips_elf_count_tls_arg): Replace
+ with...
+ (mips_elf_traverse_got_arg): ...this new structure.
+ (mips_elf_count_local_tls_relocs): Delete.
+ (mips_elf_count_global_tls_relocs): Likewise.
+ (mips_elf_count_got_entry): New function.
+ (mips_elf_count_local_got_entries): Likewise.
+ (mips_elf_count_global_tls_entries): Take a mips_elf_traverse_got_arg
+ rather than a mips_elf_count_tls_arg. Count both relocs and entries.
+ (mips_elf_record_local_got_symbol): Don't count got entries here.
+ (mips_elf_make_got_per_bfd): Use mips_elf_count_got_entry.
+ (mips_elf_set_global_got_offset): Split into...
+ (mips_elf_set_global_got_area, mips_elf_set_global_gotidx): ...these
+ new functions. Take a mips_elf_traverse_got_arg rather than a
+ mips_elf_set_global_got_offset_arg. Don't count TLS relocs here.
+ Use g->relocs to record the number of relocs needed for global GOT
+ entries.
+ (mips_elf_multi_got): Use mips_elf_traverse_got_arg rather than
+ mips_elf_set_global_got_offset_arg. Use the relocs field to count
+ relocations. Update for above function split.
+ (mips_elf_lay_out_got): Use mips_elf_count_local_got_entries
+ to count both the number of GOT entries and the number of TLS
+ relocs required by local entries. Likewise
+ mips_elf_count_global_tls_entries and global entries.
+ Remove uses of mips_elf_count_local_tls_relocs and
+ mips_elf_count_global_tls_relocs.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_got_entry): Update comment above tls_type entry
+ to say that each structure represents only one type of TLS reference.
+ (GOT_TLS_TYPE): New define.
+ (mips_elf_link_hash_entry): Temporarily split tls_type and
+ tls_got_offset into two variables each.
+ (mips_elf_link_hash_newfunc): Update accordingly.
+ (mips_elf_got_entry_eq, mips_elf_got_entry_hash)
+ (mips_elf_multi_got_entry_eq): Require the tls_type to be the same.
+ (mips_elf_reloc_tls_type, mips_tls_got_entries): New functions.
+ (mips_tls_got_relocs): Use a switch statement.
+ (mips_elf_count_global_tls_entries): Handle the new hash entry fields.
+ (mips_elf_initialize_tls_slots): Use a switch statement. Avoid
+ local "offset" variable.
+ (mips_tls_got_index): Remove r_type argument and assert. Remove
+ code that handled entries with two TLS types; always use the
+ original got_index instead.
+ (mips_tls_single_got_index): New function.
+ (mips_elf_local_got_index): Use entry->tls_type to check for
+ TLS entries. Use mips_tls_single_got_index. Update call to
+ mips_tls_got_index.
+ (mips_elf_global_got_index): Use mips_elf_reloc_tls_type.
+ Use p->tls_type to check for TLS entries. Update call to
+ mips_tls_got_index. Use mips_tls_single_got_index.
+ (mips_elf_create_local_got_entry): Use mips_elf_reloc_tls_type.
+ Use entry.tls_type to check for TLS entries.
+ (mips_elf_record_global_got_symbol): Replace tls_flag argument
+ with r_type argument. Use mips_elf_reloc_tls_type.
+ Set up the new hash entry fields.
+ (mips_elf_record_local_got_symbol): Replace tls_flag argument
+ with r_type argument. Use mips_elf_reloc_tls_type and
+ mips_tls_got_entries. Remove code that handled entries
+ with multiple TLS types.
+ (mips_elf_make_got_per_bfd): Use mips_tls_got_entries.
+ (mips_elf_initialize_tls_index): Handle new hash entry fields.
+ Use equality rather than masks when checking for specific TLS types.
+ Use mips_tls_got_entries. Remove code that handled entries
+ with multiple TLS types.
+ (mips_elf_calculate_relocation): Use TLS_RELOC_P instead of
+ testing the hash table entry.
+ (_bfd_mips_elf_check_relocs): Update calls to
+ mips_elf_record_global_got_symbol and mips_elf_record_local_got_symbol.
+ (_bfd_mips_elf_finish_dynamic_symbol): Don't check h->type.
+ (_bfd_mips_elf_copy_indirect_symbol): Handle new hash entry fields.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_multi_got_entry_hash): Rename to...
+ (mips_elf_got_entry_hash): ...this, deleting the old version.
+ (mips_elf_create_got_info): Use mips_elf_got_entry_hash for
+ both types of GOT.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_create_got_info): New function.
+ (mips_elf_get_got_for_bfd, mips_elf_multi_got): Use it.
+ (mips_elf_create_got_section): Likewise.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_record_local_got_symbol): Always set
+ gotidx to -1.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_multi_got): Simplify size calculation.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_got_info): Move global_gotsym to...
+ (mips_elf_link_hash_table): ...here. Update rest of file accordingly.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_count_global_tls_entries)
+ (mips_elf_count_global_tls_relocs): Don't count indirect or
+ warning symbols.
+ (mips_elf_multi_got, mips_elf_lay_out_got): Assert that the right
+ number of TLS entries were allocated.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_sort_hash_table_f): Remove asserts.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_merge_got_with): Only use arg->global_count
+ if there are TLS relocations.
+
+2013-02-11 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_recreate_got): Remove free.
+ (mips_elf_resolve_final_got_entries): Remove bogus comment.
+
+2013-02-11 Alan Modra <[email protected]>
+
+ * elfcode.h (elf_checksum_contents): Free contents.
+ * elf-bfd.h (_bfd_elf_link_hash_table_free): Declare.
+ * elflink.c (_bfd_elf_link_hash_table_free): New function.
+ (elf_final_link_free): New function, extracted from..
+ (bfd_elf_final_link): ..here. Always call
+ _bfd_elf_write_section_eh_frame_hdr.
+ * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Default to
+ _bfd_elf_link_hash_table_free.
+ * libbfd-in.h (_bfd_merge_sections_free): Declare.
+ * libbfd.h: Regenerate.
+ * merge.c (_bfd_merge_sections_free): New function.
+ * elf-eh-frame.c (_bfd_elf_write_section_eh_frame_hdr): Free
+ hdr_info->array.
+ * elf-m10300.c (elf32_mn10300_link_hash_table_free): Call
+ _bfd_elf_link_hash_table_free.
+ * elf32-arm.c (elf32_arm_link_hash_table_free): Likewise.
+ * elf32-avr.c (elf32_avr_link_hash_table_free): Likewise.
+ * elf32-hppa.c (elf32_hppa_link_hash_table_free): Likewise.
+ * elf32-i386.c (elf_i386_link_hash_table_free): Likewise.
+ * elf32-m68hc1x.c (m68hc11_elf_hash_table_free): Likewise.
+ * elf32-m68k.c (elf_m68k_link_hash_table_free): Likewise.
+ * elf32-metag.c (elf_metag_link_hash_table_free): Likewise.
+ * elf32-xgate.c (xgate_elf_bfd_link_hash_table_free): Likewise.
+ * elf64-aarch64.c (elf64_aarch64_link_hash_table_free): Likewise.
+ * elf64-ia64-vms.c (elf64_ia64_hash_table_free): Likewise.
+ * elf64-ppc.c (ppc64_elf_link_hash_table_free): Likewise.
+ * elf64-x86-64.c (elf_x86_64_link_hash_table_free): Likewise.
+ * elfnn-ia64.c (elfNN_ia64_hash_table_free): Likewise.
+ * elf32-cr16.c (elf32_cr16_link_hash_table_free): Delete.
+ (bfd_elf32_bfd_link_hash_table_free): Don't define.
+ * elf32-tic6x.c (elf32_tic6x_link_hash_table_free): Delete.
+ (bfd_elf32_bfd_link_hash_table_free): Dont' define.
+
+2013-02-10 Alan Modra <[email protected]>
+
+ * coff-arm.c (coff_arm_link_hash_table_create): Use bfd_zmalloc.
+ * coff-h8300.c (h8300_coff_link_hash_table_create): Likewise.
+ * m68klinux.c (linux_link_hash_table_create): Likewise.
+ * sparclinux.c (linux_link_hash_table_create): Likewise.
+ * sunos.c (sunos_link_hash_table_create): Likewise.
+ * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise.
+ * elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise.
+ * elf32-arm.c (elf32_arm_link_hash_table_create): Likewise.
+ * elf32-avr.c (elf32_avr_link_hash_table_create): Likewise.
+ * elf32-cr16.c (elf32_cr16_link_hash_table_create): Likewise.
+ * elf32-cris.c (elf_cris_link_hash_table_create): Likewise.
+ * elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise.
+ * elf32-i386.c (elf_i386_link_hash_table_create): Likewise.
+ * elf32-lm32.c (lm32_elf_link_hash_table_create): Likewise.
+ * elf32-m32r.c (m32r_elf_link_hash_table_create): Likewise.
+ * elf32-m68hc1x.c (m68hc11_elf_hash_table_create): Likewise.
+ * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise.
+ * elf32-metag.c (elf_metag_link_hash_table_create): Likewise.
+ * elf32-nios2.c (nios2_elf32_link_hash_table_create): Likewise.
+ * elf32-s390.c (elf_s390_link_hash_table_create): Likewise.
+ * elf32-score.c (elf32_score_link_hash_table_create): Likewise.
+ * elf32-spu.c (spu_elf_link_hash_table_create): Likewise.
+ * elf32-tic6x.c (elf32_tic6x_link_hash_table_create): Likewise.
+ * elf32-vax.c (elf_vax_link_hash_table_create): Likewise.
+ * elf32-xgate.c (xgate_elf_bfd_link_hash_table_create): Likewise.
+ * elf32-xtensa.c (elf_xtensa_link_hash_table_create): Likewise.
+ * elf64-aarch64.c (elf64_aarch64_link_hash_table_create): Likewise.
+ * elf64-s390.c (elf_s390_link_hash_table_create): Likewise.
+ * elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise.
+ * elf64-x86-64.c (elf_x86_64_link_hash_table_create): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
+ * elflink.c (_bfd_elf_link_hash_table_create): Likewise.
+ (_bfd_elf_link_hash_table_init): Assume zero fill table on entry.
+
+2013-02-10 Alan Modra <[email protected]>
+
+ * i386linux.c (linux_link_hash_table_create): Allocate table
+ with bfd_zmalloc, not bfd_alloc.
+ * pdp11.c (link_hash_table_create): Allocate table with
+ bfd_malloc, not bfd_alloc.
+ * elf32-bfin.c (bfinfdpic_elf_link_hash_table_create): Allocate table
+ with bfd_zmalloc, not bfd_zalloc.
+ (bfin_link_hash_table_create): Likewise.
+ * elf32-frv.c (frvfdpic_elf_link_hash_table_create): Likewise.
+ * elf64-hppa.c (elf64_hppa_hash_table_create): Likewise.
+
+2013-02-10 Alan Modra <[email protected]>
+
+ PR ld/15113
+ * elf32-sh.c (sh_elf_link_hash_table_create): Use bfd_zmalloc.
+
+2013-02-08 Markos Chandras <[email protected]>
+
+ * elf32-metag.c: Use bfd_get_linker_section to get SEC_LINKER_CREATED
+ sections.
+ (elf_metag_adjust_dynamic_symbol): Don't error on zero size dynbss
+ symbol.
+
+2013-02-08 Yufeng Zhang <[email protected]>
+
+ * elf64-aarch64.c (elf64_aarch64_grok_prstatus): Change 'size' from
+ 288 to 272.
+
+2013-02-08 Alan Modra <[email protected]>
+
+ PR binutils/15106
+ * elf-bfd.h (struct elf_obj_tdata): Add elf_find_function_cache.
+ * elf.c (elf_find_function): Revert last change. Use new
+ tdata field rather than static vars for cache.
+
+2013-02-07 H.J. Lu <[email protected]>
+
+ PR ld/15107
+ * elflink.c (elf_link_output_extsym): Set STB_GNU_UNIQUE only if
+ symbol is defined in regular object.
+
+2013-02-07 Roberto Agostino Vitillo <[email protected]>
+
+ PR binutils/15106
+ * elf.c (elf_find_function): Don't cache if symbols change.
+
+2013-02-07 Alan Modra <[email protected]>
+
+ PR binutils/14873
+ * elf-attrs.c (_bfd_elf_copy_obj_attributes): Don't attempt to
+ copy attributes from or to non-ELF.
+
+2013-02-06 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't clear pc_count
+ for non-zero TLS symbol.
+ (elf_i386_relocate_section): Don't resolve size relocation against
+ non-zero TLS symbol.
+ * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Don't clear
+ pc_count for non-zero TLS symbol.
+ (elf_x86_64_relocate_section): Don't resolve size relocation
+ against non-zero TLS symbol.
+
+2013-02-06 Sandra Loosemore <[email protected]>
+ Andrew Jenner <[email protected]>
+
+ Based on patches from Altera Corporation.
+
+ * Makefile.am (ALL_MACHINES): Add cpu-nios2.lo.
+ (ALL_MACHINES_CFILES): Add cpu-nios2.c.
+ (BFD_BACKENDS): Add elf32-nios2.lo.
+ (BFD32_BACKENDS_CFILES): Add elf32-nios2.c.
+ * Makefile.in: Regenerated.
+ * configure.in: Add entries for bfd_elf32_bignios2_vec and
+ bfd_elf32_littlenios2_vec.
+ * configure: Regenerated.
+ * config.bfd: Add cases for nios2.
+ * archures.c (enum bfd_architecture): Add bfd_arch_nios2.
+ (bfd_mach_nios2): Define.
+ (bfd_nios2_arch): Declare.
+ (bfd_archures_list): Add bfd_nios2_arch.
+ * targets.c (bfd_elf32_bignios2_vec): Declare.
+ (bfd_elf32_littlenios2_vec): Declare.
+ (_bfd_target_vector): Add entries for bfd_elf32_bignios2_vec and
+ bfd_elf32_littlenios2_vec.
+ * elf-bfd.h (enum elf_target_id): Add NIOS2_ELF_DATA.
+ * reloc.c (enum bfd_reloc_code_real): Add Nios II relocations.
+ * bfd-in2.h: Regenerated.
+ * libbfd.h: Regenerated.
+ * cpu-nios2.c: New file.
+ * elf32-nios2.c: New file.
+
+2013-02-06 Alan Modra <[email protected]>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate): Only test for
+ stubs in stub_bfd.
+
+2013-02-06 Alan Modra <[email protected]>
+
+ * Makefile.am (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
+ * Makefile.in: Regenerate.
+
+2013-02-04 Sergio Durigan Junior <[email protected]>
+ Pedro Alves <[email protected]>
+
+ * Makefile.in (SOURCE_HFILES): Add `elf-linux-psinfo.h'.
+ * elf-bfd.h (elf_internal_linux_prpsinfo): New structure
+ declaration.
+ (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64)
+ (elfcore_write_ppc32_linux_prpsinfo32): New declarations.
+ * elf-linux-psinfo.h: New file.
+ * elf.c: Include elf-linux-psinfo.h.
+ (elfcore_write_linux_prpsinfo32, elfcore_write_linux_prpsinfo64):
+ New functions.
+ * elf32-ppc.c: Include `elf-linux-psinfo.h'.
+ (elf_external_ppc_linux_prpsinfo32): New structure declaration.
+ (PPC_LINUX_PRPSINFO32_SWAP_FIELDS): New macro.
+ (elfcore_write_ppc_linux_prpsinfo32): New function.
+
+2013-02-04 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_scan_start_address): Do not fail if no
+ start address.
+
+2013-02-04 Alan Modra <[email protected]>
+
+ * Makefile.am (BFD64_BACKENDS): Remove elf-nacl.lo.
+ (BFD64_BACKENDS_CFILES): Remove elf-nacl.c.
+ * Makefile.in: Regenerate.
+ * po/SRC-POTFILES.in: Regenerate.
+
+2013-02-04 Alan Modra <[email protected]>
+
+ * coff-tic54x.c (SWAP_OUT_RELOC_EXTRA): Delete.
+ * coff-tic80.c (SWAP_OUT_RELOC_EXTRA): Delete.
+
+2013-02-01 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (dec_dynrel_count): Don't error when elf_gc_sweep_symbol
+ clears def_regular.
+
+2013-01-31 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_scan): Call bfd_mach_o_flatten_sections
+ earlier. Fix status checking of bfd_mach_o_scan_start_address.
+ (bfd_mach_o_scan_start_address): Handle LC_MAIN.
+
+2013-01-31 Alan Modra <[email protected]>
+ David S. Miller <[email protected]>
+
+ PR ld/15056
+ * elfxx-sparc.c (_bfd_sparc_elf_gc_mark_hook): Handle implicit
+ references to __tls_get_addr.
+ * elf32-tilpro.c (tilepro_elf_gc_mark_hook): Likewise. Correct
+ vtinherit and vtentry reloc handling too.
+ * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): As for tilepro.
+
+2013-01-31 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc_stub_name): Trim off trailing "+0".
+
+2013-01-31 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (build_plt_stub): Correct plt stub branch to glink.
+
+2013-01-28 Alan Modra <[email protected]>
+
+ * elf64-ppc.c: Use %T to print symbols names and remove redundant
+ "relocation" in error messages throughout file.
+ (ppc64_elf_relocate_section): Remove sibling call error message,
+ replace with "call lacks nop". Specially report errors for
+ branches to function entry points via OPD lookup and branches
+ to stubs. Remove NULL symbol handling now done by %T.
+
+2013-01-28 Alan Modra <[email protected]>
+
+ * archive.c (bfd_generic_archive_p): Return target and keep
+ ardata on partial matches.
+ * format.c (bfd_check_format_matches): Adjust for above
+ change. Remove bfd_error_file_ambiguously_recognized dead
+ code.
+
+2013-01-26 Alan Modra <[email protected]>
+
+ * bfd.c (struct bfd_preserve, bfd_preserve_save, bfd_preserve_restore,
+ bfd_preserve_finish): Move to..
+ * format.c: ..here, splitting out..
+ (bfd_reinit): ..this. New function.
+ (bfd_check_format_matches): Use bfd_preserve_save/restore to
+ keep bfd state for a match.
+ * elfcode.h (elf_object_p): Don't use bfd_preserve_save/restore.
+ * elfcore.h (elf_core_file_p): Likewise.
+ * mach-o.c (bfd_mach_o_header_p): Likewise.
+ * pef.c (bfd_pef_object_p, bfd_pef_xlib_object_p): Likewise.
+ * xsym.c (bfd_sym_object_p): Likewise.
+ * mmo.c (mmo_scan): Clear abfd->symcount.
+ * opncls.c (_bfd_new_bfd): Use a smaller section hash table.
+ * section.c (bfd_section_list_clear): Clear section_htab.count.
+ * bfd-in2.h: Regenerate.
+
+2013-01-25 Michael Schewe <[email protected]>
+
+ * elf32-h8300.c (elf32_h8_relax_section): When checking for a
+ second reloc, make sure that the reloc potentially exists first.
+
+2013-01-24 Nick Clifton <[email protected]>
+
+ * archures.c: Add bfd_mach_v850e3v5.
+ * bfd-in2.h: Regenerate.
+ * cpu-v850.c: Add entries for v850e2v5 and v850e3v5.
+ * cpu-v850_rh850.c: Likewise.
+ * elf32-v850.c: Add support for v850e3v5 architecture.
+
+2013-01-23 Markos Chandras <[email protected]>
+
+ * elf32-metag.c: Error on HIADDR16/LOADDR16 in shared link.
+
+2013-01-23 Leif Ekblad <[email protected]>
+
+ * config.bfd (x86_64-*-rdos*): Remove targ_selvecs.
+
+2013-01-18 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_allocate_dynrelocs): Clear pc_count for
+ non-zero TLS symbol.
+ (elf_i386_relocate_section): Resolve size relocation against
+ non-zero TLS symbol.
+ * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Clear pc_count
+ for non-zero TLS symbol.
+ (elf_x86_64_relocate_section): Resolve size relocation against
+ non-zero TLS symbol.
+
+2013-01-18 Mike Frysinger <[email protected]>
+
+ * elflink.c (bfd_elf_size_dynamic_sections): Only add DT_RPATH
+ when new_dtags is false. Only add DT_RUNPATH when new_dtags is
+ true.
+
+2013-01-17 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_check_relocs): Count size relocation as
+ PC-relative relocation.
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Count size relocation
+ as PC-relative relocation.
+
+2013-01-16 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_check_relocs): Update R_386_SIZE32
+ check.
+ (elf_i386_relocate_section): Don't check TLS for R_386_SIZE32.
+
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Update R_X86_64_SIZE32
+ and R_X86_64_SIZE64 check.
+ (elf_x86_64_relocate_section): Don't check TLS for R_X86_64_SIZE32
+ nor R_X86_64_SIZE64.
+
+2013-01-16 H.J. Lu <[email protected]>
+
+ * bfd-in2.h: Regenerated.
+ * libbfd.h: Likewise.
+
+ * elf32-i386.c (elf_howto_table): Fill R_386_SIZE32 entry.
+ (elf_i386_reloc_type_lookup): Support BFD_RELOC_SIZE32.
+ (elf_i386_check_relocs): Handle R_386_SIZE32.
+ (elf_i386_gc_sweep_hook): Likewise.
+ (elf_i386_relocate_section): Likewise.
+
+ * elf64-x86-64.c (x86_64_elf_howto_table): Fill R_X86_64_SIZE32
+ and R_X86_64_SIZE64 entries.
+ (x86_64_reloc_map): Add BFD_RELOC_SIZE32 and BFD_RELOC_SIZE64,
+ (elf_x86_64_rtype_to_howto): Handle R_X86_64_SIZE32 for x32.
+ (elf_x86_64_reloc_name_lookup): Likewise.
+ (elf_x86_64_check_relocs): Handle R_X86_64_SIZE32 and
+ R_X86_64_SIZE64.
+ (elf_x86_64_gc_sweep_hook): Likewise.
+ (elf_x86_64_relocate_section): Likewise.
+
+ * reloc.c (bfd_reloc_code_type): Add BFD_RELOC_SIZE32 and
+ BFD_RELOC_SIZE64.
+
+2013-01-15 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (R_X86_64_standard): Replace R_X86_64_IRELATIVE
+ with R_X86_64_RELATIVE64.
+
+2013-01-15 Nick Clifton <[email protected]>
+
+ * elf32-msp430.c: Fix spelling typo.
+
+2013-01-15 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_size_stubs): Default shared libs to
+ plt-thread-safe.
+
+2013-01-14 Alan Modra <[email protected]>
+
+ PR binutils/14813
+ * bfdio.c (struct bfd_iovec <bclose>): Revert 2012-11-06.
+ (memory_bclose): Likewise. Return 0 on success.
+ * cache.c (cache_bclose): Likewise.
+ * opncls.c (opncls_bclose, bfd_close): Likewise.
+ * vms-lib.c (vms_lib_bclose): Likewise.
+ * libbfd.h: Regenerate.
+
+2013-01-13 Alan Modra <[email protected]>
+
+ * elf-bfd.h (struct elf_link_hash_entry): Delete dynamic_weak.
+ Add ref_dynamic_nonweak.
+ * elflink.c (_bfd_elf_mark_dynamic_def_weak): Delete.
+ (_bfd_elf_merge_symbol): Don't call above function. Move
+ setting of ref_dynamic_nonweak and dynamic_def earlier. Don't
+ clear dynamic_def.
+ (elf_link_add_object_symbols): Delete redundant "override" test.
+ Don't set dynamic_def here.
+ (elf_link_output_extsym): Update.
+
+2013-01-12 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_check_relocs): Set bfd errror for
+ normal and TLS symbol access.
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
+
+2013-01-12 Alan Modra <[email protected]>
+
+ * elf-bfd.h (_bfd_elf_strtab_refcount): Declare.
+ * elf-strtab.c (_bfd_elf_strtab_refcount): New function.
+ * elflink.c (elf_add_dt_needed_tag): Use _bfd_elf_strtab_refcount.
+
+2013-01-12 Alan Modra <[email protected]>
+
+ PR ld/12549
+ * elf-bfd.h (_bfd_elf_strtab_clear_refs): Declare.
+ (_bfd_elf_strtab_clear_all_refs): Define.
+ * elf-strtab.c (_bfd_elf_strtab_clear_refs): New function.
+ (_bfd_elf_strtab_clear_all_refs): Delete.
+ * elflink.c (elf_link_add_object_symbols): Clear out added
+ strtab refs. Correct handling of warning common symbols.
+
+2013-01-10 H.J. Lu <[email protected]>
+
+ * aout0.c: Remove trailing white spaces.
+ * archive.c: Likewise.
+ * archures.c: Likewise.
+ * bfd-in.h: Likewise.
+ * bfd-in2.h: Likewise.
+ * coff-alpha.c: Likewise.
+ * coff-i860.c: Likewise.
+ * coff-mips.c: Likewise.
+ * coff-ppc.c: Likewise.
+ * coff-tic80.c: Likewise.
+ * coff-x86_64.c: Likewise.
+ * coff-z80.c: Likewise.
+ * coffcode.h: Likewise.
+ * coffgen.c: Likewise.
+ * cofflink.c: Likewise.
+ * compress.c: Likewise.
+ * corefile.c: Likewise.
+ * cpu-arm.c: Likewise.
+ * cpu-avr.c: Likewise.
+ * cpu-bfin.c: Likewise.
+ * cpu-cr16.c: Likewise.
+ * cpu-cr16c.c: Likewise.
+ * cpu-crx.c: Likewise.
+ * cpu-h8300.c: Likewise.
+ * cpu-i386.c: Likewise.
+ * cpu-lm32.c: Likewise.
+ * cpu-m68k.c: Likewise.
+ * cpu-moxie.c: Likewise.
+ * cpu-msp430.c: Likewise.
+ * cpu-sh.c: Likewise.
+ * cpu-xc16x.c: Likewise.
+ * dwarf2.c: Likewise.
+ * ecofflink.c: Likewise.
+ * ecoffswap.h: Likewise.
+ * elf-ifunc.c: Likewise.
+ * elf-m10300.c: Likewise.
+ * elf-vxworks.c: Likewise.
+ * elf32-avr.c: Likewise.
+ * elf32-avr.h: Likewise.
+ * elf32-cr16.c: Likewise.
+ * elf32-cr16c.c: Likewise.
+ * elf32-cris.c: Likewise.
+ * elf32-crx.c: Likewise.
+ * elf32-frv.c: Likewise.
+ * elf32-hppa.c: Likewise.
+ * elf32-i860.c: Likewise.
+ * elf32-ip2k.c: Likewise.
+ * elf32-iq2000.c: Likewise.
+ * elf32-m32c.c: Likewise.
+ * elf32-m68hc1x.c: Likewise.
+ * elf32-msp430.c: Likewise.
+ * elf32-mt.c: Likewise.
+ * elf32-ppc.c: Likewise.
+ * elf32-rl78.c: Likewise.
+ * elf32-s390.c: Likewise.
+ * elf32-score.h: Likewise.
+ * elf32-sh-symbian.c: Likewise.
+ * elf32-sh.c: Likewise.
+ * elf32-spu.c: Likewise.
+ * elf32-tic6x.c: Likewise.
+ * elf32-v850.c: Likewise.
+ * elf32-xc16x.c: Likewise.
+ * elf32-xtensa.c: Likewise.
+ * elf64-alpha.c: Likewise.
+ * elf64-hppa.c: Likewise.
+ * elf64-ppc.c: Likewise.
+ * elf64-s390.c: Likewise.
+ * elfcore.h: Likewise.
+ * elflink.c: Likewise.
+ * elfxx-mips.c: Likewise.
+ * elfxx-sparc.c: Likewise.
+ * elfxx-tilegx.c: Likewise.
+ * ieee.c: Likewise.
+ * libcoff.h: Likewise.
+ * libpei.h: Likewise.
+ * libxcoff.h: Likewise.
+ * linker.c: Likewise.
+ * mach-o-i386.c: Likewise.
+ * mach-o-target.c: Likewise.
+ * mach-o.c: Likewise.
+ * mach-o.h: Likewise.
+ * mmo.c: Likewise.
+ * opncls.c: Likewise.
+ * pdp11.c: Likewise.
+ * pe-x86_64.c: Likewise.
+ * peXXigen.c: Likewise.
+ * pef-traceback.h: Likewise.
+ * pei-x86_64.c: Likewise.
+ * peicode.h: Likewise.
+ * plugin.c: Likewise.
+ * reloc.c: Likewise.
+ * riscix.c: Likewise.
+ * section.c: Likewise.
+ * som.c: Likewise.
+ * syms.c: Likewise.
+ * tekhex.c: Likewise.
+ * ticoff.h: Likewise.
+ * vaxbsd.c: Likewise.
+ * xcofflink.c: Likewise.
+ * xtensa-isa.c: Likewise.
+
+2013-01-10 Will Newton <[email protected]>
+
+ * Makefile.am: Add Meta.
+ * Makefile.in: Regenerate.
+ * archures.c (bfd_mach_metag): New.
+ * bfd-in2.h: Regenerate.
+ * config.bfd: Add Meta.
+ * configure: Regenerate.
+ * configure.in: Add Meta.
+ * cpu-metag.c: New file.
+ * elf-bfd.h: Add Meta.
+ * elf32-metag.c: New file.
+ * elf32-metag.h: New file.
+ * libbfd.h: Regenerate.
+ * reloc.c: Add Meta relocations.
+ * targets.c: Add Meta.
+
+2013-01-08 Yufeng Zhang <[email protected]>
+
+ * elf-bfd.h (elfcore_write_aarch_tls): Add prototype.
+ (elfcore_write_aarch_hw_break): Likewise.
+ (elfcore_write_aarch_hw_watch): Likewise.
+ * elf.c (elfcore_grok_aarch_tls): New function.
+ (elfcore_grok_aarch_hw_break): Likewise.
+ (elfcore_grok_aarch_hw_watch): Likewise.
+ (elfcore_grok_note): Call the new functions to handle the
+ corresponding notes.
+ (elfcore_write_aarch_tls): New function.
+ (elfcore_write_aarch_hw_break): Likewise.
+ (elfcore_write_aarch_hw_watch): Likewise.
+ (elfcore_write_register_note): Call the new functions to handle the
+ corresponding pseudo sections.
+
+2013-01-07 Tom Tromey <[email protected]>
+
+ * section.c (_bfd_std_section): Rename from std_section.
+ (bfd_com_section_ptr, bfd_und_section_ptr, bfd_abs_section_ptr)
+ (STD_SECTION): Update.
+ * bfd-in2.h: Rebuild.
+
+2013-01-04 Juergen Urban <[email protected]>
+
+ * archures.c (bfd_mach_mips5900): Define.
+ * bfd-in2.h: Regenerate.
+ * config.bfd: Add mips64-ps2-elf and mips-ps2-elf targets.
+ * cpu-mips.c: Add support for MIPS r5900.
+ * elfxx-mips.c: Add support for MIPS r5900 (extension of r4000).
+
+2013-01-03 Nickolai Zeldovich <[email protected]>
+ Nick Clifton <[email protected]>
+
+ * elflink.c (get_value): Prevent the use of an undefined shift
+ operation. Add sanity checks.
+
+2013-01-02 Kaushik Phatak <[email protected]>
+
+ * config.bfd (cr16*-*-uclinux*): New target support.
+
+
+For older changes see ChangeLog-2012
+Copyright (C) 2013 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/ChangeLog-0001 b/bfd/ChangeLog-0001
index b5a3475..63015db 100644
--- a/bfd/ChangeLog-0001
+++ b/bfd/ChangeLog-0001
@@ -9584,6 +9584,12 @@
For older changes see ChangeLog-9899
+Copyright (C) 2002 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/ChangeLog-0203 b/bfd/ChangeLog-0203
index 1b1abb1..20b0e30 100644
--- a/bfd/ChangeLog-0203
+++ b/bfd/ChangeLog-0203
@@ -1303,7 +1303,7 @@
(elf32_hppa_check_relocs): Don't set SEC_HAS_GOT_REF flag.
(elf32_hppa_size_stubs): Pass info to hppa_type_of_stub.
(final_link_relocate): Change all DLTIND relocs to DPREL relocs in a
- non-shared link. Convert instructions that use the the linkage table
+ non-shared link. Convert instructions that use the linkage table
pointer, or a facsimile thereof, to use the global data pointer when
the reloc has been changed.
@@ -11397,6 +11397,12 @@
For older changes see ChangeLog-0001
+Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/ChangeLog-2004 b/bfd/ChangeLog-2004
index 0c47096..09d816f 100644
--- a/bfd/ChangeLog-2004
+++ b/bfd/ChangeLog-2004
@@ -5055,6 +5055,12 @@
For older changes see ChangeLog-0203
+Copyright (C) 2004 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/ChangeLog-2005 b/bfd/ChangeLog-2005
index 95746fc..7c9b0d3 100644
--- a/bfd/ChangeLog-2005
+++ b/bfd/ChangeLog-2005
@@ -5261,6 +5261,12 @@
For older changes see ChangeLog-2004
+Copyright (C) 2005 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/ChangeLog-2006 b/bfd/ChangeLog-2006
index 82216d6..dc15581 100644
--- a/bfd/ChangeLog-2006
+++ b/bfd/ChangeLog-2006
@@ -30,7 +30,7 @@
EF_M68K_CPU32_FIDO_A.
2006-12-25 Mei Ligang <[email protected]>
-
+
* elf32-score.c (score_elf_got_lo16_reloc): Change some variables
type from unsigned to signed.
(score_elf_final_link_relocate): Fix bugs of handling relocation
@@ -3593,6 +3593,12 @@
For older changes see ChangeLog-2005
+Copyright (C) 2006 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/ChangeLog-2007 b/bfd/ChangeLog-2007
index be94259..85076b9 100644
--- a/bfd/ChangeLog-2007
+++ b/bfd/ChangeLog-2007
@@ -23,7 +23,7 @@
* elf32-frv.c (_frvfdpic_osec_to_segment): Use new function.
* elf32-hppa.c (hppa_record_segment_addr): Use new function.
* elfxx-ia64.c (elfNN_ia64_relocate_section): Use new function.
-
+
2007-12-28 John David Anglin <[email protected]>
PR binutils/5146
@@ -65,7 +65,7 @@
* elf32-xtensa.c (relax_section): Update DIFF relocations in the
same way as other relocations.
-
+
2007-12-18 Daniel Jacobowitz <[email protected]>
* section.c (BFD_FAKE_SECTION): Update.
@@ -91,7 +91,7 @@
when clearing the removed flag.
(_bfd_elf_eh_frame_section_offset): Remove offsets_adjusted handling.
(_bfd_elf_write_section_eh_frame): Likewise. Apply output_offsets
- where appropriate.
+ where appropriate.
2007-12-15 Richard Sandiford <[email protected]>
@@ -229,7 +229,7 @@
(elf_xtensa_relocate_section): Check for R_XTENSA_32_PCREL for dynamic
symbols.
(check_section_ebb_pcrels_fit): Ignore R_XTENSA_32_PCREL relocations.
-
+
2007-12-05 Alan Modra <[email protected]>
* elf32-spu.c (spu_elf_size_stubs): Do consider branches to
@@ -262,7 +262,7 @@
and Loongson-2F flags.
(mips_set_isa_flags): Likewise.
(mips_mach_extensions): Add Loongson-2E and Loongson-2F
- entries.
+ entries.
2007-11-29 Nick Clifton <[email protected]>
@@ -491,7 +491,7 @@
* elf-m10300.h: Handle R_MN10300_ALIGN relocs.
(mn10300_elf_relax_delete_bytes): Honour R_MN10300_ALIGN relocs.
Re-fix off by one error in comparisons.
-
+
2007-10-25 Pedro Alves <[email protected]>
* bfd-in.h (STRING_COMMA_LEN): Don't handle NULL STR case.
@@ -538,7 +538,7 @@
(mn10300_elf_check_relocs): Do not create dynamic relocs for
symbol differences or relocations against absolute symbols.
(mn10300_elf_final_link_relocate): Likewise.
- Handle R_MN10300_SYM_DIFF relocs.
+ Handle R_MN10300_SYM_DIFF relocs.
(mn10300_elf_relocate_section): Fix for creating local copys of
dynamic relocs.
(mn10300_elf_relax_delete_bytes): Adjust symbols at the end of the
@@ -575,23 +575,23 @@
* elf32-xtensa.c (relax_section): Check for a reference to a discarded
DWARF section and anticipate its replacement with the kept section.
-
+
2007-10-16 Bob Wilson <[email protected]>
* elf32-xtensa.c (elf_xtensa_discard_info_for_section): Remove
unnecessary size variables. Set sec->rawsize.
(relax_section, relax_property_section): Likewise.
-
+
2007-10-16 Bob Wilson <[email protected]>
* section.c (struct bfd_section): Clarify comment for rawsize field.
* bfd-in2.h: Regenerate.
-
+
2007-10-16 Bob Wilson <[email protected]>
* elflink.c (_bfd_elf_check_kept_section): Use the section rawsize
values if they are set.
-
+
2007-10-16 Nick Clifton <[email protected]>
PR 5146
@@ -613,7 +613,7 @@
the type of emitted common symbols to STT_COMMON.
* elfcode.h (elf_slurp_symbol_table): Accept STT_COMMON symbol
types.
-
+
2007-10-15 Alan Modra <[email protected]>
* coff-arm.c (arm_emit_base_file_entry): Check fwrite return value.
@@ -653,7 +653,7 @@
segment only when needed.
2007-10-05 Bob Wilson <[email protected]>
-
+
* elf32-xtensa.c (relax_section): Call pin_internal_relocs when
changing a relocation's offset. Adjust call to translate_reloc. Do
not add a fix record for a DIFF reloc. For other relocs, only add a
@@ -665,21 +665,21 @@
assertion. Compute separate offset adjustments for the base symbol
and the addend, and set the new relocation's addend correctly. Return
the new target section.
-
+
2007-10-05 Bob Wilson <[email protected]>
-
+
* elf32-xtensa.c (elf_xtensa_relocate_section): Remove updates of
r_type and howto after calling do_fix_for_relocateable_link and
do_fix_for_final_link.
-
+
2007-10-05 Bob Wilson <[email protected]>
-
+
* elf32-xtensa.c (removed_by_actions): New.
(offset_with_removed_text): Reimplement using removed_by_actions.
(offset_with_removed_text_before_fill): Delete.
(relax_property_section): Use removed_by_actions. Rearrange logic.
(relax_section_symbols): Likewise.
-
+
2007-10-04 Bob Wilson <[email protected]>
* elf32-xtensa.c (reloc_bfd_fix_struct): Delete target_abfd field.
@@ -860,7 +860,7 @@
* Makefile.in: Regenerate.
* arange-set.c: New file.
* arange-set.h: New file.
- * dwarf2.c: Include arange-set.h.
+ * dwarf2.c: Include arange-set.h.
(struct dwarf2_debug) Add new fields comp_unit_count and
comp_unit_arange_set.
(struct comp_unit) Replace field arange with a new field arange_set.
@@ -893,8 +893,8 @@
2007-09-21 Olivier Hainque <[email protected]>
Tristan Gingold <[email protected]>
-
- * syms.c (_bfd_stab_section_find_nearest_line): Look at the
+
+ * syms.c (_bfd_stab_section_find_nearest_line): Look at the
specific SOM sections for stabs if the regular ones are not found.
* som.h (struct somdata): Add a line_info field, to be used by
som_find_nearest_line.
@@ -949,7 +949,7 @@
PT_GNU_RELRO segment for copying executable/shared library.
(rewrite_elf_program_header): Remove PT_GNU_RELRO segment.
(copy_elf_program_header): Set p_size and p_size_valid fields for
- PT_GNU_RELRO segment.
+ PT_GNU_RELRO segment.
2007-09-17 Nick Clifton <[email protected]>
@@ -1035,7 +1035,7 @@
2007-09-04 Michael Snyder <[email protected]>
- * elf32-bfin.c (howto_table): Cut and paste error?
+ * elf32-bfin.c (howto_table): Cut and paste error?
Name field of reloc is wrong.
2007-09-04 Alan Modra <[email protected]>
@@ -1319,7 +1319,7 @@
(elf32_arm_gc_sweep_hook): Call check_use_blx. Update plt counts
for R_ARM_THM_JUMP24 and R_ARM_THM_JUMP19.
(elf32_arm_check_relocs): Update plt counts for R_ARM_THM_JUMP24
- and R_ARM_THM_JUMP19.
+ and R_ARM_THM_JUMP19.
(allocate_dynrelocs): Use plt_maybe_thumb_refcount.
(elf32_arm_finish_dynamic_symbol): Ditto.
(elf32_arm_output_plt_map): Ditto.
@@ -1412,7 +1412,7 @@
* coff-i386.c (coff_i386_rtype_to_howto): Guard against null.
- * linker.c (bfd_section_already_linked_table_insert): Change
+ * linker.c (bfd_section_already_linked_table_insert): Change
return type from void to boolean. Return FALSE on failure.
(_bfd_generic_section_already_linked): Test return value of
bfd_section_already_linked_table_insert, call fatal on error.
@@ -1435,10 +1435,10 @@
* linker.c (already_linked_newfunc): Check for NULL return from
bfd_hash_allocate.
- * coffgen.c (fixup_symbol_value): Guard against null;
+ * coffgen.c (fixup_symbol_value): Guard against null;
bfd_is_com_section will dereference the section pointer.
- * syms.c (bfd_decode_symclass): Guard against NULL, since
+ * syms.c (bfd_decode_symclass): Guard against NULL, since
bfd_is_com_section dereferences the pointer.
* srec.c (srec_scan): Check for EOF (critical because return value
@@ -1452,7 +1452,7 @@
* tekhex.c (first_phase): Check return value for null.
- * elf.c (_bfd_elf_get_synthetic_symtab): Remove meaningless
+ * elf.c (_bfd_elf_get_synthetic_symtab): Remove meaningless
pointer increment.
2007-07-26 Alan Modra <[email protected]>
@@ -3553,6 +3553,12 @@
For older changes see ChangeLog-2006
+Copyright (C) 2007 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/ChangeLog-2008 b/bfd/ChangeLog-2008
index eb63e09..b61a790 100644
--- a/bfd/ChangeLog-2008
+++ b/bfd/ChangeLog-2008
@@ -22,7 +22,7 @@
PR ld/7036
* elfxx-ia64.c (elfNN_ia64_relax_section): Assume linker will
always insert 32byte between the .plt and .text sections after
- the the first relaxation pass.
+ the first relaxation pass.
2008-12-23 Nick Clifton <[email protected]>
@@ -3378,6 +3378,12 @@
For older changes see ChangeLog-2007
+Copyright (C) 2008 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/ChangeLog-2009 b/bfd/ChangeLog-2009
index cc33261..a3f7b24 100644
--- a/bfd/ChangeLog-2009
+++ b/bfd/ChangeLog-2009
@@ -408,7 +408,8 @@
PR binutils/10802
* opncls.c (_maybe_make_executable): Make DYNAMIC files executable.
-2009-10-19 Hans-Peter Nilsson <[email protected]>
+2009-10-19 Edgar E. Iglesias <[email protected]>
+ Hans-Peter Nilsson <[email protected]>
* elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_DTPREL>:
Don't subtract the size of the TLS block for non-shared objects
@@ -3606,7 +3607,7 @@
(bfd_xcoff_set_archive_import_path): Likewise.
(xcoff_set_import_path): Move earlier in file.
(xcoff_link_add_dynamic_symbols): Set the import path of a non-archive
- object to the the directory part of the bfd's filename. Get the
+ object to the directory part of the bfd's filename. Get the
import path and filename of an archive object from the archive's
xcoff_tdata, initializing it if necessary. Update use of
import_file_id.
@@ -5146,6 +5147,12 @@
For older changes see ChangeLog-2008
+Copyright (C) 2009 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/ChangeLog-2010 b/bfd/ChangeLog-2010
index c486f58..4dd4cb1 100644
--- a/bfd/ChangeLog-2010
+++ b/bfd/ChangeLog-2010
@@ -1173,11 +1173,11 @@
* elf64-x86-64.c (elf64_x86_64_grok_prstatus): Write the LWPID to
elf_tdata's core_lwpid instead of to core_pid.
- (elf64_x86_64_grok_psinfo): Extract the the main process's PID,
+ (elf64_x86_64_grok_psinfo): Extract the main process's PID,
and store it in elf_tdata's core_pid field.
* elf32-i386.c (elf_i386_grok_prstatus): Write the LWPID to
elf_tdata's core_lwpid instead of to core_pid.
- (elf_i386_grok_psinfo): Extract the the main process's PID, and
+ (elf_i386_grok_psinfo): Extract the main process's PID, and
store it in elf_tdata's core_pid field.
* elf32-am33lin.c (elf32_am33lin_grok_prstatus): Write the LWPID
@@ -3554,6 +3554,12 @@
For older changes see ChangeLog-2009
+Copyright (C) 2010 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/ChangeLog-2011 b/bfd/ChangeLog-2011
new file mode 100644
index 0000000..e4e2cc0
--- /dev/null
+++ b/bfd/ChangeLog-2011
@@ -0,0 +1,3389 @@
+2011-12-24 Jan Kratochvil <[email protected]>
+
+ * elf32-rl78.c (rl78_elf_relocate_section, rl78_dump_symtab)
+ (rl78_elf_relax_section): Remove debug prints.
+
+2011-12-23 Jan Kratochvil <[email protected]>
+
+ * elf32-rl78.c (rl78_elf_relocate_section, rl78_elf_relax_section): Use
+ BFD_VMA_FMT.
+
+2011-12-23 Jan Kratochvil <[email protected]>
+
+ * elf32-rl78.c (prev_alignment, sec_start): Remove unused variables.
+
+2011-12-23 Tristan Gingold <[email protected]>
+
+ * vms-lib.c (vms_traverse_index): Move pointer update code.
+
+2011-12-22 DJ Delorie <[email protected]>
+
+ * elf32-rl78.c (rl78_elf_howto_table): Add R_RL78_RH_RELAX.
+ (rl78_reloc_map): Add BFD_RELOC_RL78_RELAX.
+ (rl78_elf_relocate_section): Add R_RL78_RH_RELAX, R_RL78_RH_SFR,
+ and R_RL78_RH_SADDR.
+ (rl78_elf_finish_dynamic_sections): Only validate PLT section if
+ we didn't relax anything, as relaxing might remove a PLT reference
+ after we've set up the table.
+ (elf32_rl78_relax_delete_bytes): New.
+ (reloc_bubblesort): New.
+ (rl78_offset_for_reloc): New.
+ (relax_addr16): New.
+ (rl78_elf_relax_section): Add support for relaxing long
+ instructions into short ones.
+
+2011-12-22 Martin Schwidefsky <[email protected]>
+
+ * elf32-s390.c (elf_s390_relocate_section): Add check for debugging
+ section in LD to LE linker relaxation for R_390_TLS_LDO32.
+ * elf64-s390.c (elf_s390_relocate_section): Likewise for
+ R_390_TLS_LDO64.
+
+2011-12-21 Ulrich Weigand <[email protected]>
+
+ * elf32-arm.c (elf32_arm_nabi_grok_psinfo): Fill in core_pid.
+
+2011-12-19 Iain Sandoe <[email protected]>
+
+ * mach-o-i386.c (bfd_mach_o_section_type_valid_for_tgt): Define NULL.
+ * mach-o-target.c (bfd_mach_o_backend_data): Initialize
+ bfd_mach_o_section_type_valid_for_tgt
+ * mach-o-x86-64.c (bfd_mach_o_section_type_valid_for_x86_64): New.
+ (bfd_mach_o_section_type_valid_for_tgt): Set to
+ bfd_mach_o_section_type_valid_for_x86_64.
+ * mach-o.c (bfd_mach_o_section_type_name): Reorder and eliminate dup.
+ (bfd_mach_o_section_attribute_name): Reorder.
+ (bfd_mach_o_get_section_type_from_name): If the target has defined a
+ validator for section types, then use it.
+ * mach-o.h (bfd_mach_o_get_section_type_from_name): Alter declaration
+ to include the bfd.
+
+2011-12-19 Chung-Lin Tang <[email protected]>
+
+ * reloc.c (BFD_RELOC_MIPS16_TLS_GD,BFD_RELOC_MIPS16_TLS_LDM,
+ BFD_RELOC_MIPS16_TLS_DTPREL_HI16,BFD_RELOC_MIPS16_TLS_DTPREL_LO16,
+ BFD_RELOC_MIPS16_TLS_GOTTPREL,BFD_RELOC_MIPS16_TLS_TPREL_HI16,
+ BFD_RELOC_MIPS16_TLS_TPREL_LO16): New relocations for MIPS16 TLS.
+ * bfd-in2.h (bfd_reloc_code_real): Regenerate.
+ * libbfd.h (bfd_reloc_code_real_names): Regenerate.
+ * elf32-mips.c (elf_mips16_howto_table_rel): Add R_MIPS16_TLS_*
+ entries.
+ (mips16_reloc_map): Add BFD_RELOC_MIPS16_TLS_* to R_MIPS16_TLS_*
+ mappings.
+ * elfn32-mips.c (elf_mips16_howto_table_rel,
+ elf_mips16_howto_table_rela): Add R_MIPS16_TLS_* entries.
+ (mips16_reloc_map): Add BFD_RELOC_MIPS16_TLS_* to R_MIPS16_TLS_*
+ mappings.
+ * elf64-mips.c (mips16_elf64_howto_table_rel,
+ mips16_elf64_howto_table_rela): Add R_MIPS16_TLS_* entries.
+ (mips16_reloc_map): Add BFD_RELOC_MIPS16_TLS_* to R_MIPS16_TLS_*
+ mappings.
+ * elfxx-mips.c (TLS_RELOC_P,mips16_reloc_p,
+ _bfd_mips_elf_check_relocs): Add cases for R_MIPS16_TLS_* relocations.
+ (tls_gd_reloc_p): Add R_MIPS16_TLS_GD case.
+ (tls_ldm_reloc_p): Add R_MIPS16_TLS_LDM case.
+ (tls_gottprel_reloc_p): Add R_MIPS16_TLS_GOTTPREL case.
+ (mips_elf_calculate_relocation): Add cases for R_MIPS16_TLS_*,
+ R_MIPS_TLS_DTPREL32/64, and R_MIPS_TLS_TPREL32/64 relocations.
+
+2011-12-19 Chung-Lin Tang <[email protected]>
+ Catherine Moore <[email protected]>
+ Sandra Loosemore <[email protected]>
+ Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (mips_elf_local_pic_function_p): Return true when
+ H is a MIPS16 function with a kept 32-bit stub. Update comments.
+ (mips_elf_get_la25_target): New function.
+ (mips_elf_add_la25_intro): Change to use mips_elf_get_la25_target().
+ (mips_elf_add_la25_stub): Move compute of use_trampoline_p down,
+ change to use mips_elf_get_la25_target().
+ (mips_elf_relocation_needs_la25_stub): Add target_is_16_bit_code_p
+ parameter, add switch case for R_MIPS16_26.
+ (mips_elf_calculate_relocation): Redirect relocation to point to the
+ LA25 stub if it exists, instead of the MIPS16 stub. Update arguments
+ of call to mips_elf_relocation_needs_la25_stub(), don't use la25 stub
+ for mips16->mips16 calls.
+ (_bfd_mips_elf_check_relocs): Update arguments of call to
+ mips_elf_relocation_needs_la25_stub().
+ (mips_elf_create_la25_stub): Change to use mips_elf_get_la25_target().
+
+2011-12-16 Shinichiro Hamaji <[email protected]>
+
+ * mach-o-i386.c (TARGET_PRIORITY): Define as 0 (top priority)
+ * mach-o-target.c (TARGET_NAME): Use TARGET_PRIORITY
+ * mach-o-x86-64.c (TARGET_PRIORITY): Define as 0 (top priority)
+ * mach-o.c (bfd_mach_o_header_p): Remove special handling for
+ mach-o-i386.
+ (TARGET_PRIORITY) Set 1 for mach-o-be and mach-o-le, and set 0 for
+ mach-o-fat.
+
+2011-12-15 Kevin Buettner <[email protected]>
+
+ * elf32-am33lin.c (elf32_am33lin_grok_prstatus): Add case
+ to correspond to a smaller ELF_NGREG defined by the kernel.
+
+2011-12-15 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (ELF32_DYNAMIC_INTERPRETER): Set to
+ "/lib/ldx32.so.1".
+
+2011-12-15 Iain Sandoe <[email protected]>
+
+ * mach-o.c (bfd_mach_o_mkobject_init): Initialize dyn_reloc_cache.
+ (bfd_mach_o_close_and_cleanup): Only cleanup Mach-O private data
+ for object files.
+
+2011-12-15 Shinichiro Hamaji <[email protected]>
+
+ * mach-o.c (bfd_mach_o_canonicalize_reloc): Update relocation
+ table only when there isn't the cahce.
+ (bfd_mach_o_get_dynamic_reloc_upper_bound): Need one more space
+ for a pointer for the watchdog.
+ (bfd_mach_o_canonicalize_dynamic_reloc): Utilize cache like
+ bfd_mach_o_canonicalize_reloc.
+ (bfd_mach_o_close_and_cleanup): Call bfd_mach_o_free_cached_info.
+ (bfd_mach_o_free_cached_info): Free up cache data.
+ * mach-o.h (reloc_cache): A place to store cache of dynamic relocs.
+ (bfd_mach_o_free_cached_info): Add declaration.
+
+2011-12-15 Iain Sandoe <[email protected]>
+
+ * mach-o-target.c (bfd_mach_o_bfd_set_private_flags): Use
+ bfd_mach_o_bfd_set_private_flags.
+ * mach-o.c (bfd_mach_o_bfd_set_private_flags): New.
+ * mach-o.h (bfd_mach_o_bfd_set_private_flags): Declare.
+
+2011-12-14 Nick Clifton <[email protected]>
+
+ PR ld/12451
+ * elfcode.h (elf_checksum_contents): Read in the section's
+ contents if they are not already available, and the section
+ actually has some contents.
+
+ * compress.c (bfd_get_full_section_contents): Use zmalloc to
+ allocate the buffers so that excess bytes are guaranteed to be
+ zero.
+
+2011-12-14 Iain Sandoe <[email protected]>
+
+ * mach-o-i386.c (text_section_names_xlat): New table.
+ (data_section_names_xlat): Likewise.
+ (import_section_names_xlat): Likewise.
+ (mach_o_i386_segsec_names_xlat): Likewise.
+ (bfd_mach_o_tgt_seg_table): Use new tables.
+ * mach-o-x86-64.c (bfd_mach_o_tgt_seg_table): Set NULL.
+ * mach-o.c (mach_o_section_name_xlat, mach_o_segment_name_xlat):
+ Move to mach-o.h as typedefs.
+ (text_section_names_xlat): Update for current GCC usage.
+ (data_section_names_xlat): Likewise.
+ (dwarf_section_names_xlat): Likewise.
+ (objc_section_names_xlat): New table.
+ (segsec_names_xlat): Add objc table.
+ (bfd_mach_o_normalize_section_name): Replace with...
+ (bfd_mach_o_section_data_for_mach_sect): New.
+ (bfd_mach_o_section_data_for_bfd_name): New.
+ (bfd_mach_o_section_data_for_bfd_name): Update to use additional data.
+ (bfd_mach_o_convert_section_name_to_mach_o): Likewise.
+ (bfd_mach_o_bfd_copy_private_section_data): Implement.
+ (bfd_mach_o_write_symtab): Write a zero-length string as the first entry
+ for compatibility with system tools.
+ (bfd_mach_o_build_commands): Update section alignment info.
+ (bfd_mach_o_new_section_hook): Use translation table data to define
+ default section flags, type, attributes and alignment, when available.
+ (bfd_mach_o_init_section_from_mach_o): Add TODO comment.
+ (bfd_mach_o_section_type_name): Add 'symbol_stubs'.
+ (bfd_mach_o_section_attribute_name): Add 'self_modifying_code'.
+ (bfd_mach_o_get_section_type_from_name): Change "not-found" return
+ value.
+ (bfd_mach_o_tgt_seg_table): Set default NULL.
+ * mach-o.h (bfd_mach_o_segment_command): Use define for name length.
+ (bfd_mach_o_backend_data): Move until after contents are defined.
+ (bfd_mach_o_normalize_section_name): Remove.
+ (bfd_mach_o_convert_section_name_to_bfd): Declare.
+ (mach_o_section_name_xlat): Declare.
+ (mach_o_segment_name_xlat): Declare.
+ (bfd_mach_o_section_data_for_mach_sect): Declare.
+ (bfd_mach_o_section_data_for_bfd_name): Declare.
+
+2011-12-13 Shinichiro Hamaji <[email protected]>
+
+ * dwarf2.c (bfd_dwarf2_cleanup_debug_info): Accept stash as an
+ argument like other functions to support formats other than ELF.
+ * elf-bfd.h (bfd_dwarf2_cleanup_debug_info): Move to bfd-in.h.
+ * elf.c (_bfd_elf_close_and_cleanup): Pass dwarf2_find_line_info
+ in tdata as a parameter.
+ * libbfd-in.h (bfd_dwarf2_cleanup_debug_info): Move from
+ elf-bfd.h.
+ * libbfd.h (bfd_dwarf2_cleanup_debug_info): Regenerate.
+ * mach-o-target.c (bfd_mach_o_close_and_cleanup): Remove the
+ fallback macro.
+ (bfd_mach_o_find_nearest_line): Likewise.
+ * mach-o.c (bfd_mach_o_find_nearest_line): Add the definition
+ which calls _bfd_dwarf2_find_nearest_line.
+ (bfd_mach_o_close_and_cleanup): Likewise.
+ * mach-o.h (mach_o_data_struct): Add dwarf2_find_line_info.
+ (bfd_mach_o_find_nearest_line): Add declaration.
+ (bfd_mach_o_close_and_cleanup): Add declaration.
+
+2011-12-13 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_read_symtab_symbols): Make global. Remove
+ prototype.
+ (bfd_mach_o_section_get_entry_size): Make global.
+ (bfd_mach_o_section_get_nbr_indirect): Likewise.
+ (bfd_mach_o_read_symtab_strtab): Likewise.
+ (struct bfd_mach_o_xlat_name): Move to mach-o.h
+ (bfd_mach_o_print_flags): Move to binutils/od-macho.c
+ (bfd_mach_o_get_name_of_null, bfd_mach_o_get_name): Likewise.
+ (bfd_mach_o_cpu_name, bfd_mach_o_filetype_name): Likewise.
+ (bfd_mach_o_header_flags_name): Likewise.
+ (bfd_mach_o_load_command_name): Likewise.
+ (bfd_mach_o_print_private_header): Likewise.
+ (bfd_mach_o_print_section_map, bfd_mach_o_print_section): Likwise.
+ (bfd_mach_o_print_segment, bfd_mach_o_print_dysymtab): Likewise.
+ (bfd_mach_o_print_dyld_info): Likewise.
+ (bfd_mach_o_print_private_bfd_data): Remove.
+ (bfd_mach_o_type_name): Make global.
+ (bfd_mach_o_section_attribute_name): Likewise.
+ * mach-o.h (bfd_mach_o_xlat_name): Added.
+ (bfd_mach_o_section_get_nbr_indirect)
+ (bfd_mach_o_section_get_entry_size)
+ (bfd_mach_o_read_symtab_symbols)
+ (bfd_mach_o_read_symtab_strtab)
+ (bfd_mach_o_section_attribute_name)
+ (bfd_mach_o_section_type_name): Likewise.
+ * mach-o-target.c (bfd_mach_o_bfd_print_private_bfd_data): Define.
+
+2011-12-13 Chung-Lin Tang <[email protected]>
+
+ * elfxx-mips.c (mips_elf_calculate_relocation): Correct
+ R_MIPS16_HI16/R_MIPS16_LO16 handling of two cleared lower bits,
+ update comments.
+
+2011-12-12 Iain Sandoe <[email protected]>
+
+ * mach-o.c (bfd_mach_o_read_section_32): Null-terminate sectname.
+ (bfd_mach_o_read_section_64): Likewise.
+
+2011-12-11 John Davis Anglin <[email protected]>
+
+ PR binutils/13476
+ * elf32-hppa.c (final_link_relocate): Convert R_PARISC_TLS_GD21L,
+ R_PARISC_TLS_LDM21L and R_PARISC_TLS_IE21L relocations to
+ R_PARISC_DPREL21L when not doing a shared link. Likewise convert
+ R_PARISC_TLS_GD14R, R_PARISC_TLS_LDM14R and R_PARISC_TLS_IE14R to
+ R_PARISC_DPREL14R. Handle R_PARISC_TLS_GD21L, R_PARISC_TLS_LDM21L
+ and R_PARISC_TLS_IE21L with R_PARISC_DLTIND21L.
+
+2011-12-10 David Daney <[email protected]>
+
+ * elfxx-mips.c (mips_elf_link_hash_table.rld_value): Remove.
+ (mips_elf_link_hash_table.rld_symbol): New field;
+ (MIPS_ELF_RLD_MAP_SIZE): New macro.
+ (_bfd_mips_elf_add_symbol_hook): Remember __rld_obj_head symbol
+ in rld_symbol.
+ (_bfd_mips_elf_create_dynamic_sections): Remember __rld_map symbol
+ in rld_symbol.
+ (_bfd_mips_elf_size_dynamic_sections): Set correct size for .rld_map.
+ (_bfd_mips_elf_finish_dynamic_symbol): Remove .rld_map handling.
+ (_bfd_mips_elf_finish_dynamic_sections): Use rld_symbol to
+ calculate DT_MIPS_RLD_MAP value.
+ (_bfd_mips_elf_link_hash_table_create): Initialize rld_symbol,
+ quit initializing rld_value.
+
+2011-12-08 Andrew Pinski <[email protected]>
+ Adam Nemet <[email protected]>
+
+ * archures.c (bfd_mach_mips_octeon2): New macro
+ * bfd-in2.h: Regenerate.
+ * cpu-mips.c (I_mipsocteon2): New enum value.
+ (arch_info_struct): Add bfd_mach_mips_octeon2.
+ * elfxx-mips.c (_bfd_elf_mips_mach): Support E_MIPS_MACH_OCTEON2.
+ (mips_set_isa_flags): Add bfd_mach_mips_octeon2.
+ (mips_mach_extensions): Add bfd_mach_mips_octeon2.
+
+2011-12-07 Alan Modra <[email protected]>
+
+ PR ld/12772
+ * elflink.c (elf_gc_sweep_symbol): Discard unmarked symbols
+ defined in shared libraries.
+
+2011-12-07 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_canonicalize_symtab): Fix indentation.
+ Adjust the condition.
+ (bfd_mach_o_read_symtab_symbol): Now returns a bfd_boolean.
+ Adjust return statements.
+ (bfd_mach_o_read_symtab_strtab): Likewise.
+ (bfd_mach_o_read_symtab_symbols): Likewise.
+ (bfd_mach_o_scan_start_address): Likewise. Make it static.
+ (bfd_mach_o_scan): Likewise.
+ (bfd_mach_o_read_dysymtab_symbol): Remove unused function.
+ (bfd_mach_o_header_p): Adjust call.
+ (bfd_mach_o_cpu_name): Make it const.
+ (bfd_mach_o_filetype_name): Likewise.
+ (bfd_mach_o_header_flags_name): Likewise.
+ (bfd_mach_o_section_type_name): Likewise.
+ (bfd_mach_o_section_attribute_name): Likewise.
+ (bfd_mach_o_load_command_name): Likewise.
+ (bfd_mach_o_get_section_type_from_name): Add a const qualifier
+ after above change.
+ (bfd_mach_o_get_section_attribute_from_name): Likewise.
+ * mach-o.h (bfd_mach_o_read_dysymtab_symbol)
+ (bfd_mach_o_scan_start_address, bfd_mach_o_scan): Remove.
+
+2011-12-06 Ulrich Weigand <[email protected]>
+
+ * elf-bfd.h (elfcore_write_s390_last_break): Add prototype.
+ (elfcore_write_s390_system_call): Likewise.
+ * elf.c (elfcore_write_s390_last_break): New function.
+ (elfcore_write_s390_system_call): Likewise.
+ (elfcore_write_register_note): Call them.
+ (elfcore_grok_s390_last_break): New function.
+ (elfcore_grok_s390_system_call): Likewise.
+ (elfcore_grok_note): Call them.
+
+2011-12-05 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_read_symtab_symbol): Accept indirect symbols.
+
+2011-12-05 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_write_contents): Handle LC_LOAD_UPWARD_DYLIB.
+ (bfd_mach_o_read_dylib): Likewise.
+ (bfd_mach_o_read_command): Likewise.
+ (bfd_mach_o_bfd_print_private_bfd_data): Likewise.
+
+2011-12-05 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_read_command): Add the bfd in the error
+ message.
+ (bfd_mach_o_openr_next_archived_file): Use arch name as member name.
+ (bfd_mach_o_fat_extract): Ditto.
+
+2011-12-03 Alan Modra <[email protected]>
+
+ PR ld/13468
+ * elflink.c (bfd_elf_final_link): Don't segfault when checking
+ for DT_TEXTREL and .dynamic does not exist.
+
+2011-12-03 Alan Modra <[email protected]>
+
+ PR ld/13470
+ * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Revert substantive
+ change in 2011-07-01 commit. Comment.
+ * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
+
+2011-12-01 Mikael Pettersson <[email protected]>
+
+ * elf32-m68k.c (elf_m68k_check_relocs) <R_68K_8, R68K_16, R_68K_32>: For
+ non-SEC_ALLOC sections break before GOT and PLT accounting.
+
+2011-12-01 Hans-Peter Nilsson <[email protected]>
+
+ * elf32-cris.c (cris_elf_check_relocs) <plt accounting for
+ R_CRIS_8, R_CRIS_16, and R_CRIS_32>: Move early break for
+ non-SEC_ALLOC sections before GOT and PLT accounting.
+
+2011-11-29 Andrew Pinski <[email protected]>
+
+ * archures.c (bfd_mach_mips_octeonp): New macro.
+ * bfd-in2.h: Regenerate.
+ * bfd/cpu-mips.c (I_mipsocteonp): New enum value.
+ (arch_info_struct): Add bfd_mach_mips_octeonp.
+ * elfxx-mips.c (mips_set_isa_flags): Add bfd_mach_mips_octeonp.
+ (mips_mach_extensions): Add bfd_mach_mips_octeonp.
+
+2011-11-23 Tristan Gingold <[email protected]>
+
+ * vms-lib.c (get_idxlen): Add comments. Fix type in sizeof.
+ (vms_write_index): Add comments.
+
+2011-11-22 DJ Delorie <[email protected]>
+
+ * elf32-rx.c (rx_elf_object_p): Add more checks for "scanning" to
+ avoid using the special non-swapping target when not explicitly
+ requested.
+
+2011-11-22 Daniel Calcoen <[email protected]>
+
+ * elf32-rx.c (rx_elf_object_p): Correct typo: lma->vma.
+
+2011-11-22 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_print_symbol): Display COM for common
+ symbols. Print section name in brackets.
+
+2011-11-21 Andreas Tobler <[email protected]>
+
+ * config.bfd: Add vectors for powerpc and powerpc64-freebsd.
+ * configure.in (TDEFINES): Add rules for powerpc*-freebsd.
+ * configure: Regenerate.
+ * elf32-ppc.c: Add powerpc-freebsd definitions.
+ * elf64-ppc.c: Add powerpc64-freebsd definitions.
+ * targets.c: Add bits for powerpc and powerpc64-freebsd.
+
+2011-11-17 Philipp Thomas <[email protected]>
+
+ * elf32-arm.c (elf32_thumb_to_arm_stub): Sync message so that it
+ needs to be translated only once.
+
+2011-11-16 Maciej W. Rozycki <[email protected]>
+
+ * elf64-mips.c (mips_elf64_howto_table_rela): Set src_mask to
+ zero throughout.
+ (mips16_elf64_howto_table_rela): Likewise.
+ (micromips_elf64_howto_table_rela): Likewise.
+ * elfn32-mips.c (elf_mips_howto_table_rela): Likewise.
+ (elf_mips16_howto_table_rela): Likewise.
+ (elf_micromips_howto_table_rela): Likewise.
+
+2011-11-15 Alan Modra <[email protected]>
+ Andreas Tobler <[email protected]>
+
+ * elflink.c (_bfd_elf_create_got_section): Replace
+ bfd_make_section_with_flags with bfd_make_section_anyway_with_flags.
+ (_bfd_elf_link_create_dynamic_sections): Likewise.
+ * elf32-ppc.c (ppc_elf_create_glink): Likewise.
+ (ppc_elf_create_dynamic_sections): Likewise.
+
+2011-11-14 Maxim Kuvyrkov <[email protected]>
+
+ * elfxx-mips.c (mips_n64_exec_plt0_entry): Use 64-bit move.
+
+2011-11-08 Nick Clifton <[email protected]>
+
+ * elf-m10300.c (mn10300_elf_relax_section): Fix check for an
+ immediate move into an address register.
+
+2011-11-09 Alan Modra <[email protected]>
+
+ * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Mark syms in
+ executables when export_dynamic.
+
+2011-11-08 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (struct ppc64_elf_obj_tdata): Rename
+ ha_relocs_not_using_r2 to unexpected_toc_insn.
+ (ok_lo_toc_insn): New function.
+ (ppc64_elf_edit_toc): Check insn on lo toc reloc. Emit warning.
+ (ppc64_elf_relocate_section): Don't check insn on lo toc reloc here.
+ Handle addic on lo toc reloc.
+
+2011-11-06 John David Anglin <[email protected]>
+
+ PR ld/13387
+ * elf32-hppa.c (elf32_hppa_hide_symbol): Make STT_GNU_IFUNC symbol
+ go through PLT. Reset plt field with init_plt_offset.
+ (elf32_hppa_adjust_dynamic_symbol): Ensure that a PLT slot is
+ allocated for symbols referenced by a plabel.
+
+2011-11-02 DJ Delorie <[email protected]>
+
+ * elf32-rl78.c (rl78_elf_merge_private_bfd_data): Delete unused
+ variable.
+
+2011-11-02 Jan Beulich <[email protected]>
+
+ * coffgen.c (coff_write_alien_symbol): Make public. Add 'struct
+ internal_syment *' parameter. Extend 'dummy' to an array with two
+ elements. Set n_numaux early. Handle BSF_FILE.
+ (coff_write_symbols): Pass NULL as new third argument to
+ coff_write_alien_symbol().
+ * cofflink.c (_bfd_coff_final_link): Don't use COFF-specific
+ obj_raw_syment_count() on non-COFF input BFD. Insert local symbols
+ from non-COFF input BFDs.
+ * libcoff-in.h (coff_write_alien_symbol): Declare.
+ * libcoff.h (coff_write_alien_symbol): Re-generate.
+
+2011-11-01 DJ Delorie <[email protected]>
+
+ * Makefile.am (ALL_MACHINES): Add cpu-rl78.lo.
+ (ALL_MACHINES_CFILES): Add cpu-rl78.c.
+ (BFD32_BACKENDS): Add elf32-rl78.lo.
+ (BFD32_BACKENDS_CFILES): Add elf32-rl78.c.
+ (Makefile.in): Regenerate.
+ * archures.c (bfd_architecture): Define bfd_arch_rl78.
+ (bfd_archures_list): Add bfd_rl78_arch.
+ * config.bfd: Add rl78-*-elf.
+ * configure.in: Add bfd_elf32_rl78_vec.
+ * reloc.c (bfd_reloc_code_type): Add BFD_RELOC_RL78_* relocations.
+ * targets.c (bfd_target_vector): Add bfd_elf32_rl78_vec.
+ * Makefile.in: Regenerate.
+ * bfd-in2.h: Regenerate.
+ * configure: Regenerate.
+ * libbfd.h: Regenerate.
+ * cpu-rl78.c: New file.
+ * elf32-rl78.c: New file.
+
+2011-10-26 Nick Clifton <[email protected]>
+
+ PR ld/13049
+ * elf64-ppc.c (STUB_SUFFIX): Revert previous delta.
+ * elf32-hppa.c (STUB_SUFFIX): Likewise.
+
+2011-10-25 Joern Rennecke <[email protected]>
+
+ * Makefile.am (ALL_MACHINES): Add cpu-epiphany.lo.
+ (ALL_MACHINES_CFILES): Add cpu-epiphany.c.
+ (BFD32_BACKENDS): Add elf32-epiphany.lo.
+ (BFD32_BACKENDS_CFILES): Add elf32-epiphany.c.
+ * archures.c (bfd_arch_epiphany): Add.
+ (bfd_mach_epiphany16, bfd_mach_epiphany32): Define.
+ (bfd_epiphany_arch): Declare.
+ (bfd_archures_list): Add &bfd_epiphany_arch.
+ * config.bfd (epiphany-*-elf): New target case.
+ * configure.in (bfd_elf32_epiphany_vec): New target vector case.
+ * reloc.c (BFD_RELOC_EPIPHANY_SIMM8): New relocation.
+ (BFD_RELOC_EPIPHANY_SIMM24, BFD_RELOC_EPIPHANY_HIGH): Likewise.
+ (BFD_RELOC_EPIPHANY_LOW, BFD_RELOC_EPIPHANY_SIMM11): Likewise.
+ (BFD_RELOC_EPIPHANY_IMM11, BFD_RELOC_EPIPHANY_IMM8): Likewise.
+ * targets.c (bfd_elf32_epiphany_vec): Declare.
+ (_bfd_target_vector): Add bfd_elf32_epiphany_vec.
+ * Makefile.in: Regenerate.
+ * bfd-in2.h: Regenerate.
+ * configure: Regenerate.
+ * libbfd.h: Regenerate.
+ * po/SRC-POTFILES.in: Regenerate.
+ * po/bfd.pot: Regenerate.
+ * cpu-epiphany.c: New file.
+ * elf32-epiphany.c: New file.
+
+2011-10-24 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (_bfd_mips_elf_symbol_processing): Remove
+ assertions.
+
+2011-10-24 Eugeniy Meshcheryakov <[email protected]>
+
+ PR ld/13273
+ * elf32-arm.c (elf32_arm_merge_eabi_attributes): Do not warn about
+ identical TAG_PCS_config attributes.
+
+2011-10-24 Nick Clifton <[email protected]>
+
+ * po/ja.po: Updated Japanese translation.
+
+2011-10-24 Pau Garcia i Quiles <[email protected]>
+
+ PR binutils/13292
+ * bfd-in.h: Include <sys/stat.h> rather than forward defining
+ struct stat.
+ * bfd-in2.h: Regenerate.
+
+2011-10-21 H.J. Lu <[email protected]>
+
+ PR ld/13302
+ * elf32-i386.c (elf_i386_relocate_section): Replace
+ R_386_IRELATIVE with R_386_RELATIVE.
+
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Replace
+ R_X86_64_IRELATIVE with R_X86_64_RELATIVE.
+
+2011-10-21 H.J. Lu <[email protected]>.
+
+ * elf32-i386.c (elf_i386_relocate_section): Fix a typo in
+ comments.
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
+
+2011-10-21 H.J. Lu <[email protected]>
+
+ PR ld/13302
+ * elf32-i386.c (elf_i386_link_hash_table): Add next_jump_slot_index
+ and next_irelative_index.
+ (elf_i386_link_hash_table_create): Initialize next_jump_slot_index
+ and next_irelative_index.
+ (elf_i386_allocate_dynrelocs): Increment reloc_count instead of
+ next_tls_desc_index.
+ (elf_i386_size_dynamic_sections): Set next_tls_desc_index and
+ next_irelative_index from reloc_count.
+ (elf_i386_finish_dynamic_symbol): Put R_386_IRELATIVE after
+ R_386_JUMP_SLOT.
+
+ * elf64-x86-64.c (elf_x86_64_link_hash_table): Add
+ next_jump_slot_index and next_irelative_index.
+ (elf_x86_64_link_hash_table_create): Initialize
+ next_jump_slot_index and next_irelative_index.
+ (elf_x86_64_size_dynamic_sections): Set next_irelative_index
+ from reloc_count.
+ (elf_x86_64_finish_dynamic_symbol): Put R_X86_64_IRELATIVE after
+ R_X86_64_JUMP_SLOT.
+
+2011-10-20 Nick Clifton <[email protected]>
+
+ PR ld/13049
+ * elf32-arm.c (STUB_SUFFIX): Avoid collision with user namespace
+ symbol names.
+ * elf64-ppc.c (STUB_SUFFIX): Likewise.
+ * elf32-hppa.c (STUB_SUFFIX): Likewise.
+
+2011-10-20 Alan Modra <[email protected]>
+
+ * elf32-i386.c (i386_opcode16): Delete.
+ (elf_i386_check_tls_transition): Use memcmp to compare contents.
+ * elf64-x86-64.c (x86_64_opcode16, x86_64_opcode32): Delete.
+ (elf_x86_64_check_tls_transition): Use memcmp to compare contents.
+
+2011-10-19 Alan Modra <[email protected]>
+
+ PR ld/13177
+ * elflink.c (_bfd_elf_gc_mark_rsec): Set symbol "mark".
+ (elf_gc_sweep_symbol): Don't test plt/got refcounts, instead test
+ "mark". Hide undefweak too. Clear def_regular and ref_regular.
+ * elf-m10300.c (mn10300_elf_relocate_section): Ignore unresolved
+ reloc errors from garbage-collected code.
+ * elf32-arm.c (elf32_arm_relocate_section): Likewise.
+ * elf32-bfin.c (bfin_relocate_section): Likewise.
+ (bfinfdpic_relocate_section): Likewise.
+ * elf32-cris.c (cris_elf_relocate_section): Likewise.
+ * elf32-frv.c (elf32_frv_relocate_section): Likewise.
+ * elf32-i386.c (elf_i386_relocate_section): Likewise.
+ * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
+ * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
+ * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
+ * elf32-s390.c (elf_s390_relocate_section): Likewise.
+ * elf32-sh.c (sh_elf_relocate_section): Likewise.
+ * elf32-spu.c (spu_elf_relocate_section): Likewise.
+ * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
+ * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
+ * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
+ * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
+ * elf64-s390.c (elf_s390_relocate_section): Likewise.
+ * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
+ * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
+
+2011-10-19 Alan Modra <[email protected]>
+
+ PR ld/13311
+ * elflink.c (elf_link_output_extsym): Correct test for warning when
+ forced local executable syms are referenced from shared libraries.
+
+2011-10-19 Alan Modra <[email protected]>
+
+ PR ld/13254
+ * elflink.c (bfd_elf_final_link): Emit error_textrel error.
+
+2011-10-18 David S. Miller <[email protected]>
+
+ PR binutils/13301
+ * elfxx-sparc.c (sparc_elf_find_reloc_at_ofs): New function.
+ (_bfd_sparc_elf_relocate_section): Always move the __tls_get_addr
+ call delay slot instruction forward 4 bytes when performing
+ relaxation.
+
+2011-10-17 Alan Modra <[email protected]>
+
+ PR ld/12975
+ PR ld/13195
+ * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Apply 2011-09-15
+ and 2011-09-29 bfd_elf_gc_mark_dynamic_ref_symbol changes here too.
+
+2011-10-14 Hans-Peter Nilsson <[email protected]>
+
+ * elf32-cris.c (cris_elf_gc_sweep_hook) <R_CRIS_16_GOTPLT>
+ <R_CRIS_32_GOTPLT>: Fix missing update of gotplt refcount for
+ global symbols.
+ <R_CRIS_8, R_CRIS_16, R_CRIS_32>: New cases for similar missing
+ updates of the plt refcount.
+ (elf_cris_adjust_gotplt_to_got): Assert integrity of the gotplt
+ refcount in relation to the plt refcount.
+
+2011-10-13 Richard Sandiford <[email protected]>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate): Mark PLT calls via
+ stubs as resolved.
+
+2011-10-11 Alan Modra <[email protected]>
+
+ PR binutils/13278
+ * archive.c (bfd_generic_archive_p): Only check first element
+ when target_defaulted.
+ (_bfd_construct_extended_name_table): Use ar_maxnamelen.
+ (_bfd_archive_bsd44_construct_extended_name_table): Likewise.
+
+2011-10-11 Alan Modra <[email protected]>
+
+ PR binutils/13257
+ * archive.c (_bfd_find_nested_archive, _bfd_get_elt_at_filepos): Open
+ thin archive element using container target if not defaulted.
+
+2011-10-10 Nick Clifton <[email protected]>
+
+ * po/es.po: Updated Spanish translation.
+ * po/fi.po: Updated Finnish translation.
+ * po/fr.po: Updated French translation.
+ * po/ru.po: Updated Russian translation.
+
+2011-10-10 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_howto_table): Add R_PPC64_TOCSAVE entry.
+ (struct ppc_link_hash_table): Add tocsave_htab.
+ (struct tocsave_entry): New.
+ (tocsave_htab_hash, tocsave_htab_eq, tocsave_find): New functions.
+ (ppc64_elf_link_hash_table_create): Create tocsave_htab..
+ (ppc64_elf_link_hash_table_free): ..and delete it.
+ (build_plt_stub): Always put STD_R2_40R1 first.
+ (ppc64_elf_size_stubs): Check for R_PPC64_TOCSAVE following reloc
+ on plt call. If present add prologue nop location to tocsave_htab.
+ (ppc64_elf_relocate_section): Convert prologue nop to std. Skip
+ first insn of plt call stub when R_PPC64_TOCSAVE present.
+
+2011-10-08 H.J. Lu <[email protected]>
+
+ PR ld/13250
+ * elflink.c (elf_link_add_object_symbols): Preserve the maximum
+ alignment and size for common symbols.
+
+2011-10-08 Alan Modra <[email protected]>
+
+ PR ld/13229
+ PR ld/13244
+ * elflink.c (elf_link_add_object_symbols): Don't make IR symbols
+ dynamic.
+
+2011-10-08 Alan Modra <[email protected]>
+
+ PR ld/13229
+ * elflink.c (elf_link_output_extsym): Strip defined plugin symbols
+ even when strip_discarded is false.
+
+2011-10-05 Kai Tietz <[email protected]>
+
+ * coffgen.c (coff_write_alien_symbol): Don't write
+ symbol for discarded sections, if strip_discarded isn't
+ explicit set to false.
+ (coff_write_native_symbol): Likewise.
+
+2011-10-05 DJ Delorie <[email protected]>
+ Nick Clifton <[email protected]>
+
+ * elf32-rx.c: Add support for PID mode.
+ (rx_elf_relocate_section): Add checks for unsafe PID relocations.
+ Include addend in R_RX_SYM relocations.
+
+2011-09-30 Tristan Gingold <[email protected]>
+
+ * dwarf2.c (struct dwarf2_debug): Add field debug_sections.
+ (read_section): Add sec argument. Adjust the code to get section
+ names from it.
+ (read_indirect_string): Adjust call to read_section.
+ (read_abbrevs): Ditto.
+ (decode_line_info): Ditto.
+ (read_debug_ranges): Ditto.
+ (DWARF2_DEBUG_INFO, DWARF2_COMPRESSED_DEBUG_INFO): Remove.
+ (find_debug_info): Add debug_sections parameter. Use it instead
+ the above macros.
+ (place_sections): Get section names from stash.
+ (find_line): Add debug_sections argument. Initialize
+ debug_sections field of stash from it.
+ Adjust calls to find_debug_info.
+ (_bfd_dwarf2_find_nearest_line): Add debug_sections argument.
+ Adjust call to find_line.
+ (_bfd_dwarf2_find_line): Adjust call to find_line.
+ * libcoff-in.h (struct dwarf_debug_section): New declaration.
+ (coff_find_nearest_line_with_names): Likewise.
+ * libcoff.h: Regenerate.
+ * libbfd-in.h (struct dwarf_debug_section): Move declaration.
+ (dwarf_debug_sections): Likewise.
+ (_bfd_dwarf2_find_nearest_line): Add debug_sections argument.
+ * libbfd.h: Regenerate.
+ * elf.c (_bfd_elf_find_nearest_line): Adjust call to
+ _bfd_dwarf2_find_nearest_line.
+ * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Ditto.
+ * elf64-alpha.c (elf64_alpha_find_nearest_line): Ditto.
+ * elf32-arm.c (elf32_arm_find_nearest_line): Ditto.
+ * coffgen.c (coff_find_nearest_line_with_names): New function.
+ (coff_find_nearest_line): Calls coff_find_nearest_line_with_names.
+ * coff-rs6000.c (xcoff_debug_sections): New constant.
+ (xcoff_find_nearest_line): New function.
+ (rs6000coff_vec): Use xcoff_find_nearest_line.
+ (pmac_xcoff_vec): Ditto.
+
+2011-09-30 Alan Modra <[email protected]>
+
+ PR ld/13235
+ * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add ha_relocs_not_using_r2.
+ (ppc64_elf_edit_toc): Check HA relocs.
+ (ha_reloc_match): Delete function.
+ (ppc64_elf_relocate_section): Remove delayed HA nop optimization.
+ Instead do it and low part optimization based on
+ ha_relocs_not_using_r2.
+
+2011-09-29 Alan Modra <[email protected]>
+
+ PR ld/13233
+ * elflink.c (_bfd_elf_gc_mark_extra_sections): Mark single member
+ debug and special section groups.
+
+2011-09-29 H.J. Lu <[email protected]>
+
+ PR ld/13195
+ * elflink.c (_bfd_elf_merge_symbol): Don't set dynamic_def when
+ clearing def_dynamic.
+ (elf_link_add_object_symbols): Likewise. Set dynamic_def when
+ setting def_dynamic.
+ (bfd_elf_gc_mark_dynamic_ref_symbol): Check if a symbol is
+ versioned.
+
+2011-09-27 Kai Tietz <[email protected]>
+
+ * coffcode.h (sec_to_styp_flags): Handle
+ SEC_LINK_DUPLICATES_SAME_CONTENTS, and
+ SEC_LINK_DUPLICATES_SAME_SIZE.
+
+2011-09-22 Tristan Gingold <[email protected]>
+
+ * configure.in: Bump version to 2.22.51
+ * configure: Regenerate.
+
+2011-09-21 David S. Miller <[email protected]>
+
+ * elfxx-sparc.c (_bfd_sparc_elf_merge_private_bfd_data): New.
+ * elfxx-sparc.h: Declare it.
+ * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Call it.
+ * elf64-sparc.c (elf64_sparc_merge_private_bfd_data): Likewise.
+
+2011-09-21 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_convert_section_name_to_bfd): Add comment.
+ Deals with size limited strings.
+ (bfd_mach_o_build_commands): Initialize more fields.
+
+2011-09-15 H.J. Lu <[email protected]>
+
+ PR ld/13177
+ * elflink.c (elf_gc_sweep_symbol): Also hide symbols without PLT
+ nor GOT references.
+
+2011-09-15 H.J. Lu <[email protected]>
+
+ PR ld/12975
+ * bfd-in.h (bfd_elf_size_dynamic_sections): Remove pointer
+ to struct bfd_elf_version_tree.
+
+ * elflink.c (elf_info_failed): Remove verdefs.
+ (_bfd_elf_export_symbol): Updated.
+ _bfd_elf_link_assign_sym_version): Likewise.
+ (bfd_elf_size_dynamic_sections): Remove pointer to struct
+ bfd_elf_version_tree. Updated.
+ (bfd_elf_gc_mark_dynamic_ref_symbol): Check if a symbol is hidden
+ by linker script.
+
+ * linker.c (bfd_hide_sym_by_version): New.
+
+ * bfd-in2.h: Regenerated.
+
+2011-09-12 H.J. Lu <[email protected]>
+
+ PR ld/13178
+ * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Use .got.plt
+ if there are no GOT relocations.
+
+2011-09-09 Kai Tietz <[email protected]>
+
+ * peicode.h (pe_ILF_build_a_bfd): Don't remove leading underscore
+ for targets without symbol_leading_char.
+
+2011-09-08 Bernd Jendrissek <[email protected]>
+
+ * bfdwin.c (bfd_get_file_window): Fix memory leak.
+
+2011-09-07 Alan Modra <[email protected]>
+
+ PR ld/13131
+ * bfd/elf64-ppc.c (adjust_toc_syms): Ensure ppc64_elf_howto_table
+ is initialized.
+
+2011-09-06 Alan Modra <[email protected]>
+
+ PR ld/13131
+ * elf64-ppc.c (adjust_toc_syms): Delete redundant code.
+ (ppc64_elf_edit_toc): Fix style nit. Report some details
+ on linker failure due to reference in debug or non-alloc
+ sections to optimized away toc entry, and don't abort.
+
+2011-09-01 Christophe Lyon <[email protected]>
+
+ * elf32-arm.c (elf32_arm_output_arch_local_syms): Skip excluded
+ sections.
+
+2011-08-26 Nick Clifton <[email protected]>
+
+ * po/es.po: Updated Spanish translation.
+
+2011-08-19 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_edit_toc): Ignore can_optimize bit if
+ we haven't seen expected -mcmodel=medium/large code relocs.
+
+2011-08-18 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_read_segment): Initialize list.
+
+2011-08-17 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_write_section_32): Fix typo.
+
+2011-08-17 Alan Modra <[email protected]>
+
+ PR ld/12762
+ * bfd-in.h (struct bfd_section_already_linked): Forward declare.
+ (_bfd_handle_already_linked): Declare.
+ * coff-alpha.c (_bfd_ecoff_section_already_linked): Define as
+ _bfd_coff_section_already_linked.
+ * coff-mips.c (_bfd_ecoff_section_already_linked): Likewise.
+ * coffcode.h (coff_section_already_linked): Likewise.
+ * cofflink.c (coff_link_add_symbols): Revert 2011-07-09 changes.
+ * elf-bfd.h: Likewise.
+ * libbfd-in.h: Likewise.
+ * targets.c: Likewise.
+ * linker.c (bfd_section_already_linked): Likewise.
+ (bfd_section_already_linked_table_lookup): Likewise.
+ (bfd_section_already_linked_table_insert): Likewise.
+ (_bfd_generic_section_already_linked): Likewise. Call
+ _bfd_handle_already_linked.
+ (_bfd_handle_already_linked): New function, split out from..
+ * elflink.c (_bfd_elf_section_already_linked): ..here. Revert
+ 2011-07-09 changes. Avoid unnecessary strcmp when matching
+ already_linked_list entries. Match plugin linkonce section.
+ (section_signature): Delete.
+ * coffgen.c (_bfd_coff_section_already_linked): New function.
+ * libcoff-in.h (_bfd_coff_section_already_linked): Declare.
+ * libbfd.h: Regenerate.
+ * libcoff.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+
+2011-08-14 Alan Modra <[email protected]>
+
+ * elf32-ppc.c (ppc_elf_select_plt_layout): Force bss-plt when
+ shared and call to _mcount will go via plt.
+
+2011-08-14 Alan Modra <[email protected]>
+
+ * elf64-ppc.c: Prefix all einfo error strings with "%P: ".
+ * elf32-ppc.c: Likewise.
+ (ppc_elf_select_plt_layout): Use einfo rather than info to report
+ forced bss-plt.
+
+2011-08-12 H.J. Lu <[email protected]>
+
+ PR ld/13082
+ * elf64-x86-64.c (x86_64_elf_howto_table): Add R_X86_64_RELATIVE64.
+ (elf_x86_64_relocate_section): Treat R_X86_64_64 like R_X86_64_32
+ and zero-extend it to 64bit if addend is zero for x32. Generate
+ R_X86_64_RELATIVE64 for x32.
+
+2011-08-09 Matthew Gretton-Dann <[email protected]>
+
+ * bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
+ * bfd-in2.h (bfd_elf32_arm_set_target_relocs): Likewise.
+ * elf32-arm.c (elf32_arm_link_hash_table): New field.
+ (elf232_arm_link_hash_table_create): Initialise new field.
+ (check_use_blx): Change test depending on fix_arm1176.
+ (bfd_elf32_arm_set_target_relocs): Set fix_arm1176 from
+ command line options.
+
+2011-08-08 Tristan Gingold <[email protected]>
+
+ * mach-o.c (struct mach_o_segment_name_xlat): Add comments.
+ (segsec_names_xlat): Reorder elements.
+ (bfd_mach_o_read_section_32): Fix typo.
+ (bfd_mach_o_read_section_64): Fix typo.
+
+2011-08-08 Tristan Gingold <[email protected]>
+
+ * mach-o.h (BFD_MACH_O_SEGNAME_SIZE): New macro.
+ (BFD_MACH_O_SECTNAME_SIZE): Ditto.
+ (bfd_mach_o_section): Use them. Add next field.
+ (bfd_mach_o_segment_command): Replace sections array by
+ sect_head and sect_tail.
+ (bfd_mach_o_get_mach_o_section): New macro.
+ (bfd_mach_o_lookup_section): Remove.
+ (bfd_mach_o_new_section_hook): New function.
+ * mach-o.c (bfd_mach_o_normalize_section_name): Use strncmp
+ instead of strcmp.
+ (bfd_mach_o_convert_section_name_to_bfd): Replaces section
+ parameter with segname and sectname parameters. Adjust.
+ (bfd_mach_o_append_section_to_segment): New function. Use a
+ linked list for Mach-O sections.
+ (bfd_mach_o_write_segment_32): Adjust.
+ (bfd_mach_o_write_segment_64): Ditto.
+ (bfd_mach_o_build_commands): Fix comment. Adjust.
+ (bfd_mach_o_flatten_sections): Adjust.
+ (bfd_mach_o_print_section_map): Adjust.
+ (bfd_mach_o_set_section_flags_from_bfd): Ditto.
+ (bfd_mach_o_new_section_hook): New function.
+ (bfd_mach_o_init_section_from_mach_o): Ditto.
+ (bfd_mach_o_read_section_32): Remove section parameter.
+ Return a section instead.
+ (bfd_mach_o_read_section_64): Ditto.
+ (bfd_mach_o_read_section): Ditto.
+ (bfd_mach_o_make_bfd_section): Adjust.
+ (bfd_mach_o_read_segment): Adjust for new profile of
+ bfd_mach_o_read_section.
+ (bfd_mach_o_lookup_section): Remove.
+ * mach-o-target.c (bfd_mach_o_new_section_hook): Remove.
+
+2011-08-08 Tristan Gingold <[email protected]>
+
+ * mach-o.h (bfd_mach_o_version_min_command): New structure.
+ (bfd_mach_o_load_command): Add version_min.
+ (mach_o_data_struct): Fix comment.
+ * mach-o.c (bfd_mach_o_read_version_min): New function.
+ (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_FUNCTION_STARTS,
+ BFD_MACH_O_LC_VERSION_MIN_MACOSX and
+ BFD_MACH_O_LC_VERSION_MIN_IPHONEOS.
+ (bfd_mach_o_get_name_or_null): New function.
+ (bfd_mach_o_get_name): Use the above new one.
+ (bfd_mach_o_load_command_name): Add the above new commands.
+ (bfd_mach_o_bfd_print_private_bfd_data): Display numerically
+ unknown commands. Handle BFD_MACH_O_LC_FUNCTION_STARTS,
+ BFD_MACH_O_LC_VERSION_MIN_MACOSX and
+ BFD_MACH_O_LC_VERSION_MIN_IPHONEOS.
+
+2011-08-08 Tristan Gingold <[email protected]>
+
+ * mach-o.h: Move size macros to external.h
+ Move reloc macros to reloc.h and x86-64.h.
+ * mach-o-i386.c: Includes mach-o/reloc.h
+ * mach-o-x86-64.c: Ditto and includes mach-o/x86-64.h
+ * mach-o.c: Add includes.
+ (bfd_mach_o_write_header): Use structure from external.h to convert.
+ (bfd_mach_o_write_thread): Ditto.
+ (bfd_mach_o_write_relocs): Ditto.
+ (bfd_mach_o_write_section_32): Ditto.
+ (bfd_mach_o_write_section_64): Ditto.
+ (bfd_mach_o_write_segment_32): Ditto.
+ (bfd_mach_o_write_segment_64): Ditto.
+ (bfd_mach_o_write_symtab): Ditto.
+ (bfd_mach_o_write_contents): Ditto.
+ (bfd_mach_o_read_header): Ditto.
+ (bfd_mach_o_read_section_32): Ditto.
+ (bfd_mach_o_read_section_64): Ditto.
+ (bfd_mach_o_read_symtab_symbol): Ditto.
+ (bfd_mach_o_read_dylinker): Ditto.
+ (bfd_mach_o_read_dylib): Ditto.
+ (bfd_mach_o_read_dysymtab): Ditto.
+ (bfd_mach_o_read_symtab): Ditto.
+ (bfd_mach_o_read_linkedit): Ditto.
+ (bfd_mach_o_read_str): Ditto.
+ (bfd_mach_o_read_dyld_info): Ditto.
+ (bfd_mach_o_read_segment): Ditto.
+ (bfd_mach_o_read_command): Ditto.
+ (bfd_mach_o_archive_p): Ditto.
+ (bfd_mach_o_canonicalize_one_reloc): Ditto. Change the BUF parameter.
+ (bfd_mach_o_canonicalize_relocs): Adjust to call the above function.
+ (bfd_mach_o_read_dysymtab_symbol): Rename BUF variable.
+ (bfd_mach_o_read_uuid): Remove useless cast. Use a macro instead
+ of an hard-coded value.
+
+2011-08-08 Tristan Gingold <[email protected]>
+
+ * mach-o-x86-64.c (bfd_mach_o_x86_64_mkobject): Fix cut-and-past typos.
+ (bfd_mach_o_x86_64_swap_reloc_out): Handle BFD_RELOC_32_PCREL,
+ BFD_RELOC_MACH_O_X86_64_SUBTRACTOR64 and
+ BFD_RELOC_MACH_O_X86_64_GOT_LOAD. Share common code.
+
+2011-08-08 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_normalize_section_name): New function.
+ (bfd_mach_o_convert_section_name_to_bfd): Use it.
+ (bfd_mach_o_get_section_type_from_name): New function.
+ (bfd_mach_o_get_section_attribute_from_name): Ditto.
+ * mach-o.h (bfd_mach_o_section): Move bfdsection field at the end.
+ Add comments. Add prototypes for the above new functions.
+
+2011-08-05 Mark Kettenis <[email protected]>
+
+ * netbsd-core.c (netbsd_core_vec): Init match_priority field.
+
+2011-08-05 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (maybe_strip_output): New function.
+ (ppc64_elf_size_stubs): Use it to strip .branch_lt and .eh_frame.
+
+2011-08-05 Alan Modra <[email protected]>
+
+ PR ld/12762
+ * elflink.c (_bfd_elf_section_already_linked): Return matched
+ status. Remove COFF comdat section handling.
+ * linker.c (_bfd_generic_section_already_linked): Return matched
+ status. Don't set SEC_GROUP in l_flags for plugin entries.
+ (bfd_section_already_linked): Update prototype.
+ * targets.c (_section_already_linked): Likewise.
+ * elf-bfd.h (_bfd_elf_section_already_linked): Likewise.
+ * libbfd-in.h (_bfd_generic_section_already_linked): Likewise.
+ (_bfd_nolink_section_already_linked): Update.
+ * libbfd.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+
+2011-08-05 Alan Modra <[email protected]>
+
+ * elf32-ppc.c: Include dwarf2.h.
+ (struct ppc_elf_link_hash_table): Add glink_eh_frame.
+ (ppc_elf_create_glink): Create .eh_frame section.
+ (glink_eh_frame_cie): New array.
+ (ppc_elf_size_dynamic_sections): Size glink_eh_frame.
+ (ppc_elf_finish_dynamic_sections): Write glink_eh_frame.
+
+2011-08-04 Tristan Gingold <[email protected]>
+
+ * vms-alpha.c (_bfd_vms_write_eeom): Round vms_linkage_index.
+ (_bfd_vms_write_etir): Initialize vms_linkage_index to 0.
+
+2011-08-03 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_canonicalize_symtab): Handle no symbols case.
+ (bfd_mach_o_read_symtab_symbols): Return if no symbols.
+
+2011-08-02 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (check_4byte_branch): Remove function.
+ (check_relocated_bzc): New function.
+ (_bfd_mips_elf_relax_section): Permit the relaxation of LUI
+ instructions that immediately follow a compact branch
+ instruction.
+
+2011-08-02 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (build_plt_stub): Correct emitted relocs when no
+ plt_static_chain.
+ (ppc_build_one_stub): Adjust get_relocs call to suit..
+ (ppc_size_one_stub): ..and reloc sizing. Correct plt size corner case.
+
+2011-08-01 H.J. Lu <[email protected]>
+
+ PR ld/13048
+ * archures.c (bfd_mach_i386_intel_syntax): New.
+ (bfd_mach_i386_i8086): Updated.
+ (bfd_mach_i386_i386): Likewise.
+ (bfd_mach_x86_64): Likewise.
+ (bfd_mach_x64_32): Likewise.
+ (bfd_mach_i386_i386_intel_syntax): Likewise.
+ (bfd_mach_x86_64_intel_syntax): Likewise.
+ (bfd_mach_x64_32_intel_syntax): Likewise.
+ (bfd_mach_l1om): Likewise.
+ (bfd_mach_l1om_intel_syntax): Likewise.
+ (bfd_mach_k1om): Likewise.
+ (bfd_mach_k1om_intel_syntax): Likewise.
+
+ * bfd-in2.h: Regenerated.
+
+ * cpu-i386.c (bfd_i386_compatible): Check mach instead of
+ bits_per_address.
+ (bfd_x64_32_arch_intel_syntax): Set bits_per_address to 64.
+ (bfd_x64_32_arch): Likewise.
+
+ * elf64-x86-64.c: Include "libiberty.h".
+ (x86_64_elf_howto_table): Append x32 R_X86_64_32.
+ (elf_x86_64_rtype_to_howto): Support x32 R_X86_64_32.
+ (elf_x86_64_reloc_type_lookup): Likewise.
+ (elf_x86_64_reloc_name_lookup): Likewise.
+ (elf_x86_64_relocate_section): Likewise.
+ (elf_x86_64_check_relocs): Allow R_X86_64_64 relocations for x32.
+
+2011-07-29 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (check_br32): Fix return type.
+
+2011-07-29 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (bz_insn_16): Correct opcode mask.
+
+2011-07-29 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c: Adjust comments throughout.
+ (mips_elf_relax_delete_bytes): Reshape code.
+ (_bfd_mips_elf_relax_section): Remove check for
+ R_MICROMIPS_GPREL16 relocations. Reshape code.
+
+2011-07-28 Roland McGrath <[email protected]>
+
+ * elf32-i386.c (NACL_PLT_ENTRY_SIZE, NACLMASK): New macros.
+ (elf_i386_nacl_plt0_entry): New variable.
+ (elf_i386_plt_entry): New variable.
+ (elf_i386_nacl_pic_plt0_entry): New variable.
+ (elf_i386_nacl_pic_plt_entry): New variable.
+ (elf_i386_nacl_plt, elf_i386_nacl_arch_bed): New variables.
+ (elf_backend_arch_data): New macro setting for elf_i386_nacl_vec stanza.
+ (elf_backend_plt_alignment): Likewise.
+
+ * config.bfd: Handle i[3-7]86-*-nacl*.
+ * elf32-i386.c (bfd_elf32_i386_nacl_vec): New backend vector stanza.
+ * targets.c: Support bfd_elf32_i386_nacl_vec.
+ * configure.in: Likewise.
+ * configure: Regenerated.
+
+ * elf32-i386.c (struct elf_i386_plt_layout): New type.
+ (GET_PLT_ENTRY_SIZE): New macro.
+ (elf_i386_plt): New variable.
+ (struct elf_i386_backend_data): New member `plt'.
+ (elf_i386_arch_bed): Add initializer for it.
+ (elf_i386_vxworks_arch_bed): Likewise.
+ (elf_i386_allocate_dynrelocs): Use GET_PLT_ENTRY_SIZE.
+ (elf_i386_plt_sym_val): Likewise.
+ (elf_i386_relocate_section): Likewise.
+ (elf_i386_finish_dynamic_symbol): Likewise.
+ Also use other elf_i386_plt_layout members for PLT details.
+ (elf_i386_finish_dynamic_sections): Likewise.
+
+ * elf32-i386.c (struct elf_i386_backend_data): New type.
+ (get_elf_i386_backend_data): New macro.
+ (elf_i386_arch_bed): New variable.
+ (elf_backend_arch_data): New macro.
+ (struct elf_i386_link_hash_table): Remove plt0_pad_byte and is_vxworks.
+ (elf_i386_link_hash_table_create): Don't initialize them.
+ (elf_i386_create_dynamic_sections): Find is_vxworks flags in
+ elf_i386_backend_data, not elf_i386_link_hash_table.
+ (elf_i386_adjust_dynamic_symbol): Likewise.
+ (elf_i386_allocate_dynrelocs): Likewise.
+ (elf_i386_readonly_dynrelocs): Likewise.
+ (elf_i386_size_dynamic_sections): Likewise.
+ (elf_i386_relocate_section): Likewise.
+ (elf_i386_finish_dynamic_symbol): Likewise.
+ (elf_i386_finish_dynamic_sections): Likewise. Same for plt0_pad_byte.
+ (elf_i386_vxworks_link_hash_table_create): Function removed.
+ (elf_i386_vxworks_arch_bed): New variable.
+ (elf_backend_arch_data): New macro in elf32-i386-vxworks stanza.
+
+ * elf-bfd.h (elf_backend_data): New member arch_backend_data.
+ * elfxx-target.h (elf_backend_arch_data): New macro.
+ (elfNN_bed): Use it as initializer for the new member.
+
+2011-07-28 Mikulas Patocka <[email protected]>
+
+ * elf64-hppa.c (elf_hppa_final_link_relocate): Fix handling of out
+ of range branches.
+
+2011-07-26 Jakub Jelinek <[email protected]>
+
+ * dwarf2.c (dwarf_debug_sections): Add .debug_macro
+ and .zdebug_macro entry.
+ (dwarf_debug_section_enum): Add debug_macro.
+
+2011-07-26 Alan Modra <[email protected]>
+
+ * elf64-ppc.c: Include dwarf2.h.
+ (struct ppc_link_hash_table): Add glink_eh_frame.
+ (create_linkage_sections): Create .eh_frame section.
+ (ppc64_elf_size_dynamic_sections): Arrange to drop unneeded
+ glink_eh_frame.
+ (glink_eh_frame_cie): New array.
+ (ppc64_elf_size_stubs): Size glink_eh_frame.
+ (ppc64_elf_build_stubs): Init glink_eh_frame contents.
+ (ppc64_elf_finish_dynamic_sections): Write glink_eh_frame.
+
+2011-07-25 Hans-Peter Nilsson <[email protected]>
+
+ PR ld/12815
+ * elf64-mmix.c (struct _mmix_elf_section_data): New members
+ has_warned_bpo and has_warned_pushj.
+ (mmix_final_link_relocate): Remove PARAMS and PTR macros,
+ converting to ISO C. Add new parameter error_message. All
+ callers changed.
+ (mmix_elf_perform_relocation): Ditto.
+ <case R_MMIX_PUSHJ_STUBBABLE, case R_MMIX_BASE_PLUS_OFFSET>:
+ Handle the case where mmix_elf_check_common_relocs has not been
+ called, missing preparations for relocs of the respective type.
+
+2011-07-24 Chao-ying Fu <[email protected]>
+ Ilie Garbacea <[email protected]>
+ Maciej W. Rozycki <[email protected]>
+ Joseph Myers <[email protected]>
+ Catherine Moore <[email protected]>
+ Richard Sandiford <[email protected]>
+
+ * archures.c (bfd_mach_mips_micromips): New macro.
+ * cpu-mips.c (I_micromips): New enum value.
+ (arch_info_struct): Add bfd_mach_mips_micromips.
+ * elfxx-mips.h (_bfd_mips_elf_is_target_special_symbol): New
+ prototype.
+ (_bfd_mips_elf_relax_section): Likewise.
+ (_bfd_mips16_elf_reloc_unshuffle): Rename to...
+ (_bfd_mips_elf_reloc_unshuffle): ... this. Handle microMIPS
+ ASE.
+ (_bfd_mips16_elf_reloc_shuffle): Rename to...
+ (_bfd_mips_elf_reloc_shuffle): ... this. Handle microMIPS ASE.
+ (gprel16_reloc_p): Handle microMIPS ASE.
+ (literal_reloc_p): New function.
+ * elf32-mips.c (elf_micromips_howto_table_rel): New variable.
+ (_bfd_mips_elf32_gprel16_reloc): Handle microMIPS ASE.
+ (mips16_gprel_reloc): Update for _bfd_mips_elf_reloc_unshuffle
+ and _bfd_mips_elf_reloc_shuffle changes.
+ (mips_elf_gprel32_reloc): Update comment.
+ (micromips_reloc_map): New variable.
+ (bfd_elf32_bfd_reloc_type_lookup): Handle microMIPS ASE.
+ (mips_elf32_rtype_to_howto): Likewise.
+ (mips_info_to_howto_rel): Likewise.
+ (bfd_elf32_bfd_is_target_special_symbol): Define.
+ (bfd_elf32_bfd_relax_section): Likewise.
+ * elf64-mips.c (micromips_elf64_howto_table_rel): New variable.
+ (micromips_elf64_howto_table_rela): Likewise.
+ (mips16_gprel_reloc): Update for _bfd_mips_elf_reloc_unshuffle
+ and _bfd_mips_elf_reloc_shuffle changes.
+ (micromips_reloc_map): Likewise.
+ (bfd_elf64_bfd_reloc_type_lookup): Handle microMIPS ASE.
+ (bfd_elf64_bfd_reloc_name_lookup): Likewise.
+ (mips_elf64_rtype_to_howto): Likewise.
+ (bfd_elf64_bfd_is_target_special_symbol): Define.
+ * elfn32-mips.c (elf_micromips_howto_table_rel): New variable.
+ (elf_micromips_howto_table_rela): Likewise.
+ (mips16_gprel_reloc): Update for _bfd_mips_elf_reloc_unshuffle
+ and _bfd_mips_elf_reloc_shuffle changes.
+ (micromips_reloc_map): Likewise.
+ (bfd_elf32_bfd_reloc_type_lookup): Handle microMIPS ASE.
+ (bfd_elf32_bfd_reloc_name_lookup): Likewise.
+ (mips_elf_n32_rtype_to_howto): Likewise.
+ (bfd_elf32_bfd_is_target_special_symbol): Define.
+ * elfxx-mips.c (LA25_LUI_MICROMIPS_1): New macro.
+ (LA25_LUI_MICROMIPS_2): Likewise.
+ (LA25_J_MICROMIPS_1, LA25_J_MICROMIPS_2): Likewise.
+ (LA25_ADDIU_MICROMIPS_1, LA25_ADDIU_MICROMIPS_2): Likewise.
+ (TLS_RELOC_P): Handle microMIPS ASE.
+ (mips_elf_create_stub_symbol): Adjust value of stub symbol if
+ target is a microMIPS function.
+ (micromips_reloc_p): New function.
+ (micromips_reloc_shuffle_p): Likewise.
+ (got16_reloc_p, call16_reloc_p): Handle microMIPS ASE.
+ (got_disp_reloc_p, got_page_reloc_p): New functions.
+ (got_ofst_reloc_p): Likewise.
+ (got_hi16_reloc_p, got_lo16_reloc_p): Likewise.
+ (call_hi16_reloc_p, call_lo16_reloc_p): Likewise.
+ (hi16_reloc_p, lo16_reloc_p, jal_reloc_p): Handle microMIPS ASE.
+ (micromips_branch_reloc_p): New function.
+ (tls_gd_reloc_p, tls_ldm_reloc_p): Likewise.
+ (tls_gottprel_reloc_p): Likewise.
+ (_bfd_mips16_elf_reloc_unshuffle): Rename to...
+ (_bfd_mips_elf_reloc_unshuffle): ... this. Handle microMIPS
+ ASE.
+ (_bfd_mips16_elf_reloc_shuffle): Rename to...
+ (_bfd_mips_elf_reloc_shuffle): ... this. Handle microMIPS ASE.
+ (_bfd_mips_elf_lo16_reloc): Handle microMIPS ASE.
+ (mips_tls_got_index, mips_elf_got_page): Likewise.
+ (mips_elf_create_local_got_entry): Likewise.
+ (mips_elf_relocation_needs_la25_stub): Likewise.
+ (mips_elf_calculate_relocation): Likewise.
+ (mips_elf_perform_relocation): Likewise.
+ (_bfd_mips_elf_symbol_processing): Likewise.
+ (_bfd_mips_elf_add_symbol_hook): Likewise.
+ (_bfd_mips_elf_link_output_symbol_hook): Likewise.
+ (mips_elf_add_lo16_rel_addend): Likewise.
+ (_bfd_mips_elf_check_relocs): Likewise.
+ (mips_elf_adjust_addend): Likewise.
+ (_bfd_mips_elf_relocate_section): Likewise.
+ (mips_elf_create_la25_stub): Likewise.
+ (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
+ (_bfd_mips_elf_gc_sweep_hook): Likewise.
+ (_bfd_mips_elf_is_target_special_symbol): New function.
+ (mips_elf_relax_delete_bytes): Likewise.
+ (opcode_descriptor): New structure.
+ (RA): New macro.
+ (OP32_SREG, OP32_TREG, OP16_VALID_REG): Likewise.
+ (b_insns_32, bc_insn_32, bz_insn_32, bzal_insn_32): New variables.
+ (beq_insn_32): Likewise.
+ (b_insn_16, bz_insn_16): New variables.
+ (BZC32_REG_FIELD): New macro.
+ (bz_rs_insns_32, bz_rt_insns_32): New variables.
+ (bzc_insns_32, bz_insns_16):Likewise.
+ (BZ16_REG, BZ16_REG_FIELD): New macros.
+ (jal_insn_32_bd16, jal_insn_32_bd32): New variables.
+ (jal_x_insn_32_bd32): Likewise.
+ (j_insn_32, jalr_insn_32): Likewise.
+ (ds_insns_32_bd16, ds_insns_32_bd32): Likewise.
+ (jalr_insn_16_bd16, jalr_insn_16_bd32, jr_insn_16): Likewise.
+ (JR16_REG): New macro.
+ (ds_insns_16_bd16): New variable.
+ (lui_insn): Likewise.
+ (addiu_insn, addiupc_insn): Likewise.
+ (ADDIUPC_REG_FIELD): New macro.
+ (MOVE32_RD, MOVE32_RS): Likewise.
+ (MOVE16_RD_FIELD, MOVE16_RS_FIELD): Likewise.
+ (move_insns_32, move_insns_16): New variables.
+ (nop_insn_32, nop_insn_16): Likewise.
+ (MATCH): New macro.
+ (find_match): New function.
+ (check_br16_dslot, check_br32_dslot): Likewise.
+ (check_br16, check_br32): Likewise.
+ (IS_BITSIZE): New macro.
+ (check_4byte_branch): New function.
+ (_bfd_mips_elf_relax_section): Likewise.
+ (_bfd_mips_elf_merge_private_bfd_data): Disallow linking MIPS16
+ and microMIPS modules together.
+ (_bfd_mips_elf_print_private_bfd_data): Handle microMIPS ASE.
+ * reloc.c (BFD_RELOC_MICROMIPS_7_PCREL_S1): New relocation.
+ (BFD_RELOC_MICROMIPS_10_PCREL_S1): Likewise.
+ (BFD_RELOC_MICROMIPS_16_PCREL_S1): Likewise.
+ (BFD_RELOC_MICROMIPS_GPREL16): Likewise.
+ (BFD_RELOC_MICROMIPS_JMP, BFD_RELOC_MICROMIPS_HI16): Likewise.
+ (BFD_RELOC_MICROMIPS_HI16_S): Likewise.
+ (BFD_RELOC_MICROMIPS_LO16): Likewise.
+ (BFD_RELOC_MICROMIPS_LITERAL): Likewise.
+ (BFD_RELOC_MICROMIPS_GOT16): Likewise.
+ (BFD_RELOC_MICROMIPS_CALL16): Likewise.
+ (BFD_RELOC_MICROMIPS_GOT_HI16): Likewise.
+ (BFD_RELOC_MICROMIPS_GOT_LO16): Likewise.
+ (BFD_RELOC_MICROMIPS_CALL_HI16): Likewise.
+ (BFD_RELOC_MICROMIPS_CALL_LO16): Likewise.
+ (BFD_RELOC_MICROMIPS_SUB): Likewise.
+ (BFD_RELOC_MICROMIPS_GOT_PAGE): Likewise.
+ (BFD_RELOC_MICROMIPS_GOT_OFST): Likewise.
+ (BFD_RELOC_MICROMIPS_GOT_DISP): Likewise.
+ (BFD_RELOC_MICROMIPS_HIGHEST): Likewise.
+ (BFD_RELOC_MICROMIPS_HIGHER): Likewise.
+ (BFD_RELOC_MICROMIPS_SCN_DISP): Likewise.
+ (BFD_RELOC_MICROMIPS_JALR): Likewise.
+ (BFD_RELOC_MICROMIPS_TLS_GD): Likewise.
+ (BFD_RELOC_MICROMIPS_TLS_LDM): Likewise.
+ (BFD_RELOC_MICROMIPS_TLS_DTPREL_HI16): Likewise.
+ (BFD_RELOC_MICROMIPS_TLS_DTPREL_LO16): Likewise.
+ (BFD_RELOC_MICROMIPS_TLS_GOTTPREL): Likewise.
+ (BFD_RELOC_MICROMIPS_TLS_TPREL_HI16): Likewise.
+ (BFD_RELOC_MICROMIPS_TLS_TPREL_LO16): Likewise.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2011-07-22 H.J. Lu <[email protected]>
+
+ * Makefile.am (ALL_MACHINES): Add cpu-k1om.lo.
+ (ALL_MACHINES_CFILES): Add cpu-k1om.c.
+ * Makefile.in: Regenerated.
+
+ * archures.c (bfd_architecture): Add bfd_arch_k1om.
+ (bfd_k1om_arch): New.
+ (bfd_archures_list): Add &bfd_k1om_arch.
+ * bfd-in2.h: Regenerated.
+
+ * config.bfd (targ64_selvecs): Add bfd_elf64_k1om_vec if
+ bfd_elf64_x86_64_vec is supported. Add bfd_elf64_k1om_freebsd_vec
+ if bfd_elf64_x86_64_freebsd_vec is supported.
+ (targ_selvecs): Likewise.
+
+ * configure.in: Support bfd_elf64_k1om_vec and
+ bfd_elf64_k1om_freebsd_vec.
+ * configure: Regenerated.
+
+ * cpu-k1om.c: New.
+
+ * elf64-x86-64.c (elf64_k1om_elf_object_p): New.
+ (bfd_elf64_k1om_vec): Likewise.
+ (bfd_elf64_k1om_freebsd_vec): Likewise.
+
+ * targets.c (bfd_elf64_k1om_vec): New.
+ (bfd_elf64_k1om_freebsd_vec): Likewise.
+ (_bfd_target_vector): Add bfd_elf64_k1om_vec and
+ bfd_elf64_k1om_freebsd_vec.
+
+2011-07-20 Jan Kratochvil <[email protected]>
+
+ Fix false coff-go32-exe matches.
+ * coff-i386.c (TARGET_SYM) <_bfd_check_format>: Conditionally use
+ COFF_CHECK_FORMAT.
+ * coff-stgo32.c (go32_check_format): New forward declaration.
+ (COFF_CHECK_FORMAT): New defintion.
+ (go32_check_format): New function.
+
+2011-07-15 Alan Modra <[email protected]>
+
+ * configure.in: Bump version.
+ * configure: Regenerate.
+
+2011-07-14 Alan Modra <[email protected]>
+
+ * linker.c (_bfd_generic_section_already_linked): Set l_flags.
+ * elf-bfd.h (struct already_linked): Forward declare.
+
+2011-07-14 Alan Modra <[email protected]>
+
+ * elflink.c (_bfd_elf_fix_symbol_flags): Loop on indirect syms.
+ (_bfd_elf_adjust_dynamic_symbol): Remove FIXME.
+
+2011-07-14 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (struct ppc_link_hash_table): Add plt_static_chain.
+ (build_plt_stub): Add plt_static_chain param, don't load r11 if false.
+ (build_tls_get_addr_stub): Likewise.
+ (ppc_build_one_stub): Update calls to above.
+ (ppc_size_one_stub): Adjust stub size.
+ (ppc64_elf_size_stubs): Add plt_static_chain param, save to htab.
+ * elf64-ppc.h (ppc64_elf_size_stubs): Update prototype.
+
+2011-07-12 Nick Clifton <[email protected]>
+
+ * elf32-arm.c (elf32_arm_section_flags): Delete.
+ (elf_backend_section_flags): Remove.
+
+2011-07-11 H.J. Lu <[email protected]>
+
+ PR ld/12982
+ * elflink.c (bfd_elf_size_dynamic_sections): Also skip BFD_PLUGIN
+ when setting stack_flags.
+
+2011-07-11 Catherine Moore <[email protected]>
+
+ * aout-adobe.c (aout_32_bfd_lookup_section_flags): New definition.
+ * aout-target.h (MY_bfd_lookup_section_flags): New definition.
+ * aout-tic30.c (MY_bfd_lookup_section_flags): New definition.
+ * bfd-in2.h: Regenerated.
+ * bfd.c (bfd_lookup_section_flags): New definition.
+ * binary.c (binary_bfd_lookup_section_flags): New definition.
+ * bout.c (b_out_bfd_lookup_section_flags): New definition.
+ * coff-alpha.c (_bfd_ecoff_bfd_lookup_section_flags): New definition.
+ * coff-mips.c (_bfd_ecoff_bfd_lookup_section_flags): New definition.
+ * coff-rs6000.c (rs6000coff_vec): Include
+ bfd_generic_lookup_section_flags.
+ (pmac_xcoff_vec): Likewise.
+ * coffcode.h (coff_bfd_lookup_section_flags): New definition.
+ * coff64-rs6000.c (rs6000coff64_vec): Include
+ bfd_generic_lookup_section_flags.
+ (aix5coff64_vec): Likewise.
+ * ecoff.c (bfd_debug_section): Initialize flag_info field.
+ * elf-bfd.h (elf_backend_lookup_section_flags_hook): Declare.
+ (bfd_elf_lookup_section_flags): Declare.
+ * elflink.c (bfd_elf_lookup_section_flags): New function.
+ * elfxx-target.h (bfd_elfNN_bfd_lookup_section_flags): Define.
+ (elf_backend_lookup_section_flags_hook): Define.
+ (elf_backend_data): Add elf_backend_lookup_section_flags_hook.
+ * i386msdos.c (msdos_bfd_lookup_section_flags): New define.
+ * i386os9k.c (os9k_bfd_lookup_section_flags): New define.
+ * ieee.c (ieee_bfd_lookup_section_flags): New define.
+ * ihex.c (ihex_bfd_lookup_section_flags): New define.
+ * libbfd-in.h (_bfd_nolink_bfd_lookup_section_flags): Declare.
+ (bfd_generic_lookup_section_flags): Declare.
+ * libbfd.h: Regenerated.
+ * mach-o-target.c (bfd_mach_o_bfd_lookup_section_flags): New.
+ * mmo.c (mmo_bfd_lookup_section_flags): New definition.
+ * nlm-target.h (nlm_bfd_lookup_section_flags): New definition.
+ * oasys.c (oasys_bfd_lookup_section_flags): New definition.
+ * pef.c (bfd_pef_bfd_lookup_section_flags): New definition.
+ * plugin.c (bfd_plugin_bfd_lookup_section_flags): New definition.
+ * ppcboot.c (ppcboot_bfd_lookup_section_flags): New definition.
+ * reloc.c (bfd_generic_lookup_section_flags): New function.
+ * som.c (som_bfd_lookup_section_flags): New definition.
+ * srec.c (srec_bfd_lookup_section_flags): New definition.
+ * targets.c (flag_info): Declare.
+ (NAME##_bfd_lookup_section_flags): Add to LINK jump table.
+ (_bfd_lookup_section_flags): New.
+ * tekhex.c (tekhex_bfd_lookup_section_flags): New definition.
+ * versados.c (versados_bfd_lookup_section_flags): New definition.
+ * vms-alpha.c (alpha_vms_bfd_lookup_section_flag): New definition.
+ * xsym.c (bfd_sym_bfd_lookup_section_flags): New definition.
+
+2011-07-11 H.J. Lu <[email protected]>
+
+ PR ld/12978
+ * elfnn-ia64.c (count_dyn_reloc): Fix a typo.
+
+2011-07-09 Alan Modra <[email protected]>
+
+ PR ld/12942
+ * elflink.c (elf_link_add_object_symbols): Use elf_discarded_section
+ rather than kept_section to determine whether a symbol is from
+ a discarded section.
+ * cofflink.c (coff_link_add_symbols): Make symbols from discarded
+ sections appear undefined.
+
+2011-07-09 H.J. Lu <[email protected]>
+
+ PR ld/12942
+ * elf-bfd.h (_bfd_elf_section_already_linked): Replace
+ "asection *" with "struct already_linked *".
+ * libbfd-in.h (_bfd_nolink_section_already_linked): Likewise.
+ (_bfd_generic_section_already_linked): Likewise.
+ (bfd_section_already_linked_table_insert): Likewise.
+ (struct already_linked): New.
+ (struct bfd_section_already_linked): Use it.
+ * elflink.c (_bfd_elf_section_already_linked): Replace.
+ "asection *" with "struct already_linked *". Replace the plugin
+ dummy with the LTO output.
+ * linker.c (_bfd_generic_section_already_linked): Likewise.
+ * targets.c (struct already_linked): Add forward declaration.
+ (bfd_target): Replace "struct bfd_section *" with
+ "struct already_linked *" in _section_already_linked.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2011-07-06 Tristan Gingold <[email protected]>
+
+ * mach-o.h: Move loader related definitions to
+ include/mach-o/loader.h. Include it.
+
+2011-07-05 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_backend_post_process_headers): Always
+ define to _bfd_elf_set_osabi.
+
+2011-07-03 Samuel Thibault <[email protected]>
+ Thomas Schwinge <[email protected]>
+
+ PR binutils/12913
+ * elf.c (_bfd_elf_set_osabi): Use ELFOSABI_GNU name instead of
+ ELFOSABI_LINUX alias.
+ * elf32-hppa.c: Likewise.
+ * elf32-i370.c: Likewise.
+ * elf64-hppa.c: Likewise.
+
+2011-07-01 Ian Lance Taylor <[email protected]>
+
+ * elf32-i386.c (elf_i386_eh_frame_plt): Correct expression: change
+ DW_OP_lit3 to DW_OP_lit2.
+
+2011-07-01 Alan Modra <[email protected]>
+
+ * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Don't look at
+ dyn relocs when called to copy flags for a weak sym.
+ * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
+ (ppc64_elf_merge_private_bfd_data): Delete.
+ (bfd_elf64_bfd_merge_private_bfd_data): Define as
+ _bfd_generic_verify_endian_match.
+
+2011-06-30 Bernd Schmidt <[email protected]>
+
+ * bfd/elf32-tic6x.c (elf32_tic6x_set_osabi): Also set it if
+ link_info is NULL.
+
+2011-06-28 Tristan Gingold <[email protected]>
+
+ * vms-alpha.c (vms_private_data_struct): Make vms_linkage_index
+ unsigned int.
+ (_bfd_vms_write_etir): Write linkage index from reloc.
+
+2011-06-28 Fawzi Mohamed <[email protected]>
+
+ * mach-o.c (bfd_mach_o_read_command): Also ignore
+ BFD_MACH_O_LC_ROUTINES_64.
+
+2011-06-27 Tristan Gingold <[email protected]>
+
+ * vms-alpha.c (_bfd_vms_write_etir): Use 'section' to get current
+ section target index.
+
+2011-06-27 Nick Clifton <[email protected]>
+
+ * cisco-core.c (cisco_core_little_vec): Add initialization of
+ match_priority field.
+
+2011-06-27 Tristan Gingold <[email protected]>
+
+ * cache.c: Include bfd_stdint.h.
+ (cache_bmmap): Change profile. Return region start and size.
+ * bfdio.c (struct bfd_iovec): Change bmmap profile.
+ (bfd_mmap): Change profile and adjust. Update comment.
+ (memory_bmmap): Change profile.
+ * opncls.c (opncls_bmmap): Change profile.
+ * vms-lib.c (vms_lib_bmmap): Likewise.
+ * libbfd.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+
+2011-06-27 Tristan Gingold <[email protected]>
+
+ * vms-misc.c (vms_time_to_time_t): Adjust overflow detection.
+ Add comment.
+
+2011-06-25 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_backend_post_process_headers): Don't
+ define for FreeBSD/x86-64 nor FreeBSD/L1OM. Define for L1OM.
+
+2011-06-25 Jan Kratochvil <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_link_hash_table_create): Initialize
+ PLT_EH_FRAME.
+ * elf32-i386.c (elf_i386_link_hash_table): Likewise.
+
+2011-06-24 Richard Henderson <[email protected]>
+
+ PR ld/12928
+ * elf64-alpha.c (elf64_alpha_relax_tls_get_addr): Recover the
+ tlsgd insn before swapping adjacent insns.
+
+2011-06-24 Tristan Gingold <[email protected]>
+
+ * vms-alpha.c (alpha_vms_slurp_relocs): Add a guard for relocs in the
+ absolute section.
+
+2011-06-24 Alan Modra <[email protected]>
+
+ PR ld/12921
+ * elf.c (assign_file_positions_for_load_sections): Don't align
+ sh_offset for all SHT_NOBITS sections here, just .tbss sections
+ that don't get a PT_LOAD.
+
+2011-06-22 Kaz Kojima <[email protected]>
+
+ * elf32-sh.c (sh_elf_relocate_section): Allow R_SH_TLS_LE_32 for PIE.
+ (sh_elf_check_relocs): Likewise.
+
+2011-06-22 Richard Henderson <[email protected]>
+
+ * elf64-alpha.c (elf64_alpha_check_relocs): No dynamic reloc for
+ TPREL in a PIE image.
+ (alpha_dynamic_entries_for_reloc): Likewise.
+ (elf64_alpha_relocate_section): Allow TPREL in PIE images.
+ (elf64_alpha_relax_got_load): Likewise.
+
+2011-06-22 Ramana Radhakrishnan <[email protected]>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate): Allow R_ARM_TLS_LE32
+ for PIE.
+
+2011-06-22 Alan Modra <[email protected]>
+
+ * elflink.c (_bfd_elf_merge_symbol): Allow type changes for
+ plugin symbols. Fix segfault on linker scrip defined syms.
+
+2011-06-20 Jakub Jelinek <[email protected]>
+
+ PR ld/12570
+ * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Allow no relocations
+ at all for linker created .eh_frame sections.
+ (_bfd_elf_discard_section_eh_frame): Handle linker created
+ .eh_frame sections with no relocations.
+ * elf64-x86-64.c: Include dwarf2.h.
+ (elf_x86_64_eh_frame_plt): New variable.
+ (PLT_CIE_LENGTH, PLT_FDE_LENGTH, PLT_FDE_START_OFFSET,
+ PLT_FDE_LEN_OFFSET): Define.
+ (struct elf_x86_64_link_hash_table): Add plt_eh_frame field.
+ (elf_x86_64_create_dynamic_sections): Create and fill in
+ .eh_frame section for .plt section.
+ (elf_x86_64_size_dynamic_sections): Write .plt section size
+ into .eh_frame FDE covering .plt section.
+ (elf_x86_64_finish_dynamic_sections): Write .plt section
+ start into .eh_frame FDE covering .plt section. Call
+ _bfd_elf_write_section_eh_frame on htab->plt_eh_frame section.
+ (elf_backend_plt_alignment): Define to 4.
+ * elf32-i386.c: Include dwarf2.h.
+ (elf_i386_eh_frame_plt): New variable.
+ (PLT_CIE_LENGTH, PLT_FDE_LENGTH, PLT_FDE_START_OFFSET,
+ PLT_FDE_LEN_OFFSET): Define.
+ (struct elf_i386_link_hash_table): Add plt_eh_frame field.
+ (elf_i386_create_dynamic_sections): Create and fill in
+ .eh_frame section for .plt section.
+ (elf_i386_size_dynamic_sections): Write .plt section size
+ into .eh_frame FDE covering .plt section.
+ (elf_i386_finish_dynamic_sections): Write .plt section
+ start into .eh_frame FDE covering .plt section. Call
+ _bfd_elf_write_section_eh_frame on htab->plt_eh_frame section.
+ (elf_backend_plt_alignment): Define to 4.
+
+2011-06-19 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_backend_post_process_headers): Defined
+ for x32.
+
+2011-06-16 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c: Include <stdarg.h> and CORE_HEADER if
+ CORE_HEADER is defined.
+ (elf_x86_64_write_core_note): New.
+ (elf_backend_write_core_note): Likewise.
+
+ * hosts/x86-64linux.h (uint64_t): New.
+ (user_regsx32_struct): Likewise.
+ (elf_gregx32_t): Likewise.
+ (ELF_NGREGX32): Likewise.
+ (elf_gregsetx32_t): Likewise.
+ (elf_prstatusx32): Likewise.
+ (prstatusx32_t): Likewise.
+ (user_fpregs32_struct): Removed.
+ (user_fpxregs32_struct): Likewise.
+ (user32): Likewise.
+ (elf_fpregset32_t): Likewise.
+ (elf_fpxregset32_t): Likewise.
+ (prgregset32_t): Likewise.
+ (prfpregset32_t): Likewise.
+
+2011-06-16 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_grok_prstatus): Support x32.
+ (elf_x86_64_grok_psinfo): Likewise.
+
+2011-06-16 Nick Clifton <[email protected]>
+
+ * elf.c (elf_find_function): Fail if not provided with a symbol
+ table.
+
+2011-06-15 Ulrich Weigand <[email protected]>
+
+ * elf-bfd.h (elfcore_write_arm_vfp): Add prototype.
+ * elf.c (elfcore_grok_arm_vfp): New function.
+ (elfcore_grok_note): Call it to handle NT_ARM_VFP notes.
+ (elfcore_write_arm_vfp): New function.
+ (elfcore_write_register_note): Call it to handle .reg-arm-vfp.
+
+2011-06-14 Richard Henderson <[email protected]>
+
+ * elf64-alpha.c (elf64_alpha_copy_indirect_symbol): Rename from
+ elf64_alpha_merge_ind_symbols; adjust for the generic interface.
+ (elf64_alpha_always_size_sections): Don't call
+ elf64_alpha_merge_ind_symbols.
+ (elf_backend_copy_indirect_symbol): New.
+
+2011-06-14 Alan Modra <[email protected]>
+
+ PR ld/12887
+ * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Check sec_info_type
+ before doing anything.
+ (_bfd_elf_discard_section_eh_frame): Likewise.
+
+2011-06-14 Alan Modra <[email protected]>
+
+ * Makefile.am: Formatting.
+ * Makefile.in: Regenerate.
+ * configure.in (bfd_elf64_tilegx_vec): Add elfxx-tilegx.lo.
+ * po/SRC-POTFILES.in: Regnerate.
+
+2011-06-14 Alan Modra <[email protected]>
+
+ * elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Don't use PTR.
+ (allocate_dynrelocs, readonly_dynrelocs): Replace PTR with void *.
+ Don't handle warning symbols here.
+ * elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): As above.
+ (allocate_dynrelocs, readonly_dynrelocs): As above.
+
+2011-06-14 Alan Modra <[email protected]>
+
+ PR ld/12851
+ * elflink.c (_bfd_elf_gc_mark_extra_sections): New function.
+ (elf_gc_sweep): Don't treat debug and sections like .comment
+ specially here.
+ (bfd_elf_gc_sections): Treat note sections as gc roots only when
+ not part of a group. Always call gc_mark_extra_sections.
+ * elf-bfd.h (_bfd_elf_gc_mark_extra_sections): Declare.
+ * elfxx-target.h (elf_backend_gc_mark_extra_sections): Default to
+ _bfd_elf_gc_mark_extra_sections.
+ * elf32-arm.c (elf32_arm_gc_mark_extra_sections): Call
+ _bfd_elf_gc_mark_extra_sections.
+ * elf32-tic6x.c (elf32_tic6x_gc_mark_extra_sections): Likewise.
+
+2011-06-13 Nick Clifton <[email protected]>
+
+ * elf32-tilepro.c (tilepro_elf_check_relocs): Delete unused local
+ variable 'local_got_offsets'.
+ * elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise.
+ (tilegx_finish_dyn): Delete unused local variable 'abi_64_p'.
+
+2011-06-13 Walter Lee <[email protected]>
+
+ * Makefile.am (ALL_MACHINES): Add cpu-tilegx.lo and cpu-tilepro.lo.
+ (ALL_MACHINE_CFILES): Add cpu-tilegx.c and cpu-tilepro.c.
+ (BFD32_BACKENDS): Add elf32-tilegx.lo, elf32-tilepro.lo,
+ and elfxx-tilegx.lo.
+ (BFD32_BACKENDS_CFILES): Add elf32-tilegx.c elf32-tilepro.c, and
+ elfxx-tilegx.c.
+ (BFD64_BACKENDS): Add elf64-tilegx.lo.
+ (BFD64_BACKENDS_CFILES): Add elf64-tilegx.c.
+ * Makefile.in: Regenerate.
+ * arctures.c (bfd_architecture): Define bfd_arch_tilepro,
+ bfd_arch_tilegx, bfd_mach_tilepro, bfd_mach_tilegx.
+ (bfd_arch_info): Add bfd_tilegx_arch, bfd_tilepro_arch.
+ (bfd_archures_list): Add bfd_tilegx_arch, bfd_tilepro_arch.
+ bfd-in2.h: Regenerate.
+ * config.bfd: Handle tilegx-*-* and tilepro-*-*.
+ * configure.in: Handle bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
+ and bfd_elf64_tilegx_vec.
+ * configure: Regenerate.
+ * elf-bfd.h (enum elf_target_id): Define TILEGX_ELF_DATA and
+ TILEPRO_ELF_DATA.
+ * libbfd.h: Regenerate.
+ * reloc.c: Add BFD_RELOC_TILEPRO_{COPY, GLOB_DAT, JMP_SLOT,
+ RELATIVE, BROFF_X1, JOFFLONG_X1, JOFFLONG_X1_PLT, IMM8_X0,
+ IMM8_Y0, IMM8_X1, IMM8_Y1, DEST_IMM8_X1, MT_IMM15_X1, MF_IMM15_X1,
+ IMM16_X0, IMM16_X1, IMM16_X0_LO, IMM16_X1_LO, IMM16_X0_HI,
+ IMM16_X1_HI, IMM16_X0_HA, IMM16_X1_HA, IMM16_X0_PCREL,
+ IMM16_X1_PCREL, IMM16_X0_LO_PCREL, IMM16_X1_LO_PCREL,
+ IMM16_X0_HI_PCREL, IMM16_X1_HI_PCREL, IMM16_X0_HA_PCREL,
+ IMM16_X1_HA_PCREL, IMM16_X0_GOT, IMM16_X1_GOT, IMM16_X0_GOT_LO,
+ IMM16_X1_GOT_LO, IMM16_X0_GOT_HI, IMM16_X1_GOT_HI,
+ IMM16_X0_GOT_HA, IMM16_X1_GOT_HA, MMSTART_X0, MMEND_X0,
+ MMSTART_X1, MMEND_X1, SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1,
+ IMM16_X0_TLS_GD, IMM16_X1_TLS_GD, IMM16_X0_TLS_GD_LO,
+ IMM16_X1_TLS_GD_LO, IMM16_X0_TLS_GD_HI, IMM16_X1_TLS_GD_HI,
+ IMM16_X0_TLS_GD_HA, IMM16_X1_TLS_GD_HA, IMM16_X0_TLS_IE,
+ IMM16_X1_TLS_IE, IMM16_X0_TLS_IE_LO, IMM16_X1_TLS_IE_LO,
+ IMM16_X0_TLS_IE_HI, IMM16_X1_TLS_IE_HI, IMM16_X0_TLS_IE_HA,
+ IMM16_X1_TLS_IE_HA, TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
+ Add BFD_RELOC_TILEGX_{HW0, HW1, HW2, HW3, HW0_LAST, HW1_LAST,
+ HW2_LAST, COPY, GLOB_DAT, JMP_SLOT, RELATIVE, BROFF_X1,
+ JUMPOFF_X1, JUMPOFF_X1_PLT, IMM8_X0, IMM8_Y0, IMM8_X1, IMM8_Y1,
+ DEST_IMM8_X1, MT_IMM14_X1, MF_IMM14_X1, MMSTART_X0, MMEND_X0,
+ SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1, IMM16_X0_HW0,
+ IMM16_X1_HW0, IMM16_X0_HW1, IMM16_X1_HW1, IMM16_X0_HW2,
+ IMM16_X1_HW2, IMM16_X0_HW3, IMM16_X1_HW3, IMM16_X0_HW0_LAST,
+ IMM16_X1_HW0_LAST, IMM16_X0_HW1_LAST, IMM16_X1_HW1_LAST,
+ IMM16_X0_HW2_LAST, IMM16_X1_HW2_LAST, IMM16_X0_HW0_PCREL,
+ IMM16_X1_HW0_PCREL, IMM16_X0_HW1_PCREL, IMM16_X1_HW1_PCREL,
+ IMM16_X0_HW2_PCREL, IMM16_X1_HW2_PCREL, IMM16_X0_HW3_PCREL,
+ IMM16_X1_HW3_PCREL, IMM16_X0_HW0_LAST_PCREL,
+ IMM16_X1_HW0_LAST_PCREL, IMM16_X0_HW1_LAST_PCREL,
+ IMM16_X1_HW1_LAST_PCREL, IMM16_X0_HW2_LAST_PCREL,
+ IMM16_X1_HW2_LAST_PCREL, IMM16_X0_HW0_GOT, IMM16_X1_HW0_GOT,
+ IMM16_X0_HW1_GOT, IMM16_X1_HW1_GOT, IMM16_X0_HW2_GOT,
+ IMM16_X1_HW2_GOT, IMM16_X0_HW3_GOT, IMM16_X1_HW3_GOT,
+ IMM16_X0_HW0_LAST_GOT, IMM16_X1_HW0_LAST_GOT,
+ IMM16_X0_HW1_LAST_GOT, IMM16_X1_HW1_LAST_GOT,
+ IMM16_X0_HW2_LAST_GOT, IMM16_X1_HW2_LAST_GOT, IMM16_X0_HW0_TLS_GD,
+ IMM16_X1_HW0_TLS_GD, IMM16_X0_HW1_TLS_GD, IMM16_X1_HW1_TLS_GD,
+ IMM16_X0_HW2_TLS_GD, IMM16_X1_HW2_TLS_GD, IMM16_X0_HW3_TLS_GD,
+ IMM16_X1_HW3_TLS_GD, IMM16_X0_HW0_LAST_TLS_GD,
+ IMM16_X1_HW0_LAST_TLS_GD, IMM16_X0_HW1_LAST_TLS_GD,
+ IMM16_X1_HW1_LAST_TLS_GD, IMM16_X0_HW2_LAST_TLS_GD,
+ IMM16_X1_HW2_LAST_TLS_GD, IMM16_X0_HW0_TLS_IE,
+ IMM16_X1_HW0_TLS_IE, IMM16_X0_HW1_TLS_IE, IMM16_X1_HW1_TLS_IE,
+ IMM16_X0_HW2_TLS_IE, IMM16_X1_HW2_TLS_IE, IMM16_X0_HW3_TLS_IE,
+ IMM16_X1_HW3_TLS_IE, IMM16_X0_HW0_LAST_TLS_IE,
+ IMM16_X1_HW0_LAST_TLS_IE, IMM16_X0_HW1_LAST_TLS_IE,
+ IMM16_X1_HW1_LAST_TLS_IE, IMM16_X0_HW2_LAST_TLS_IE,
+ IMM16_X1_HW2_LAST_TLS_IE, TLS_DTPMOD64, TLS_DTPOFF64, TLS_TPOFF64,
+ TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
+ * targets.c (bfd_elf32_tilegx_vec): Declare.
+ (bfd_elf32_tilepro_vec): Declare.
+ (bfd_elf64_tilegx_vec): Declare.
+ (bfd_target_vector): Add bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
+ and bfd_elf64_tilegx_vec.
+ * cpu-tilegx.c: New file.
+ * cpu-tilepro.c: New file.
+ * elf32-tilepro.h: New file.
+ * elf32-tilepro.c: New file.
+ * elf32-tilegx.c: New file.
+ * elf32-tilegx.h: New file.
+ * elf64-tilegx.c: New file.
+ * elf64-tilegx.h: New file.
+ * elfxx-tilegx.c: New file.
+ * elfxx-tilegx.h: New file.
+
+2011-06-13 Alan Modra <[email protected]>
+
+ * linker.c (bfd_link_hash_traverse): Follow warning symbol link.
+ (_bfd_generic_link_write_global_symbol, fix_syms): Don't handle
+ warning symbols here.
+ * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Likewise.
+ * elf32-arm.c (allocate_dynrelocs_for_symbol,
+ elf32_arm_readonly_dynrelocs): Likewise.
+ * elf32-bfin.c (bfin_discard_copies): Likewise.
+ * elf32-cris.c (elf_cris_adjust_gotplt_to_got,
+ elf_cris_discard_excess_dso_dynamics,
+ elf_cris_discard_excess_program_dynamics): Likewise.
+ * elf32-hppa.c (allocate_plt_static, allocate_dynrelocs,
+ clobber_millicode_symbols, readonly_dynrelocs): Likewise.
+ * elf32-i370.c (i370_elf_adjust_dynindx): Likewise.
+ * elf32-i386.c (elf_i386_allocate_dynrelocs,
+ elf_i386_readonly_dynrelocs): Likewise.
+ * elf32-lm32.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
+ * elf32-m32c.c (m32c_relax_plt_check, m32c_relax_plt_realloc): Likewise.
+ * elf32-m32r.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
+ * elf32-m68k.c (elf_m68k_discard_copies): Likewise.
+ * elf32-microblaze.c (allocate_dynrelocs): Likewise.
+ * elf32-ppc.c (allocate_dynrelocs, maybe_set_textrel): Likewise.
+ * elf32-s390.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
+ * elf32-score.c (score_elf_sort_hash_table_f): Likewise.
+ * elf32-score7.c (score_elf_sort_hash_table_f): Likewise.
+ * elf32-sh.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
+ * elf32-tic6x.c (elf32_tic6x_allocate_dynrelocs,
+ elf32_tic6x_readonly_dynrelocs): Likewise.
+ * elf32-vax.c (elf_vax_discard_copies): Likewise.
+ * elf32-xstormy16.c (xstormy16_relax_plt_check,
+ xstormy16_relax_plt_realloc): Likewise.
+ * elf32-xtensa.c (elf_xtensa_allocate_dynrelocs): Likewise.
+ * elf64-alpha.c (elf64_alpha_output_extsym,
+ elf64_alpha_calc_got_offsets_for_symbol,
+ elf64_alpha_calc_dynrel_sizes, elf64_alpha_size_rela_got_1): Likewise.
+ * elf64-hppa.c (elf64_hppa_mark_exported_functions,
+ allocate_global_data_opd, elf64_hppa_mark_milli_and_exported_functions,
+ elf_hppa_unmark_useless_dynamic_symbols,
+ elf_hppa_remark_useless_dynamic_symbols): Likewise.
+ * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref, func_desc_adjust,
+ adjust_opd_syms, adjust_toc_syms, allocate_dynrelocs,
+ readonly_dynrelocs, merge_global_got, reallocate_got,
+ undo_symbol_twiddle): Likewise.
+ * elf64-s390.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
+ * elf64-sh64.c (sh64_elf64_discard_copies): Likewise.
+ * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs,
+ elf_x86_64_readonly_dynrelocs): Likewise.
+ * elflink.c (elf_link_renumber_hash_table_dynsyms,
+ elf_link_renumber_local_hash_table_dynsyms, _bfd_elf_export_symbol,
+ _bfd_elf_link_find_version_dependencies,
+ _bfd_elf_link_assign_sym_version, _bfd_elf_adjust_dynamic_symbol,
+ _bfd_elf_link_sec_merge_syms, elf_adjust_dynstr_offsets,
+ elf_collect_hash_codes, elf_collect_gnu_hash_codes,
+ elf_renumber_gnu_hash_syms, elf_gc_sweep_symbol,
+ elf_gc_propagate_vtable_entries_used,
+ elf_gc_smash_unused_vtentry_relocs, bfd_elf_gc_mark_dynamic_ref_symbol,
+ elf_gc_allocate_got_offsets): Likewise.
+ * elfnn-ia64.c (elfNN_ia64_global_dyn_info_free,
+ elfNN_ia64_global_dyn_sym_thunk): Likewise.
+ * elfxx-mips.c (mips_elf_check_symbols, mips_elf_output_extsym,
+ mips_elf_sort_hash_table_f, allocate_dynrelocs): Likewise.
+ * elfxx-sparc.c (allocate_dynrelocs, readonly_dynrelocs): Likewise.
+ * i386linux.c (linux_tally_symbols): Likewise.
+ * m68klinux.c (linux_tally_symbols): Likewise.
+ * sparclinux.c (linux_tally_symbols): Likewise.
+ * sunos.c (sunos_scan_dynamic_symbol): Likewise.
+ * xcofflink.c (xcoff_post_gc_symbol): Likewise.
+
+ * elflink.c (elf_link_output_extsym): Make it a bfd_hash_traverse
+ function. Update all callers.
+ * aoutx.h (aout_link_write_other_symbol): Likewise.
+ * pdp11.c (aout_link_write_other_symbol): Likewise.
+ * cofflink.c (_bfd_coff_write_global_sym): Likewise.
+ * ecoff.c (ecoff_link_write_external): Likewise.
+ * xcofflink.c (xcoff_write_global_symbol): Likewise.
+ * vms-alpha.c (alpha_vms_link_output_symbol): Likewise. Handle
+ warning symbols.
+ * ecoff.c (ecoff_link_hash_traverse): Delete.
+ * coff-ppc.c (ppc_bfd_coff_final_link): Use bfd_hash_traverse for
+ _bfd_coff_write_global_sym.
+ * libcoff-in.h (_bfd_coff_write_global_sym): Update prototype.
+ * libcoff.h: Regenerate.
+
+2011-06-10 Nick Clifton <[email protected]>
+
+ * elflink.c (_bfd_elf_link_create_dynamic_sections): If the
+ backend does not provide a function for creating dynamic sections
+ then fail.
+ (bfd_elf_final_link): Issue a warning message if a dynamic section
+ has the SHT_NOTE type.
+ (bfd_elf_final_link): Do not look for dynamic strings in a section
+ that does not have the SHT_STRTAB type or the name .dynstr.
+ * elf32-arm.c (elf32_arm_finish_dynamic_sections): Fail if the got
+ section is not in the output binary.
+ * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Likewise.
+
+2011-06-09 Tristan Gingold <[email protected]>
+
+ * elfnn-ia64.c (elfNN_ia64_relax_section, elfNN_ia64_choose_gp)
+ (elfNN_ia64_relocate_section, elfNN_vms_object_p): Remove trailing
+ spaces.
+
+2011-06-09 Tristan Gingold <[email protected]>
+
+ * bfd.c (bfd_get_sign_extend_vma): Handle aixcoff.
+
+2011-06-09 Nick Clifton <[email protected]>
+
+ PR ld/12845
+ * elf.c (_bfd_elf_init_private_section_data): Add an assertion
+ that the output section has an allocated bfd_elf_section_data
+ structure.
+ * elfxx-mips.c (mips_elf_check_symbols): Do not create a stub for
+ symbols in sections that have been removed by garbage collection.
+
+2011-06-08 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Allow R_X86_64_64
+ relocations in SEC_DEBUGGING sections when building shared
+ libraries.
+
+2011-06-08 H.J. Lu <[email protected]>
+
+ PR ld/12851
+ * elflink.c (elf_gc_sweep): Don't check SHT_NOTE sections here.
+ (bfd_elf_gc_sections): Also check SHT_NOTE sections.
+
+2011-06-08 Tristan Gingold <[email protected]>
+
+ * makefile.vms (OBJS): Add elfxx-ia64.obj
+ Remove vax case.
+
+2011-06-08 Alan Modra <[email protected]>
+
+ * aix386-core.c, * cisco-core.c, * hpux-core.c, * osf-core.c,
+ * sco5-core.c: Init match_priority field.
+
+2011-06-08 Alan Modra <[email protected]>
+
+ * elflink.c (_bfd_elf_archive_symbol_lookup): Follow warning and
+ indirect links here.
+
+2011-06-07 Joel Brobecker <[email protected]>
+
+ * irix-core.c (irix_core_vec): Add match_priority field.
+
+2011-06-06 Alan Modra <[email protected]>
+
+ * targets.c (bfd_target): Make ar_max_namelen an unsigned char.
+ Add match_priority.
+ * configure.in: Bump bfd version.
+ * elfcode.h (elf_object_p): Delete hacks preventing match of
+ EM_NONE and ELFOSABI_NONE targets when a better match exists.
+ * elfxx-target.h (elf_match_priority): Define and use.
+ * format.c (bfd_check_format_matches): Use target match_priority
+ to choose best of multiple matching targets. In cases with multiple
+ matches rerun _bfd_check_format if we don't choose the last match.
+ * aout-adobe.c, * aout-arm.c, * aout-target.h, * aout-tic30.c,
+ * binary.c, * bout.c, * coff-alpha.c, * coff-i386.c, * coff-i860.c,
+ * coff-i960.c, * coff-ia64.c, * coff-mips.c, * coff-or32.c,
+ * coff-ppc.c, * coff-rs6000.c, * coff-sh.c, * coff-tic30.c,
+ * coff-tic54x.c, * coff-x86_64.c, * coff64-rs6000.c, * coffcode.h,
+ * i386msdos.c, * i386os9k.c, * ieee.c, * ihex.c, * mach-o-target.c,
+ * mipsbsd.c, * mmo.c, * nlm-target.h, * oasys.c, * pdp11.c,
+ * pe-mips.c, * pef.c, * plugin.c, * ppcboot.c, * som.c, * srec.c,
+ * tekhex.c, * trad-core.c, * verilog.c, * versados.c, * vms-alpha.c,
+ * vms-lib.c, * xsym.c: Init match_priority field.
+ * configure: Regenerate.
+ * bfd-in2.h: Regenerate.
+
+2011-06-04 H.J. Lu <[email protected]>
+
+ PR ld/12842
+ * elfcode.h (elf_object_p): Revert the last change.
+
+2011-06-04 Alan Modra <[email protected]>
+
+ * archures.c (bfd_arch_get_compatible): If one arch is unknown,
+ return the other arch.
+ * elfcode.h (elf_object_p): Allow explicit match to generic ELF
+ target.
+
+2011-06-03 Bertram Felgenhauer <[email protected]>
+
+ PR ld/12682
+ * hash.c (higher_primer_number): Add more, small, prime numbers.
+ (bfd_hash_set_default_size): Likewise.
+
+2011-06-02 Nick Clifton <[email protected]>
+
+ * coff-mcore.c: Fix spelling typo.
+ * coff-stgo32.c: Likewise.
+ * elf32-arm.c: Likewise.
+ * elf32-avr.c: Likewise.
+ * elf-m68hc1x.c: Likewise.
+ * elf32-mcore.c: Likewise.
+ * elf32-mep.c: Likewise.
+ * elf32-mt.c: Likewise.
+ * elf32-ppc.c: Likewise.
+ * elf32-xtensa.c: Likewise.
+ * elf64-ppc.c: Likewise.
+ * elfxx-mips.c: Likewise.
+ * netbsd.h: Likewise.
+ * nlmcode.h: Likewise.
+ * vms-alpha.c: Likewise.
+ * po/bfd.pot: Regenerate.
+ * po/SRC-POTFILES.in: Regenerate.
+
+2011-06-01 DJ Delorie <[email protected]>
+
+ * config.bfd: Add bfd_elf32_rx_be_ns_vec.
+ * target.c: Likewise.
+ * configure.in: Likewise.
+ * configure.in: Regenerate.
+ * elf32-rx.c: Add elf32-rx-be-ns target.
+ (rx_elf_object_p): Never allow the be-ns target by default,
+ only allow it if the user requests it.
+
+2011-06-01 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_size_dynamic_sections): Properly warn
+ relocation in readonly section in a shared object.
+ * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Likewise.
+
+2011-05-31 Nick Clifton <[email protected]>
+
+ * archive.c (adjust_relative_path): Fix comment to prevent it
+ corrupting the auto-generated bfd.h.
+
+2011-05-31 Paul Brook <[email protected]>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate): Only do bl conversion
+ for known functions.
+ (elf32_arm_swap_symbol_in): Only set ST_BRANCH_TO_ARM for function
+ symbols.
+
+2011-05-31 Paul Brook <[email protected]>
+
+ * elf32-arm.c (arm_stub_is_thumb): Add
+ arm_stub_long_branch_v4t_thumb_tls_pic.
+ (elf32_arm_final_link_relocate): TLS stubs are always ARM.
+ Handle Thumb stubs.
+
+2011-05-27 Nick Clifton <[email protected]>
+
+ PR binutils/12710
+ * archive.c (_bfd_get_elt_at_filepos): Set correct error value if
+ unable to read a file pointed to by an entry in a thin archive.
+ (adjust_relative_path): Use lrealpath to canonicalize paths.
+ Handle the case where the reference path is above the current
+ path in the directory tree.
+
+2011-05-26 H.J. Lu <[email protected]>
+
+ PR ld/12809
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Handle
+ R_X86_64_TPOFF64 in executable.
+
+2011-05-26 Alan Modra <[email protected]>
+
+ * elf-bfd.h (SYMBOL_REFERENCES_LOCAL): Remove most of comment.
+ * elflink.c (_bfd_elf_symbol_refs_local_p): Expand
+ local_protected comment.
+
+2011-05-25 Tristan Gingold <[email protected]>
+
+ * configure.in (bfd_elf32_ia64_big_vec, bfd_elf32_ia64_hpux_big_vec)
+ (bfd_elf64_ia64_big_vec, bfd_elf64_ia64_hpux_big_vec)
+ (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_vms_vec): Add elfxx-ia64.lo
+ * Makefile.am (BFD64_BACKENDS): Add elfxx-ia64.lo
+ (BFD64_BACKENDS_CFILES): Add elfxx-ia64.c
+ (elf32-ia64.c): Created from elfnn-ia64.c
+ (elf64-ia64.c): Likewise.
+ * elfxx-ia64.h: New file.
+ * elfxx-ia64.c: Split with elfnn-ia64.c. Keep only the following
+ functions.Includes elfxx-ia64.h.
+ (elfNN_ia64_reloc): Renames to ia64_elf_reloc. Adjust error message.
+ (IA64_HOWTO): Adjust.
+ (lookup_howto): Renames to ia64_elf_lookup_howto. Make it public.
+ (elfNN_ia64_reloc_type_lookup): Renames to
+ ia64_elf_reloc_type_lookup. Make it public. Adjust calls.
+ (elfNN_ia64_reloc_name_lookup): Renames to
+ ia64_elf_reloc_name_lookup. Make it public.
+ (elfNN_ia64_relax_br): Renames to ia64_elf_relax_br. Make it public.
+ (elfNN_ia64_relax_brl): Renames to ia64_elf_relax_brl. Make it
+ public.
+ (elfNN_ia64_relax_ldxmov): Renames to ia64_elf_relax_ldxmov.
+ Move it and make it public. Move prototype to elfxx-ia64.h
+ (elfNN_ia64_install_value): Renames to ia64_elf_install_value.
+ Move prototype to elfxx-ia64.h
+ * elfnn-ia64.c: New file, split from elfxx-ia64.c.
+ (elfNN_ia64_info_to_howto): Adjust calls.
+ (elfNN_ia64_relax_section): Adjust calls.
+ (count_dyn_reloc): Fix typo.
+ (elfNN_ia64_relocate_section): Adjust calls.
+ (elfNN_ia64_finish_dynamic_symbol): Likewise.
+ (bfd_elfNN_bfd_reloc_type_lookup)
+ (bfd_elfNN_bfd_reloc_name_lookup): Adjust macros.
+ * configure: Regenerate.
+ * Makefile.in: Regenerate.
+
+2011-05-23 DJ Delorie <[email protected]>
+
+ * elf32-rx.c (rx_elf_object_p): When reading an RX object in, undo
+ the vma/lma swapping done in elf32_rx_modify_program_headers.
+
+2011-05-23 Nick Clifton <[email protected]>
+
+ * elf-m10300.c (mn10300_elf_mkobject): New function.
+ (bfd_elf32_mkobject): Define.
+
+2011-05-23 Alan Modra <[email protected]>
+
+ * elf-bfd.h: Comment typo fix.
+ * elf32-ppc.c (struct ppc_elf_dyn_relocs): Delete. Replace with
+ struct elf_dyn_relocs throughout.
+ * elf64-ppc.c (struct ppc_dyn_relocs): Likewise.
+
+2011-05-23 Alan Modra <[email protected]>
+
+ * elf32-frv.c: Use info->callbacks->einfo throughout file in linker
+ functions rather than warning callback or _bfd_error_handler.
+ * elf32-ppc.c: Likewise.
+ * elf64-ppc.c: Likewise.
+ * elf32-ppc.c (ppc_elf_tls_optimize): Use %H in __tls_get_addr lost
+ arg error.
+ * elf64-ppc.c (ppc64_elf_tls_optimize): Likewise.
+
+2011-05-23 Alan Modra <[email protected]>
+
+ PR 12763
+ * elf.c (assign_file_positions_for_load_sections): Set sh_offset for
+ .tbss, and page align same for all SHT_NOBITS sections.
+
+2011-05-21 Alan Modra <[email protected]>
+
+ PR 12763
+ * elf.c (_bfd_elf_make_section_from_shdr): Set up TLS section LMAs
+ from PT_TLS header.
+ (_bfd_elf_map_sections_to_segments): Don't create a final PT_LOAD
+ segment if just for .tbss.
+ (assign_file_positions_for_load_sections): Don't report "can't
+ allocate in segment" errors for .tbss.
+ (assign_file_positions_for_non_load_sections): Don't set p_filesz
+ from SHT_NOBITS section filepos.
+
+2011-05-20 Bernd Schmidt <[email protected]>
+
+ * elf32-tic6x.c (elf32_tic6x_howto_table): Add entries for
+ R_C6000_PCR_H16 and R_C6000_PCR_L16.
+ (elf32_tic6x_relocate_section): Handle them.
+
+2011-05-18 Nick Clifton <[email protected]>
+
+ PR ld/12761
+ * elflink.c (elf_link_add_object_symbols): Process .gnu.warning
+ sections when building shared libraries.
+
+2011-05-18 Rafał Krypa <[email protected]>
+
+ PR ld/12778
+ * elf32-arm.c (elf32_arm_gc_sweep_hook): Use the computed dynamic
+ reloc pointer.
+
+2011-05-18 Tristan Gingold <[email protected]>
+
+ * xcofflink.c (xcoff_link_add_symbols): Handle C_DWARF symbols.
+ (xcoff_sweep): Always keep dwarf sections.
+ (xcoff_link_input_bfd): Handle dwarf symbols and sections.
+
+2011-05-18 Tristan Gingold <[email protected]>
+
+ * libxcoff.h (struct xcoff_dwsect_name): New type.
+ (XCOFF_DWSECT_NBR_NAMES): New macro.
+ (xcoff_dwsect_names): Declare.
+ * coffcode.h (sec_to_styp_flags): Handle xcoff dwarf sections.
+ (styp_to_sec_flags): Ditto.
+ (coff_new_section_hook): Ditto.
+ (coff_slurp_symbol_table): Handle C_DWARF and C_INFO.
+ * coff-rs6000.c (xcoff_dwsect_name): New variable.
+
+2011-05-17 Tomohiro Kashiwada <[email protected]>
+
+ PR ld/12759
+ * elf32-rx.c (ignore_lma): New variable.
+ (bfd_elf32_rx_set_target_flags): Add ignore_lma parameter.
+ (rx_modify_program_headers): Only copy the LMA into the VMA if
+ ignore_lma is true.
+
+2011-05-17 Alan Modra <[email protected]>
+
+ PR ld/12760
+ * coff-aux.c (coff_m68k_aux_link_add_one_symbol): Adjust "notice" call.
+ * elflink.c (elf_link_add_object_symbols): Likewise.
+ * linker.c (_bfd_generic_link_add_one_symbol): Likewise.
+
+2011-05-16 Alan Modra <[email protected]>
+
+ * linker.c (_bfd_generic_link_add_one_symbol): Don't init u.undef.weak.
+
+2011-05-15 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (_bfd_mips_elf_check_relocs): Record both local and
+ global GOT entries for GOT_PAGE relocations against global symbols.
+
+2011-05-13 Bernd Schmidt <[email protected]>
+
+ * config.bfd (tic6x-*-elf, tic6x-*-uclinux): New.
+ (tic6x-*-*): Replaced by these.
+ * elf32-tic6x.c (elf32_tic6x_set_osabi): New static function.
+ (elf32_tic6x_check_relocs): Create dynamic sections if -shared.
+ (elf_backend_relocs_compatible, elf_backend_post_process_headers):
+ Define.
+ (elf32_bed, TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, TARGET_BIG_SYM,
+ TARGET_BIG_NAME, ELF_OSABI): Redefine twice, and include
+ "elf32-target.h" two more times.
+ * configure.in: Handle bfd_elf32_tic6x_linux_be_vec,
+ bfd_elf32_tic6x_linux_le_vec, bfd_elf32_tic6x_elf_be_vec and
+ bfd_elf32_tic6x_elf_le_vec.
+ * configure: Regenerate.
+
+2011-05-13 Jan Beulich <[email protected]>
+
+ * config.bfd: Add targets x86_64-*-pe and x86_64-*-pep.
+
+2011-05-12 Jan Kratochvil <[email protected]>
+
+ * config.in: Regenerated.
+ * configure: Regenerated.
+ * configure.in: New tests for HAVE_PRPSINFO_T_PR_PID,
+ HAVE_PRPSINFO32_T_PR_PID, HAVE_PSINFO_T_PR_PID and
+ HAVE_PSINFO32_T_PR_PID.
+ * elf.c (elfcore_grok_psinfo): Protect reading psinfo.pr_pid by
+ HAVE_PRPSINFO_T_PR_PID, HAVE_PRPSINFO32_T_PR_PID, HAVE_PSINFO_T_PR_PID
+ and HAVE_PSINFO32_T_PR_PID.
+ * hosts/x86-64linux.h (HAVE_PRPSINFO32_T_PR_PID): New redefinition.
+
+2011-05-10 Jan Kratochvil <[email protected]>
+
+ * elf.c (elfcore_grok_psinfo): Initialize CORE_PID for both native and
+ 32bit psinfo.
+ * elf32-ppc.c (ppc_elf_grok_psinfo): Initialize core_pid.
+ * elf64-ppc.c (ppc64_elf_grok_psinfo): Likewise.
+
+2011-05-09 Paul Brook <[email protected]>
+
+ * bfd-in.h (elf32_tic6x_fix_exidx_coverage): Add prototype.
+ * bfd-in2.h: Regenerate.
+ * elf32-tic6x.c: Include limits.h.
+ (tic6x_unwind_edit_type, tic6x_unwind_table_edit,
+ _tic6x_elf_section_data): New.
+ (elf32_tic6x_section_data): Define.
+ (elf32_tic6x_new_section_hook): Allocate target specific data.
+ (elf32_tic6x_add_unwind_table_edit): New function.
+ (get_tic6x_elf_section_data, elf32_tic6x_adjust_exidx_size,
+ elf32_tic6x_insert_cantunwind_after, elf32_tic6x_add_low31,
+ elf32_tic6x_copy_exidx_entry): New functions.
+ (elf_backend_write_section): Define.
+
+2011-05-09 Paul Brook <[email protected]>
+
+ * elf32-tic6x.c (is_tic6x_elf_unwind_section_name,
+ elf32_tic6x_fake_sections): New functions.
+ (elf_backend_fake_sections): Define.
+
+2011-05-09 Paul Brook <[email protected]>
+
+ * elf32-tic6x.c (elf32_tic6x_gc_mark_extra_sections): New function.
+ (elf_backend_gc_mark_extra_sections): Define.
+
+2011-05-07 Dave Korn <[email protected]>
+
+ PR ld/12365
+ * cofflink.c (bfd_coff_link_input_bfd): Check for and warn about
+ references to symbols defined in discarded sections.
+
+2011-05-07 Dave Korn <[email protected]>
+
+ PR ld/12365
+ * coffgen.c (coff_write_symbol): Assume input section is its own
+ output section if output_section member not set.
+ (coff_write_alien_symbol): Likewise.
+
+2011-05-07 H.J. Lu <[email protected]>
+
+ PR ld/12730
+ * elf.c (_bfd_elf_section_offset): Check SEC_ELF_REVERSE_COPY.
+
+ * elflink.c (elf_link_input_bfd): Reverse copy .ctors/.dtors
+ sections if needed.
+
+ * section.c (SEC_ELF_REVERSE_COPY): New.
+ * bfd-in2.h: Regenerated.
+
+2011-05-07 Anders Kaseorg <[email protected]>
+
+ PR 12739
+ * libbfd.c (bfd_get_8, bfd_get_signed_8): Use const cast.
+ * bfd-in2.h: Regenerate.
+
+2011-05-06 Tristan Gingold <[email protected]>
+
+ * vms-alpha.c (evax_section_flags): Remove SEC_IN_MEMORY.
+ (_bfd_vms_slurp_egsd): Rename old_flags to vms_flags. Handle
+ any code section. Add comments.
+ (alpha_vms_object_p): Use void * instead of PTR.
+ (alpha_vms_create_eisd_for_section): Fix test for setting DZRO.
+ (build_module_list): Guard against no DST section. Add comments.
+ (alpha_vms_link_output_symbol): Discard undefined symbols.
+ (alpha_vms_get_section_contents): Simply memcpy if the section was
+ already loaded. Fix typo.
+ (vms_new_section_hook): Use void * instead of PTR.
+ (vms_alpha_vec): Ditto.
+
+2011-05-06 Richard Sandiford <[email protected]>
+
+ * elf32-arm.c (cortex_a8_erratum_scan): If the stub is a Thumb
+ branch to a PLT entry, redirect it to the PLT's Thumb entry point.
+
+2011-05-05 Bernd Schmidt <[email protected]>
+
+ * elf32-tic6x.c (elf32_tic6x_final_link): New function.
+ (elf32_tic6x_merge_attributes): Do not warn for PID or PIC
+ mismatch. Choose the lower of the two values.
+ (bfd_elf32_bfd_final_link): New macro.
+
+2011-04-28 Tristan Gingold <[email protected]>
+
+ * coff-rs6000.c (_bfd_xcoff_swap_aux_in): Adjust for x_file.
+ (bfd_xcoff_swap_aux_out): Ditto.
+ * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Ditto.
+ (bfd_xcoff64_swap_aux_out): Ditto.
+
+2011-05-04 Alan Modra <[email protected]>
+
+ PR ld/12727
+ * elf64-ppc.c (ppc_build_one_stub <ppc_sub_plt_call>): Clear
+ was_undefined on dot-symbols.
+
+2011-05-03 Paul Brook <[email protected]>
+
+
+ * elf32-tic6x.c (elf32_tic6x_howto_table,
+ elf32_tic6x_howto_table_rel, (elf32_tic6x_gc_sweep_hook,
+ elf32_tic6x_relocate_section, elf32_tic6x_check_relocs):
+ Add R_C6000_EHTYPE.
+
+2011-05-01 Alan Modra <[email protected]>
+
+ PR ld/12718
+ * elf32-i386.c (elf_i386_check_relocs): Ensure dynobj set before
+ creating ifunc sections.
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
+
+2011-04-30 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_merge_symbol): Correct parameter
+ names.
+
+2011-04-28 Tom Tromey <[email protected]>
+
+ * bfdio.c (memory_bstat): Pass correct size to memset.
+
+2011-04-28 Mike Frysinger <[email protected]>
+
+ * dwarf2.c (dwarf_debug_sections): Mark const.
+ * elf.c (special_sections): Likewise.
+ * libbfd-in.h (dwarf_debug_sections): Likewise.
+ * libbfd.h: Regenerate.
+
+2011-04-26 Kai Tietz <[email protected]>
+
+ * coffcode.h (sec_to_styp_flags): Allow linkonce for
+ debugging sections.
+
+2011-04-26 Tristan Gingold <[email protected]>
+
+ * coff64-rs6000.c: Convert to ISO-C. Remove PARAMS and PTR macros.
+
+2011-04-24 Alan Modra <[email protected]>
+
+ PR ld/12365
+ PR ld/12696
+ * coff-aux.c (coff_m68k_aux_link_add_one_symbol): Update "notice" call.
+ * linker.c (_bfd_link_hash_newfunc): Clear bitfields.
+ (_bfd_generic_link_add_one_symbol): Update "notice" call.
+ * elflink.c (_bfd_elf_merge_symbol): Don't skip weak redefs when
+ it is a redef of an IR symbol in a real BFD.
+
+2011-04-22 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_readonly_dynrelocs): Warn relocation
+ in readonly section in a shared object.
+ (elf_i386_size_dynamic_sections): Likewise.
+ * elf64-x86-64.c (elf_x86_64_readonly_dynrelocs): Likewise.
+ (elf_x86_64_size_dynamic_sections): Likewise.
+
+2011-04-21 H.J. Lu <[email protected]>
+
+ PR ld/12694
+ * elf32-i386.c (elf_i386_readonly_dynrelocs): Skip local IFUNC
+ symbols.
+ * elf64-x86-64.c (elf_x86_64_readonly_dynrelocs): Likewise.
+
+2011-04-21 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_finish_dynamic_symbol): Return false
+ on dynamic symbol error.
+ * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
+
+2011-04-20 Tristan Gingold <[email protected]>
+
+ * config.bfd (alpha*-*-*vms*, ia64*-*-*vms*): Define targ_selvecs.
+
+2011-04-20 Alan Modra <[email protected]>
+
+ * hash.c (bfd_default_hash_table_size): Make it an unsigned long.
+ (bfd_hash_table_init_n): Overflow checking.
+ (bfd_hash_set_default_size): Return current size. Take unsigned long
+ arg. Add 65537 to hash_size primes.
+ * bfd-in.h (bfd_hash_set_default_size): Update prototype.
+ * bfd-in2.h: Regenerate.
+
+2011-04-20 Jan Kratochvil <[email protected]>
+
+ * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Fix +1 overrun of
+ memmove elements.
+
+2011-04-20 Alan Modra <[email protected]>
+
+ * libbfd.c (bfd_log2): Do return rounded up value.
+ * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Replace bfd_log2
+ call with expanded old round down version of the function.
+
+ * archive.c (_bfd_get_elt_at_filepos): Don't release n_nfd.
+ * elflink.c (elf_link_add_object_symbols): Delete redundant code.
+
+2011-04-20 Alan Modra <[email protected]>
+
+ PR ld/12365
+ * elfcode.h (elf_slurp_symbol_table): Put common plugin IR symbols
+ in their own common section.
+ * elflink.c (elf_link_add_object_symbols): Likewise.
+ * linker.c (generic_link_check_archive_element): Don't lose flags
+ if common section is pre-existing.
+ (_bfd_generic_link_add_one_symbol): Likewise.
+
+2011-04-20 Alan Modra <[email protected]>
+
+ PR ld/12365
+ * elflink.c (_bfd_elf_merge_symbol): Update multiple_common calls.
+ * linker.c (_bfd_generic_link_add_one_symbol): Likewise. Call
+ multiple_definition regardless of allow_multiple_definition.
+ * simple.c (simple_dummy_multiple_definition): Update.
+ * xcofflink.c (xcoff_link_add_symbols): Update multiple_definition
+ calls.
+
+2011-04-18 Tristan Gingold <[email protected]>
+
+ * coff-rs6000.c: Convert to ISO-C. Remove PARAMS macro.
+
+2011-04-18 Alan Modra <[email protected]>
+
+ PR ld/12365
+ PR ld/12672
+ * bfd.c (BFD_PLUGIN): Define.
+ (BFD_FLAGS_SAVED, BFD_FLAGS_FOR_BFD_USE_MASK): Add BFD_PLUGIN.
+ * bfd-in2.h: Regenerate.
+ * elflink.c (elf_link_output_extsym): Strip undefined plugin syms.
+ * opncls.c (bfd_make_readable): Don't lose original bfd flags.
+
+2011-04-17 Jan Kratochvil <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Do not check for
+ SEC_LOAD.
+
+2011-04-15 Sergio Durigan Junior <[email protected]>
+
+ * elf-bfd.h (struct sdt_note): New struct.
+ (struct elf_obj_tdata) <sdt_note_head>: New field.
+ * elf.c (elfobj_grok_stapsdt_note_1): New function.
+ (elfobj_grok_stapsdt_note): Likewise.
+ (elf_parse_notes): Added code to treat SystemTap note
+ sections.
+
+2011-04-12 Richard Henderson <[email protected]>
+
+ * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Do not
+ exclude empty .got sections.
+
+2011-04-11 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_reloc_type_lookup): Fix the out of bound
+ array access for BFD_RELOC_386_IRELATIVE.
+
+2011-04-11 Bernd Schmidt <[email protected]>
+
+ * elf32-tic6x.c (elf32_tic6x_check_relocs): Initialize pc_count field.
+
+2011-04-11 Mark Wielaard <[email protected]>
+
+ PR 10549
+ * elf-bfd.h (has_ifunc_symbols): Renamed to has_gnu_symbols.
+ (has_gnu_symbols): Renamed from has_ifunc_symbols.
+ * elf.c (_bfd_elf_set_osabi): Use new has_gnu_symbols name.
+ * elf32-arm.c (elf32_arm_add_symbol_hook): Set has_gnu_symbols
+ also if STB_GNU_UNIQUE symbol binding was seen.
+ * elf32-i386.c (elf_i386_add_symbol_hook): Likewise.
+ * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
+ * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
+ * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
+ * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
+ * elf64-x86-64.c (elf_x86_64_add_symbol_hook): Likewise.
+
+2011-04-11 Alan Modra <[email protected]>
+
+ * bfd-in.h (bfd_get_section_limit): Don't use rawsize with output
+ sections.
+ * libbfd.c (_bfd_generic_get_section_contents): Likewise.
+ (_bfd_generic_get_section_contents_in_window): Likewise.
+ * section.c (bfd_get_section_contents): Likewise.
+ * compress.c (bfd_get_full_section_contents): Likewise.
+ * elf32-rx.c (rx_final_link): Ignore rawsize.
+ * elf32-microblaze.c (microblaze_elf_relocate_section): Use correct
+ bfd with bfd_get_section_limit.
+ * elfxx-ia64.c (elfNN_ia64_choose_gp): Add "final" parameter. Use
+ os->size during final link. Update callers.
+ * bfd-in2.h: Regenerate.
+
+2011-04-10 Richard Sandiford <[email protected]>
+
+ PR ld/12637
+ * elfxx-mips.c (mips_elf_merge_got_with): Use arg->global_count
+ as the number of global entries when merging with the primary GOT.
+
+2011-04-09 H.J. Lu <[email protected]>
+
+ * elf32-i386.c: Update copyright year.
+ * elf64-x86-64.c: Likewise.
+
+2011-04-09 Kai Tietz <[email protected]>
+
+ * peXXigen.c (_bfd_XXi_final_link_postscripte): Sort pdata in temporary
+ buffer and use rawsize for sorting.
+ * coffcode.h (coff_compute_section_file_positions): Set rawsize
+ before doing alignment.
+
+2011-04-09 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_relocate_section): Return relocation
+ error on unsupported relocation.
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
+
+2011-04-09 H.J. Lu <[email protected]>
+
+ PR binutils/12657
+ * hosts/x86-64linux.h (elf_prstatus32): Replace __pid_t with
+ pid_t.
+
+2011-04-08 H.J. Lu <[email protected]>
+
+ PR ld/12654
+ * elf32-i386.c (elf_i386_relocate_section): Check !executable
+ instead of shared for R_386_TLS_LDO_32.
+
+2011-04-08 Tristan Gingold <[email protected]>
+
+ * Makefile.am (SOURCE_HFILES): Remove xcoff-target.h
+ * coff-pmac: Remove
+ * xcoff-target.h: Remove
+ * Makefile.in: Regenerate.
+
+2011-04-07 Cary Coutant <[email protected]>
+
+ * dwarf2.c (scan_unit_for_symbols): Check for DW_AT_specification.
+
+2011-04-07 Paul Brook <[email protected]>
+
+ * elf32-tic6x.c (elf32_tic6x_howto_table): R_C6000_PREL31 is
+ pc-relative.
+ (elf32_tic6x_howto_table_rel): Ditto.
+ (elf32_tic6x_relocate_section): Implement R_C6000_PREL31.
+ (elf32_tic6x_check_relocs): Ditto.
+
+2011-04-06 Joseph Myers <[email protected]>
+
+ * config.bfd (thumb-*-oabi): Don't handle in list of obsolete
+ targets.
+ (strongarm*, thumb*, xscale*): Remove architectures.
+ (strongarm-*-kaos*, thumb-*-coff, thumb-*-elf, thumb-epoc-pe*,
+ thumb-*-pe*, strongarm-*-elf, strongarm-*-coff, xscale-*-elf,
+ xscale-*-coff): Remove targets.
+
+2011-04-01 Tristan Gingold <[email protected]>
+
+ * elfxx-ia64.c: include bfd_stdint.h
+
+2011-03-31 Jan Kratochvil <[email protected]>
+
+ * elf32-tic6x.c (elf32_tic6x_relocate_section): Remove unused variable
+ dynobj and its initialization.
+
+2011-03-31 Tristan Gingold <[email protected]>
+
+ * makefile.vms (DEFS): Add HAVE_bfd_elf64_ia64_vms_vec.
+ * configure.com: Set BFD_HOST_64BIT_LONG_LONG and
+ BFD_HOST_LONG_LONG to 1.
+
+2011-03-31 Tristan Gingold <[email protected]>
+
+ * vms-alpha.c (vms_get_remaining_object_record): Fix dec-c warning.
+ (_bfd_vms_write_etir): Ditto.
+ (_bfd_vms_slurp_etir): Avoid to use intptr_t
+ * configure.com: Generate bfd_stdint.h
+
+2011-03-31 Bernd Schmidt <[email protected]>
+
+ * elf32-tic6x.h (struct elf32_tic6x_params): New.
+ (elf32_tic6x_setup): Declare.
+ * elf32-tic6x.c: Include <limits.h>.
+ (ELF_DYNAMIC_LINKER, DEFAULT_STACK_SIZE, PLT_ENTRY_SIZE): Define.
+ (struct elf32_tic6x_link_hash_table, struct elf32_link_hash_entry):
+ New structures.
+ (elf32_tic6x_link_hash_table, is_tic6x_elf): New macros.
+ (tic6x_elf_scom_section, tic6x_elf_scom_symbol,
+ tic6x_elf_scom_symbol_ptr): New static variables.
+ (elf32_tic6x_howto_table, elf32_tic6x_howto_table_rel,
+ elf32_tic6x_reloc_map): Add R_C6000_JUMP_SLOT, R_C6000_EHTYPE,
+ R_C6000_PCR_H16 and R_C6000_PCR_L16.
+ (elf32_tic6x_link_hash_newfunc, elf32_tic6x_link_hash_table_create,
+ elf32_tic6x_link_hash_table_free, elf32_tic6x_setup,
+ elf32_tic6x_using_dsbt, elf32_tic6x_install_rela,
+ elf32_tic6x_create_dynamic_sections, elf32_tic6x_make_got_dynreloc,
+ elf32_tic6x_finish_dynamic_symbol, elf32_tic6x_gc_sweep_hook,
+ elf32_tic6x_adjust_dynamic_symbol): New static functions.
+ (elf32_tic6x_relocate_section): For R_C6000_PCR_S21, convert branches
+ to weak symbols as required by the ABI.
+ Handle GOT and DSBT_INDEX relocs, and copy relocs to the output file
+ as needed when generating DSBT output.
+ (elf32_tic6x_check_relocs, elf32_tic6x_add_symbol_hook,
+ elf32_tic6x_symbol_processing, elf32_tic6x_section_from_bfd_section,
+ elf32_tic6x_allocate_dynrelocs, elf32_tic6x_size_dynamic_sections,
+ elf32_tic6x_always_size_sections, elf32_tic6x_modify_program_headers,
+ elf32_tic6x_finish_dynamic_sections, elf32_tic6x_plt_sym_val,
+ elf32_tic6x_copy_private_data, elf32_tic6x_link_omit_section_dynsym):
+ New static functions.
+ (ELF_MAXPAGESIZE): Define to 0x1000.
+ (bfd_elf32_bfd_copy_private_bfd_data,
+ bfd_elf32_bfd_link_hash_table_create,
+ bfd_elf32_bfd_link_hash_table_free, elf_backend_can_refcount,
+ elf_backend_want_got_plt, elf_backend_want_dynbss,
+ elf_backend_plt_readonly, elf_backend_got_header_size,
+ elf_backend_gc_sweep_hook, elf_backend_modify_program_headers,
+ elf_backend_create_dynamic_sections, elf_backend_adjust_dynamic_symbol,
+ elf_backend_check_relocs, elf_backend_add_symbol_hook,
+ elf_backend_symbol_processing, elf_backend_link_output_symbol_hook,
+ elf_backend_section_from_bfd_section,
+ elf_backend_finish_dynamic_symbol, elf_backend_always_size_sections,
+ elf32_tic6x_size_dynamic_sections, elf_backend_finish_dynamic_sections,
+ elf_backend_omit_section_dynsym, elf_backend_plt_sym_val): Define.
+
+ * bfd/reloc.c (BFD_RELOC_C6000_JUMP_SLOT, BFD_RELOC_C6000_EHTYPE,
+ BFD_RELOC_C6000_PCR_H16, BFD_RELOC_C6000_PCR_S16): Add.
+ * bfd/bfd-in2.h: Regenerate.
+ * bfd/libbfd.h: Regenerate.
+ * config.bfd: Accept tic6x-*-* instead of tic6x-*-elf.
+
+2011-03-31 Tristan Gingold <[email protected]>
+
+ * coffcode.h (coff_slurp_symbol_table): Silently discard C_NULL
+ entry on xcoff when value is C_NULL_VALUE.
+
+2011-03-31 Tristan Gingold <[email protected]>
+
+ * libcoff-in.h (exec_hdr): Remove.
+ * libcoff.h: Regenerate.
+
+2011-03-30 Nick Clifton <[email protected]>
+
+ * po/da.po: Updated Danish translation.
+
+2011-03-29 Richard Henderson <[email protected]>
+
+ * elf64-alpha.c (elf64_alpha_gc_mark_hook): New.
+ (elf64_alpha_gc_sweep_hook): New.
+ (elf_backend_gc_mark_hook, elf_backend_gc_sweep_hook): New.
+ (elf_backend_can_gc_sections): New.
+
+2011-03-26 John Marino <[email protected]>
+
+ * config.bfd: Add x86_64-*-dragonfly*, fix i386-*-dragonfly*.
+ * configure.in: Delete unused bfd_elf32_i386_dragonfly_vec.
+ * configure: Regenerate.
+
+2011-03-25 Michael Snyder <[email protected]>
+
+ * coffcode.h (coff_set_alignment_hook): Check return of bfd_seek.
+
+2011-03-25 Tristan Gingold <[email protected]>
+
+ * vms-alpha.c (_bfd_vms_find_nearest_dst_line): Allow the use
+ of find_nearest_line on object files.
+
+2011-03-25 Tristan Gingold <[email protected]>
+
+ * vms-alpha.c (evax_section_flags): Make $CODE$ section read-only.
+ Minor reordering.
+ (alpha_vms_create_eisd_for_section): Make code sections read-only.
+
+2011-03-24 Alan Modra <[email protected]>
+
+ * elf32-ppc.c (ppc_elf_tls_optimize): Catch more cases where
+ old-style __tls_get_addr calls without marker relocs don't match
+ their arg setup insn one for one. If such mismatches are found
+ report the reloc and don't do any tls optimization.
+ * elf64-ppc.c (ppc64_elf_tls_optimize): Likewise.
+
+2011-03-22 Eric B. Weddington <[email protected]>
+
+ * bfd-in2.h: Regenerate.
+
+2011-03-22 Eric B. Weddington <[email protected]>
+
+ * archures.c: Add AVR XMEGA architecture information.
+ * cpu-avr.c (arch_info_struct): Likewise.
+ * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
+ (elf32_avr_object_p): Likewise.
+
+2011-03-14 Richard Sandiford <[email protected]>
+
+ * reloc.c (BFD_RELOC_ARM_IRELATIVE): New relocation.
+ * bfd-in2.h: Regenerate.
+ * elf32-arm.c (elf32_arm_howto_table_2): Rename existing definition
+ to elf32_arm_howto_table_3 and replace with a single R_ARM_IRELATIVE
+ entry.
+ (elf32_arm_howto_from_type): Update accordingly.
+ (elf32_arm_reloc_map): Map BFD_RELOC_ARM_IRELATIVE to R_ARM_IRELATIVE.
+ (elf32_arm_reloc_name_lookup): Handle elf32_arm_howto_table_3.
+ (arm_plt_info): New structure, split out from elf32_arm_link_hash_entry
+ with an extra noncall_refcount field.
+ (arm_local_iplt_info): New structure.
+ (elf_arm_obj_tdata): Add local_iplt.
+ (elf32_arm_local_iplt): New accessor macro.
+ (elf32_arm_link_hash_entry): Replace plt_thumb_refcount,
+ plt_maybe_thumb_refcount and plt_got_offset with an arm_plt_info.
+ Change tls_type to a bitfield and add is_iplt.
+ (elf32_arm_link_hash_newfunc): Update accordingly.
+ (elf32_arm_allocate_local_sym_info): New function.
+ (elf32_arm_create_local_iplt): Likewise.
+ (elf32_arm_get_plt_info): Likewise.
+ (elf32_arm_plt_needs_thumb_stub_p): Likewise.
+ (elf32_arm_get_local_dynreloc_list): Likewise.
+ (create_ifunc_sections): Likewise.
+ (elf32_arm_copy_indirect_symbol): Update after the changes to
+ elf32_arm_link_hash_entry. Assert the is_iplt has not yet been set.
+ (arm_type_of_stub): Add an st_type argument. Use elf32_arm_get_plt_info
+ to get PLT information. Assert that all STT_GNU_IFUNC references
+ are turned into PLT references.
+ (arm_build_one_stub): Pass the symbol type to
+ elf32_arm_final_link_relocate.
+ (elf32_arm_size_stubs): Pass the symbol type to arm_type_of_stub.
+ (elf32_arm_allocate_irelocs): New function.
+ (elf32_arm_add_dynreloc): In static objects, use .rel.iplt for
+ all R_ARM_IRELATIVE.
+ (elf32_arm_allocate_plt_entry): New function.
+ (elf32_arm_populate_plt_entry): Likewise.
+ (elf32_arm_final_link_relocate): Add an st_type parameter.
+ Set srelgot to null for static objects. Use separate variables
+ to record which st_value and st_type should be used when generating
+ a dynamic relocation. Use elf32_arm_get_plt_info to find the
+ symbol's PLT information, setting has_iplt_entry, splt,
+ plt_offset and gotplt_offset accordingly. Check whether
+ STT_GNU_IFUNC symbols should resolve to an .iplt entry, and change
+ the relocation target accordingly. Broaden assert to include
+ .iplts. Don't set sreloc for static relocations. Assert that
+ we only generate dynamic R_ARM_RELATIVE relocations for R_ARM_ABS32
+ and R_ARM_ABS32_NOI. Generate R_ARM_IRELATIVE relocations instead
+ of R_ARM_RELATIVE relocations if the target is an STT_GNU_IFUNC
+ symbol. Pass the symbol type to arm_type_of_stub. Conditionally
+ resolve GOT references to the .igot.plt entry.
+ (elf32_arm_relocate_section): Update the call to
+ elf32_arm_final_link_relocate.
+ (elf32_arm_gc_sweep_hook): Use elf32_arm_get_plt_info to get PLT
+ information. Treat R_ARM_REL32 and R_ARM_REL32_NOI as call
+ relocations in shared libraries and relocatable executables.
+ Count non-call PLT references. Use elf32_arm_get_local_dynreloc_list
+ to get the list of dynamic relocations for a local symbol.
+ (elf32_arm_check_relocs): Always create ifunc sections. Set isym
+ at the same time as setting h. Use elf32_arm_allocate_local_sym_info
+ to allocate local symbol information. Treat R_ARM_REL32 and
+ R_ARM_REL32_NOI as call relocations in shared libraries and
+ relocatable executables. Record PLT information for local
+ STT_GNU_IFUNC functions as well as global functions. Count
+ non-call PLT references. Use elf32_arm_get_local_dynreloc_list
+ to get the list of dynamic relocations for a local symbol.
+ (elf32_arm_adjust_dynamic_symbol): Handle STT_GNU_IFUNC symbols.
+ Don't remove STT_GNU_IFUNC PLTs unless all references have been
+ removed. Update after the changes to elf32_arm_link_hash_entry.
+ (allocate_dynrelocs_for_symbol): Decide whether STT_GNU_IFUNC PLT
+ entries should live in .plt or .iplt. Check whether the .igot.plt
+ and .got entries can be combined. Use elf32_arm_allocate_plt_entry
+ to allocate .plt and .(i)got.plt entries. Detect which .got
+ entries will need R_ARM_IRELATIVE relocations and use
+ elf32_arm_allocate_irelocs to allocate them. Likewise other
+ non-.got dynamic relocations.
+ (elf32_arm_size_dynamic_sections): Allocate .iplt, .igot.plt
+ and dynamic relocations for local STT_GNU_IFUNC symbols.
+ Check whether the .igot.plt and .got entries can be combined.
+ Detect which .got entries will need R_ARM_IRELATIVE relocations
+ and use elf32_arm_allocate_irelocs to allocate them. Use stashed
+ section pointers intead of strcmp checks. Handle iplt and igotplt.
+ (elf32_arm_finish_dynamic_symbol): Use elf32_arm_populate_plt_entry
+ to fill in .plt, .got.plt and .rel(a).plt entries. Point
+ STT_GNU_IFUNC symbols at an .iplt entry if non-call relocations
+ resolve to it.
+ (elf32_arm_output_plt_map_1): New function, split out from
+ elf32_arm_output_plt_map. Handle .iplt entries. Use
+ elf32_arm_plt_needs_thumb_stub_p.
+ (elf32_arm_output_plt_map): Call it.
+ (elf32_arm_output_arch_local_syms): Add mapping symbols for
+ local .iplt entries.
+ (elf32_arm_swap_symbol_in): Handle Thumb STT_GNU_IFUNC symbols.
+ (elf32_arm_swap_symbol_out): Likewise.
+ (elf32_arm_add_symbol_hook): New function.
+ (elf_backend_add_symbol_hook): Define for all targets.
+
+2011-03-14 Richard Sandiford <[email protected]>
+
+ * elf-bfd.h (elf_link_hash_entry): Add target_internal.
+ * elf.c (swap_out_syms): Set st_target_internal for each
+ Elf_Internal_Sym.
+ * elfcode.h (elf_swap_symbol_in): Likewise.
+ * elf32-i370.c (i370_elf_finish_dynamic_sections): Likewise.
+ * elf32-sh-symbian.c (sh_symbian_relocate_section): Likewise.
+ * elf64-sparc.c (elf64_sparc_output_arch_syms): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise.
+ * elflink.c (elf_link_output_extsym): Likewise.
+ (bfd_elf_final_link): Likewise.
+ (elf_link_add_object_symbols): Copy st_target_internal
+ to the hash table if we see a definition.
+ (_bfd_elf_copy_link_hash_symbol_type): Copy target_internal.
+ * elf32-arm.c (elf32_arm_stub_hash_entry): Replace st_type with
+ a branch_type field.
+ (a8_erratum_fix, a8_erratum_reloc): Likewise.
+ (arm_type_of_stub): Replace actual_st_type with an
+ actual_branch_type parameter.
+ (arm_build_one_stub): Use branch types rather than st_types to
+ determine the type of branch.
+ (cortex_a8_erratum_scan): Likewise.
+ (elf32_arm_size_stubs): Likewise.
+ (bfd_elf32_arm_process_before_allocation): Likewise.
+ (allocate_dynrelocs_for_symbol): Likewise.
+ (elf32_arm_finish_dynamic_sections): Likewise.
+ (elf32_arm_final_link_relocate): Replace sym_flags parameter with
+ a branch_type parameter.
+ (elf32_arm_relocate_section): Update call accordingly.
+ (elf32_arm_adjust_dynamic_symbol): Don't check STT_ARM_TFUNC.
+ (elf32_arm_output_map_sym): Initialize st_target_internal.
+ (elf32_arm_output_stub_sym): Likewise.
+ (elf32_arm_symbol_processing): Delete.
+ (elf32_arm_swap_symbol_in): Convert STT_ARM_TFUNCs into STT_FUNCs.
+ Use st_target_internal to record the branch type.
+ (elf32_arm_swap_symbol_out): Use st_target_internal to test for
+ Thumb functions.
+ (elf32_arm_is_function_type): Delete.
+ (elf_backend_symbol_processing): Likewise.
+ (elf_backend_is_function_type): Likewise.
+
+2011-03-14 Richard Sandiford <[email protected]>
+
+ * elf32-arm.c (elf32_arm_check_relocs): Always assign a dynobj.
+ (elf32_arm_finish_dynamic_sections): Move sgot != NULL assertion
+ into the PLT block.
+
+2011-03-14 Richard Sandiford <[email protected]>
+
+ * elf32-arm.c (elf32_arm_check_relocs): Use call_reloc_p,
+ may_need_local_target_p and may_become_dynamic_p to classify
+ the relocation type. Don't check info->symbolic or h->def_regular
+ when deciding whether to record a potential dynamic reloc.
+ Don't treat potential dynamic relocs as PLT references.
+ (elf32_arm_gc_sweep_hook): Update to match. Assert that we don't
+ try to make the PLT reference count go negative.
+
+2011-03-14 Richard Sandiford <[email protected]>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate): Always fill in the
+ GOT entry here, rather than leaving it to finish_dynamic_symbol.
+ Only create a dynamic relocation for local references if
+ info->shared.
+ (allocate_dynrelocs_for_symbol): Update dynamic relocation
+ allocation accordingly.
+ (elf32_arm_finish_dynamic_symbol): Don't initialise the GOT entry here.
+
+2011-03-14 Richard Sandiford <[email protected]>
+
+ * elf32-arm.c (elf32_arm_allocate_dynrelocs): New function.
+ (elf32_arm_add_dynreloc): Likewise.
+ (elf32_arm_adjust_dynamic_symbol): Use elf32_arm_allocate_dynrelocs
+ to allocate dynamic relocations.
+ (elf32_arm_size_dynamic_sections): Likewise.
+ (allocate_dynrelocs): Likewise. Rename to
+ allocate_dynrelocs_for_symbol.
+ (elf32_arm_final_link_relocate): Use elf32_arm_add_dynreloc to
+ create dynamic relocations.
+ (elf32_arm_finish_dynamic_symbol): Likewise.
+
+2011-03-12 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_check_tls_transition): Supprt TLS
+ x32 GD->IE and GD->LE transitions.
+ (elf_x86_64_relocate_section): Supprt TLS x32 GD->IE, GD->LE
+ and LD->LE transitions.
+
+2011-03-10 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_relocate_section): Provide section/offset
+ for LO_DS error message and correct multiple.
+
+2011-03-10 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (bfd_elf64_bfd_link_just_syms): Define.
+ (ppc64_elf_link_just_syms): New function.
+ (opd_entry_value): Don't assume big-endian host.
+ (get_r2off): New function.
+ (ppc_build_one_stub, ppc_size_one_stub): Use it here.
+
+2011-03-06 Michael Snyder <[email protected]>
+
+ * compress.c (bfd_compress_section_contents): Check for out of mem.
+
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Document
+ that case statement falls through intentionally.
+
+ * elf32-i386.c (elf_i386_relocate_section): Document fall through.
+
+2011-03-04 Alan Modra <[email protected]>
+
+ * archive.c (bsd_write_armap): Don't call stat in deterministic
+ mode, and don't use st_mtime if stat returns error.
+
+2011-03-03 Michael Snyder <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Remove dead code.
+
+ * coff-x86_64.c (coff_amd64_rtype_to_howto): Fencepost error.
+
+ * aoutx.h (aout_final_link): Use sizeof int not sizeof int*.
+ (aout_link_write_other_symbol): Missing break statement.
+
+ * dwarf2.c (scan_unit_for_symbols): Stop memory leak.
+
+ * archive.c (_bfd_slurp_extended_name_table): Fail if bfd_seek fails.
+
+2011-03-03 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_check_tls_transition): Supprt TLS
+ x32 IE->LE transition.
+ (elf_x86_64_relocate_section): Likewise.
+
+2011-03-02 Bernd Schmidt <[email protected]>
+
+ * elflink.c (is_reloc_section): Remove function.
+ (get_dynamic_reloc_section_name): Construct string manually.
+
+2011-02-28 Kai Tietz <[email protected]>
+
+ * archive.c (_bfd_find_nested_archive): Use filename_(n)cmp.
+ (adjust_relative_path): Likewise.
+ (_bfd_construct_extended_name_table): Likewise.
+ * corefile.c (generic_core_file_matches_executable_p): Likewise.
+ * elf32-bfin.c (bfinfdpic_relocate_section): Likewise.
+ * elf32-frv.c (elf32_frv_relocate_section): Likewise.
+ * elf32-spu.c (sort_bfds): Likewise.
+ (spu_elf_auto_overlay): Likewise.
+ * syms.c (_bfd_stab_section_find_nearest_line): Likewise.
+ * xcofflink.c (xcoff_set_import_path): Likewise.
+ * xtensa-isa.c (xtensa_regfile_lookup): Likewise.
+ (xtensa_regfile_lookup_shortname): Likewise.
+
+2011-02-28 Alan Modra <[email protected]>
+
+ PR 12513
+ * archive.c (bfd_slurp_bsd_armap_f2): Sanity check parsed_size and
+ stringsize. Properly sanity check symdef_count. Remove redundant
+ bfd_release.
+
+2011-02-25 Rafael Ávila de Espíndola <[email protected]>
+
+ * plugin.c (bfd_plugin_object_p): Correctly set the filesize
+ and handle claim_file seeking. Only try to load the plugin once.
+
+2011-02-22 Andreas Schwab <[email protected]>
+
+ * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): For a TLS_GD
+ relocation read the value from the second GOT slot.
+
+2011-02-15 Tristan Gingold <[email protected]>
+
+ * vms-alpha.c (alpha_vms_link_add_archive_symbols): Add a comment.
+
+2011-02-15 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_edit_toc): Reinstate second read of
+ toc relocs. Fuss over free(NULL).
+
+2011-02-14 Mike Frysinger <[email protected]>
+
+ * elflink.c (bfd_elf_size_dynamic_sections): Add
+ bfd_get_symbol_leading_char to the start of newname.
+
+2011-02-13 Ralf Wildenhues <[email protected]>
+
+ * configure: Regenerate.
+
+2011-02-09 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_edit_toc): Don't free toc relocs until
+ we are done. When optimising large toc, check that a global
+ symbol on a toc reloc is defined in a kept section.
+
+2011-02-08 Nick Clifton <[email protected]>
+
+ PR binutils/12467
+ * elf.c (assign_file_positions_for_load_sections): Set the program
+ header offset and entry size to zero if there are no program
+ headers.
+
+2011-02-08 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_edit_toc): Don't segfault on NULL
+ local_syms when looking for local symbols in .toc.
+
+2011-02-01 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_next_input_section): Use elf_gp value
+ for toc pointer on any section having makes_toc_func_call set.
+ (check_pasted_section): Ensure pasted .init/.fini fragments use
+ the same toc if any has makes_toc_func_call set.
+
+2011-01-28 Joseph Myers <[email protected]>
+
+ * elf32-ppc.c (ppc_elf_link_hash_newfunc): Initialize has_sda_refs
+ field.
+
+2011-01-22 Richard Sandiford <[email protected]>
+
+ * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Ignore
+ common sections too.
+
+2011-01-18 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_backend_want_plt_sym): Redefine to 0 after
+ Solaris target.
+
+2011-01-18 Pierre Muller <[email protected]>
+
+ Fix compilation for mingw64.
+ * coffcode.h (coff_slurp_symbol_table): Add intptr_t intermediate
+ typecast to avoid warning.
+ * elf32-rx.c: Add "bfd_stdint.h" include required for int32_t type
+ usage.
+ * elfxx-ia64.c (elfNN_ia64_relax_br): Use intptr_t typeacast instead
+ of long for pointer to avoid warning.
+ (elfNN_ia64_relax_brl): Idem.
+ (elfNN_ia64_install_value): Idem.
+ * vms-alpha.c (_bfd_vms_slurp_etir): Idem.
+
+2011-01-17 Richard Sandiford <[email protected]>
+
+ * elf32-arm.c (elf32_arm_check_relocs): Check needs_plt rather than
+ h->needs_plt when deciding whether to record a possible dynamic reloc.
+
+2011-01-17 Richard Sandiford <[email protected]>
+
+ * elf32-arm.c (elf32_arm_gc_sweep_hook): Remove all registered
+ dynamic relocs for the removed section.
+
+2011-01-15 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Check invalid x32
+ relocations.
+
+2011-01-14 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_link_hash_table): Add pointer_r_type.
+ (elf_x86_64_link_hash_table_create): Set pointer_r_type.
+ (elf_x86_64_check_relocs): Handle R_X86_64_32 like R_X86_64_64
+ for ILP32. Remove ABI_64_P PIC check for R_X86_64_8,
+ R_X86_64_16, R_X86_64_32 and R_X86_64_32S.
+ (elf_x86_64_relocate_section): Handle R_X86_64_32 like R_X86_64_64
+ for ILP32.
+
+2011-01-14 Alan Modra <[email protected]>
+
+ * bfd.c (bfd_perror): Flush stdout before and stderr after printing
+ error.
+ (_bfd_default_error_handler): Likewise.
+ * elf.c (print_segment_map): Likewise.
+ * libbfd.c (warn_deprecated): Likewise.
+ * som.c (som_sizeof_headers): No need to do so here.
+ * coff-i860.c: Replace use of printf for error messages with
+ _bfd_error_handler.
+ * coff-ppc.c: Likewise.
+ * coff-sh.c: Likewise.
+ * elf32-bfin.c: Likewise.
+ * elf32-dlx.c: Likewise.
+ * elf32-mep.c: Likewise.
+ * elf32-v850.c: Likewise.
+ * mach-o.c: Likewise.
+ * pef.c: Likewise.
+
+2011-01-13 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_link_hash_table): Remove
+ swap_reloca_out.
+ (elf_x86_64_link_hash_table_create): Don't set swap_reloca_out.
+ (elf_x86_64_check_relocs): Align relocation section to 4 byte
+ for 32bit.
+ (elf_x86_64_gc_sweep_hook): Replace ELF64_ST_TYPE with
+ ELF_ST_TYPE.
+ (elf_x86_64_finish_dynamic_symbol): Updated.
+ (elf_x86_64_finish_dynamic_sections): Don't use
+ Elf64_External_Dyn, bfd_elf64_swap_dyn_in, nor
+ bfd_elf64_swap_dyn_out.
+
+2011-01-14 J. Park <[email protected]>
+
+ PR ld/12339
+ * elf32-arm.c (allocate_dynrelocs): Don't set up eh before
+ following bfd_link_hash_warning symbol link.
+
+2011-01-10 Nathan Sidwell <[email protected]>
+ Glauber de Oliveira Costa <[email protected]>
+
+ * reloc.c (BFD_RELOC_ARM_TLS_GOTDESC, BFD_RELOC_ARM_TLS_CALL,
+ BFD_RELOC_ARM_THM_TLS_CALL, BFD_RELOC_ARM_TLS_DESCSEQ,
+ BFD_RELOC_ARM_THM_TLS_DESCSEQ, BFD_RELOC_ARM_TLS_DESC): New
+ relocations.
+ * libbfd.h: Rebuilt.
+ * bfd-in2.h: Rebuilt.
+ * elf32-arm.c (elf32_arm_howto_table_1): Add new relocations.
+ (elf32_arm_reloc_map): Likewise.
+ (tls_trampoline, dl_tlsdesc_lazy_trampoline): New PLT templates.
+ (elf32_arm_stub_long_branch_any_tls_pic,
+ elf32_arm_stub_long_branch_v4t_thumb_tls_pic): New stub templates.
+ (DEF_STUBS): Add new stubs.
+ (struct_elf_arm_obj_data): Add local_tlsdesc_gotent field.
+ (elf32_arm_local_tlsdesc_gotent): New.
+ (GOT_TLS_GDESC): New mask.
+ (GOT_TLS_GD_ANY): Define.
+ (struct elf32_arm_link_hash_entry): Add tlsdesc_got field.
+ (elf32_arm_compute_jump_table_size): New.
+ (struct elf32_arm_link_hash_table): Add next_tls_desc_index,
+ num_tls_desc, dt_tlsdesc_plt, dt_tlsdesc_got, tls_trampoline,
+ sgotplt_jump_table_size fields.
+ (elf32_arm_link_hash_newfunc): Initialize tlsdesc_got field.
+ (elf32_arm_link_hash_table_create): Initialize new fields.
+ (arm_type_of_stub): Check TLS desc relocs too.
+ (elf32_arm_stub_name): TLS desc relocs can be shared.
+ (elf32_arm_tls_transition): Determine relaxation.
+ (arm_stub_required_alignment): Add tls stubs.
+ (elf32_arm_size_stubs): Likewise.
+ (elf32_arm_tls_relax): Perform TLS relaxing.
+ (elf32_arm_final_link_relocate): Process TLS DESC relocations.
+ (IS_ARM_TLS_GNU_RELOC): New.
+ (IS_ARM_TLS_RELOC): Use it.
+ (elf32_arm_relocate_section): Perform TLS relaxing.
+ (elf32_arm_check_relocs): Anticipate TLS relaxing, process tls
+ desc relocations.
+ (allocate_dynrelocs): Allocate tls desc relcoations.
+ (elf32_arm_output_arch_local_syms): Emit tls trampoline mapping
+ symbols.
+ (elf32_arm_size_dynamic_sections): Allocate tls trampolines and
+ got slots.
+ (elf32_arm_always_size_sections): New. Create _TLS_MODULE_BASE
+ symbol.
+ (elf32_arm_finish_dynamic_symbol): Adjust.
+ (arm_put_trampoline): New.
+ (elf32_arm_finish_dynamic_sections): Emit new dynamic tags and tls
+ trampolines.
+ (elf_backend_always_size_sections): Define.
+
+2011-01-06 H.J. Lu <[email protected]>
+
+ * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Optimized.
+
+2011-01-06 H.J. Lu <[email protected]>
+
+ PR ld/12366
+ PR ld/12371
+ * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Properly
+ handle symbols marked with regular reference, but not non-GOT
+ reference when building shared library.
+
+ * elf32-i386.c (elf_i386_gc_sweep_hook): Properly handle
+ local and global STT_GNU_IFUNC symols when building shared
+ library.
+ * elf64-x86-64.c (elf_x86_64_gc_sweep_hook): Likewise.
+
+2011-01-05 DJ Delorie <[email protected]>
+
+ * reloc.c: Add BFD_RELOC_RX_OP_NEG.
+ * libbfd.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+ * elf32-rx.c: Add it to the list, corresponding to R_RX_OPneg.
+
+2011-01-03 H.J. Lu <[email protected]>
+
+ * cpu-i386.c (bfd_i386_compatible): New.
+ (bfd_x64_32_arch_intel_syntax): Replace bfd_default_compatible
+ with bfd_i386_compatible.
+ (bfd_x86_64_arch_intel_syntax): Likewise.
+ (bfd_i386_arch_intel_syntax): Likewise.
+ (i8086_arch): Likewise.
+ (bfd_x64_32_arch): Likewise.
+ (bfd_x86_64_arch): Likewise.
+ (bfd_i386_arch): Likewise.
+
+For older changes see ChangeLog-2010
+
+Copyright (C) 2011 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
+Local Variables:
+mode: change-log
+left-margin: 8
+fill-column: 74
+version-control: never
+End:
diff --git a/bfd/ChangeLog-2012 b/bfd/ChangeLog-2012
new file mode 100644
index 0000000..7d82ace
--- /dev/null
+++ b/bfd/ChangeLog-2012
@@ -0,0 +1,3300 @@
+2012-12-23 Mike Frysinger <[email protected]>
+
+ * config.bfd (i[3-7]86-*-linux-*): Add x86_64pei_vec to
+ targ64_selvecs.
+
+2012-12-21 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Check
+ R_X86_64_standard instead of R_X86_64_max for unrecognized
+ relocation.
+
+2012-12-21 H.J. Lu <[email protected]>
+
+ PR ld/14980
+ * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Properly
+ adjust h->plt.refcount.
+ * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
+
+2012-12-19 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_relocate_section): Replace
+ bfd_elf32_swap_reloc_out with elf_append_rel.
+ (elf_i386_finish_dynamic_symbol): Likewise.
+
+ * elflink.c (elf_append_rel): Call swap_reloc_out instead of
+ swap_reloca_out.
+
+2012-12-18 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_finish_dynamic_symbol): Reindent.
+
+2012-12-18 Edgar E. Iglesias <[email protected]>
+
+ PR ld/14736
+ * elf32-microblaze.c (calc_fixup): Add end range.
+
+2012-12-18 Alan Modra <[email protected]>
+
+ * elf.c (swap_out_syms): Set shndx to SHN_ABS when not one of
+ the special MAP_* values.
+
+2012-12-17 Roland McGrath <[email protected]>
+ Alan Modra <[email protected]>
+
+ * elf32-arm.c (elf32_arm_size_stubs): Skip input BFDs that are
+ not ARM ELF.
+
+2012-12-17 Nick Clifton <[email protected]>
+
+ * MAINTAINERS: Add copyright notice.
+ * Makefile.am: Likewise.
+ * PORTING: Likewise.
+ * README: Likewise.
+ * TODO: Likewise.
+ * acinclude.m4: Likewise.
+ * bfd.m4: Likewise.
+ * config.bfd: Likewise.
+ * configure.com: Likewise.
+ * configure.host: Likewise.
+ * configure.in: Likewise.
+ * makefile.vms: Likewise.
+ * warning.m4: Likewise.
+ * elf64-hppa.c: Fix copyright notice.
+ * Makefile.in: Regenerate.
+
+2012-12-16 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_check_relocs): Don't check IFUNC
+ relocations here.
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
+
+2012-12-16 H.J. Lu <[email protected]>
+
+ PR ld/14968
+ * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Also check
+ local IFUNC references.
+ * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
+
+2012-12-14 Tom Tromey <[email protected]>
+
+ * elf.c (elfcore_grok_note) <NT_FILE>: New case.
+
+2012-12-13 H.J. Lu <[email protected]>
+
+ PR ld/14956
+ * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Check local
+ IFUNC calls.
+ * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
+
+2012-12-10 Edgar E. Iglesias <[email protected]>
+
+ * reloc.c (MICROBLAZE): Document new relocations
+ * bfd-in2.h: Regenerated
+ * libbfd.h: Regenerated
+ * elf32-microblaze.c (microblaze_elf_howto_raw): Add TLS relocations
+ (microblaze_elf_reloc_type_lookup): Likewise
+ (elf32_mb_link_hash_entry): define TLS reference types
+ (elf32_mb_link_hash_table): add TLS Local dynamic GOT entry
+ #define has_tls_reloc if section has TLS relocs
+ (dtprel_base), (check_unique_offset): New
+ (microblaze_elf_output_dynamic_relocation): output simple
+ dynamic relocation into SRELOC.
+ (microblaze_elf_relocate_section): Accommodate TLS relocations.
+ (microblaze_elf_check_relocs): Likewise
+ (update_local_sym_info): New
+ (microblaze_elf_copy_indirect_symbol): Add tls_mask.
+ (allocate_dynrelocs): Handle TLS symbol
+ (microblaze_elf_size_dynamic_sections): Set size and offset
+ (microblaze_elf_finish_dynamic_symbol): Use
+ microblaze_elf_output_dynamic_relocation
+
+2012-12-09 H.J. Lu <[email protected]>
+
+ PR binutils/14933
+ * archive.c (bsd_write_armap): Properly check indicies bigger
+ than 4Gb.
+
+2012-12-07 Alan Modra <[email protected]>
+
+ PR ld/14926
+ * elf.c (_bfd_elf_map_sections_to_segments): Include elf header
+ size when determining phdr_in_segment.
+
+2012-12-06 Yufeng Zhang <[email protected]>
+
+ * elf64-aarch64.c (elf64_aarch64_grok_prstatus): New function.
+ (elf_backend_grok_prstatus): Define to elf64_aarch64_grok_prstatus.
+
+2012-12-06 Alan Modra <[email protected]>
+
+ * elfxx-mips.c (allocate_dynrelocs): Correct test for symbol
+ defined in a regular file to include common symbols.
+
+2012-12-05 Leif Ekblad <[email protected]>
+
+ * config.bfd: Add x86_64-*-rdos.
+
+2012-12-05 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (build_plt_stub): Fix off by one error in branch
+ to glink.
+
+2012-12-03 Maciej W. Rozycki <[email protected]>
+
+ PR ld/10629
+ * elfxx-mips.c (mips_elf_link_hash_table): Update comment for
+ use_rld_obj_head.
+ (_bfd_mips_elf_create_dynamic_sections): Always create a
+ .rld_map section if no __rld_obj_head symbol has been seen.
+
+2012-12-03 Maciej W. Rozycki <[email protected]>
+
+ * elf32-mips.c (mips_elf32_object_p): Return right away when the
+ ABI is not compatible.
+ * elfn32-mips.c (mips_elf_n32_object_p): Likewise.
+
+2012-12-03 Maciej W. Rozycki <[email protected]>
+
+ * elf32-tilepro.c (tilepro_elf_mkobject): New function.
+ (bfd_elf32_mkobject): New macro.
+
+2012-12-03 Maciej W. Rozycki <[email protected]>
+
+ * elf32-mips.c (bfd_elf32_mkobject): New macro.
+ * elf64-mips.c (bfd_elf64_mkobject): Likewise.
+ * elfn32-mips.c (bfd_elf32_mkobject): Likewise.
+ * elfxx-mips.h (_bfd_mips_elf_mkobject): New prototype.
+ * elfxx-mips.c (mips_elf_obj_tdata): New struct.
+ (mips_elf_tdata): New macro.
+ (_bfd_mips_elf_mkobject): New function.
+ (mips_elf_merge_obj_attributes): Report the originating input BFD
+ on attribute conflicts.
+
+2012-12-03 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (mips_elf_merge_obj_attributes): Correct messages
+ for the -mdouble-float and -msingle-float cases throughout; make
+ all the messages report the output file consistently on the
+ left-hand side.
+
+2012-11-29 Roland McGrath <[email protected]>
+
+ * elf-nacl.c (segment_eligible_for_headers): Disallow writable segments.
+
+2012-11-26 Roland McGrath <[email protected]>
+
+ * elf-nacl.c (nacl_modify_segment_map): Don't crash when INFO is null.
+
+2012-11-21 H.J. Lu <[email protected]>
+
+ PR binutils/14493
+ * elf.c (copy_elf_program_header): When rewriting program
+ header, set the output maxpagesize to the maximum alignment
+ of input PT_LOAD segments.
+
+2012-11-21 Roland McGrath <[email protected]>
+
+ * elf-nacl.c (segment_nonexecutable_and_has_contents): Renamed to ...
+ (segment_eligible_for_headers): ... this. Take new arguments
+ MAXPAGESIZE and SIZEOF_HEADERS. Return false if the first section's
+ start address doesn't leave space for the headers.
+ (nacl_modify_segment_map): Update caller.
+
+2012-11-20 H.J. Lu <[email protected]>
+
+ PR ld/14862
+ * elf-bfd.h (elf_link_hash_entry): Remove ref_dynamic_nonweak
+ added by accident.
+ (elf_link_add_object_symbols): Don't set nor check
+ ref_dynamic_nonweak.
+
+2012-11-20 Alan Modra <[email protected]>
+
+ * elf32-rx.c (rx_elf_print_private_bfd_data): Warning fix.
+
+2012-11-16 Joey Ye <[email protected]>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate
+ <case R_ARM_THM_ALU_PREL_11_0, case R_ARM_THM_PC12>): Align address of
+ the place being relocated.
+ (elf32_arm_final_link_relocate, case R_ARM_THM_PC8): Align address
+ of the place being relocated and truncate addend.
+ (Pa): New macro.
+
+2012-11-14 Roland McGrath <[email protected]>
+
+ * elf32-arm.c (elf32_arm_nacl_plt0_entry): Use bic rather than bfc
+ instruction for data sandboxing.
+
+2012-11-14 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_read_main)
+ (bfd_mach_o_read_source_version): New functions.
+ (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_DATA_IN_CODE,
+ BFD_MACH_O_LC_DYLIB_CODE_SIGN_DRS, BFD_MACH_O_LC_MAIN,
+ BFD_MACH_O_LC_SOURCE_VERSION.
+ * mach-o.h (bfd_mach_o_main_command)
+ (bfd_mach_o_source_version_command): New types.
+ (bfd_mach_o_load_command): Add fields for these new types.
+
+2012-11-14 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Add a special
+ handling for non-scattered pairs. Update comments.
+
+2012-11-13 Joe Seymour <[email protected]>
+
+ * elf.c (rewrite_elf_program_header): Allocate elf_segment_map
+ with bfd_zalloc, instead of bfd_alloc.
+
+2012-11-09 Nick Clifton <[email protected]>
+
+ * Makefile.am (ALL_MACHINES): Add cpu-v850-rh850.lo.
+ (ALL_MACHINES_CFILES): Add cpu-v850-rh850.c.
+ * archures.c (bfd_arch_info): Add bfd_v850_rh850_arch.
+ * config.bfd: Likewise.
+ * configure.in: Add bfd_elf32_v850_rh850_vec.
+ * cpu-v850.c: Update printed description.
+ * cpu-v850_rh850.c: New file.
+ * elf32-v850.c (v850_elf_check_relocs): Add support for RH850 ABI
+ relocs.
+ (v850_elf_perform_relocation): Likewise.
+ (v850_elf_final_link_relocate): Likewise.
+ (v850_elf_relocate_section): Likewise.
+ (v850_elf_relax_section): Likewise.
+ (v800_elf_howto_table): New.
+ (v850_elf_object_p): Add support for RH850 ABI values.
+ (v850_elf_final_write_processing): Likewise.
+ (v850_elf_merge_private_bfd_data): Likewise.
+ (v850_elf_print_private_bfd_data): Likewise.
+ (v800_elf_reloc_map): New.
+ (v800_elf_reloc_type_lookup): New.
+ (v800_elf_reloc_name_lookup): New.
+ (v800_elf_info_to_howto): New.
+ (bfd_elf32_v850_rh850_vec): New.
+ (bfd_arch_v850_rh850): New.
+ * targets.c (_bfd_targets): Add bfd_elf32_v850_rh850_vec.
+ * Makefile.in: Regenerate.
+ * bfd-in2.h: Regenerate.
+ * configure: Regenerate.
+
+ * elf32-rx.c (describe_flags): New function. Returns a buffer
+ containing a description of the E_FLAG_RX_... values set.
+ (rx_elf_merge_private_bfd_data): Use it.
+ (rx_elf_print_private_bfd_data): Likewise.
+ (elf32_rx_machine): Skip EF_RX_CPU_RX check.
+ (elf32_rx_special_sections): Define.
+ (elf_backend_special_sections): Define.
+
+2012-11-09 Edgar E. Iglesias <[email protected]>
+
+ * config.bfd: Add microblazeel-*-*
+ * configure.in: Likewise.
+ * configure: Regenerate.
+ * elf32-microblaze.c (microblaze_elf_relocate_section): Add endian awareness.
+ (microblaze_elf_merge_private_bfd_data): New.
+ (microblaze_bfd_write_imm_value_32): New.
+ (microblaze_bfd_write_imm_value_64): New.
+ (microblaze_elf_relax_section): Add endian awareness.
+ (microblaze_elf_add_symbol_hook): Define TARGET_LITTLE_NAME,
+ TARGET_LITTLE_SYM and bfd_elf32_bfd_merge_private_bfd_data.
+ * targets.c: Add bfd target bfd_elf32_microblazeel_vec.
+
+2012-11-09 H.J. Lu <[email protected]>
+
+ * aout-tic30.c (MY_final_link_callback): Remove trailing
+ redundant `;'.
+ * coff-h8500.c (extra_case): Likewise.
+ (bfd_coff_reloc16_get_value): Likewise.
+ * dwarf2.c (_bfd_dwarf2_cleanup_debug_info): Likewise.
+ * elf.c (_bfd_elf_slurp_version_tables): Likewise.
+ * elf32-frv.c (elf32_frv_relocate_section): Likewise.
+ * elf32-v850.c (v850_elf_perform_relocation): Likewise.
+ * opncls.c (bfd_calc_gnu_debuglink_crc32): Likewise.
+ * plugin.c (add_symbols): Likewise.
+ * reloc.c (bfd_check_overflow): Likewise.
+ * vms-lib.c (_bfd_vms_lib_archive_p): Likewise.
+
+2012-11-08 Tom Tromey <[email protected]>
+
+ * elf.c (elfcore_grok_note) <NT_SIGINFO>: New case; make
+ pseudosection.
+
+2012-11-08 Alan Modra <[email protected]>
+
+ * aclocal.m4: Regenerate.
+ * Makefile.in: Regenerate.
+ * po/SRC-POTFILES.in: Regenerate.
+
+2012-11-07 H.J. Lu <[email protected]>
+
+ * section.c (bfd_get_section_contents): Replace memcpy
+ with memmove.
+
+2012-11-07 Hans-Peter Nilsson <[email protected]>
+
+ PR binutils/14481
+ * aout-target.h (MY_close_and_cleanup): Make local function
+ instead of alias of MY_bfd_free_cached_info. Also call
+ _bfd_generic_close_and_cleanup.
+
+2012-11-06 H.J. Lu <[email protected]>
+
+ PR binutils/14813
+ * bfdio.c (bfd_iovec): Change return type of bclose to
+ bfd_boolean.
+ (memory_bclose): Change return type to bfd_boolean.
+ * cache.c (cache_bclose): Likewise.
+ * opncls.c (opncls_bclose): Likewise. Return TRUE on success.
+ * vms-lib.c (vms_lib_bclose): Likewise. Return TRUE.
+ * libbfd.h: Regenerated.
+
+2012-11-06 Tristan Gingold <[email protected]>
+
+ * coff-x86_64.c (_bfd_generic_find_nearest_line_discriminator):
+ Define as coff_find_nearest_line_discriminator.
+
+2012-11-06 Alan Modra <[email protected]>
+
+ PR binutils/14567
+ * opncls.c (opncls_iovec): Forward declare.
+ (_bfd_new_bfd_contained_in): If using opncls_iovec, copy iostream
+ to new bfd.
+
+2012-11-06 Alan Modra <[email protected]>
+
+ * mach-o.c (bfd_mach_o_close_and_cleanup): Don't call
+ _bfd_generic_close_and_cleanup for mach_o_fat archives.
+
+2012-11-06 Alan Modra <[email protected]>
+
+ * coff-tic4x.c (tic4x_coff0_vec, tic4x_coff0_beh_vec,
+ tic4x_coff1_vec, tic4x_coff1_beh_vec, tic4x_coff2_vec,
+ tic4x_coff2_beh_vec): Allow SEC_CODE and SEC_READONLY in
+ section flags.
+ * coff-ppc.c (TARGET_LITTLE_SYM): Likewise.
+ (TARGET_BIG_SYM): Likewise.
+
+2012-11-06 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (struct ppc_link_hash_table): Add dot_toc_dot.
+ (ppc64_elf_size_stubs): Lookup ".TOC.".
+ (ppc64_elf_relocate_section): Resolve special symbol ".TOC.".
+
+2012-11-06 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (maybe_strip_output): Heed SEC_KEEP.
+
+2012-11-05 Andreas Krebbel <[email protected]>
+
+ PR target/14788
+ * elf32-s390.c (elf_s390_relocate_section): Set elf.dynobj for
+ local ifunc symbols.
+ * elf64-s390.c (elf_s390_relocate_section): Likewise.
+
+2012-11-05 Alan Modra <[email protected]>
+
+ * configure.in: Apply 2012-09-10 change to config.in here.
+
+2012-11-05 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_edit_toc): Clear "repeat" inside
+ loop. Really mark toc entry referring to another toc entry
+ only if the first is used.
+
+2012-10-30 H.J. Lu <[email protected]>
+
+ * configure.in: Also handle --enable-64-bit-bfd when setting
+ CORE_HEADER for 'i[3-7]86-*-linux-*'.
+
+2012-10-30 Steve McIntyre <[email protected]>
+
+ * elf32-arm.c (elf32_arm_print_private_bfd_data): Recognise and
+ display the new ARM hard-float/soft-float ABI flags for EABI_VER5
+ (elf32_arm_post_process_headers): Add the hard-float/soft-float
+ ABI flag as appropriate for ET_DYN/ET_EXEC in EABI_VER5.
+
+2012-10-30 Yao Qi <[email protected]>
+ H.J. Lu <[email protected]>
+
+ * configure.in: Set CORE_HEADER to hosts/x86-64linux.h for
+ 'i[3-7]86-*-linux-*' if x86_64-*linux is enabled.
+ * configure: Regenerated.
+
+ * elf64-x86-64.c (elf_x86_64_write_core_note): Replace type
+ 'prpsinfo_t' and 'prstatus_t' with 'prpsinfo64_t' and
+ 'prstatus64_t' respectively.
+
+ * hosts/x86-64linux.h (a8_uint64_t): New.
+ (user_regsx32_struct): Renamed to ...
+ (user_regs64_struct): This. Replace uint64_t with a8_uint64_t.
+ (elf_gregx32_t): Renamed to ...
+ (elf_greg64_t): This. Replace uint64_t with a8_uint64_t.
+ (ELF_NGREGX32): Removed.
+ (ELF_NGREG64): New.
+ (elf_gregx32_t): Removed.
+ (elf_greg64_t): New.
+ (struct prstatus64_timeval): New.
+ (elf_prstatusx32): Replace elf_gregsetx32_t with elf_gregset64_t.
+ (elf_prstatus64): New.
+ (elf_prpsinfo64): New.
+ (prstatus64_t, prpsinfo64_t): New typedef.
+
+2012-10-29 Sean Keys <[email protected]>
+
+ * elf32-xgate.c(elf_xgate_howto_table): Fix src and dest mask for
+ R_XGATE_16
+
+2012-10-29 Alan Modra <[email protected]>
+
+ * elf32-ppc.c (ppc_elf_howto_raw): Correct dst_mask in
+ R_PPC_VLE_LO16A, R_PPC_VLE_HI16A, R_PPC_VLE_HA16A,
+ R_PPC_VLE_SDAREL_LO16A, R_PPC_VLE_SDAREL_HI16A,
+ R_PPC_VLE_SDAREL_HA16A reloc howtos.
+
+2012-10-26 Nick Clifton <[email protected]>
+
+ * po/uk.po: Updated Ukranian translation.
+
+2012-10-26 Alan Modra <[email protected]>
+
+ PR gas/14758
+ * elf32-ppc.c (ppc_elf_reloc_type_lookup): Decode ppc64 _DS
+ bfd_reloc values. Map to corresponding D-form relocs.
+ (is_insn_ds_form, is_insn_qs_form): New functions.
+ (ppc_elf_relocate_section): Validate insn with DS-form or DQ-form
+ fields using D-form reloc.
+
+2012-10-25 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_size_dynamic_sections): Replace
+ _GLOBAL_OFFSET_TABLE_ lookup with htab->elf.hgot.
+ * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Likewise.
+
+2012-10-24 H.J. Lu <[email protected]>
+
+ * compress.c (bfd_is_section_compressed): Don't decompress the
+ section.
+
+2012-10-23 Nathan Sidwell <[email protected]>
+
+ * bfd-in.h (bfd_elf_stack_segment_size): Declare.
+ * bfd-in2.h: Rebuilt.
+ * elfxx-target.h (elf_backend_stack_align): New.
+ (elfNN_bed): Add it.
+ * elf-bfd.h (struct elf_backend_data): Add stack_align field.
+ * elf.c (bfd_elf_map_sections_to_segments): Pay attention to
+ stack_align and stacksize for PT_GNU_STACK segment.
+ (assign_file_positions_for_non_load_sections): Set p_memsz for
+ PT_GNU_STACK segment.
+ (copy_elf_program_header): Copy PT_GNU_STACK size.
+ * elflink.c (bfd_elf_stack_segment_size): New function, taken from
+ uclinux backends.
+ (bfd_elf_size_dynamic_sections): Determine
+ PT_GNU_STACK requirements after calling backend. Pay attention to
+ stacksize.
+ * elf32-bfin.c (elf32_bfinfdpic_always_size_sections): Call
+ bfd_elf_stack_segment_size.
+ (elf32_bfinfdpic_modify_program_headers): Delete.
+ (elf32_bfingfdpic_copy_private_bfd_data): Don't copy PT_GNU_STACK
+ here.
+ (elf_backend_stack_align): Override.
+ (elf_backend_modify_program_headers): Don't override.
+ * elf32-frv.c (frvfdpic_always_size_sections): Call
+ bfd_elf_stack_segment_size.
+ (elf32_frvfdpic_modify_program_headers): Delete.
+ (elf32_frvfdpic_copy_private_bfd_data): Don't copy PT_GNU_STACK
+ here.
+ (elf_backend_stack_align): Override.
+ (elf_backend_modify_program_headers): Don't override.
+ * elf32-lm32.c (lm32_elf_always_size_sections): Leave
+ PT_GNU_STACK creation to underlying elf support. Check
+ __stacksize here for backwards compatibility, and set it if
+ needed.
+ (lm32_elf_modify_segment_map): Delete.
+ (lm32_elf_modify_program_headers): Delete.
+ (elf_backend_stack_align): Override.
+ (elf_backend_modify_segment_map): Don't override.
+ (elf_backend_modify_program_headers): Don't override.
+ * elf32-sh.c (sh_elf_always_size_sections): Call
+ bfd_elf_stack_segment_size.
+ (sh_elf_modify_program_headers): Delete.
+ (sh_elf_copy_private_data): Don't copy PT_GNU_STACK
+ here.
+ (elf_backend_stack_align): Override.
+ (elf_backend_modify_program_headers): Don't override.
+ * elf32-tic6x.c (elf32_tic6x_always_size_sections): Call
+ bfd_elf_stack_segment_size.
+ (elf32_tic6x_modify_program_headers): Delete.
+ (elf32_tic6x_copy_private_data): Delete.
+ (elf_backend_stack_align): Override.
+ (bfd_elf32_bfd_copy_private_bfd_data): Don't override.
+ (elf_backend_modify_program_headers): Don't override.
+
+2012-10-22 Alan Modra <[email protected]>
+
+ * cache.c (cache_bmmap): Don't use void* arithmetic.
+
+2012-10-21 Alan Modra <[email protected]>
+
+ * compress.c (bfd_cache_section_contents): New function.
+ * bfd-in2.h: Regenerate.
+
+2012-10-21 Hans-Peter Nilsson <[email protected]>
+
+ * linker.c (_bfd_generic_link_output_symbols): Handle a
+ no-longer-global symbol entered through a plugin.
+
+2012-10-20 Alan Modra <[email protected]>
+
+ * compress.c: Reinstate 2012-10-19 change.
+ (bfd_get_full_section_contents): Don't free unless we alloc.
+ Use proper decompress size. Delete some vars, rename others.
+
+2012-10-19 Tom Tromey <[email protected]>
+
+ * compress.c: Revert previous patch.
+
+2012-10-19 Tom Tromey <[email protected]>
+
+ * compress.c (bfd_get_full_section_contents): Don't cache
+ decompressed contents.
+
+2012-10-18 Kai Tietz <[email protected]>
+
+ PR binutils/14067
+ * coff-i386.c (bfd_target): Add section flag SEC_EXCLUDE.
+ Allow BFD_COMPRESS and BFD_DECOMPRESS flags.
+ * coff-x86_64.c: Likewise.
+ * coffcode.h (DOT_ZDEBUG): New define.
+ (sec_to_styp_flags): Check for .zdebug.
+ (styp_to_sec_flags): Likewise.
+ * coffgen.c (make_a_section): Handle .debug_* section
+ compression/decompression flags.
+ * cofflink.c (mark_relocs): Ignore relocations
+ for a section, which isn't marked as used.
+ (_bfd_coff_link_input_bfd): Add support of compressed
+ debug sections.
+ * compress.c (decompress_contents): Loop as long
+ as there is input available and there is room for
+ output.
+ * bfd/pe-arm.c: Add .zdebug_ partial match entry.
+ * pe-i386.c: Likewise.
+ * pe-x86_64.c: Likewise.
+ * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Don't clear all
+ data-directories as this might destroy content.
+
+ * coff-i386.c (_bfd_generic_find_nearest_line_discriminator):
+ define as coff_find_nearest_line_discriminator.
+ * libcoff-in.h (coff_find_nearest_line_discriminator): New
+ * libcoff.h: Regenerated.
+ * coff-x86_64.c: Likewise.
+ * coffgen.c (coff_find_nearest_line_discriminator): New function.
+ prototype.
+
+2012-10-16 Joel Brobecker <[email protected]>
+
+ * coff64-rs6000.c (rs6000coff64_vec): Set _close_and_cleanup
+ field to _bfd_archive_close_and_cleanup.
+ (aix5coff64_vec): Likewise.
+
+2012-10-16 Joel Brobecker <[email protected]>
+
+ * coff-rs6000.c (rs6000coff_vec): Set _close_and_cleanup
+ field to _bfd_archive_close_and_cleanup.
+ (pmac_xcoff_vec): Likewise.
+
+2012-10-16 Sofiane Naci <[email protected]>
+
+ * elf64-aarch64.c (elf64_aarch64_tls_howto_table): Fix shift value for
+ R_AARCH64_TLSIE_LD_GOTTPREL_PREL19, R_AARCH64_TLSLE_MOVW_TPREL_G2,
+ R_AARCH64_TLSLE_MOVW_TPREL_G1, R_AARCH64_TLSLE_MOVW_TPREL_G1_NC,
+ R_AARCH64_TLSLE_ADD_TPREL_HI12.
+ (elf64_aarch64_tlsdesc_howto_table): Fix shift value for
+ R_AARCH64_TLSDESC_LD64_PREL19 and R_AARCH64_TLSDESC_OFF_G1.
+ (elf64_aarch64_final_link_relocate): Add signed_addend when resolving
+ AARCH64_TLSLE_*_TPREL_* relocations.
+
+2012-10-16 Alan Modra <[email protected]>
+
+ * elf32-xtensa.c (free_section_cache): Renamed from
+ clear_section_cache. Don't zero cache.
+ (section_cache_section): Remove ineffectual zero of cache.
+ Call init_section_cache instead.
+
+2012-10-15 Doug Evans <[email protected]>
+
+ * elf.c (special_sections_d): Add comment.
+
+2012-10-13 H.J. Lu <[email protected]>
+
+ PR bfd/14430
+ * Makefile.am (LIBDL): Replace -ldl with @lt_cv_dlopen_libs@.
+ * configure.in (lt_cv_dlopen_libs): AC_SUBST.
+ * Makefile.in: Regenerated.
+ * configure: Likewise.
+
+2012-10-08 Alan Modra <[email protected]>
+
+ PR binutils/14662
+ * elf.c (_bfd_elf_make_section_from_shdr): Treat .gdb_index as
+ SEC_DEBUGGING.
+
+2012-09-20 Walter Lee <[email protected]>
+
+ * elf32-tilepro.c (tilepro_elf_relocate_section): Adjust got
+ relocations with value of hgot.
+ * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
+
+2012-09-19 Steve Ellcey <[email protected]>
+
+ * config.bfd: Add mips*-mti-elf* target.
+
+2012-09-18 H.J. Lu <[email protected]>
+
+ PR ld/14591
+ * elf-bfd.h (_bfd_elf_merge_symbol): Add an argument to return
+ if the old symbol is weak.
+
+ * elf32-sh-symbian.c (sh_symbian_relocate_section): Update
+ _bfd_elf_merge_symbol call.
+
+ * elflink.c (_bfd_elf_merge_symbol): Add an argument to return
+ if the old symbol is weak.
+ (_bfd_elf_add_default_symbol): Update _bfd_elf_merge_symbol
+ call.
+ (elf_link_add_object_symbols): Don't update symbol type from a
+ weak definition. Update symbol type from a common symbol when
+ overriding a weak symbol.
+
+2012-09-17 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_convert_mov_to_lea): Ignore discarded
+ section.
+ * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
+
+2012-09-17 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_finish_dynamic_symbol): Replace return
+ FALSE with abort.
+ * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
+
+2012-09-17 Walter Lee <[email protected]>
+
+ * elf32-tilepro.c (tilepro_elf_relocate_section): Remove unused
+ got_base variable.
+ * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
+
+2012-09-17 Walter Lee <[email protected]>
+
+ * elf32-tilepro.c (tilepro_elf_relocate_section): Fix computation
+ of got relocations for when .got.plt section is merged with .got.
+ * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
+
+2012-09-14 David Edelsohn <[email protected]>
+
+ * configure: Regenerate.
+
+2012-09-13 Anthony Green <[email protected]>
+
+ * targets.c (bfd_elf32_bigmoxie_vec, bfd_elf32_littlemoxie_vec):
+ Define.
+ (bfd_elf32_moxie_vec): Remove.
+ * config.bfd, configure.in: Add bi-endian support for moxie.
+ * configure: Rebuilt.
+ * elf32-moxie.c (TARGET_LITTLE_NAME, TARGET_LITTLE_SYM): Define.
+ (TARGET_BIG_NAME, TARGET_BIG_SYM): Update for bi-endian support.
+
+2012-09-12 Doug Kwan <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_relocate_section): Use pre-adjusted
+ relocation for stub lookup.
+
+2012-09-12 Chris Schlumberger-Socha <[email protected]>
+
+ * bfd-in2.h: Regenerated.
+ * elf64-aarch64.c
+ (elf64_aarch64_howto_table): Add R_AARCH64_GOT_LD_PREL19 reloc to HOWTO.
+ (elf64_aarch64_reloc_map): Add reloc entry.
+ (aarch64_resolve_relocation): Likewise.
+ (bfd_elf_aarch64_put_addend): Likewise.
+ (aarch64_reloc_got_type): Likewise.
+ (elf64_aarch64_final_link_relocate): Likewise.
+ (lf64_aarch64_check_relocs): Likewise.
+ (elf64_aarch64_check_relocs): New case for R_AARCH64_ADR_PREL_LO21
+ reloc.
+ * libbfd.h: Regenerated.
+ * reloc.c (R_AARCH64_GOT_LD_PREL19): New reloc.
+
+2012-09-10 Matthias Klose <[email protected]>
+
+ * config.in: Disable sanity check for kfreebsd.
+
+2012-09-10 H.J. Lu <[email protected]>
+
+ * configure: Regenerated.
+
+2012-09-04 Sergey A. Guriev <[email protected]>
+
+ * cpu-ia64-opc.c (ins_cnt6a): New function.
+ (ext_cnt6a): Ditto.
+ (ins_strd5b): Ditto.
+ (ext_strd5b): Ditto.
+ (elf64_ia64_operands): Add new operand types.
+
+2012-09-04 H.J. Lu <[email protected]>
+
+ PR binutils/14493
+ * elf.c (ignore_section_sym): Also ignore section symbols without
+ a BFD section.
+
+2012-09-03 Andreas Krebbel <[email protected]>
+
+ * elf32-s390.c (elf_s390_relocate_section): Handle PLTOFF for
+ local and global ifunc symbols.
+ * elf64-s390.c (elf_s390_relocate_section): Likewise.
+
+2012-09-02 H.J. Lu <[email protected]>
+
+ * elf-bfd.h (elf_link_hash_table): Add hdynamic for the
+ _DYNAMIC symbol.
+
+ * elflink.c (_bfd_elf_link_create_dynamic_sections): Set
+ hdynamic.
+
+ * elf-m10300.c (_bfd_mn10300_elf_finish_dynamic_symbol): Check
+ hdynamic instead of "_DYNAMIC".
+ * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Likewise.
+ * elf32-cr16.c (elf32_arm_finish_dynamic_symbol): Likewise.
+ * elf32-cris.c (elf_cris_finish_dynamic_symbol): Likewise.
+ * elf32-hppa.c (elf32_hppa_finish_dynamic_symbol): Likewise.
+ * elf32-i386.c (elf_i386_convert_mov_to_lea): Likewise.
+ * elf32-lm32.c (lm32_elf_finish_dynamic_symbol): Likewise.
+ * elf32-m32r.c (m32r_elf_finish_dynamic_symbol): Likewise.
+ * elf32-s390.c (elf_s390_finish_dynamic_symbol): Likewise.
+ * elf32-sh.c (sh_elf_finish_dynamic_symbol): Likewise.
+ * elf32-tic6x.c (elf32_tic6x_finish_dynamic_symbol): Likewise.
+ * elf32-tilepro.c (tilepro_elf_finish_dynamic_symbol): Likewise.
+ * elf32-vax.c (elf_vax_finish_dynamic_symbol): Likewise.
+ * elf32-xtensa.c (elf_xtensa_finish_dynamic_symbol): Likewise.
+ * elf64-aarch64.c elf64_aarch64_finish_dynamic_symbol(): Likewise.
+ * elf64-alpha.c (elf64_alpha_finish_dynamic_symbol): Likewise.
+ * elf64-ia64-vms.c (elf64_ia64_finish_dynamic_symbol): Likewise.
+ * elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise.
+ * elf64-sh64.c (sh64_elf64_finish_dynamic_symbol): Likewise.
+ * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
+ * elfnn-ia64.c (elfNN_ia64_finish_dynamic_symbol): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Likewise.
+ * elfxx-tilegx.c (tilegx_elf_finish_dynamic_symbol): Likewise.
+
+ * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): Check
+ hdynamic, hgot, hplt instead of _DYNAMIC, _GLOBAL_OFFSET_TABLE_,
+ _PROCEDURE_LINKAGE_TABLE_.
+ * elf32-score.c (s3_bfd_score_elf_finish_dynamic_symbol): Likewise.
+ * elf32-score7.c (s7_bfd_score_elf_finish_dynamic_symbol): Likewise.
+
+2012-08-31 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_convert_mov_to_lea): Don't optimize
+ _DYNAMIC.
+ * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
+
+2012-08-31 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_convert_mov_to_lea): New.
+ (elf_i386_size_dynamic_sections): Use it on input sections.
+ (elf_i386_relocate_section): Don't convert
+ "mov foo@GOT(%reg), %reg" to "lea foo@GOTOFF(%reg), %reg"
+ for local symbols here.
+
+ * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): New.
+ (elf_x86_64_size_dynamic_sections): Use it on input sections.
+ (elf_x86_64_relocate_section): Don't convert
+ "mov foo@GOTPCREL(%rip), %reg" to "lea foo(%rip), %reg"
+ for local symbols here.
+
+2012-08-30 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_relocate_section): Convert
+ "mov foo@GOT(%reg), %reg" to "lea foo@GOTOFF(%reg), %reg"
+ for local symbols.
+
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Convert
+ "mov foo@GOTPCREL(%rip), %reg" to "lea foo(%rip), %reg"
+ for local symbols.
+
+2012-08-31 Alan Modra <[email protected]>
+
+ PR ld/14464
+ * elf64-ppc.c (ppc64_elf_relocate_section): Map symbols defined
+ by a linker script in .opd to corresponding input .opd section.
+
+2012-08-28 Maciej W. Rozycki <[email protected]>
+
+ * elf32-ppc.c (ppc_elf_relocate_section): Assert that dynindx is
+ not minus one.
+ * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
+
+2012-08-28 Maciej W. Rozycki <[email protected]>
+
+ * elflink.c (_bfd_elf_merge_symbol): Also override the version
+ a dynamic symbol defaulted to if preempted with a hidden or
+ internal definition.
+
+2012-08-28 Walter Lee <[email protected]>
+
+ * elf32-tilepro.c (allocate_dynrelocs): Use PLT_ENTRY_SIZE as size
+ of header.
+ (tilepro_plt_entry_build): Account for new header size.
+ (tilepro_elf_finish_dynamic_sections): Ditto.
+ (tilepro_elf_plt_sym_val): Ditto.
+ * elfxx-tilegx.c (allocate_dynrelocs): Use PLT_ENTRY_SIZE as size
+ of header + tail.
+ (tilegx_elf_finish_dynamic_sections): Account for new padding.
+
+2012-08-27 Walter Lee <[email protected]>
+
+ * reloc.c (Add BFD_RELOC_TILEGX_IMM16_X0_HW0_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW0_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X0_HW1_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW1_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X0_HW2_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW2_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X0_HW3_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW3_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PLT_PCREL): new relocations.
+ * elfxx-tilegx.c (tilegx_elf_howto_table): Handle new relocations.
+ (tilegx_reloc_map): Ditto.
+ (reloc_to_create_func): Ditto.
+ (tilegx_elf_check_relocs): Ditto.
+ (tilegx_elf_gc_sweep_hook): Ditto.
+ (tilegx_elf_relocate_section): Ditto.
+ * libbfd.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+
+2012-08-24 Matthew Gretton-Dann <[email protected]>
+
+ * elf32-arm.c (v8): New array.
+ (tag_cpu_arch_combine): Add support for ARMv8 attributes.
+ (elf32_arm_merge_eabi_attributes): Likewise.
+ (VFP_VERSION_COUNT): New define.
+
+2012-08-20 Tom Tromey <[email protected]>
+
+ * vms-lib.c (_bfd_vms_lib_get_module): Use bfd_zmalloc for
+ areltdata.
+ * opncls.c (_bfd_delete_bfd): Free arelt_data.
+ * mach-o.c (bfd_mach_o_fat_member_init): Use bfd_zmalloc for
+ areltdata.
+ * ecoff.c (_bfd_ecoff_slurp_armap): Use free for mapdata.
+ * coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Use bfd_zmalloc for
+ areltdata.
+ (xcoff_write_archive_contents_old): Likewise.
+ (xcoff_write_archive_contents_big): Likewise.
+ * archive64.c (bfd_elf64_archive_slurp_armap): Use free for
+ areltdata.
+ * archive.c (_bfd_generic_read_ar_hdr_mag): Use bfd_zmalloc and
+ free for areltdata.
+ (_bfd_get_elt_at_filepos): Likewise. Clear n_nfd->arelt_data on
+ failure.
+ (do_slurp_bsd_armap): Use bfd_zmalloc and free for areltdata.
+ (do_slurp_coff_armap): Likewise.
+ (_bfd_slurp_extended_name_table): Likewise.
+ (bfd_slurp_bsd_armap_f2): Likewise. Don't leak 'mapdata'.
+
+2012-08-17 Nick Clifton <[email protected]>
+
+ * po/vi.po: Updated Vietnamese translation.
+
+2012-08-17 Yuri Chornoivan <[email protected]>
+
+ * elf-bfd.h, * elf32-ppc.c, * elf64-ia64-vms.c, * elfnn-ia64.c,
+ * elfxx-mips.c, * vms-alpha.c: Typo fixes.
+
+2012-08-17 Alan Modra <[email protected]>
+
+ PR binutils/14475:
+ * archive.c (bfd_ar_hdr_from_filesystem): Revert last change.
+ Instead malloc areltdata.
+
+2012-08-16 Tom Tromey <[email protected]>
+
+ PR binutils/14475:
+ * archive.c (bfd_ar_hdr_from_filesystem): Allocate areltdata on
+ 'member' BFD. Don't try to free 'ared'.
+
+2012-08-14 Nick Clifton <[email protected]>
+
+ * po/uk.po: Updated Ukranian translation.
+
+2012-08-13 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Look up
+ the options section in the output rather than input BFD to
+ decide if to add a DT_MIPS_OPTIONS tag.
+
+2012-08-13 Maciej W. Rozycki <[email protected]>
+
+ * config.bfd: Wrap mips*el-*-linux* and mips*-*-linux* into
+ #ifdef BFD64.
+
+2012-08-13 Ian Bolton <[email protected]>
+ Laurent Desnogues <[email protected]>
+ Jim MacArthur <[email protected]>
+ Marcus Shawcroft <[email protected]>
+ Nigel Stephens <[email protected]>
+ Ramana Radhakrishnan <[email protected]>
+ Richard Earnshaw <[email protected]>
+ Sofiane Naci <[email protected]>
+ Tejas Belagod <[email protected]>
+ Yufeng Zhang <[email protected]>
+
+ * Makefile.am: Add AArch64 files.
+ * Makefile.in: Regenerate.
+ * archures.c (bfd_aarch64_arch): New declaration.
+ (bfd_archures_list): Use bfd_archures_list.
+ * bfd-in.h (bfd_elf64_aarch64_init_maps): New declaration.
+ (bfd_aarch64_process_before_allocation): New declaration.
+ (bfd_elf64_aarch64_process_before_allocation): New declaration.
+ (bfd_elf64_aarch64_set_options): New declaration.
+ (bfd_elf64_aarch64_add_glue_sections_to_bfd): New declaration.
+ (BFD_AARCH64_SPECIAL_SYM_TYPE_MAP): New definition.
+ (BFD_AARCH64_SPECIAL_SYM_TYPE_TAG): New definition.
+ (BFD_AARCH64_SPECIAL_SYM_TYPE_OTHER): New definition.
+ (BFD_AARCH64_SPECIAL_SYM_TYPE_ANY): New definition.
+ (bfd_is_aarch64_special_symbol_name): New declaration.
+ (bfd_aarch64_merge_machines): New declaration.
+ (bfd_aarch64_update_notes): New declaration.
+ (int bfd_aarch64_get_mach_from_notes): New declaration.
+ (elf64_aarch64_setup_section_lists): New declaration.
+ (elf64_aarch64_next_input_section): New declaration.
+ (elf64_aarch64_size_stubs): New declaration.
+ (elf64_aarch64_build_stubs): New declaration.
+ * config.bfd: Add AArch64.
+ * configure.in: Add AArch64.
+ * configure: Regenerate.
+ * cpu-aarch64.c: New file.
+ * elf-bfd.h: Add AArch64.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+ * elf64-aarch64.c: New file.
+ * reloc.c: Add AArch64 relocations.
+ * targets.c: Add AArch64.
+ * po/SRC-POTFILES.in: Regenerate.
+
+2012-08-13 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (mips_elf_calculate_relocation): Fix the handling
+ of protected symbols.
+
+2012-08-10 Alan Modra <[email protected]>
+
+ PR binutils/14444
+ * elf.c (IS_VALID_GROUP_SECTION_HEADER) Add minsize param.
+ (setup_group): Adjust uses.
+ (bfd_section_from_shdr): Allow SHT_GROUP sections with just a flag
+ word.
+
+2012-08-09 Nick Clifton <[email protected]>
+
+ * po/vi.po: Updated Vietnamese translation.
+
+2012-08-09 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (LA25_LUI_MICROMIPS_1, LA25_LUI_MICROMIPS_2):
+ Remove macros, folding them into...
+ (LA25_LUI_MICROMIPS): ... this new macro.
+ (LA25_J_MICROMIPS_1, LA25_J_MICROMIPS_2): Likewise into...
+ (LA25_J_MICROMIPS): ... this new macro.
+ (LA25_ADDIU_MICROMIPS_1, LA25_ADDIU_MICROMIPS_2): Likewise
+ into...
+ (LA25_ADDIU_MICROMIPS): ... this new macro.
+ (bfd_put_micromips_32, bfd_get_micromips_32): New functions.
+ (mips_elf_create_la25_stub): Use them.
+ (check_br32_dslot, check_br32, check_relocated_bzc): Likewise.
+ (_bfd_mips_elf_relax_section): Likewise.
+
+2012-08-09 Alan Modra <[email protected]>
+ Tom Tromey <[email protected]>
+
+ * archive.c (SECTION Archives): Update documentation.
+ (_bfd_delete_archive_data): Remove.
+ (_bfd_add_bfd_to_archive_cache): Set 'parent_cache' and 'key'.
+ (archive_close_worker, _bfd_archive_close_and_cleanup): New
+ functions.
+ * libbfd-in.h (struct areltdata <parent_cache, key>): New fields.
+ (_bfd_delete_archive_data): Don't declare.
+ (_bfd_archive_close_and_cleanup): Declare.
+ (_bfd_generic_close_and_cleanup): Redefine.
+ * libbfd.h: Rebuild.
+ * opncls.c (_bfd_delete_bfd): Don't call _bfd_delete_archive_data.
+ (bfd_close): Don't close nested thin archives here.
+
+2012-08-07 Tom Tromey <[email protected]>
+
+ * archive.c (_bfd_delete_archive_data): New function.
+ * libbfd-in.h (_bfd_delete_archive_data): Declare.
+ * libbfd.h: Rebuild.
+ * opncls.c (_bfd_delete_bfd): Call _bfd_delete_archive_data.
+
+2012-08-07 Nick Clifton <[email protected]>
+
+ * po/uk.po: Updated Ukranian translation.
+
+2012-08-06 Maciej W. Rozycki <[email protected]>
+
+ * elflink.c (bfd_elf_record_link_assignment): Remove --defsym
+ symbols special case.
+
+2012-08-05 Maciej W. Rozycki <[email protected]>
+
+ * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Don't allocate
+ PLT slots for local symbols.
+
+2012-08-03 Maciej W. Rozycki <[email protected]>
+
+ * elf64-mips.c (mips16_elf64_howto_table_rela): Correct src_mask
+ field initializers throughout.
+ * elfn32-mips.c (elf_mips16_howto_table_rela): Likewise.
+
+2012-08-03 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (mips_elf_perform_relocation): Update the
+ cross-mode jump message.
+
+2012-08-03 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Update the
+ comment on DT_MIPS_RLD_MAP.
+
+2012-08-03 Tom Tromey <[email protected]>
+
+ * opncls.c (_bfd_delete_bfd): Now static.
+ * libbfd-in.h (_bfd_delete_bfd): Don't declare.
+ * libbfd.h: Rebuild.
+
+2012-08-02 Sean Keys <[email protected]>
+
+ * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Modified
+ conditional statment to allow suppression of mismatched bank
+ warning.
+
+2012-08-01 Alan Modra <[email protected]>
+
+ * dwarf2.c (struct dwarf2_debug): Add close_on_cleanup.
+ (_bfd_dwarf2_slurp_debug_info): Set close_on_cleanup if we open
+ gnu_debuglink bfd.
+ (_bfd_dwarf2_cleanup_debug_info): Act on close_on_cleanup.
+
+2012-07-30 Nick Clifton <[email protected]>
+
+ * po/bfd.pot: Updated template.
+ * po/es.po: Updated Spanish translation.
+ * po/fi.po: Updated Finnish translation.
+ * po/fr.po: Updated French translation.
+ * po/ru.po: Updated Russian translation.
+ * po/uk.po: Updated Ukranian translation.
+
+2012-07-27 Mike Frysinger <[email protected]>
+
+ * configure.in (AC_INIT): Call with the args bfd and 2.22.52.
+ (AM_INIT_AUTOMAKE): Remove args.
+ * configure: Regenerate.
+
+2012-07-27 Andreas Krebbel <[email protected]>
+
+ * cpu-s390.c (bfd_s390_64_arch, bfd_s390_arch): Pick the default
+ arch depending on the target size.
+
+2012-07-27 Tristan Gingold <[email protected]>
+
+ * configure.in: Bump version to 2.23.51
+ * configure: Regenerate.
+
+2012-07-26 Teresa Johnson <[email protected]>
+
+ * bfd/dwarf2.c (find_line): Initialize discriminator_ptr
+ if it is non-NULL.
+
+2012-07-26 Meador Inge <[email protected]>
+ Nick Clifton <[email protected]>
+
+ PR ld/14397
+ * elf32-arm.c (elf32_arm_finish_dynamic_sections): Report an error
+ if a required section is missing from the linker script.
+
+2012-07-24 Jan Waclawek <[email protected]>
+ PR 13899
+ * elf32-avr.c (elf32_avr_relax_delete_bytes): Call
+ _bfd_elf_link_read_relocs with keep_memory as TRUE.
+
+2012-07-24 Teresa Johnson <[email protected]>
+
+ * bfd.c (bfd_find_nearest_line_discriminator): New macro.
+ * coff-rs6000.c: Init _bfd_find_nearest_line_discriminator.
+ * coff64-rs6000.c: Likewise.
+ * dwarf2.c (struct line_info): Add discriminator field.
+ (add_line_info): Fill in new discriminator field.
+ (decode_line_info): Record discriminator information instead
+ of ignoring it.
+ (lookup_address_in_line_info_table): Return discriminator field if
+ requested.
+ (comp_unit_find_nearest_line): Add discriminator argument.
+ (find_line): Likewise.
+ (_bfd_dwarf2_find_nearest_line): Likewise.
+ (_bfd_dwarf2_find_line): Likewise.
+ * elf-bfd.h (_bfd_elf_find_nearest_line_discriminator): New.
+ (_bfd_elf_find_line_discriminator): Likewise.
+ (_bfd_generic_find_nearest_line_discriminator): Likewise. Defined.
+ * elf.c (_bfd_elf_find_nearest_line): Change to a wrapper
+ that invokes _bfd_elf_find_nearest_line_discriminator with correct
+ arguments.
+ (_bfd_elf_find_nearest_line_discriminator): New.
+ (_bfd_elf_find_line): Change to a wrapper
+ that invokes _bfd_elf_find_line_discriminator with correct
+ arguments.
+ (_bfd_elf_find_line_discriminator): New.
+ * coffgen.c (coff_find_nearest_line_with_names): Handle
+ new discriminator argument.
+ * elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
+ * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
+ * mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
+ * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Add discriminator
+ argument.
+ (_bfd_dwarf2_find_line): Likewise.
+ (_bfd_generic_find_nearest_line_discriminator): New.
+ * libbfd.c (_bfd_generic_find_nearest_line_discriminator): New.
+ * bfd-in2.h: Regenerated.
+ * libbfd.h: Likewise.
+ * targets.c (BFD_JUMP_TABLE_SYMBOLS): Initialize
+ _bfd_find_nearest_line_discriminator with
+ _bfd_generic_find_nearest_line_discriminator.
+ (bfd_target): Add _bfd_find_nearest_line_discriminator.
+
+2012-07-24 Sean Keys <[email protected]>
+
+ * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Added code
+ that enables the linker to offset addresses, when linking against
+ symbols from the XGATE processor and vice versa.
+
+2012-07-23 Nick Clifton <[email protected]>
+
+ * cisco-core.c (cisco_core_file_failing_command): Make static.
+ (cisco_core_file_failing_signal): Make static.
+
+2012-07-18 H.J. Lu <[email protected]>
+
+ * bfd-in2.h: Regenerated.
+
+2012-07-18 Nicolàs Alejandro Di Risio <[email protected]>
+
+ PR binutils/14335
+ * section.c: Fix a typo in comments.
+
+2012-07-13 Andreas Krebbel <[email protected]>
+
+ * elf64-s390.c: Include elf-s390-common.c.
+ (R_390_IRELATIVE): New reloc.
+ (elf_s390_reloc_type_lookup): Support R_390_IRELATIVE.
+ (RELA_ENTRY_SIZE): New macro.
+ (elf_s390_link_hash_entry): New fields ifunc_resolver_address and
+ *ifunc_resolver_section.
+ (struct plt_entry): New struct.
+ (struct elf_s390_obj_tdata): New field local_plt.
+ (elf_s390_local_plt): New macro.
+ (struct elf_s390_link_hash_table): New field irelifunc.
+ (ELF64): New macro.
+ (link_hash_newfunc): Initialize new fields.
+ (elf_s390_check_relocs): Handle IFUNC symbols.
+ (elf_s390_adjust_dynamic_symbol): Don't do anything for IFUNC
+ symbols.
+ (allocate_dynrelocs): Call s390_elf_allocate_ifunc_dyn_relocs for
+ IFUNC symbols.
+ (elf_s390_size_dynamic_sections): Handle IFUNC symbols.
+ (elf_s390_relocate_section): Likewise.
+ (elf_s390_finish_dynamic_symbol): Likewise.
+ (elf_s390_finish_dynamic_sections): Handle local IFUNC symbols.
+ (elf_s390_finish_ifunc_symbol): New function.
+ (elf_s390_gc_sweep_hook): Handle local plt entries.
+ (elf_backend_add_symbol_hook): Define.
+ * elf32-s390.c: See elf64-s390.c changes.
+ * elf-s390-common.c: New file.
+ * bfd-in2.h (BFD_RELOC_390_IRELATIVE): New enum field.
+ * libbfd.h (BFD_RELOC_390_IRELATIVE): New entry for
+ BFD_RELOC_390_IRELATIVE.
+ * reloc.c (BFD_RELOC_390_IRELATIVE): Document new relocation.
+
+2012-07-13 Nick Clifton <[email protected]>
+
+ * aix386-core.c: Remove use of PTR and PARAMS macros.
+ * archive.c: Likewise.
+ * cache.c: Likewise.
+ * cisco-core.c: Likewise.
+ * coff-alpha.c: Likewise.
+ * coff-apollo.c: Likewise.
+ * coff-aux.c: Likewise.
+ * coff-h8300.c: Likewise.
+ * coff-h8500.c: Likewise.
+ * coff-i386.c: Likewise.
+ * coff-i960.c: Likewise.
+ * coff-ia64.c: Likewise.
+ * coff-m68k.c: Likewise.
+ * coff-m88k.c: Likewise.
+ * coff-mcore.c: Likewise.
+ * coff-mips.c: Likewise.
+ * coff-or32.c: Likewise.
+ * coff-ppc.c: Likewise.
+ * coff-rs6000.c: Likewise.
+ * coff-sh.c: Likewise.
+ * coff-sparc.c: Likewise.
+ * coff-stgo32.c: Likewise.
+ * coff-tic30.c: Likewise.
+ * coff-tic4x.c: Likewise.
+ * coff-tic54x.c: Likewise.
+ * coff-tic80.c: Likewise.
+ * coff-w65.c: Likewise.
+ * cofflink.c: Likewise.
+ * cpu-arc.c: Likewise.
+ * cpu-cris.c: Likewise.
+ * cpu-h8500.c: Likewise.
+ * cpu-i960.c: Likewise.
+ * cpu-msp430.c: Likewise.
+ * cpu-ns32k.c: Likewise.
+ * cpu-powerpc.c: Likewise.
+ * cpu-rs6000.c: Likewise.
+ * cpu-tic4x.c: Likewise.
+ * cpu-w65.c: Likewise.
+ * ecoff.c: Likewise.
+ * ecofflink.c: Likewise.
+ * elf-m10200.c: Likewise.
+ * elf32-bfin.c: Likewise.
+ * elf32-cris.c: Likewise.
+ * elf32-crx.c: Likewise.
+ * elf32-fr30.c: Likewise.
+ * elf32-frv.c: Likewise.
+ * elf32-h8300.c: Likewise.
+ * elf32-i960.c: Likewise.
+ * elf32-m32c.c: Likewise.
+ * elf32-m68hc11.c: Likewise.
+ * elf32-m68hc12.c: Likewise.
+ * elf32-m68hc1x.c: Likewise.
+ * elf32-m68k.c: Likewise.
+ * elf32-mcore.c: Likewise.
+ * elf32-rl78.c: Likewise.
+ * elf32-rx.c: Likewise.
+ * elf32-s390.c: Likewise.
+ * elf32-vax.c: Likewise.
+ * elf64-alpha.c: Likewise.
+ * elf64-mmix.c: Likewise.
+ * elf64-s390.c: Likewise.
+ * elf64-sparc.c: Likewise.
+ * elfnn-ia64.c: Likewise.
+ * elfxx-mips.c: Likewise.
+ * elfxx-sparc.c: Likewise.
+ * hash.c: Likewise.
+ * hp300hpux.c: Likewise.
+ * hppabsd-core.c: Likewise.
+ * hpux-core.c: Likewise.
+ * i386dynix.c: Likewise.
+ * i386linux.c: Likewise.
+ * i386lynx.c: Likewise.
+ * i386mach3.c: Likewise.
+ * i386msdos.c: Likewise.
+ * i386os9k.c: Likewise.
+ * irix-core.c: Likewise.
+ * lynx-core.c: Likewise.
+ * m68klinux.c: Likewise.
+ * mach-o.h: Likewise.
+ * mipsbsd.c: Likewise.
+ * netbsd-core.c: Likewise.
+ * nlm32-i386.c: Likewise.
+ * osf-core.c: Likewise.
+ * pc532-mach.c: Likewise.
+ * pef.c: Likewise.
+ * ppcboot.c: Likewise.
+ * ptrace-core.c: Likewise.
+ * reloc16.c: Likewise.
+ * sco5-core.c: Likewise.
+ * som.h: Likewise.
+ * sparclinux.c: Likewise.
+ * sparclynx.c: Likewise.
+ * ticoff.h: Likewise.
+ * trad-core.c: Likewise.
+ * vms-lib.c: Likewise.
+ * xsym.h: Likewise.
+
+2012-07-09 Alan Modra <[email protected]>
+
+ PR ld/14323
+ * elflink.c (elf_sort_symbol): Sort by size too.
+ (elf_link_add_object_symbols <weakdefs>): Simplify binary search.
+ Do not depend on ordering of symbol aliases. Match largest size.
+
+2012-07-03 H.J. Lu <[email protected]>
+
+ * elf.c (assign_section_numbers): Check if number of sections
+ >= SHN_LORESERVE.
+ * elfcode.h (elf_object_p): Likewise.
+
+2012-07-03 Nick Clifton <[email protected]>
+
+ * archive.c (bsd_write_armap): Catch attempts to create an archive
+ with indicies bigger than 4Gb.
+ (coff_write_armap): Likewise.
+
+2012-07-03 H.J. Lu <[email protected]>
+
+ PR binutils/14319
+ * elf.c (_bfd_elf_make_section_from_shdr): Don't compress empty
+ debug section.
+
+2012-07-03 H.J. Lu <[email protected]>
+
+ PR ld/3351
+ * elflink.c (_bfd_elf_update_dynamic_flags): New.
+ (_bfd_elf_merge_symbol): Update both real and indirect symbol
+ dynamic flags.
+ (_bfd_elf_add_default_symbol): Make the real symbol dynamic if
+ the indirect symbol is defined in a shared library.
+ (elf_link_add_object_symbols): Likewise. If the indirect
+ symbol has been forced local, don't make the real symbol
+ dynamic.
+ (elf_link_check_versioned_symbol): Check indirect symbol.
+ (elf_link_output_extsym): Use real symbol definition when
+ reporting indirect symbol error. Check version info for
+ dynamic versioned symbol.
+
+2012-07-03 Alan Modra <[email protected]>
+
+ PR ld/14207
+ * elf.c (assign_file_positions_for_load_sections): Remove assertions
+ that only PT_LOAD headers include file header and section headers.
+ (assign_file_positions_for_non_load_sections): Similarly don't
+ assert PT_GNU_RELRO header does not include file and section headers.
+ Compare first section vma rather than PT_LOAD p_vaddr against
+ relro_start when looking for PT_LOAD covering PT_GNU_RELRO. Replace
+ abort with assertion.
+
+2012-07-02 Alan Modra <[email protected]>
+
+ * elf32-m32c.c (m32c_elf_check_relocs): Use bfd_make_section
+ "anyway" variant when creating .plt.
+ (m32c_elf_relax_plt_section): Remove redundant test and unused param.
+ (m32c_elf_relax_section): Test SEC_LINKER_CREATED before calling
+ m32c_elf_relax_plt_section.
+ * elfxx-mips.c (mips_elf_create_got_section): Use make anyway variant
+ when creating .got and .got.plt.
+ (_bfd_mips_elf_final_link): Likewise for .rtproc, and use
+ bfd_get_linker_section.
+ * sunos.c: Similarly throughout.
+
+2012-07-01 Andreas Schwab <[email protected]>
+
+ * elf.c (_bfd_elf_make_section_from_shdr): Fix typo in error
+ message.
+
+2012-06-29 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Return FALSE
+ on unresolvable relocation.
+
+2012-06-29 H.J. Lu <[email protected]>
+
+ * archive.c (_bfd_compute_and_write_armap): Simplify global
+ symbol handling.
+
+2012-06-29 Nick Clifton <[email protected]>
+
+ PR ld/14189
+ * elf32-arm.c (elf32_arm_check_relocs): Do not increment refcount
+ for locally bound symbols.
+
+2012-06-29 Alan Modra <[email protected]>
+
+ * section.c (bfd_get_linker_section): New function.
+ * elf32-arm.c: When retrieving SEC_LINKER_CREATED sections, use
+ the above throughout rather than bfd_get_section_by_name. Use
+ bfd_make_section_anyway rather than bfd_make_section when creating
+ them.
+ * elf32-bfin.c: Likewise.
+ * elf32-cr16.c: Likewise.
+ * elf32-cris.c: Likewise.
+ * elf32-frv.c: Likewise.
+ * elf32-hppa.c: Likewise.
+ * elf32-i370.c: Likewise.
+ * elf32-i386.c: Likewise.
+ * elf32-lm32.c: Likewise.
+ * elf32-m32c.c: Likewise.
+ * elf32-m32r.c: Likewise.
+ * elf32-m68k.c: Likewise.
+ * elf32-microblaze.c: Likewise.
+ * elf32-ppc.c: Likewise.
+ * elf32-rl78.c: Likewise.
+ * elf32-s390.c: Likewise.
+ * elf32-score.c: Likewise.
+ * elf32-score7.c: Likewise.
+ * elf32-sh.c: Likewise.
+ * elf32-tic6x.c: Likewise.
+ * elf32-tilepro.c: Likewise.
+ * elf32-vax.c: Likewise.
+ * elf32-xstormy16.c: Likewise.
+ * elf32-xtensa.c: Likewise.
+ * elf64-alpha.c: Likewise.
+ * elf64-hppa.c: Likewise.
+ * elf64-ia64-vms.c: Likewise.
+ * elf64-ppc.c: Likewise.
+ * elf64-s390.c: Likewise.
+ * elf64-sh64.c: Likewise.
+ * elf64-sparc.c: Likewise.
+ * elf64-x86-64.c: Likewise.
+ * elfnn-ia64.c: Likewise.
+ * elfxx-mips.c: Likewise.
+ * elfxx-sparc.c: Likewise.
+ * elfxx-tilegx.c: Likewise.
+ * elflink.c: Likewise.
+ * elf-vxworks.c: Likewise.
+ * elf-m10300.c: Likewise. Also make use of htab plt, got and
+ gotplt shortcuts.
+ * bfd-in2.h: Regenerate.
+ * elf32-lm32.c (lm32_elf_check_relocs): Use the correct bfd when
+ calling create_rofixup_section.
+ * elflink.c (bfd_elf_final_link): Simplify test for .dynstr.
+
+2012-06-29 Alan Modra <[email protected]>
+
+ * elf32-sh.c (sh_elf_create_dynamic_sections): Don't create .rela
+ section for bss type sections, except for .rela.bss.
+ * elf-m10300.c (_bfd_mn10300_elf_create_dynamic_sections): Likewise.
+ * elf32-cr16.c (_bfd_cr16_elf_create_dynamic_sections): Likewise.
+ * elf32-lm32.c (lm32_elf_create_dynamic_sections): Likewise.
+ * elf32-m32r.c (m32r_elf_create_dynamic_sections): Likewise.
+ * elf64-sh64.c (sh64_elf64_create_dynamic_sections): Likewise.
+
+2012-06-28 Roland McGrath <[email protected]>
+
+ * elf32-arm.c (elf32_arm_populate_plt_entry): Use int32_t for
+ displacement calculation in nacl_p case.
+
+2012-06-28 Nick Clifton <[email protected]>
+
+ * po/uk.po: New Ukranian translation.
+ * configure.in (ALL_LINGUAS): Add uk.
+ * configure: Regenerate.
+
+2012-06-26 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_next_toc_section): Don't error if input
+ file has multiple .got/.toc sections and all don't fit in
+ current toc group.
+
+2012-06-22 Roland McGrath <[email protected]>
+
+ * elf.c (assign_file_positions_for_non_load_sections): Define
+ __ehdr_start symbol if it's referenced and there's a PT_LOAD
+ segment that covers both the file and program headers.
+
+2012-06-22 Andreas Schwab <[email protected]>
+
+ * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Don't make
+ _GLOBAL_OFFSET_TABLE_ and _DYNAMIC absolute.
+
+2012-06-22 Alan Modra <[email protected]>
+
+ * elf64-ppc.c (ppc64_elf_func_desc_adjust): Don't emit out-of-line
+ save/restore functions when relocatable. Make "funcs" static.
+
+2012-06-18 Hans-Peter Nilsson <[email protected]>
+
+ * elf32-cris.c (cris_elf_plt_sym_val): Rewrite to work in presence
+ of merged .got and .got.plt entries.
+
+2012-06-18 John Szakmeister <[email protected]>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate): Correct return value.
+
+2012-06-17 Hans-Peter Nilsson <[email protected]>
+
+ * elf32-cris.c (cris_elf_relocate_section): <R_CRIS_32_IE>
+ <R_CRIS_32_GOT_TPREL, R_CRIS_16_GOT_TPREL>: Handle references to
+ thread common symbols.
+
+2012-06-13 Nick Clifton <[email protected]>
+
+ * elf32-arm.c (bfd_arm_get_mach_from_attributes): New function.
+ (elf32_arm_object_p): If the machine number could not be deduced
+ from the notes, call bfd_arm_get_mach_from_attributes to get the
+ number from the attributes.
+
+2012-06-12 H.J. Lu <[email protected]>
+
+ PR bfd/14207
+ * elf.c (assign_file_positions_for_non_load_sections): Abort if
+ PT_GNU_RELRO segment doesn't fit in PT_LOAD segment.
+
+2012-06-12 Alan Modra <[email protected]>
+
+ PR ld/14207
+ * elf.c (_bfd_elf_map_sections_to_segments): Disregard bss type
+ sections at end of PT_LOAD segment when searching for segment
+ that contains end of relro extent.
+
+2012-06-11 H.J. Lu <[email protected]>
+
+ * elf.c (assign_file_positions_for_non_load_sections): Reindent.
+
+2012-06-11 H.J. Lu <[email protected]>
+
+ * elf.c (_bfd_elf_map_sections_to_segments): Reindent.
+
+2012-06-06 Alan Modra <[email protected]>
+
+ * elflink.c (elf_link_input_bfd): Provide a file symbol for
+ each input file with local syms, if the input lacks such.
+ (bfd_elf_final_link): Add a file symbol to mark end of locals
+ for which we can associate with input files.
+ (struct elf_final_link_info): Add filesym_count field.
+ (struct elf_outext_info): Add need_second_pass and second_pass.
+ (elf_link_output_extsym): Detect symbols defined in the output
+ file, emit them on second pass over locals.
+
+2012-06-04 Jan Kratochvil <[email protected]>
+
+ * bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument
+ of target_read_memory as bfd_size_type.
+ * bfd-in2.h: Regenerate.
+ * elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN
+ argument of target_read_memory as bfd_size_type.
+ (_bfd_elf32_bfd_from_remote_memory): Likewise.
+ (_bfd_elf64_bfd_from_remote_memory): Likewise.
+ * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
+ * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise.
+
+2012-06-03 Alan Modra <[email protected]>
+
+ PR binutils/13897
+ * elf.c (elf_find_function): Cache last function sym info.
+ (_bfd_elf_maybe_function_sym): Return function size, pass in
+ section of interest.
+ * elf-bfd.h (struct elf_backend_data <maybe_function_sym>): Likewise.
+ (_bfd_elf_maybe_function_sym): Likewise.
+ * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
+ (opd_entry_value): Add in_code_sec param. Revert caching code.
+ Return -1 if in_code_sec and function found in wrong section.
+ Update all calls.
+
+2012-06-01 Siddhesh Poyarekar <[email protected]>
+
+ * bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument
+ of target_read_memory as size_t.
+ * bfd-in2.h: Regenerate.
+ * elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN
+ argument of target_read_memory as size_t.
+ (_bfd_elf32_bfd_from_remote_memory): Likewise.
+ (_bfd_elf64_bfd_from_remote_memory): Likewise.
+ * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
+ * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise.
+
+2012-06-01 Alan Modra <[email protected]>
+
+ PR binutils/13897
+ * elf64-ppc.c (opd_entry_value): Rewrite cache code.
+
+2012-05-29 Tom Tromey <[email protected]>
+
+ * opncls.c (bfd_fopen): Always close fd on failure.
+ (bfd_fdopenr): Likewise.
+
+2012-05-27 Alan Modra <[email protected]>
+
+ PR ld/14170
+ * elflink.c (_bfd_elf_merge_symbol): When a symbol defined in
+ a dynamic library finds a new instance with non-default
+ visibility in a regular object, correctly handle symbols
+ already on the undefs list and undo dynamic symbol state when
+ the new symbol is hidden or internal.
+
+2012-05-25 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_create_dynamic_sections): Don't use
+ dynamic_sec_flags to create PLT .eh_frame section.
+ * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
+
+2012-05-25 Alan Modra <[email protected]>
+
+ PR ld/13909
+ * elf-eh-frame.c (_bfd_elf_eh_frame_present): New function.
+ (_bfd_elf_maybe_strip_eh_frame_hdr): Use it here.
+ * elf-bfd.h (_bfd_elf_eh_frame_present): Declare.
+ * elflink.c (bfd_elf_size_dynamic_sections): Let the backend
+ size dynamic sections before stripping eh_frame_hdr.
+ (bfd_elf_gc_sections): Handle multiple .eh_frame sections.
+ * elf32-ppc.c (ppc_elf_size_dynamic_sections): Drop glink_eh_frame
+ if no other .eh_frame sections exist.
+ * elf64-ppc.c (ppc64_elf_size_stubs): Likewise.
+ * elf32-i386.c (elf_i386_create_dynamic_sections): Don't size
+ or alloc plt_eh_frame here..
+ (elf_i386_size_dynamic_sections): ..do it here instead. Don't
+ specially keep sgotplt, iplt, tgotplt, sdynbss for symbols.
+ (elf_i386_finish_dynamic_sections): Check plt_eh_frame->contents
+ before writing plt offset.
+ * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Don't size
+ or alloc plt_eh_frame here..
+ (elf_x86_64_size_dynamic_sections): ..do it here instead.
+ (elf_x86_64_finish_dynamic_sections): Check plt_eh_frame->contents
+ before writing plt offset.
+
+2012-05-24 Alan Modra <[email protected]>
+
+ PR ld/14158
+ * elf64-ppc.c (ppc64_elf_size_stubs): Round up glink_eh_frame
+ size to output section alignment.
+ (ppc64_elf_build_stubs): Likewise, and extend last FDE to cover.
+
+2012-05-23 Alan Modra <[email protected]>
+
+ * elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Handle
+ BFDs with multiple .eh_frame sections.
+
+2012-05-23 Alan Modra <[email protected]>
+
+ PR ld/13909
+ * elflink.c (bfd_elf_discard_info): Don't ignore dynamic BFDs.
+
+2012-05-22 H.J. Lu <[email protected]>
+
+ PR ld/13909
+ * elf32-i386.c (elf_i386_create_dynamic_sections): Revert the
+ last change.
+ * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
+
+2012-05-22 Alan Modra <[email protected]>
+
+ * elflink.c (bfd_elf_discard_info): Look for next .eh_frame if
+ first one is zero size or discarded.
+ * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set most of
+ glink_eh_frame contents here..
+ (ppc_elf_finish_dynamic_sections): ..rather than here. Just set
+ offset to .glink.
+
+2012-05-22 H.J. Lu <[email protected]>
+
+ PR ld/13909
+ * elf32-i386.c (elf_i386_create_dynamic_sections): Create PLT
+ eh_frame section if there is an input .eh_frame section.
+ * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
+
+2012-05-22 H.J. Lu <[email protected]>
+
+ PR ld/14105
+ * elf32-i386.c (elf_i386_create_dynamic_sections): Always
+ create PLT eh_frame section with SEC_LINKER_CREATED.
+ * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
+
+2012-05-22 Alan Modra <[email protected]>
+
+ * elflink.c (bfd_elf_discard_info): Handle multiple .eh_frame
+ sections attached to a BFD.
+ * section.c (bfd_get_section_by_name): Rewrite description.
+ (bfd_get_next_section_by_name): New function.
+ * bfd-in2.h: Regenerate.
+
+2012-05-21 Andreas Schwab <[email protected]>
+
+ * elf32-m68k.c (elf_m68k_grok_prstatus): New function.
+ (elf_m68k_grok_psinfo): New function.
+ (elf_backend_grok_prstatus): Define.
+ (elf_backend_grok_psinfo): Define.
+
+2012-05-19 Maciej W. Rozycki <[email protected]>
+
+ * elf64-mips.c (elf_backend_got_header_size): Correct definition.
+ * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Use the ELF
+ backend's GOT header size instead of hardcoding it.
+
+2012-05-19 Maciej W. Rozycki <[email protected]>
+
+ * elf32-vax.c (elf_vax_relocate_section)
+ <R_VAX_8, R_VAX_16, R_VAX_32>: Don't check if info->shared again.
+
+2012-05-19 Maciej W. Rozycki <[email protected]>
+
+ * elf32-vax.c (elf_vax_relocate_section)
+ <R_VAX_8, R_VAX_16, R_VAX_32>: Use section flags rather than
+ its name as the check for text sections.
+
+2012-05-19 Maciej W. Rozycki <[email protected]>
+
+ * elf64-mips.c (mips_elf64_be_swap_reloc_out): Also make sure
+ the third reloc offset is the same as the first.
+
+2012-05-19 Alan Modra <[email protected]>
+
+ * elf32-ppc.h (has_vle_insns, is_ppc_vle): Delete.
+ (has_tls_reloc, has_tls_get_addr_call): Move back to..
+ * elf32-ppc.c: ..here.
+ (ppc_elf_section_flags, elf_backend_section_flags): Delete.
+ (ppc_elf_modify_segment_map): Use ELF sh_flags to detect VLE sections.
+
+2012-05-18 H.J. Lu <[email protected]>
+
+ * elf32-i386.c (elf_i386_finish_dynamic_symbol): Don't make
+ _DYNAMIC nor _GLOBAL_OFFSET_TABLE_ absolute.
+ * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
+
+2012-05-18 Roland McGrath <[email protected]>
+
+ * archive.c (_bfd_generic_read_ar_hdr_mag): Fix last change so as
+ not to clobber the ar_fmag field stored in ARED->arch_header.
+
+2012-05-18 Pedro Alves <[email protected]>
+
+ * mach-o.h: Don't include sysdep.h.
+
+2012-05-18 Nick Clifton <[email protected]>
+
+ PR 14072
+ * bfd-in.h: Check for PACKAGE or PACKAGE_VERSION before
+ complaining about config.h not having been included.
+ * bfd-in2.h: Regenerate.
+
+2012-05-18 Andreas Schwab <[email protected]>
+
+ * aclocal.m4: Regenerate.
+ * Makefile.in: Regenerate.
+
+2012-05-17 Daniel Richard G. <[email protected]>
+ Nick Clifton <[email protected]>
+
+ PR 14072
+ * configure.in: Add check that sysdep.h has been included before
+ any system header files.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * aclocal.m4: Regenerate.
+ * bfd-in.h: Generate an error if included before config.h.
+ * sysdep.h: Likewise.
+ * bfd-in2.h: Regenerate.
+ * compress.c: Remove #include "config.h".
+ * plugin.c: Likewise.
+ * elf32-m68hc1x.c: Include sysdep.h before alloca-conf.h.
+ * elf64-hppa.c: Likewise.
+ * som.c: Likewise.
+ * xsymc.c: Likewise.
+
+2012-05-17 Maciej W. Rozycki <[email protected]>
+ Alan Modra <[email protected]>
+
+ * elf.c (ignore_section_sym): Correct comment. Don't return
+ true for absolute section.
+ (elf_map_symbols): Move stray comment. Adjust for above change.
+ Don't discard global section symbols.
+
+2012-05-17 Alan Modra <[email protected]>
+
+ * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make _DYNAMIC,
+ _GLOBAL_OFFSET_TABLE_ or _PROCEDURE_LINKAGE_TABLE_ absolute.
+ * elf64-ppc.c (ppc64_elf_finish_dynamic_symbol): Don't make _DYNAMIC
+ absolute.
+
+2012-05-17 Alan Modra <[email protected]>
+
+ * elf32-ppc.c (has_tls_reloc, has_tls_get_addr_call, has_vle_insns,
+ is_ppc_vle): Move to..
+ * elf32-ppc.h: ..here, making is_ppc_vle a macro.
+
+2012-05-16 Sergio Durigan Junior <[email protected]>
+
+ * bfd-in.h (bfd_get_section_name, bfd_get_section_vma,
+ bfd_get_section_lma, bfd_get_section_alignment,
+ bfd_get_section_flags, bfd_get_section_userdata): Rewrite macros
+ in order to use the `bfd' argument.
+ * bfd-in2.h: Regenerate.
+ * elf-vxworks.c (elf_vxworks_finish_dynamic_entry): Pass proper `bfd'
+ as the first argument for `bfd_get_section_alignment'.
+ * elf32-arm.c (create_ifunc_sections): Likewise, for
+ `bfd_set_section_alignment'.
+ * elf32-m32r.c (m32r_elf_relocate_section): Likewise, for
+ `bfd_get_section_name'.
+ * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
+ * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
+ (ppc_elf_relocate_section): Likewise.
+ * elf64-mmix.c (mmix_final_link_relocate): Likewise, for
+ `bfd_get_section_vma'.
+ * elf64-ppc.c (create_linkage_sections): Likewise, for
+ `bfd_set_section_alignment'.
+
+2012-05-16 Georg-Johann Lay <[email protected]>
+
+ PR target/13503
+ * reloc.c: Rename BFD_RELOC_AVR_8_HHI to BFD_RELOC_AVR_8_HLO.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+ * elf32-avr.c (elf_avr_howto_table): Rename R_AVR_8_HHI8 to
+ R_AVR_8_HLO8.
+ (avr_reloc_map): Likewise.
+
+2012-05-16 Daniel Richard G. <[email protected]>
+
+ PR binutils/13558
+ * bfd/aout-cris.c: Include sysdep.h before bfd.h.
+ * bfd/aout-ns32k.c: Likewise.
+ * bfd/aout-sparcle.c: Likewise.
+ * bfd/aout0.c: Likewise.
+ * bfd/bfd-in2.h: Likewise.
+ * bfd/coff-stgo32.c: Likewise.
+ * bfd/cpu-lm32.c: Likewise.
+ * bfd/cpu-microblaze.c: Likewise.
+ * bfd/cpu-score.c: Likewise.
+ * bfd/cpu-tilegx.c: Likewise.
+ * bfd/cpu-tilepro.c: Likewise.
+ * bfd/elf32-lm32.c: Likewise.
+ * bfd/elf32-microblaze.c: Likewise.
+ * bfd/elf32-score7.c: Likewise.
+ * bfd/elf32-tilepro.c: Likewise.
+ * bfd/elfxx-tilegx.c: Likewise.
+ * bfd/mach-o.h: Likewise.
+ * bfd/nlm32-ppc.c: Likewise.
+ * bfd/ns32knetbsd.c: Likewise.
+ * bfd/pef.h: Likewise.
+ * bfd/plugin.c: Likewise.
+ * bfd/stab-syms.c: Likewise.
+ * bfd/sunos.c: Likewise.
+ * bfd/syms.c: Likewise.
+ * bfd/xsym.h: Likewise.
+
+2012-05-16 Alan Modra <[email protected]>
+
+ * elflink.c: Rename flaginfo to flinfo throughout, except..
+ (bfd_elf_lookup_section_flags): ..here, rename finfo to flaginfo.
+ Formatting, style. Simplify flag match.
+
+2012-05-16 Alan Modra <[email protected]>
+
+ * dwarf2.c: Formatting.
+ (arange_add): Pass in unit rather than bfd. Update callers.
+ Ignore empty ranges. Don't ask for cleared memory.
+ (parse_comp_unit): Only set unit->base_address if processing
+ DW_TAG_compile_unit.
+ (find_debug_info): Optimise section lookup.
+ (place_sections): Use bfd_alloc for stash->adjusted_sections.
+ (find_line): Match previously parsed comp unit addresses as we
+ do for newly parsed comp units.
+
+2012-05-16 Alan Modra <[email protected]>
+
+ * archive.c (_bfd_generic_read_ar_hdr_mag): Ensure sscanf
+ stops at end of ar_size field.
+
+2012-05-16 Alan Modra <[email protected]>
+
+ PR ld/13962
+ PR ld/7023
+ * elf.c (bfd_section_from_shdr): Fail when .dynsym sh_info is
+ out of range. As a special case, fix sh_info for zero sh_size.
+ Do the same for .symtab.
+
+2012-05-15 James Murray <[email protected]>
+ Stephane Carrez <[email protected]>
+
+ * archures.c: Add bfd_arch_m9s12x and bfd_arch_m9s12xg.
+ * config.bfd: Likewise.
+ * cpu-m9s12x.c: New.
+ * cpu-m9s12xg.c: New.
+ * elf32-m68hc12.c: Add S12X and XGATE co-processor support.
+ Add option to offset S12 addresses into XGATE memory space.
+ Fix carry bug in IMM16 (IMM8 low/high) relocate.
+ * Makefile.am (ALL_MACHINES): Add cpu-m9s12x and cpu-m9s12xg.
+ (ALL_MACHINES_CFILES): Likewise.
+ * reloc.c: Add S12X relocs.
+ * Makefile.in: Regenerate.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2012-05-14 James Lemke <[email protected]>
+ Catherine Moore <[email protected]>
+
+ * bfd.c (bfd_lookup_section_flags): Add section parm.
+ * ecoff.c (bfd_debug_section): Remove flag_info initializer.
+ * elf-bfd.h (bfd_elf_section_data): Move in section_flag_info.
+ (bfd_elf_lookup_section_flags): Add section parm.
+ * elf32-ppc.c (is_ppc_vle): New function.
+ (ppc_elf_modify_segment_map): New function.
+ (elf_backend_modify_segment_map): Define.
+ (has_vle_insns): New define.
+ * elf32-ppc.h (ppc_elf_modify_segment_map): Declare.
+ * elflink.c (bfd_elf_lookup_section_flags): Add return value & parm.
+ Move in logic to omit / include a section.
+ * libbfd-in.h (bfd_link_info): Add section parm.
+ (bfd_generic_lookup_section_flags): Likewise.
+ * reloc.c (bfd_generic_lookup_section_flags): Likewise.
+ * section.c (bfd_section): Move out section_flag_info.
+ (BFD_FAKE_SECTION): Remove flag_info initializer.
+ * targets.c (_bfd_lookup_section_flags): Add section parm.
+
+2012-05-14 Catherine Moore <[email protected]>
+
+ * archures.c (bfd_mach_ppc_vle): New.
+ * bfd-in2.h: Regenerated.
+ * cpu-powerpc.c (bfd_powerpc_archs): New entry for vle.
+ * elf32-ppc.c (split16_format_type): New enumeration.
+ (ppc_elf_vle_split16): New function.
+ (HOWTO): Add entries for R_PPC_VLE relocations.
+ (ppc_elf_reloc_type_lookup): Handle PPC_VLE relocations.
+ (ppc_elf_section_flags): New function.
+ (ppc_elf_lookup_section_flags): New function.
+ (ppc_elf_section_processing): New function.
+ (ppc_elf_check_relocs): Handle PPC_VLE relocations.
+ (ppc_elf_relocation_section): Likewise.
+ (elf_backend_lookup_section_flags_hook): Define.
+ (elf_backend_section_flags): Define.
+ (elf_backend_section_processing): Define.
+ * elf32-ppc.h (ppc_elf_section_processing): Declare.
+ * libbfd.h: Regenerated.
+ * reloc.c (BFD_RELOC_PPC_VLE_REL8, BFD_RELOC_PPC_VLE_REL15,
+ BFD_RELOC_PPC_VLE_REL24, BFD_RELOC_PPC_VLE_LO16A,
+ BFD_RELOC_PPC_VLE_LO16D, BFD_RELOC_PPC_VLE_HI16A,
+ BFD_RELOC_PPC_VLE_HI16D, BFD_RELOC_PPC_VLE_HA16A,
+ BFD_RELOC_PPC_VLE_HA16D, BFD_RELOC_PPC_VLE_SDA21,
+ BFD_RELOC_PPC_VLE_SDA21_LO, BFD_RELOC_PPC_VLE_SDAREL_LO16A,
+ BFD_RELOC_PPC_VLE_SDAREL_LO16D, BFD_RELOC_PPC_VLE_SDAREL_HI16A,
+ BFD_RELOC_PPC_VLE_SDAREL_HI16D, BFD_RELOC_PPC_VLE_SDAREL_HA16A,
+ BFD_RELOC_PPC_VLE_SDAREL_HA16D): New bfd relocations.
+
+2012-05-11 Georg-Johann Lay <[email protected]>
+
+ PR target/13503
+ * reloc.c: Add new ENUM for BFD_RELOC_AVR_8_LO,
+ BFD_RELOC_AVR_8_HI, BFD_RELOC_AVR_8_HHI.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+ * elf32-avr.c (elf_avr_howto_table): Add entries for
+ R_AVR_8_LO8, R_AVR_8_HI8, R_AVR_8_HHI8.
+ (avr_reloc_map): Add RELOC mappings for R_AVR_8_LO8, R_AVR_8_HI8,
+ R_AVR_8_HHI8.
+
+2012-05-10 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Use int in x32
+ addend overflow check.
+
+2012-05-10 DJ Delorie <[email protected]>
+
+ * elf32-rx.c (rx_elf_object_p): Ignore empty segments.
+
+2012-05-10 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Display signed
+ hex number in x32 addend overflow check.
+
+2012-05-10 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_reloc_type_class): Handle
+ R_X86_64_RELATIVE64.
+
+2012-05-09 H.J. Lu <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Check addend
+ overflow for R_X86_64_RELATIVE64.
+
+2012-05-08 Ben Cheng <[email protected]>
+
+ * elf.c: Preserve the original p_align and p_flags if they are
+ valid.
+
+2012-05-07 Alan Modra <[email protected]>
+
+ * elf64-ia64-vms.c (elf64_ia64_relocate_section): Update
+ RELOC_AGAINST_DISCARDED_SECTION invocation.
+
+2012-05-07 Hans-Peter Nilsson <[email protected]>
+
+ * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Declare and use
+ local variable i_ instead of assuming and using a variable i.
+
+2012-05-07 Maciej W. Rozycki <[email protected]>
+
+ * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Handle compound
+ relocations.
+ * elfxx-mips.c (mips_reloc_against_discarded_section): New
+ function.
+ (_bfd_mips_elf_relocate_section): Call it, in place of
+ RELOC_AGAINST_DISCARDED_SECTION.
+ * elf-m10200.c (mn10200_elf_relocate_section): Update arguments
+ to RELOC_AGAINST_DISCARDED_SECTION.
+ * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
+ * elf32-arm.c (elf32_arm_relocate_section): Likewise.
+ * elf32-avr.c (elf32_avr_relocate_section): Likewise.
+ * elf32-bfin.c (bfin_relocate_section): Likewise.
+ (bfinfdpic_relocate_section): Likewise.
+ * elf32-cr16.c (elf32_cr16_relocate_section): Likewise.
+ * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
+ * elf32-cris.c (cris_elf_relocate_section): Likewise.
+ * elf32-crx.c (elf32_crx_relocate_section): Likewise.
+ * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
+ * elf32-epiphany.c (epiphany_elf_relocate_section): Likewise.
+ * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
+ * elf32-frv.c (elf32_frv_relocate_section): Likewise.
+ * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
+ * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
+ * elf32-i370.c (i370_elf_relocate_section): Likewise.
+ * elf32-i386.c (elf_i386_relocate_section): Likewise.
+ * elf32-i860.c (elf32_i860_relocate_section): Likewise.
+ * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
+ * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
+ * elf32-lm32.c (lm32_elf_relocate_section): Likewise.
+ * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
+ * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
+ * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
+ * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
+ * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
+ * elf32-mep.c (mep_elf_relocate_section): Likewise.
+ * elf32-moxie.c (moxie_elf_relocate_section): Likewise.
+ * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
+ * elf32-mt.c (mt_elf_relocate_section): Likewise.
+ * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
+ * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
+ * elf32-rl78.c (rl78_elf_relocate_section): Likewise.
+ * elf32-rx.c (rx_elf_relocate_section): Likewise.
+ * elf32-s390.c (elf_s390_relocate_section): Likewise.
+ * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
+ * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
+ * elf32-sh.c (sh_elf_relocate_section): Likewise.
+ * elf32-spu.c (spu_elf_relocate_section): Likewise.
+ * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
+ * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
+ * elf32-v850.c (v850_elf_relocate_section): Likewise.
+ * elf32-vax.c (elf_vax_relocate_section): Likewise.
+ * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
+ * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
+ * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
+ * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
+ (elf64_alpha_relocate_section): Likewise.
+ * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
+ * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
+ * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
+ * elf64-s390.c (elf_s390_relocate_section): Likewise.
+ * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
+ * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
+ * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
+
+2012-05-05 Alan Modra <[email protected]>
+
+ PR ld/14052
+ PR ld/13621
+ * linker.c (_bfd_nearby_section): Revert 2012-02-13 change.
+
+2012-05-05 Alan Modra <[email protected]>
+
+ * aout-arm.c: Replace all uses of bfd_abs_section, bfd_com_section,
+ bfd_und_section and bfd_ind_section with their _ptr variants, or
+ use corresponding bfd_is_* macros.
+ * aout-ns32k.c: Likewise.
+ * aout-tic30.c: Likewise.
+ * coff-arm.c: Likewise.
+ * coff-tic54x.c: Likewise.
+ * cpu-ns32k.c: Likewise.
+ * elf-attrs.c: Likewise.
+ * elfcode.h: Likewise.
+ * peicode.h: Likewise.
+ * reloc.c: Likewise.
+ * riscix.c: Likewise.
+ * versados.c: Likewise.
+ * section.c: Likewise.
+ (bfd_abs_section, bfd_ind_section, bfd_com_section,
+ bfd_ind_section): Delete.
+ (std_section): New array replacing above.
+ (bfd_abs_section_ptr, bfd_ind_section_ptr, bfd_com_section_ptr,
+ bfd_ind_section_ptr, STD_SECTION): Update.
+ (BFD_FAKE_SECTION, GLOBAL_SYM_INIT): Remove unnecessary casts.
+ * bfd-in2.h: Regenerate.
+
+2012-05-03 Sean Keys <[email protected]>
+
+ * cpu-xgate.c: New file. Added XGATE support.
+ * archures.c (bfd_architecture): Add XGATE architecture.
+ (bfd_archures_list): Add reference to XGATE architecture info.
+ * elf-bfd.h (prep_headers): Handle bfd_arch_xgate.
+ * reloc.c: Add various XGATE relocation enums.
+ * targets.c (bfd_elf32_xgate_vec): Declare and add to target vector
+ list.
+ * Makefile.am: Add support for XGATE elf.
+ * configure.in: Ditto.
+ * config.bfd: Ditto.
+ * Makefile.in: Regenerate.
+ * configure: Ditto.
+ * bfd-in2.h: Ditto.
+ * libbfd.h: Ditto.
+ Added files for XGATE relocations.
+ * elf32-xgate.c: Created minimal relocation file.
+ * elf32-xgate.h: Created minimal header file for elf32-xgate.
+
+2012-05-03 Tristan Gingold <[email protected]>
+
+ * dwarf2.c (decode_line_info): Ignore
+ DW_LNE_HP_source_file_correlation.
+
+2012-05-01 Nick Clifton <[email protected]>
+
+ PR binutils/13121
+ * aoutx.h: Rename 'finfo' to 'flaginfo' to avoid conflicts with
+ AIX system headers.
+ * coff-ppc.c: Likewise.
+ * cofflink.c: Likewise.
+ * elf32-arm.c: Likewise.
+ * elf64-sparc.c: Likewise.
+ * elflink.c: Likewise.
+ * pdp11.c: Likewise.
+ * rescoff.c: Likewise.
+
+2012-04-26 Mark Wielaard <[email protected]>
+
+ * dwarf2.c (scan_unit_for_symbols): Account for DW_AT_high_pc
+ possibly being relative to DW_AT_low_pc.
+ (parse_comp_unit): Likewise.
+
+2012-04-26 Andreas Schwab <[email protected]>
+
+ * elf32-m68k.c (elf_m68k_check_relocs): Mark non-GOT references
+ also when generating PIE.
+ (elf_m68k_discard_copies): Mark undefined weak symbols referenced
+ by relocations as dynamic.
+
+2012-04-26 Hans-Peter Nilsson <[email protected]>
+
+ Provide a way for programs to recognize BFD_ASSERT calls.
+ * bfd.c (bfd_assert_handler_type): New API type.
+ (bfd_set_assert_handler, bfd_get_assert_handler): New API functions.
+ (_bfd_assert_handler): New variable.
+ (_bfd_default_assert_handler): New function.
+ (bfd_assert): Call _bfd_assert_handler, not _bfd_error_handler.
+ * libbfd-in.h (_bfd_assert_handler): Declare.
+ * libbfd.h, bfd-in2.h: Regenerate.
+
+2012-04-24 Hans-Peter Nilsson <[email protected]>
+
+ PR ld/13990
+ * elf32-arm.c (elf32_arm_gc_sweep_hook): Handle a forced-local
+ symbol, where PLT refcount is set to -1.
+
+2012-04-24 Alan Modra <[email protected]>
+
+ PR ld/13991
+ * elf-bfd.h (_bfd_elf_link_just_syms): Define as
+ _bfd_generic_link_just_syms.
+ * elflink.c (_bfd_elf_link_just_syms): Delete.
+ * linker.c (_bfd_generic_link_just_syms): Set sec_info_type.
+
+ * bfd-in.h (discarded_section): Renamed from elf_discarded_section.
+ * section.c (SEC_INFO_TYPE_NONE, SEC_INFO_TYPE_STABS,
+ SEC_INFO_TYPE_MERGE, SEC_INFO_TYPE_EH_FRAME,
+ SEC_INFO_TYPE_JUST_SYMS): Renamed from corresponding ELF_INFO_TYPE.
+ * elf-eh-frame.c, * elf-m10200.c, * elf-m10300.c,
+ * elf.c, * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c,
+ * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c,
+ * elf32-crx.c, * elf32-d10v.c, * elf32-epiphany.c,
+ * elf32-fr30.c, * elf32-frv.c, * elf32-h8300.c,
+ * elf32-hppa.c, * elf32-i370.c, * elf32-i386.c,
+ * elf32-i860.c, * elf32-ip2k.c, * elf32-iq2000.c,
+ * elf32-lm32.c, * elf32-m32c.c, * elf32-m32r.c,
+ * elf32-m68hc1x.c, * elf32-m68k.c, * elf32-mcore.c,
+ * elf32-mep.c, * elf32-moxie.c, * elf32-msp430.c,
+ * elf32-mt.c, * elf32-openrisc.c, * elf32-ppc.c,
+ * elf32-rl78.c, * elf32-rx.c, * elf32-s390.c,
+ * elf32-score.c, * elf32-score7.c, * elf32-sh.c,
+ * elf32-spu.c, * elf32-tic6x.c, * elf32-tilepro.c,
+ * elf32-v850.c, * elf32-vax.c, * elf32-xc16x.c,
+ * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c,
+ * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mmix.c,
+ * elf64-ppc.c, * elf64-s390.c, * elf64-sh64.c,
+ * elf64-x86-64.c, * elflink.c, * elfnn-ia64.c,
+ * elfxx-mips.c, * elfxx-sparc.c, * elfxx-tilegx.c,
+ * reloc.c: Update all references.
+ * bfd-in2.h: Regenerate.
+
+2012-04-20 Andreas Krebbel <[email protected]>
+
+ * elf32-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default.
+ * elf64-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default.
+
+2012-04-19 Thomas Schwinge <[email protected]>
+
+ * elf32-sh.c (elf_sh_link_hash_entry): Specify an enum identifier for
+ got_type.
+ (allocate_dynrelocs, sh_elf_relocate_section, sh_elf_check_relocs): Use
+ it.
+
+2012-04-17 Kaz Kojima <[email protected]>
+
+ * elf32-sh.c (allocate_dynrelocs): Don't allocate dynamic
+ relocations when LE conversion happens on the IE tls symbol.
+
+2012-04-17 Roland McGrath <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_nacl_plt0_entry): Fix nop padding
+ so that 32-byte boundary is a proper instruction boundary.
+
+2012-04-17 Tristan Gingold <[email protected]>
+
+ * vms-lib.c (_bfd_vms_lib_get_module): Append .obj extension to
+ member of an object archive.<
+
+2012-04-17 Tristan Gingold <[email protected]>
+
+ * vms-lib.c (MAX_EKEYLEN): Define.
+ (MAX_KEYLEN): Fix value.
+ (vms_write_index): Add comments and fix indentation.
+ Adjust comparaison. Add assertions. Free kbn_blk.
+ (_bfd_vms_lib_write_archive_contents): Use MAX_EKEYLEN.
+ Compense MAX_KEYLEN adjustment.
+
+2012-04-16 Maciej W. Rozycki <[email protected]>
+
+ * elfxx-mips.c (mips16_stub_symndx): Handle n64 compound relocs.
+ (_bfd_mips_elf_check_relocs): Update accordingly.
+
+2012-04-13 Alan Modra <[email protected]>
+
+ PR ld/13947
+ * elflink.c (bfd_elf_final_link): Set reloc_count to 0 for
+ reloc sections.
+
+2012-04-12 David S. Miller <[email protected]>
+
+ * reloc.c (BFD_RELOC_SPARC_H34, BFD_RELOC_SPARC_SIZE32,
+ BFD_RELOC_SPARC_SIZE64, BFD_RELOC_SPARC_WDISP10): New relocs.
+ * libbfd.h: Regenerate.
+ * bfd-in2.h: Likewise.
+ * elfxx-sparc.c (sparc_elf_wdisp10_reloc): New function.
+ (_bfd_sparc_elf_howto_table): Add entries for R_SPARC_H34,
+ R_SPARC_SIZE32, R_SPARC_64, and R_SPARC_WDISP10.
+ (_bfd_sparc_elf_reloc_type_lookup): Handle new relocs.
+ (_bfd_sparc_elf_check_relocs): Likewise.
+ (_bfd_sparc_elf_gc_sweep_hook): Likewise.
+ (_bfd_sparc_elf_relocate_section): Likewise.
+
+2012-04-12 Roland McGrath <[email protected]>
+
+ * elf32-arm.c (elf32_arm_nacl_plt0_entry, elf32_arm_nacl_plt_entry):
+ New variables.
+ (struct elf32_arm_link_hash_table): New member `nacl_p'.
+ (elf32_arm_link_hash_table_create): Initialize it.
+ (elf32_arm_nacl_link_hash_table_create): New function.
+ (arm_movw_immediate, arm_movt_immediate): New functions.
+ (elf32_arm_populate_plt_entry): Test HTAB->nacl_p.
+ (elf32_arm_finish_dynamic_sections): Likewise.
+ (elf32_arm_output_plt_map_1): Likewise.
+ (bfd_elf32_littlearm_nacl_vec, bfd_elf32_bigarm_nacl_vec):
+ New backend vector stanza.
+ (elf32_arm_nacl_modify_segment_map): New function.
+ * config.bfd: Handle arm-*-nacl*, armeb-*-nacl*.
+ * targets.c: Support bfd_elf32_{big,little}_nacl_vec.
+ * configure.in: Likewise.
+ (bfd_elf32_bigarm_nacl_vec): Add elf-nacl.lo here.
+ (bfd_elf32_littlearm_nacl_vec): Likewise.
+ (bfd_elf32_bigarm_vec, bfd_elf32_littlearm_vec): Likewise.
+ (bfd_elf32_bigarm_symbian_vec): Likewise.
+ (bfd_elf32_littlearm_symbian_vec): Likewise.
+ (bfd_elf32_bigarm_vxworks_vec): Likewise.
+ (bfd_elf32_littlearm_vxworks_vec): Likewise.
+ * configure: Regenerated.
+
+2012-04-12 Tristan Gingold <[email protected]>
+
+ * elflink.c (elf_link_output_extsym): Add a guard.
+ (bfd_elf_final_link): Remove assertion.
+ (bfd_elf_final_link): Add a guard.
+ * elfnn-ia64.c (INCLUDE_IA64_VMS): Removed.
+ (elfNN_vms_section_from_shdr, elfNN_vms_object_p)
+ (elfNN_vms_post_process_headers, elfNN_vms_section_processing)
+ (elfNN_vms_final_write_processing, elfNN_vms_close_and_cleanup):
+ Remove.
+ (elfNN-ia64-vms target): Move to ...
+ * elf64-ia64-vms.c: New file.
+ * configure.in (bfd_elf64_ia64_vms_vec): Add elf64-ia64-vms.lo
+ * Makefile.am (BFD64_BACKENDS): Add elf64-ia64-vms.lo.
+ (BFD64_BACKENDS_CFILES): Ad elf64-ia64-vms.c.
+ * configure: Regenerate.
+ * Makefile.in: Regenerate.
+
+2012-04-11 Nick Clifton <[email protected]>
+
+ PR binutils/13897
+ * elf64-ppc.c (opd_entry_value): When dealing with sections
+ without relocs, keep the last section loaded in order to avoid
+ unnecessary reloads.
+
+2012-04-09 Roland McGrath <[email protected]>
+
+ * elf.c (_bfd_elf_map_sections_to_segments): Set INFO->user_phdrs.
+ * elf-nacl.c (nacl_modify_segment_map): Do nothing if INFO->user_phdrs.
+ (nacl_modify_program_headers): Likewise.
+
+2012-04-03 Roland McGrath <[email protected]>
+
+ * elf-nacl.c: New file.
+ * elf-nacl.h: New file.
+ * elf32-i386.c (elf_backend_modify_segment_map): Define for
+ bfd_elf32_i386_nacl_vec.
+ (elf_backend_modify_program_headers): Likewise.
+ * elf64-x86-64.c (elf_backend_modify_segment_map): Define for
+ bfd_elf64_x86_64_nacl_vec and bfd_elf32_x86_64_nacl_vec.
+ (elf_backend_modify_program_headers): Likewise.
+ * Makefile.am (BFD32_BACKENDS, BFD64_BACKENDS): Add elf-nacl.lo here.
+ (BFD32_BACKENDS_CFILES, BFD64_BACKENDS_CFILES): Add elf-nacl.c here.
+ * Makefile.in: Regenerated.
+ * configure.in (bfd_elf64_x86_64_nacl_vec): Add elf-nacl.o to tb here.
+ (bfd_elf32_x86_64_nacl_vec): Likewise.
+ (bfd_elf64_x86_64_vec, bfd_elf32_x86_64_vec): Likewise.
+ (bfd_elf64_x86_64_freebsd_vec, bfd_elf64_x86_64_sol2_vec): Likewise.
+ (bfd_elf64_l1om_vec, bfd_elf64_l1om_freebsd_vec): Likewise.
+ (bfd_elf64_k1om_vec, bfd_elf64_k1om_freebsd_vec): Likewise.
+ (bfd_elf32_i386_nacl_vec): Likewise.
+ (bfd_elf32_i386_sol2_vec, bfd_elf32_i386_freebsd_vec): Likewise.
+ (bfd_elf32_i386_vxworks_vec, bfd_elf32_i386_vec): Likewise.
+ * configure: Regenerated.
+
+2012-03-31 Andreas Schwab <[email protected]>
+
+ * elf32-m68k.c (elf_m68k_relocate_section): Allow
+ R_68K_TLS_LE{8,16,32} for PIE.
+
+2012-03-30 Andreas Krebbel <[email protected]>
+
+ * elf64-s390.c: Fix several comments regarding PLT entry
+ description.
+ * elf32-s390.c: Likewise.
+
+2012-03-30 Andreas Krebbel <[email protected]>
+
+ * elf64-s390.c: Use the section pointer shortcuts in
+ elf_link_hash_table and remove them from the target specific
+ variant.
+ * elf32-s390.c: Likewise.
+
+2012-03-30 Andreas Krebbel <[email protected]>
+
+ * elf64-s390.c (elf_s390x_plt_entry, elf_s390x_first_plt_entry):
+ New definitions.
+ (PLT_PIC_ENTRY_WORD*, PLT_PIC12_ENTRY_WORD*): Remove.
+ (elf_s390_finish_dynamic_symbol): Use memcpy instead of bfd_put_32.
+ (elf_s390_finish_dynamic_sections): Likewise.
+ * elf32-s390.c (elf_s390_plt_entry, elf_s390_plt_pic_entry)
+ (elf_s390_plt_pic12_entry, elf_s390_plt_pic16_entry)
+ (elf_s390_plt_first_entry, elf_s390_plt_pic_first_entry): New definitions.
+ (PLT_PIC16_ENTRY_WORD*, PLT_ENTRY_WORD*)
+ (PLT_PIC_FIRST_ENTRY_WORD*, PLT_FIRST_ENTRY_WORD*): Remove.
+
+2012-03-30 Andreas Krebbel <[email protected]>
+
+ * elf32-s390.c (struct elf_s390_dyn_relocs): Remove.
+ Rename all occurrences in the file to elf_dyn_relocs.
+ * elf64-s390.c: Likewise.
+
+2012-03-30 Alan Modra <[email protected]>
+
+ * elflink.c (_bfd_elf_gc_mark_reloc): Don't delve into dynamic
+ libraries.
+
+2012-03-29 Alan Modra <[email protected]>
+
+ * bfd-in.h (bfd_get_arch_size, bfd_get_sign_extend_vma): Delete.
+ * bfd-in2.h: Regenerate.
+
+2012-03-23 Alan Modra <[email protected]>
+
+ * elf.c (assign_file_positions_for_non_load_sections): Don't warn
+ on empty alloc sections.
+
+2012-03-23 Alan Modra <[email protected]>
+
+ * linker.c (_bfd_nearby_section): New function, split out from..
+ (fix_syms): ..here.
+ * bfd-in.h (_bfd_nearby_section): Declare.
+ * bfd-in2.h: Regenerate.
+ * elflink.c (elf_link_input_bfd): Don't use text_index_section or
+ data_index_section with ld -q or ld -r output relocs against
+ stripped output sections. Instead use _bfd_nearby_section.
+
+2012-03-23 Alan Modra <[email protected]>
+
+ PR binutils/13894
+ * elf64-ppc.c (opd_entry_value): Read full symbol table when
+ sym hashes unavailable.
+
+2012-03-21 Eliot Dresselhaus <[email protected]>
+
+ * elf32-tic6x.c (elf32_tic6x_merge_private_bfd_data): Return TRUE
+ for non-C6X objects.
+
+2012-03-20 Kai Tietz <[email protected]>
+
+ PR ld/12742
+ * configure.in (AC_CHECK_HEADERS): Test for windows.h and dlfcn.h.
+ * plugin.c: Guard include of dlfcn.h if HAVE_DLFCN_H is defined.
+ Add windows.h header include if HAVE_WINDOWS_H is defined.
+ (dlerror): New static function if windows variant is used instead
+ of dlfcn.h.
+ (dlclose): Likewise.
+ (dlopen): Likewise.
+ (dlsym): Likewise.
+ * configure: Regenerated.
+ * config.in: Regenerated.
+
+2012-03-20 H.J. Lu <[email protected]>
+
+ PR ld/13880
+ * elf32-i386.c (elf_i386_relocate_section): Don't issue an error
+ for R_386_GOTOFF relocation against protected function if
+ SYMBOLIC_BIND is true.
+
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Don't issue an
+ error for R_X86_64_GOTOFF64 relocation against protected function
+ when building executable or SYMBOLIC_BIND is true.
+
+2012-03-16 Roland McGrath <[email protected]>
+
+ * config.bfd: Handle x86_64-*-nacl*.
+ * elf64-x86-64.c (bfd_elf64_x86_64_nacl_vec): New backend vector stanza.
+ (bfd_elf32_x86_64_nacl_vec): Likewise.
+ * targets.c: Support them.
+ * configure.in: Likewise.
+ * configure: Regenerated.
+
+2012-03-16 Matthew Gretton-Dann <[email protected]>
+
+ * elf32-arm.c (elf32_arm_attributes_accept_div): New function.
+ (elf32_arm_attributes_forbid_div): Likewise.
+ (elf32_arm_merge_eabi_attributes): Correct handling of
+ Tag_DIV_use.
+
+2012-03-15 Roland McGrath <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Use
+ elf_x86_64_backend_data parameters for plt_eh_frame.
+
+ * elf64-x86-64.c (struct elf_x86_64_backend_data): New type.
+ (get_elf_x86_64_backend_data, GET_PLT_ENTRY_SIZE): New macros.
+ (elf_x86_64_arch_bed): New variable.
+ (elf_backend_arch_data): New macro.
+ (elf_x86_64_adjust_dynamic_symbol): Use GET_PLT_ENTRY_SIZE.
+ (elf_x86_64_allocate_dynrelocs): Likewise.
+ (elf_x86_64_relocate_section): Likewise.
+ (elf_x86_64_plt_sym_val): Likewise.
+ (elf_x86_64_finish_dynamic_symbol): Use elf_x86_64_backend_data
+ parameters for PLT details.
+ (elf_x86_64_finish_dynamic_sections): Likewise.
+
+2012-03-14 Roland McGrath <[email protected]>
+
+ * elf32-i386.c (elf_i386_nacl_pic_plt0_entry): Initialize up
+ to the full size, padding out with nop instructions.
+
+2012-03-12 Alan Modra <[email protected]>
+
+ * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Don't warn
+ on zero size dynbss symbol.
+ * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
+ * elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
+ * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
+ * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
+ * elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
+ * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
+ * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise.
+ * elf32-tilepro.c (tilepro_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
+ * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
+ * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
+ * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
+ * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
+ * elfxx-tilegx.c (tilegx_elf_adjust_dynamic_symbol): Likewise.
+
+2012-03-10 Edmar Wienskoski <[email protected]>
+
+ * archures.c: Add bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
+ * bfd-in2.h: Regenerate.
+ * cpu-powerpc.c (bfd_powerpc_archs): Add entries for
+ bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
+
+2012-03-09 H.J. Lu <[email protected]>
+
+ PR ld/13817
+ * elf32-i386.c (elf_i386_relocate_section): Restore
+ R_386_IRELATIVE.
+
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Restore
+ R_X86_64_IRELATIVE.
+
+2012-03-08 Tristan Gingold <[email protected]>
+
+ * vms-lib.c (_bfd_vms_lib_write_archive_contents): Set maximum
+ keylen according to archive kind. Set nextvbn and nextrfa lhd
+ fields. Add comments.
+
+2012-03-07 Nick Clifton <[email protected]>
+
+ * elf-m10300.c (elf32_mn10300_link_hash_entry): Add tls_type
+ field.
+ (elf32_mn10300_link_hash_table): Add tls_ldm_got entry;
+ (elf_mn10300_tdata): Define.
+ (elf_mn10300_local_got_tls_type): Define.
+ (elf_mn10300_howto_table): Add entries for R_MN10300_TLS_GD,
+ R_MN10300_TLS_LD, R_MN10300_TLS_LDO, R_MN10300_TLS_GOTIE,
+ R_MN10300_TLS_IE, R_MN10300_TLS_LE, R_MN10300_TLS_DPTMOD,
+ R_MN10300_TLS_DTPOFF, R_MN10300_TLS_TPOFF relocs.
+ (mn10300_reloc_map): Likewise.
+ (elf_mn10300_tls_transition): New function.
+ (dtpoff, tpoff, mn10300_do_tls_transition): New functions.
+ (mn10300_elf_check_relocs): Add TLS support.
+ (mn10300_elf_final_link_relocate): Likewise.
+ (mn10300_elf_relocate_section): Likewise.
+ (mn10300_elf_relax_section): Likewise.
+ (elf32_mn10300_link_hash_newfunc): Initialise new field.
+ (_bfd_mn10300_copy_indirect_symbol): New function.
+ (elf32_mn10300_link_hash_table_create): Initialise new fields.
+ (_bfd_mn10300_elf_size_dynamic_sections): Add TLS support.
+ (_bfd_mn10300_elf_finish_dynamic_symbol): Likewise.
+ (_bfd_mn10300_elf_reloc_type_class): Allocate an
+ elf_mn10300_obj_tdata structure.
+ (elf_backend_copy_indirect_symbol): Define.
+ * reloc.c (BFD_MN10300_TLS_GD, BFD_MN10300_TLS_LD,
+ BFD_MN10300_TLS_LDO, BFD_MN10300_TLS_GOTIE, BFD_MN10300_TLS_IE,
+ BFD_MN10300_TLS_LE, BFD_MN10300_TLS_DPTMOD,
+ BFD_MN10300_TLS_DTPOFF, BFD_MN10300_TLS_TPOFF): New relocations.
+ (BFD_RELOC_MN10300_32_PCREL, BFD_RELOC_MN10300_16_PCREL): Move to
+ alongside other MN10300 relocations.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2012-03-06 Jakub Jelinek <[email protected]>
+
+ * elf64-x86-64.c (elf_x86_64_relocate_section): For R_X86_64_RELATIVE
+ set relocate to TRUE.
+
+2012-03-05 Rainer Orth <[email protected]>
+
+ PR ld/12152
+ * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Also ignore
+ overflows for R_SPARC_UA32 in .stab sections.
+
+2012-03-01 Alan Modra <[email protected]>
+
+ * elfxx-tilegx.c (tilegx_elf_relocate_section): Silence bogus warning.
+
+2012-02-27 Alan Modra <[email protected]>
+
+ * elf32-sh.c (sh_elf_osec_to_segment): Check for elf flavour bfd
+ before calling elf specific function.
+ (sh_elf_osec_readonly_p): Test for error return from above.
+
+2012-02-27 Alan Modra <[email protected]>
+
+ * elf32-spu.c (build_stub): Fix malloc under-allocation.
+
+2012-02-25 Walter Lee <[email protected]>
+ * reloc.c: Add BFD_RELOC_TILEPRO_TLS_GD_CALL,
+ BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD,
+ BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD,
+ BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD,
+ BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD,
+ BFD_RELOC_TILEPRO_TLS_IE_LOAD, BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE,
+ BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE,
+ BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO,
+ BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO,
+ BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI,
+ BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI,
+ BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA,
+ BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA,
+ BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE,
+ BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE,
+ BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE,
+ BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE,
+ BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE,
+ BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE,
+ BFD_RELOC_TILEGX_TLS_GD_CALL, BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD,
+ BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD,
+ BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD,
+ BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD, BFD_RELOC_TILEGX_TLS_IE_LOAD,
+ BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD,
+ BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD,
+ BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD, BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD.
+ Delete BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT,
+ BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT,
+ BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT,
+ BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT,
+ BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT,
+ BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT,
+ BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT,
+ BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT,
+ BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD,
+ BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD,
+ BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD,
+ BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD,
+ BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD,
+ BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD,
+ BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD,
+ BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD,
+ BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE,
+ BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE,
+ BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE,
+ BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE,
+ BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE,
+ BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE,
+ BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE,
+ BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE.
+ * elf32-tilepro.c (tilepro_elf_howto_table): Update tilepro
+ relocations.
+ (tilepro_reloc_map): Ditto.
+ (tilepro_info_to_howto_rela): Ditto.
+ (reloc_to_create_func): Ditto.
+ (tilepro_tls_translate_to_le): New.
+ (tilepro_tls_translate_to_ie): New.
+ (tilepro_elf_tls_transition): New.
+ (tilepro_elf_check_relocs): Handle new tls relocations.
+ (tilepro_elf_gc_sweep_hook): Ditto.
+ (allocate_dynrelocs): Ditto.
+ (tilepro_elf_relocate_section): Ditto.
+ (tilepro_replace_insn): New.
+ (insn_mask_X1): New.
+ (insn_mask_X0_no_dest_no_srca): New
+ (insn_mask_X1_no_dest_no_srca): New
+ (insn_mask_Y0_no_dest_no_srca): New
+ (insn_mask_Y1_no_dest_no_srca): New
+ (srca_mask_X0): New
+ (srca_mask_X1): New
+ (insn_tls_le_move_X1): New
+ (insn_tls_le_move_zero_X0X1): New
+ (insn_tls_ie_lw_X1): New
+ (insn_tls_ie_add_X0X1): New
+ (insn_tls_ie_add_Y0Y1): New
+ (insn_tls_gd_add_X0X1): New
+ (insn_tls_gd_add_Y0Y1): New
+ * elfxx-tilegx.c (tilegx_elf_howto_table): Update tilegx
+ relocations.
+ (tilegx_reloc_map): Ditto.
+ (tilegx_info_to_howto_rela): Ditto.
+ (reloc_to_create_func): Ditto.
+ (tilegx_elf_link_hash_table): New field disable_le_transition.
+ (tilegx_tls_translate_to_le): New.
+ (tilegx_tls_translate_to_ie): New.
+ (tilegx_elf_tls_transition): New.
+ (tilegx_elf_check_relocs): Handle new tls relocations.
+ (tilegx_elf_gc_sweep_hook): Ditto.
+ (allocate_dynrelocs): Ditto.
+ (tilegx_elf_relocate_section): Ditto.
+ (tilegx_copy_bits): New.
+ (tilegx_replace_insn): New.
+ (insn_mask_X1): New.
+ (insn_mask_X0_no_dest_no_srca): New.
+ (insn_mask_X1_no_dest_no_srca): New.
+ (insn_mask_Y0_no_dest_no_srca): New.
+ (insn_mask_Y1_no_dest_no_srca): New.
+ (insn_mask_X0_no_operand): New.
+ (insn_mask_X1_no_operand): New.
+ (insn_mask_Y0_no_operand): New.
+ (insn_mask_Y1_no_operand): New.
+ (insn_tls_ie_ld_X1): New.
+ (insn_tls_ie_ld4s_X1): New.
+ (insn_tls_ie_add_X0X1): New.
+ (insn_tls_ie_add_Y0Y1): New.
+ (insn_tls_ie_addx_X0X1): New.
+ (insn_tls_ie_addx_Y0Y1): New.
+ (insn_tls_gd_add_X0X1): New.
+ (insn_tls_gd_add_Y0Y1): New.
+ (insn_move_X0X1): New.
+ (insn_move_Y0Y1): New.
+ (insn_add_X0X1): New.
+ (insn_add_Y0Y1): New.
+ (insn_addx_X0X1): New.
+ (insn_addx_Y0Y1): New.
+ * libbfd.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+
+2012-02-25 Walter Lee <[email protected]>
+
+ * config.bfd (tilegx-*-*): rename little endian vector; add big
+ endian vector.
+ (tilegxbe-*-*): New case.
+ * configure.in (bfd_elf32_tilegx_vec): Rename...
+ (bfd_elf32_tilegx_le_vec): ... to this.
+ (bfd_elf32_tilegx_be_vec): New vector.
+ (bfd_elf64_tilegx_vec): Rename...
+ (bfd_elf64_tilegx_le_vec): ... to this.
+ (bfd_elf64_tilegx_be_vec): New vector.
+ * configure: Regenerate.
+ * elf32-tilegx.c (TARGET_LITTLE_SYM): Rename.
+ (TARGET_LITTLE_NAME): Ditto.
+ (TARGET_BIG_SYM): Define.
+ (TARGET_BIG_NAME): Define.
+ * elf64-tilegx.c (TARGET_LITTLE_SYM): Rename.
+ (TARGET_LITTLE_NAME): Ditto.
+ (TARGET_BIG_SYM): Define.
+ (TARGET_BIG_NAME): Define.
+ * targets.c (bfd_elf32_tilegx_vec): Rename...
+ (bfd_elf32_tilegx_le_vec): ... to this.
+ (bfd_elf32_tilegx_be_vec): Declare.
+ (bfd_elf64_tilegx_vec): Rename...
+ (bfd_elf64_tilegx_le_vec): ... to this.
+ (bfd_elf64_tilegx_be_vec): Declare.
+ (_bfd_target_vector): Add / rename above vectors.
+ * arctures.c (bfd_architecture): Define bfd_mach_tilegx32.
+ * bfd-in2.h: Regenerate.
+ * cpu-tilegx.c (bfd_tilegx32_arch): define.
+ (bfd_tilegx_arch): link to bfd_tilegx32_arch.
+
+2012-02-24 Nick Clifton <[email protected]>
+
+ PR ld/13730
+ * reloc.c (bfd_generic_get_relocated_section_contents): Issue an
+ error message instead of aborting, when an outofrange reloc is
+ encountered.
+
+2012-02-23 Iain Sandoe <[email protected]>
+
+ * mach-o.c (bfd_mach_o_swap_in_non_scattered_reloc): New.
+ (bfd_mach_o_canonicalize_one_reloc): Swap non-scattered reloc
+ bit-fields when target and host differ in endian-ness. When
+ PAIRs are non-scattered find the 'symbol' from the preceding
+ reloc. Add FIXME re. reloc symbols on section boundaries.
+ (bfd_mach_o_swap_out_non_scattered_reloc): New.
+ (bfd_mach_o_write_relocs): Use bfd_mach_o_encode_non_scattered_reloc.
+
+2012-02-17 Iain Sandoe <[email protected]>
+
+ * mach-o-i386.c (i386_howto_table): Add support for 16 bit
+ sect-diffs.
+ (bfd_mach_o_i386_swap_reloc_in): Handle 16bit sect-diffs.
+ (bfd_mach_o_i386_swap_reloc_out): Likewise.
+
+2012-02-17 Tristan Gingold <[email protected]>
+
+ * reloc.c (BFD_RELOC_MACH_O_LOCAL_SECTDIFF):
+ * libbfd.h: Regenerated.
+ * bfd-in2.h: Likewise.
+ * mach-o-i386.c (i386_howto_table): Include local sectdiff.
+ (bfd_mach_o_i386_swap_reloc_in): Update for local sectdiff.
+ (bfd_mach_o_i386_swap_reloc_out): Likewise.
+
+2012-02-17 Andreas Krebbel <[email protected]>
+
+ * elf32-s390.c (elf_s390_relocate_section): Support basr in the
+ GD->LE and LD->LE optimizations.
+
+2012-02-16 Alan Modra <[email protected]>
+
+ PR binutils/13355
+ * elf32-rx.c (elf32_rx_relax_section): Correct width check.
+
+2012-02-13 Richard Henderson <[email protected]>
+
+ PR ld/13621
+ * linker.c (fix_syms): Force symbols outside any section into
+ bfd_abs_section_ptr.
+
+2012-02-13 Alan Modra <[email protected]>
+
+ * elf32-m68hc1x.c (elf32_m68hc11_merge_symbol_attribute): New function.
+ * elf32-m68hc1x.h (elf32_m68hc11_merge_symbol_attribute): Declare.
+ * elf32-m68hc11.c (elf_backend_merge_symbol_attribute): Define.
+ * elf32-m68hc12.c (elf_backend_merge_symbol_attribute): Define.
+
+2012-02-11 Jan Kratochvil <[email protected]>
+ Nick Clifton <[email protected]>
+
+ * oasys.c (oasys_write_header): Fix compilation warning on zero-sized
+ memset.
+
+2012-02-10 Iain Sandoe <[email protected]>
+
+ * mach-o.c (bfd_mach_o_build_seg_command): Count zerofill section
+ vma additions in their logical, rather than physical order.
+
+2012-02-10 Iain Sandoe <[email protected]>
+
+ * mach-o.c (mach_o_section_name_xlat): Correct eh-frame section
+ parameters.
+ * mach-o-x86-64.c (text_section_names_xlat): New.
+ (mach_o_x86_64_segsec_names_xlat): New.
+ (bfd_mach_o_tgt_seg_table): Define to mach_o_x86_64_segsec_names_xlat.
+ * mach-o-i386.c (text_section_names_xlat): Correct section parameters.
+
+2012-02-10 Tristan Gingold <[email protected]>
+
+ * elfnn-ia64.c (elfNN_vms_object_p): Change comparison operator
+ to avoid infinite loop. Add comments.
+
+2012-02-09 H.J. Lu <[email protected]>
+
+ PR ld/13675
+ * cpu-i386.c (bfd_arch_i386_fill): Updated to support multi byte
+ nop instructions.
+ (bfd_arch_i386_short_nop_fill): New.
+ (bfd_arch_i386_long_nop_fill): Likewise.
+ Use bfd_arch_i386_short_nop_fill in 32bit bfd_arch_info
+ initializers. Use bfd_arch_i386_long_nop_fill on 64bit
+ bfd_arch_info initializers.
+
+ * cpu-k1om.c (bfd_arch_i386_fill): Renamed to ...
+ (bfd_arch_i386_short_nop_fill): This.
+ Update bfd_arch_info initializers.
+ * cpu-l1om.c: Likewise.
+
+2012-02-08 Alan Modra <[email protected]>
+
+ * elflink.c (_bfd_elf_gc_mark_rsec): Mark weakdef syms too.
+ (_bfd_elf_fix_symbol_flags): When a weakdef is def_regular, clear
+ the correct h->u.weakdef.
+
+2012-02-07 Alan Modra <[email protected]>
+
+ * elf.c (elf_find_function): Don't use internal_elf_sym.
+ (_bfd_elf_maybe_function_sym): Likewise. Replace elf_symbol_type
+ parameter with asymbol.
+ * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
+ * elf-bfd.h (_bfd_elf_maybe_function_sym): Update prototype.
+ (struct elf_backend_data <maybe_function_sym>): Likewise.
+
+2012-02-02 Vidya Praveen ([email protected])
+
+ PR bfd/13410
+ * elf32-avr.c (elf32_avr_relax_section): Correct the
+ condition that qualifies the candidates for relaxation.
+
+2012-02-02 Tristan Gingold <[email protected]>
+
+ * bfdio.c (real_fopen): Remove unused vms_modes variable.
+
+2012-02-02 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_read_header): Silent uninitialized
+ variable warning.
+
+2012-02-02 Tristan Gingold <[email protected]>
+
+ * archive.c (bfd_slurp_armap): Fix thinko in cast.
+
+2012-01-31 H.J. Lu <[email protected]>
+
+ PR ld/13616
+ * archures.c (bfd_arch_info): Add fill.
+ (bfd_default_arch_struct): Add bfd_arch_default_fill.
+ (bfd_arch_default_fill): New.
+
+ * configure.in: Set bfd version to 2.22.52.
+ * configure: Regenerated.
+
+ * cpu-alpha.c: Add bfd_arch_default_fill to bfd_arch_info
+ initializer.
+ * cpu-arc.c: Likewise.
+ * cpu-arm.c: Likewise.
+ * cpu-avr.c: Likewise.
+ * cpu-bfin.c: Likewise.
+ * cpu-cr16.c: Likewise.
+ * cpu-cr16c.c: Likewise.
+ * cpu-cris.c: Likewise.
+ * cpu-crx.c: Likewise.
+ * cpu-d10v.c: Likewise.
+ * cpu-d30v.c: Likewise.
+ * cpu-dlx.c: Likewise.
+ * cpu-epiphany.c: Likewise.
+ * cpu-fr30.c: Likewise.
+ * cpu-frv.c: Likewise.
+ * cpu-h8300.c: Likewise.
+ * cpu-h8500.c: Likewise.
+ * cpu-hppa.c: Likewise.
+ * cpu-i370.c: Likewise.
+ * cpu-i860.c: Likewise.
+ * cpu-i960.c: Likewise.
+ * cpu-ia64.c: Likewise.
+ * cpu-ip2k.c: Likewise.
+ * cpu-iq2000.c: Likewise.
+ * cpu-lm32.c: Likewise.
+ * cpu-m10200.c: Likewise.
+ * cpu-m10300.c: Likewise.
+ * cpu-m32c.c: Likewise.
+ * cpu-m32r.c: Likewise.
+ * cpu-m68hc11.c: Likewise.
+ * cpu-m68hc12.c: Likewise.
+ * cpu-m68k.c: Likewise.
+ * cpu-m88k.c: Likewise.
+ * cpu-mcore.c: Likewise.
+ * cpu-mep.c: Likewise.
+ * cpu-microblaze.c: Likewise.
+ * cpu-mips.c: Likewise.
+ * cpu-mmix.c: Likewise.
+ * cpu-moxie.c: Likewise.
+ * cpu-msp430.c: Likewise.
+ * cpu-mt.c: Likewise.
+ * cpu-ns32k.c: Likewise.
+ * cpu-openrisc.c: Likewise.
+ * cpu-or32.c: Likewise.
+ * cpu-pdp11.c: Likewise.
+ * cpu-pj.c: Likewise.
+ * cpu-plugin.c: Likewise.
+ * cpu-powerpc.c: Likewise.
+ * cpu-rl78.c: Likewise.
+ * cpu-rs6000.c: Likewise.
+ * cpu-rx.c: Likewise.
+ * cpu-s390.c: Likewise.
+ * cpu-score.c: Likewise.
+ * cpu-sh.c: Likewise.
+ * cpu-sparc.c: Likewise.
+ * cpu-spu.c: Likewise.
+ * cpu-tic30.c: Likewise.
+ * cpu-tic4x.c: Likewise.
+ * cpu-tic54x.c: Likewise.
+ * cpu-tic6x.c: Likewise.
+ * cpu-tic80.c: Likewise.
+ * cpu-tilegx.c: Likewise.
+ * cpu-tilepro.c: Likewise.
+ * cpu-v850.c: Likewise.
+ * cpu-vax.c: Likewise.
+ * cpu-w65.c: Likewise.
+ * cpu-we32k.c: Likewise.
+ * cpu-xc16x.c: Likewise.
+ * cpu-xstormy16.c: Likewise.
+ * cpu-xtensa.c: Likewise.
+ * cpu-z80.c: Likewise.
+ * cpu-z8k.c: Likewise.
+
+ * cpu-i386.c: Include "libiberty.h".
+ (bfd_arch_i386_fill): New.
+ Add bfd_arch_i386_fill to bfd_arch_info initializer.
+
+ * cpu-k1om.c: Add bfd_arch_i386_fill to bfd_arch_info initializer.
+ * cpu-l1om.c: Likewise.
+
+ * linker.c (default_data_link_order): Call abfd->arch_info->fill
+ if fill size is 0.
+
+ * bfd-in2.h: Regenerated.
+
+2012-01-27 Michael Eager <[email protected]>
+
+ * elf32-microblaze.c (create_got_section):
+ Reuse existing .rela.got section.
+
+2012-01-23 Alan Modra <[email protected]>
+
+ * elf-bfd.h: Formatting.
+ (struct elf_backend_data): Add "maybe_function_sym".
+ (_bfd_elf_maybe_function_sym): Declare.
+ * elfxx-target.h (elf_backend_maybe_function_sym): Define.
+ (elfNN_bed): Init new field.
+ * elf.c (elf_find_function): Use maybe_function_sym.
+ (_bfd_elf_maybe_function_sym): New function.
+ * elf64-ppc.c (elf_backend_maybe_function_sym): Define.
+ (ppc64_elf_maybe_function_sym): New function.
+
+2012-01-20 Francois Gouget <[email protected]>
+
+ PR binutils/13534
+ * archive.c (_bfd_ar_sizepad): New function. Correctly install and
+ pad the size field in an archive header.
+ (_bfd_generic_read_ar_hdr_mag): Use the correct type and scan
+ function for the archive size field.
+ (bfd_generic_openr_next_archived_file): Likewise.
+ (do_slurp_coff_armap): Likewise.
+ (_bfd_write_archive_contents): Likewise.
+ (_bfd_bsd44_write_ar_hdr): Use the new function.
+ (bfd_ar_hdr_from_filesystem): Likewise.
+ (_bfd_write_archive_contents): Likewise.
+ (bsd_write_armap): Likewise.
+ (coff_write_armap): Likewise.
+ * archive64.c (bfd_elf64_archive_write_armap): Likewise.
+ * bfdio.c (bfd_bread): Use correct type for archive element
+ sizes.
+ * ar.c (open_inarch): Likewise.
+ (extract_file): Likewise.
+ * libbfd-in.h (struct areltdata): Use correct types for
+ parsed_size and extra_size fields.
+ Prototype _bfd_ar_sizepad function.
+ * libbfd.h: Regenerate.
+
+2012-01-20 Ulrich Weigand <[email protected]>
+
+ * elf.c (elfcore_write_prpsinfo): Provide unconditionally.
+ Return NULL if core file generation is unsupported.
+ (elfcore_write_prstatus): Likewise.
+ * elf32-arm.c (elf32_arm_nabi_write_core_note): New function.
+ (elf_backend_write_core_note): Define.
+
+2012-01-19 Tristan Gingold <[email protected]>
+
+ * pef.c: Add a comment.
+ * xsym.c: Likewise.
+
+2012-01-17 Alan Modra <[email protected]>
+
+ * elf32-ppc.c (ppc_elf_write_core_note <NT_PRPSINFO>): Don't leave
+ trailing garbage in the note.
+ * elf64-ppc.c (ppc64_elf_write_core_note <NT_PRPSINFO>): Likewise.
+
+2012-01-16 Daniel Green <[email protected]>
+
+ PR ld/13491
+ * coff-i386.c (coff_i386_rtype_to_howto <R_SECREL32>): Test
+ h->root.type not h->type.
+ * coff-x86_64.c (coff_amd64_rtype_to_howto <R_AMD64_SECREL>): Likewise.
+
+2012-01-13 Iain Sandoe <[email protected]>
+
+ * mach-o.c (bfd_mach_o_build_dysymtab_command): Handle absolute
+ indirect symbols.
+
+2012-01-13 Iain Sandoe <[email protected]>
+
+ * mach-o.c (bfd_mach_o_write_relocs): Move computation of relocs file
+ position from here... to (bfd_mach_o_build_seg_command): Here.
+
+2012-01-12 Iain Sandoe <[email protected]>
+
+ * mach-o.c (bfd_mach_o_count_indirect_symbols): New.
+ (bfd_mach_o_build_dysymtab_command): Populate indirect symbol table.
+ * mach-o.h (bfd_mach_o_asymbol): Move declaration to start of the
+ file. (bfd_mach_o_section): Add indirect_syms field.
+
+2012-01-11 Iain Sandoe <[email protected]>
+
+ * mach-o.c (bfd_mach_o_build_seg_command): Separate computation of
+ vmsize from filesize. Don't compute offsets or file sizes for
+ zerofill sections.
+
+2012-01-11 Iain Sandoe <[email protected]>
+
+ * mach-o.c (bfd_mach_o_build_commands): Make the building of each
+ command type independent.
+
+2012-01-11 Alan Modra <[email protected]>
+
+ * elf64-ppc.c: Define more insns used in plt call stubs.
+ (ppc64_elf_brtaken_reloc): Assume isa version 2 or above.
+ (ppc64_elf_relocate_section): Likewise.
+ (enum ppc_stub_type): Add ppc_stub_plt_call_r2save.
+ (struct ppc_link_hash_table): Increase size of stub_count array.
+ Add plt_stub_align and plt_thread_safe.
+ (ALWAYS_USE_FAKE_DEP, ALWAYS_EMIT_R2SAVE): Define.
+ (plt_stub_size, plt_stub_pad): New functions.
+ (build_plt_stub): Emit barriers for power7 thread safety. Don't
+ emit needless save of r2.
+ (build_tls_get_addr_stub): Adjust params.
+ (ppc_build_one_stub): Handle ppc_stub_plt_call_r2save and aligning
+ plt stubs. Adjust build_*plt_stub calls.
+ (ppc_size_one_stub): Similarly.
+ (ppc64_elf_size_stubs): Accept plt_thread_safe and plt_stub_align
+ params. Choose default for plt_thread_safe based on existence of
+ calls to thread creation functions. Modify plt_call to
+ plt_call_r2save when no tocsave reloc found. Align tail of stub
+ sections.
+ (ppc64_elf_build_stubs): Align tail of stub sections. Adjust
+ output of stub statistics.
+ (ppc64_elf_relocate_section): Handle ppc_stub_plt_call_r2save.
+ * elf64-ppc.h (ppc64_elf_size_stubs): Update prototype.
+
+2012-01-10 H.J. Lu <[email protected]>
+
+ PR ld/13581
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Remove ABI_64_P
+ check on R_X86_64_PCXX.
+
+2012-01-10 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_build_commands): Avoid uninitialized false
+ warning.
+
+2012-01-10 Tristan Gingold <[email protected]>
+
+ * bfdio.c (bfd_tell): Handle nested archives.
+ (bfd_seek): Ditto.
+ * cache.c (bfd_cache_lookup_worker): Ditto.
+ * archive.c (_bfd_get_elt_at_filepos): Remove code dealing with
+ nested archives.
+ (bfd_generic_openr_next_archived_file): Likewise.
+
+2012-01-09 Iain Sandoe <[email protected]>
+
+ * mach-o.c (bfd_mach_o_bfd_copy_private_symbol_data): Implement.
+ (bfd_mach_o_write_symtab): Remove handling for indirect syms.
+ (bfd_mach_o_primary_symbol_sort_key): Likewise.
+ (bfd_mach_o_cf_symbols): Likewise.
+ (bfd_mach_o_sort_symbol_table): Remove.
+ (bfd_mach_o_mangle_symbols): Adjust arguments, remove handling
+ for indirect and dysymtab counts. Do the symbol sorting here.
+ (bfd_mach_o_build_dysymtab_command): Count the symbol types here.
+ Make the indirect symbols a TODO.
+ (bfd_mach_o_build_commands): Adjust call to bfd_mach_o_mangle_symbols.
+ (bfd_mach_o_make_empty_symbol): Specifically flag unset symbols with
+ a non-zero value.
+ (bfd_mach_o_read_symtab_symbol): Record the symbol index.
+ (bfd_mach_o_read_symtab_symbol): Adjust recording of global status.
+ * mach-o.h (mach_o_data_struct): Remove indirect and dysymtab entries.
+ (IS_MACHO_INDIRECT): Remove.
+ (SYM_MACHO_FIELDS_UNSET, SYM_MACHO_FIELDS_NOT_VALIDATED): New.
+
+2012-01-06 Nick Clifton <[email protected]>
+
+ PR binutils/13121
+ * reloc.c (bfd_generic_lookup_section_flags): Rename 'finfo' to
+ 'flaginfo' to avoid conflicts with AIX system headers.
+
+2012-01-06 Tristan Gingold <[email protected]>
+
+ * bfdio.c (bfd_bread): Use arelt_size macro.
+
+2012-01-06 Tristan Gingold <[email protected]>
+
+ * config.bfd (i[3-7]86-*-darwin*): Define targ64_selvecs.
+
+2012-01-05 Nick Clifton <[email protected]>
+
+ PR ld/12161
+ * elf32-avr.c (elf32_avr_relax_delete_bytes): Read in relocs if
+ necessary.
+
+2012-01-05 Jan Kratochvil <[email protected]>
+
+ Fix zero registers core files when built by gcc-4.7.
+ * elf64-x86-64.c (elf_x86_64_write_core_note): Remove variables p and
+ size. Call elfcore_write_note for the local variables. Remove the
+ final elfcore_write_note call. Add NOTREACHED comments.
+
+2012-01-04 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_fat_stat_arch_elt): New function.
+ (bfd_mach_o_generic_stat_arch_elt): Adjust.
+
+2012-01-04 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_fat_member_init): New function.
+ (bfd_mach_o_openr_next_archived_file): Reindent.
+ Adjust to call bfd_mach_o_fat_member_init.
+ (bfd_mach_o_fat_extract): Adjust to call bfd_mach_o_fat_member_init.
+
+2012-01-04 Tristan Gingold <[email protected]>
+
+ * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Handle
+ BFD_RELOC_32, BFD_RELOC_MACH_O_X86_64_PCREL32_1,
+ BFD_RELOC_MACH_O_X86_64_PCREL32_2,
+ BFD_RELOC_MACH_O_X86_64_PCREL32_4,
+ BFD_RELOC_MACH_O_X86_64_BRANCH32,
+ BFD_RELOC_MACH_O_X86_64_SUBTRACTOR32,
+ BFD_RELOC_MACH_O_X86_64_GOT.
+
+2012-01-04 Tristan Gingold <[email protected]>
+
+ * mach-o.h (bfd_mach_o_fvmlib_command): New structure.
+ (bfd_mach_o_load_command): Add fvmlib field.
+
+ * mach-o.c (bfd_mach_o_read_fvmlib): New function.
+ (bfd_mach_o_read_command): Handle fvmlib.
+
+2012-01-04 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_convert_architecture): Reindent.
+ Decode msubtype for ARM.
+
+2012-01-04 Tristan Gingold <[email protected]>
+
+ * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add comments.
+
+2012-01-04 Tristan Gingold <[email protected]>
+
+ * mach-o.h: Reindent header.
+ (bfd_mach_o_encryption_info_command): New structure.
+ (bfd_mach_o_load_command): Add encryption_info field.
+
+ * mach-o.c (bfd_mach_o_read_encryption_info): New function.
+ (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_ENCRYPTION_INFO.
+ (bfd_mach_o_read_command): Adjust error message.
+
+2012-01-04 Shinichiro Hamaji <[email protected]>
+
+ * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Factor out the part
+ which reads DWARF2 and stores in stash from find_line.
+ (find_line) Call _bfd_dwarf2_slurp_debug_info.
+ * libbfd-in.h (_bfd_dwarf2_slurp_debug_info): Add declaration.
+ * libbfd.h (_bfd_dwarf2_slurp_debug_info): Regenerate.
+ * mach-o.c (dsym_subdir): The name of subdir where debug
+ information may be stored.
+ (bfd_mach_o_lookup_uuid_command): New. Lookup a load command whose
+ type is UUID.
+ (bfd_mach_o_dsym_for_uuid_p): New. Check if the specified BFD is
+ corresponding to the executable.
+ (bfd_mach_o_find_dsym): New. Find a debug information BFD in the
+ specified binary file.
+ (bfd_mach_o_follow_dsym): New. Find a debug information BFD for
+ the original BFD.
+ (bfd_mach_o_find_nearest_line): Check dSYM files for Mach-O
+ executables, dylibs, and bundles.
+ (bfd_mach_o_close_and_cleanup): Clean up BFDs for the dSYM file.
+ * mach-o.h (dsym_bfd): The BFD of the dSYM file.
+
+2012-01-03 Iain Sandoe <[email protected]>
+
+ * mach-o.c (bfd_mach_o_mangle_symbols): Put in the section index
+ for stabd symbols.
+ (bfd_mach_o_primary_symbol_sort_key): Adjust for stabs.
+ (bfd_mach_o_cf_symbols): Likewise.
+
+2012-01-03 Iain Sandoe <[email protected]>
+
+ * mach-o.c (bfd_mach_o_mangle_symbols): Correct typo.
+
+2012-01-03 Iain Sandoe <[email protected]>
+
+ * mach-o.c (bfd_mach_o_write_symtab): Fill in the string table index
+ as the value of an indirect symbol. Keep the string table index in
+ non-indirect syms for reference.
+ (bfd_mach_o_write_dysymtab): New.
+ (bfd_mach_o_primary_symbol_sort_key): New.
+ (bfd_mach_o_cf_symbols): New.
+ (bfd_mach_o_sort_symbol_table): New.
+ (bfd_mach_o_mangle_symbols): Return early if no symbols. Sort symbols.
+ If we are emitting a dysymtab, process indirect symbols and count the
+ number of each other kind.
+ (bfd_mach_o_mangle_sections): New.
+ (bfd_mach_o_write_contents): Split out some pre-requisite code into
+ the command builder. Write dysymtab if the command is present.
+ (bfd_mach_o_count_sections_for_seg): New.
+ (bfd_mach_o_build_seg_command): New.
+ (bfd_mach_o_build_dysymtab_command): New.
+ (bfd_mach_o_build_commands): Reorganize to support the fact that some
+ commands are optional and should not be emitted if there are no
+ sections or symbols.
+ (bfd_mach_o_set_section_contents): Amend comment.
+ * mach-o.h: Amend and add to comments.
+ (mach_o_data_struct): Add fields for dysymtab symbols counts and a
+ pointer to the indirects, when present.
+ (bfd_mach_o_should_emit_dysymtab): New macro.
+ (IS_MACHO_INDIRECT): Likewise.
+
+For older changes see ChangeLog-2011
+
+Copyright (C) 2012 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
+Local Variables:
+mode: change-log
+left-margin: 8
+fill-column: 74
+version-control: never
+End:
diff --git a/bfd/ChangeLog-9193 b/bfd/ChangeLog-9193
index 01863de..31aa237 100644
--- a/bfd/ChangeLog-9193
+++ b/bfd/ChangeLog-9193
@@ -7840,6 +7840,12 @@
(_write_symbol_table): Initialize <idx> counter.
(foop): Eliminate debugging code.
+Copyright (C) 1991-1993 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/ChangeLog-9495 b/bfd/ChangeLog-9495
index a208f42..1af501c 100644
--- a/bfd/ChangeLog-9495
+++ b/bfd/ChangeLog-9495
@@ -10035,6 +10035,12 @@
For older changes see ChangeLog-9193
+Copyright (C) 1994, 1995 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/ChangeLog-9697 b/bfd/ChangeLog-9697
index e9a5c1d..add810b 100644
--- a/bfd/ChangeLog-9697
+++ b/bfd/ChangeLog-9697
@@ -6721,6 +6721,12 @@
For older changes see ChangeLog-9495
+Copyright (C) 1996,1997 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/ChangeLog-9899 b/bfd/ChangeLog-9899
index 6d7f5cd..fdc2d89 100644
--- a/bfd/ChangeLog-9899
+++ b/bfd/ChangeLog-9899
@@ -5591,6 +5591,12 @@
For older changes see ChangeLog-9697
+Copyright (C) 1998,1999 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
+
Local Variables:
mode: change-log
left-margin: 8
diff --git a/bfd/MAINTAINERS b/bfd/MAINTAINERS
index d59a3bd..e7d8ff8 100644
--- a/bfd/MAINTAINERS
+++ b/bfd/MAINTAINERS
@@ -1 +1,7 @@
See ../binutils/MAINTAINERS
+
+Copyright (C) 2012 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
diff --git a/bfd/Makefile.am b/bfd/Makefile.am
index ea4fd28..c645563 100644
--- a/bfd/Makefile.am
+++ b/bfd/Makefile.am
@@ -1,4 +1,21 @@
## Process this file with automake to generate Makefile.in
+#
+# Copyright 2012 Free Software Foundation
+#
+# This file is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING3. If not see
+# <http://www.gnu.org/licenses/>.
+#
AUTOMAKE_OPTIONS = 1.11 no-dist foreign
ACLOCAL_AMFLAGS = -I . -I .. -I ../config
@@ -35,7 +52,7 @@
AM_CPPFLAGS = -DBINDIR='"$(bindir)"'
if PLUGINS
bfdinclude_HEADERS += $(INCDIR)/plugin-api.h
-LIBDL = -ldl
+LIBDL = @lt_cv_dlopen_libs@
endif
# bfd.h goes here, for now
@@ -71,6 +88,7 @@
# This list is alphabetized to make it easier to keep in sync
# with the decls and initializer in archures.c.
ALL_MACHINES = \
+ cpu-aarch64.lo \
cpu-alpha.lo \
cpu-arc.lo \
cpu-arm.lo \
@@ -83,6 +101,7 @@
cpu-d10v.lo \
cpu-d30v.lo \
cpu-dlx.lo \
+ cpu-epiphany.lo \
cpu-fr30.lo \
cpu-frv.lo \
cpu-h8300.lo \
@@ -104,16 +123,20 @@
cpu-m32r.lo \
cpu-m68hc11.lo \
cpu-m68hc12.lo \
+ cpu-m9s12x.lo \
+ cpu-m9s12xg.lo \
cpu-m68k.lo \
cpu-m88k.lo \
cpu-mcore.lo \
cpu-mep.lo \
+ cpu-metag.lo \
cpu-microblaze.lo \
cpu-mips.lo \
cpu-mmix.lo \
cpu-moxie.lo \
cpu-msp430.lo \
cpu-mt.lo \
+ cpu-nios2.lo \
cpu-ns32k.lo \
cpu-openrisc.lo \
cpu-or32.lo \
@@ -122,6 +145,7 @@
cpu-plugin.lo \
cpu-powerpc.lo \
cpu-rs6000.lo \
+ cpu-rl78.lo \
cpu-rx.lo \
cpu-s390.lo \
cpu-score.lo \
@@ -136,16 +160,19 @@
cpu-tilegx.lo \
cpu-tilepro.lo \
cpu-v850.lo \
+ cpu-v850_rh850.lo \
cpu-vax.lo \
cpu-w65.lo \
cpu-we32k.lo \
cpu-xc16x.lo \
+ cpu-xgate.lo \
cpu-xstormy16.lo \
cpu-xtensa.lo \
cpu-z80.lo \
cpu-z8k.lo
ALL_MACHINES_CFILES = \
+ cpu-aarch64.c \
cpu-alpha.c \
cpu-arc.c \
cpu-arm.c \
@@ -158,6 +185,7 @@
cpu-d10v.c \
cpu-d30v.c \
cpu-dlx.c \
+ cpu-epiphany.c \
cpu-fr30.c \
cpu-frv.c \
cpu-h8300.c \
@@ -179,10 +207,13 @@
cpu-m32r.c \
cpu-m68hc11.c \
cpu-m68hc12.c \
+ cpu-m9s12x.c \
+ cpu-m9s12xg.c \
cpu-m68k.c \
cpu-m88k.c \
cpu-mcore.c \
cpu-mep.c \
+ cpu-metag.c \
cpu-microblaze.c \
cpu-mips.c \
cpu-mmix.c \
@@ -190,6 +221,7 @@
cpu-msp430.c \
cpu-mt.c \
cpu-ns32k.c \
+ cpu-nios2.c \
cpu-openrisc.c \
cpu-or32.c \
cpu-pdp11.c \
@@ -197,6 +229,7 @@
cpu-plugin.c \
cpu-powerpc.c \
cpu-rs6000.c \
+ cpu-rl78.c \
cpu-rx.c \
cpu-s390.c \
cpu-score.c \
@@ -211,10 +244,12 @@
cpu-tilegx.c \
cpu-tilepro.c \
cpu-v850.c \
+ cpu-v850_rh850.c \
cpu-vax.c \
cpu-w65.c \
cpu-we32k.c \
cpu-xc16x.c \
+ cpu-xgate.c \
cpu-xstormy16.c \
cpu-xtensa.c \
cpu-z80.c \
@@ -271,6 +306,7 @@
elf-ifunc.lo \
elf-m10200.lo \
elf-m10300.lo \
+ elf-nacl.lo \
elf-strtab.lo \
elf-vxworks.lo \
elf.lo \
@@ -286,6 +322,7 @@
elf32-d10v.lo \
elf32-d30v.lo \
elf32-dlx.lo \
+ elf32-epiphany.lo \
elf32-fr30.lo \
elf32-frv.lo \
elf32-gen.lo \
@@ -307,15 +344,17 @@
elf32-m88k.lo \
elf32-mcore.lo \
elf32-mep.lo \
+ elf32-metag.lo \
elf32-microblaze.lo \
- elf32-mips.lo \
elf32-moxie.lo \
elf32-msp430.lo \
elf32-mt.lo \
+ elf32-nios2.lo \
elf32-openrisc.lo \
elf32-or32.lo \
elf32-pj.lo \
elf32-ppc.lo \
+ elf32-rl78.lo \
elf32-rx.lo \
elf32-s390.lo \
elf32-sh-symbian.lo \
@@ -330,11 +369,11 @@
elf32-v850.lo \
elf32-vax.lo \
elf32-xc16x.lo \
+ elf32-xgate.lo \
elf32-xstormy16.lo \
elf32-xtensa.lo \
elf32.lo \
elflink.lo \
- elfxx-mips.lo \
elfxx-sparc.lo \
elfxx-tilegx.lo \
epoc-pe-arm.lo \
@@ -455,6 +494,7 @@
elf-ifunc.c \
elf-m10200.c \
elf-m10300.c \
+ elf-nacl.c \
elf-strtab.c \
elf-vxworks.c \
elf.c \
@@ -470,6 +510,7 @@
elf32-d10v.c \
elf32-d30v.c \
elf32-dlx.c \
+ elf32-epiphany.c \
elf32-fr30.c \
elf32-frv.c \
elf32-gen.c \
@@ -491,15 +532,17 @@
elf32-m88k.c \
elf32-mcore.c \
elf32-mep.c \
+ elf32-metag.c \
elf32-microblaze.c \
- elf32-mips.c \
elf32-moxie.c \
elf32-msp430.c \
elf32-mt.c \
+ elf32-nios2.c \
elf32-openrisc.c \
elf32-or32.c \
elf32-pj.c \
elf32-ppc.c \
+ elf32-rl78.c \
elf32-rx.c \
elf32-s390.c \
elf32-sh-symbian.c \
@@ -514,11 +557,11 @@
elf32-v850.c \
elf32-vax.c \
elf32-xc16x.c \
+ elf32-xgate.c \
elf32-xstormy16.c \
elf32-xtensa.c \
elf32.c \
elflink.c \
- elfxx-mips.c \
elfxx-sparc.c \
elfxx-tilegx.c \
epoc-pe-arm.c \
@@ -595,6 +638,9 @@
# elf32-ia64.c requires a 64-bit bfd_vma, and hence can not be put in
# BFD32_BACKENDS.
BFD64_BACKENDS = \
+ elf32-aarch64.lo \
+ elf64-aarch64.lo \
+ elfxx-aarch64.lo \
aix5ppc-core.lo \
aout64.lo \
coff-alpha.lo \
@@ -602,12 +648,14 @@
coff64-rs6000.lo \
demo64.lo \
elf32-ia64.lo \
+ elf32-mips.lo \
elf32-score.lo \
elf32-score7.lo \
elf64-alpha.lo \
elf64-gen.lo \
elf64-hppa.lo \
elf64-ia64.lo \
+ elf64-ia64-vms.lo \
elf64-mips.lo \
elf64-mmix.lo \
elf64-ppc.lo \
@@ -619,6 +667,7 @@
elf64.lo \
elfn32-mips.lo \
elfxx-ia64.lo \
+ elfxx-mips.lo \
mach-o-x86-64.lo \
mmo.lo \
nlm32-alpha.lo \
@@ -637,11 +686,13 @@
coff-x86_64.c \
coff64-rs6000.c \
demo64.c \
+ elf32-mips.c \
elf32-score.c \
elf32-score7.c \
elf64-alpha.c \
elf64-gen.c \
elf64-hppa.c \
+ elf64-ia64-vms.c \
elf64-mips.c \
elf64-mmix.c \
elf64-ppc.c \
@@ -652,7 +703,9 @@
elf64-x86-64.c \
elf64.c \
elfn32-mips.c \
+ elfxx-aarch64.c \
elfxx-ia64.c \
+ elfxx-mips.c \
mach-o-x86-64.c \
mmo.c \
nlm32-alpha.c \
@@ -713,6 +766,7 @@
$(OPTIONAL_BACKENDS_CFILES)
BUILD_CFILES = \
+ elf32-aarch64.c elf64-aarch64.c \
elf32-ia64.c elf64-ia64.c peigen.c pepigen.c pex64igen.c
CFILES = $(SOURCE_CFILES) $(BUILD_CFILES)
@@ -720,7 +774,7 @@
## This is a list of all .h files which are in the source tree.
SOURCE_HFILES = \
aout-target.h aoutf1.h aoutx.h coffcode.h coffswap.h ecoffswap.h \
- elf-bfd.h elf-hppa.h elf32-hppa.h \
+ elf-bfd.h elf-hppa.h elf-linux-psinfo.h elf32-hppa.h \
elf64-hppa.h elfcode.h elfcore.h \
freebsd.h genlink.h go32stub.h \
libaout.h libbfd.h libcoff.h libecoff.h libhppa.h libieee.h \
@@ -861,6 +915,18 @@
sed -e s/NN/64/g < $(srcdir)/elfxx-target.h > elf64-target.new
mv -f elf64-target.new elf64-target.h
+elf32-aarch64.c : elfnn-aarch64.c
+ rm -f elf32-aarch64.c
+ echo "#line 1 \"$(srcdir)/elfnn-aarch64.c\"" > elf32-aarch64.new
+ sed -e s/NN/32/g < $(srcdir)/elfnn-aarch64.c >> elf32-aarch64.new
+ mv -f elf32-aarch64.new elf32-aarch64.c
+
+elf64-aarch64.c : elfnn-aarch64.c
+ rm -f elf64-aarch64.c
+ echo "#line 1 \"$(srcdir)/elfnn-aarch64.c\"" > elf64-aarch64.new
+ sed -e s/NN/64/g < $(srcdir)/elfnn-aarch64.c >> elf64-aarch64.new
+ mv -f elf64-aarch64.new elf64-aarch64.c
+
elf32-ia64.c : elfnn-ia64.c
rm -f elf32-ia64.c
sed -e s/NN/32/g < $(srcdir)/elfnn-ia64.c > elf32-ia64.new
diff --git a/bfd/Makefile.in b/bfd/Makefile.in
index 741809c..78d2d2c 100644
--- a/bfd/Makefile.in
+++ b/bfd/Makefile.in
@@ -15,6 +15,24 @@
@SET_MAKE@
+#
+# Copyright 2012 Free Software Foundation
+#
+# This file is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING3. If not see
+# <http://www.gnu.org/licenses/>.
+#
+
VPATH = @srcdir@
@@ -293,6 +311,7 @@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
+lt_cv_dlopen_libs = @lt_cv_dlopen_libs@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
@@ -336,7 +355,7 @@
@INSTALL_LIBBFD_FALSE@noinst_LTLIBRARIES = libbfd.la
AM_CFLAGS = $(WARN_CFLAGS)
AM_CPPFLAGS = -DBINDIR='"$(bindir)"'
-@PLUGINS_TRUE@LIBDL = -ldl
+@PLUGINS_TRUE@LIBDL = @lt_cv_dlopen_libs@
# bfd.h goes here, for now
BFD_H = bfd.h
@@ -370,6 +389,7 @@
# This list is alphabetized to make it easier to keep in sync
# with the decls and initializer in archures.c.
ALL_MACHINES = \
+ cpu-aarch64.lo \
cpu-alpha.lo \
cpu-arc.lo \
cpu-arm.lo \
@@ -382,6 +402,7 @@
cpu-d10v.lo \
cpu-d30v.lo \
cpu-dlx.lo \
+ cpu-epiphany.lo \
cpu-fr30.lo \
cpu-frv.lo \
cpu-h8300.lo \
@@ -403,16 +424,20 @@
cpu-m32r.lo \
cpu-m68hc11.lo \
cpu-m68hc12.lo \
+ cpu-m9s12x.lo \
+ cpu-m9s12xg.lo \
cpu-m68k.lo \
cpu-m88k.lo \
cpu-mcore.lo \
cpu-mep.lo \
+ cpu-metag.lo \
cpu-microblaze.lo \
cpu-mips.lo \
cpu-mmix.lo \
cpu-moxie.lo \
cpu-msp430.lo \
cpu-mt.lo \
+ cpu-nios2.lo \
cpu-ns32k.lo \
cpu-openrisc.lo \
cpu-or32.lo \
@@ -421,6 +446,7 @@
cpu-plugin.lo \
cpu-powerpc.lo \
cpu-rs6000.lo \
+ cpu-rl78.lo \
cpu-rx.lo \
cpu-s390.lo \
cpu-score.lo \
@@ -435,16 +461,19 @@
cpu-tilegx.lo \
cpu-tilepro.lo \
cpu-v850.lo \
+ cpu-v850_rh850.lo \
cpu-vax.lo \
cpu-w65.lo \
cpu-we32k.lo \
cpu-xc16x.lo \
+ cpu-xgate.lo \
cpu-xstormy16.lo \
cpu-xtensa.lo \
cpu-z80.lo \
cpu-z8k.lo
ALL_MACHINES_CFILES = \
+ cpu-aarch64.c \
cpu-alpha.c \
cpu-arc.c \
cpu-arm.c \
@@ -457,6 +486,7 @@
cpu-d10v.c \
cpu-d30v.c \
cpu-dlx.c \
+ cpu-epiphany.c \
cpu-fr30.c \
cpu-frv.c \
cpu-h8300.c \
@@ -478,10 +508,13 @@
cpu-m32r.c \
cpu-m68hc11.c \
cpu-m68hc12.c \
+ cpu-m9s12x.c \
+ cpu-m9s12xg.c \
cpu-m68k.c \
cpu-m88k.c \
cpu-mcore.c \
cpu-mep.c \
+ cpu-metag.c \
cpu-microblaze.c \
cpu-mips.c \
cpu-mmix.c \
@@ -489,6 +522,7 @@
cpu-msp430.c \
cpu-mt.c \
cpu-ns32k.c \
+ cpu-nios2.c \
cpu-openrisc.c \
cpu-or32.c \
cpu-pdp11.c \
@@ -496,6 +530,7 @@
cpu-plugin.c \
cpu-powerpc.c \
cpu-rs6000.c \
+ cpu-rl78.c \
cpu-rx.c \
cpu-s390.c \
cpu-score.c \
@@ -510,10 +545,12 @@
cpu-tilegx.c \
cpu-tilepro.c \
cpu-v850.c \
+ cpu-v850_rh850.c \
cpu-vax.c \
cpu-w65.c \
cpu-we32k.c \
cpu-xc16x.c \
+ cpu-xgate.c \
cpu-xstormy16.c \
cpu-xtensa.c \
cpu-z80.c \
@@ -571,6 +608,7 @@
elf-ifunc.lo \
elf-m10200.lo \
elf-m10300.lo \
+ elf-nacl.lo \
elf-strtab.lo \
elf-vxworks.lo \
elf.lo \
@@ -586,6 +624,7 @@
elf32-d10v.lo \
elf32-d30v.lo \
elf32-dlx.lo \
+ elf32-epiphany.lo \
elf32-fr30.lo \
elf32-frv.lo \
elf32-gen.lo \
@@ -607,15 +646,17 @@
elf32-m88k.lo \
elf32-mcore.lo \
elf32-mep.lo \
+ elf32-metag.lo \
elf32-microblaze.lo \
- elf32-mips.lo \
elf32-moxie.lo \
elf32-msp430.lo \
elf32-mt.lo \
+ elf32-nios2.lo \
elf32-openrisc.lo \
elf32-or32.lo \
elf32-pj.lo \
elf32-ppc.lo \
+ elf32-rl78.lo \
elf32-rx.lo \
elf32-s390.lo \
elf32-sh-symbian.lo \
@@ -630,11 +671,11 @@
elf32-v850.lo \
elf32-vax.lo \
elf32-xc16x.lo \
+ elf32-xgate.lo \
elf32-xstormy16.lo \
elf32-xtensa.lo \
elf32.lo \
elflink.lo \
- elfxx-mips.lo \
elfxx-sparc.lo \
elfxx-tilegx.lo \
epoc-pe-arm.lo \
@@ -755,6 +796,7 @@
elf-ifunc.c \
elf-m10200.c \
elf-m10300.c \
+ elf-nacl.c \
elf-strtab.c \
elf-vxworks.c \
elf.c \
@@ -770,6 +812,7 @@
elf32-d10v.c \
elf32-d30v.c \
elf32-dlx.c \
+ elf32-epiphany.c \
elf32-fr30.c \
elf32-frv.c \
elf32-gen.c \
@@ -791,15 +834,17 @@
elf32-m88k.c \
elf32-mcore.c \
elf32-mep.c \
+ elf32-metag.c \
elf32-microblaze.c \
- elf32-mips.c \
elf32-moxie.c \
elf32-msp430.c \
elf32-mt.c \
+ elf32-nios2.c \
elf32-openrisc.c \
elf32-or32.c \
elf32-pj.c \
elf32-ppc.c \
+ elf32-rl78.c \
elf32-rx.c \
elf32-s390.c \
elf32-sh-symbian.c \
@@ -814,11 +859,11 @@
elf32-v850.c \
elf32-vax.c \
elf32-xc16x.c \
+ elf32-xgate.c \
elf32-xstormy16.c \
elf32-xtensa.c \
elf32.c \
elflink.c \
- elfxx-mips.c \
elfxx-sparc.c \
elfxx-tilegx.c \
epoc-pe-arm.c \
@@ -896,6 +941,9 @@
# elf32-ia64.c requires a 64-bit bfd_vma, and hence can not be put in
# BFD32_BACKENDS.
BFD64_BACKENDS = \
+ elf32-aarch64.lo \
+ elf64-aarch64.lo \
+ elfxx-aarch64.lo \
aix5ppc-core.lo \
aout64.lo \
coff-alpha.lo \
@@ -903,12 +951,14 @@
coff64-rs6000.lo \
demo64.lo \
elf32-ia64.lo \
+ elf32-mips.lo \
elf32-score.lo \
elf32-score7.lo \
elf64-alpha.lo \
elf64-gen.lo \
elf64-hppa.lo \
elf64-ia64.lo \
+ elf64-ia64-vms.lo \
elf64-mips.lo \
elf64-mmix.lo \
elf64-ppc.lo \
@@ -920,6 +970,7 @@
elf64.lo \
elfn32-mips.lo \
elfxx-ia64.lo \
+ elfxx-mips.lo \
mach-o-x86-64.lo \
mmo.lo \
nlm32-alpha.lo \
@@ -938,11 +989,13 @@
coff-x86_64.c \
coff64-rs6000.c \
demo64.c \
+ elf32-mips.c \
elf32-score.c \
elf32-score7.c \
elf64-alpha.c \
elf64-gen.c \
elf64-hppa.c \
+ elf64-ia64-vms.c \
elf64-mips.c \
elf64-mmix.c \
elf64-ppc.c \
@@ -953,7 +1006,9 @@
elf64-x86-64.c \
elf64.c \
elfn32-mips.c \
+ elfxx-aarch64.c \
elfxx-ia64.c \
+ elfxx-mips.c \
mach-o-x86-64.c \
mmo.c \
nlm32-alpha.c \
@@ -1016,12 +1071,13 @@
$(OPTIONAL_BACKENDS_CFILES)
BUILD_CFILES = \
+ elf32-aarch64.c elf64-aarch64.c \
elf32-ia64.c elf64-ia64.c peigen.c pepigen.c pex64igen.c
CFILES = $(SOURCE_CFILES) $(BUILD_CFILES)
SOURCE_HFILES = \
aout-target.h aoutf1.h aoutx.h coffcode.h coffswap.h ecoffswap.h \
- elf-bfd.h elf-hppa.h elf32-hppa.h \
+ elf-bfd.h elf-hppa.h elf-linux-psinfo.h elf32-hppa.h \
elf64-hppa.h elfcode.h elfcore.h \
freebsd.h genlink.h go32stub.h \
libaout.h libbfd.h libcoff.h libecoff.h libhppa.h libieee.h \
@@ -1248,6 +1304,7 @@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cofflink.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/compress.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/corefile.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-aarch64.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-alpha.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-arc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-arm.Plo@am__quote@
@@ -1260,6 +1317,7 @@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-d10v.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-d30v.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-dlx.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-epiphany.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-fr30.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-frv.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-h8300.Plo@am__quote@
@@ -1283,14 +1341,18 @@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-m68hc12.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-m68k.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-m88k.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-m9s12x.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-m9s12xg.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-mcore.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-mep.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-metag.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-microblaze.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-mips.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-mmix.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-moxie.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-msp430.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-mt.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-nios2.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-ns32k.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-openrisc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-or32.Plo@am__quote@
@@ -1298,6 +1360,7 @@
@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-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@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-s390.Plo@am__quote@
@@ -1313,10 +1376,12 @@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-tilegx.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-tilepro.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-v850.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-v850_rh850.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-vax.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-w65.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@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-xstormy16.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-xtensa.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpu-z80.Plo@am__quote@
@@ -1331,9 +1396,11 @@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf-ifunc.Plo@am__quote@
@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-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@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-aarch64.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-am33lin.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-arc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-arm.Plo@am__quote@
@@ -1346,6 +1413,7 @@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-d10v.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-d30v.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-dlx.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-epiphany.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-fr30.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-frv.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-gen.Plo@am__quote@
@@ -1368,15 +1436,18 @@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-m88k.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-mcore.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-mep.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-metag.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-microblaze.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-mips.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-moxie.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-msp430.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-mt.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-nios2.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-openrisc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-or32.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-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@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-score.Plo@am__quote@
@@ -1393,12 +1464,15 @@
@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-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@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32-xtensa.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf32.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-aarch64.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-alpha.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-gen.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-hppa.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-ia64-vms.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-ia64.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-mips.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64-mmix.Plo@am__quote@
@@ -1411,6 +1485,7 @@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elf64.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elflink.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfn32-mips.Plo@am__quote@
+@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-sparc.Plo@am__quote@
@@ -1919,6 +1994,18 @@
sed -e s/NN/64/g < $(srcdir)/elfxx-target.h > elf64-target.new
mv -f elf64-target.new elf64-target.h
+elf32-aarch64.c : elfnn-aarch64.c
+ rm -f elf32-aarch64.c
+ echo "#line 1 \"$(srcdir)/elfnn-aarch64.c\"" > elf32-aarch64.new
+ sed -e s/NN/32/g < $(srcdir)/elfnn-aarch64.c >> elf32-aarch64.new
+ mv -f elf32-aarch64.new elf32-aarch64.c
+
+elf64-aarch64.c : elfnn-aarch64.c
+ rm -f elf64-aarch64.c
+ echo "#line 1 \"$(srcdir)/elfnn-aarch64.c\"" > elf64-aarch64.new
+ sed -e s/NN/64/g < $(srcdir)/elfnn-aarch64.c >> elf64-aarch64.new
+ mv -f elf64-aarch64.new elf64-aarch64.c
+
elf32-ia64.c : elfnn-ia64.c
rm -f elf32-ia64.c
sed -e s/NN/32/g < $(srcdir)/elfnn-ia64.c > elf32-ia64.new
diff --git a/bfd/PORTING b/bfd/PORTING
index c8bfd77..b820525 100644
--- a/bfd/PORTING
+++ b/bfd/PORTING
@@ -81,3 +81,9 @@
TARGETNAME
The name of the target, for run-time lookups.
Usually "a.out-<target>"
+
+Copyright (C) 2012 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
diff --git a/bfd/README b/bfd/README
index fe6b6f3..5ecfd29 100644
--- a/bfd/README
+++ b/bfd/README
@@ -47,3 +47,9 @@
Bug reports without patches will be remembered, but they may never get
fixed until somebody volunteers to fix them.
+
+Copyright (C) 2012 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
diff --git a/bfd/TODO b/bfd/TODO
index 7a12735..012d624 100644
--- a/bfd/TODO
+++ b/bfd/TODO
@@ -19,7 +19,9 @@
the stupid quips and fill in all the blanks.
o - upgrade the reloc handling as per Steve's suggestion.
+
+Copyright (C) 2012 Free Software Foundation, Inc.
-
-
-
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
diff --git a/bfd/acinclude.m4 b/bfd/acinclude.m4
index d9813bd..3518592 100644
--- a/bfd/acinclude.m4
+++ b/bfd/acinclude.m4
@@ -1,3 +1,21 @@
+dnl
+dnl Copyright 2012 Free Software Foundation
+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
+dnl the Free Software Foundation; either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program; see the file COPYING3. If not see
+dnl <http://www.gnu.org/licenses/>.
+dnl
+
sinclude([../config/zlib.m4])
dnl See whether we need to use fopen-bin.h rather than fopen-same.h.
diff --git a/bfd/aix386-core.c b/bfd/aix386-core.c
index 121d623..947ab80 100644
--- a/bfd/aix386-core.c
+++ b/bfd/aix386-core.c
@@ -2,7 +2,7 @@
This was based on trad-core.c, which was written by John Gilmore of
Cygnus Support.
Copyright 1988, 1989, 1991, 1992, 1993, 1994, 1996, 1998, 1999, 2000,
- 2001, 2002, 2004, 2005, 2006, 2007, 2010, 2011
+ 2001, 2002, 2004, 2005, 2006, 2007, 2010, 2011, 2012
Free Software Foundation, Inc.
Written by Minh Tran-Le <[email protected]>.
Converted to back end form by Ian Lance Taylor <[email protected]>.
@@ -59,32 +59,31 @@
(((bfd)->tdata.trad_core_data)->reg2_section)
/* These are stored in the bfd's tdata. */
-struct trad_core_struct {
+struct trad_core_struct
+{
struct corehdr *hdr; /* core file header */
asection *reg_section;
asection *reg2_section;
asection *sections[MAX_CORE_SEGS];
};
-static void swap_abort PARAMS ((void));
-
static const bfd_target *
-aix386_core_file_p (abfd)
- bfd *abfd;
+aix386_core_file_p (bfd *abfd)
{
int i, n;
unsigned char longbuf[4]; /* Raw bytes of various header fields */
bfd_size_type core_size = sizeof (struct corehdr);
bfd_size_type amt;
struct corehdr *core;
- struct mergem {
+ struct mergem
+ {
struct trad_core_struct coredata;
struct corehdr internal_core;
} *mergem;
flagword flags;
amt = sizeof (longbuf);
- if (bfd_bread ((PTR) longbuf, amt, abfd) != amt)
+ if (bfd_bread (longbuf, amt, abfd) != amt)
{
if (bfd_get_error () != bfd_error_system_call)
bfd_set_error (bfd_error_wrong_format);
@@ -104,7 +103,7 @@
core = &mergem->internal_core;
- if ((bfd_bread ((PTR) core, core_size, abfd)) != core_size)
+ if ((bfd_bread (core, core_size, abfd)) != core_size)
{
if (bfd_get_error () != bfd_error_system_call)
bfd_set_error (bfd_error_wrong_format);
@@ -196,15 +195,13 @@
}
static char *
-aix386_core_file_failing_command (abfd)
- bfd *abfd;
+aix386_core_file_failing_command (bfd *abfd)
{
return core_hdr (abfd)->cd_comm;
}
static int
-aix386_core_file_failing_signal (abfd)
- bfd *abfd;
+aix386_core_file_failing_signal (bfd *abfd)
{
return core_hdr (abfd)->cd_cursig;
}
@@ -216,7 +213,7 @@
/* If somebody calls any byte-swapping routines, shoot them. */
static void
-swap_abort ()
+swap_abort (void)
{
/* This way doesn't require any declaration for ANSI to fuck up. */
abort ();
@@ -229,7 +226,8 @@
#define NO_PUT64 ((void (*) (bfd_uint64_t, void *)) swap_abort)
#define NO_GETS64 ((bfd_int64_t (*) (const void *)) swap_abort)
-const bfd_target aix386_core_vec = {
+const bfd_target aix386_core_vec =
+{
"aix386-core",
bfd_target_unknown_flavour,
BFD_ENDIAN_BIG, /* target byte order */
@@ -269,5 +267,5 @@
NULL,
- (PTR) 0
+ NULL
};
diff --git a/bfd/aout-arm.c b/bfd/aout-arm.c
index fd93603..9eb9488 100644
--- a/bfd/aout-arm.c
+++ b/bfd/aout-arm.c
@@ -1,6 +1,6 @@
/* BFD back-end for raw ARM a.out binaries.
Copyright 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005,
- 2007, 2009, 2010, 2011 Free Software Foundation, Inc.
+ 2007, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
Contributed by Richard Earnshaw ([email protected])
This file is part of BFD, the Binary File Descriptor library.
@@ -247,7 +247,7 @@
bfd_reloc_status_type flag = bfd_reloc_ok;
/* If this is an undefined symbol, return error. */
- if (symbol->section == &bfd_und_section
+ if (bfd_is_und_section (symbol->section)
&& (symbol->flags & BSF_WEAK) == 0)
return output_bfd ? bfd_reloc_ok : bfd_reloc_undefined;
@@ -409,10 +409,10 @@
check for that here. */
if (bfd_is_com_section (output_section)
- || output_section == &bfd_abs_section
- || output_section == &bfd_und_section)
+ || bfd_is_abs_section (output_section)
+ || bfd_is_und_section (output_section))
{
- if (bfd_abs_section.symbol == sym)
+ if (bfd_abs_section_ptr->symbol == sym)
{
/* Whoops, looked like an abs symbol, but is really an offset
from the abs section. */
diff --git a/bfd/aout-cris.c b/bfd/aout-cris.c
index f1f3060..3e3d21a 100644
--- a/bfd/aout-cris.c
+++ b/bfd/aout-cris.c
@@ -1,5 +1,5 @@
/* BFD backend for CRIS a.out binaries.
- Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009
+ Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009, 2012
Free Software Foundation, Inc.
Contributed by Axis Communications AB.
Written by Hans-Peter Nilsson.
@@ -66,6 +66,7 @@
#define MY(OP) CONCAT2 (cris_aout_,OP)
#define NAME(x, y) CONCAT3 (cris_aout,_32_,y)
+#include "sysdep.h"
#include "bfd.h"
/* Version 1 of the header. */
diff --git a/bfd/aout-ns32k.c b/bfd/aout-ns32k.c
index 9a0737d..75886bc 100644
--- a/bfd/aout-ns32k.c
+++ b/bfd/aout-ns32k.c
@@ -1,6 +1,6 @@
/* BFD back-end for ns32k a.out-ish binaries.
Copyright 1990, 1991, 1992, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
- 2002, 2003, 2005, 2006, 2007, 2010 Free Software Foundation, Inc.
+ 2002, 2003, 2005, 2006, 2007, 2010, 2012 Free Software Foundation, Inc.
Contributed by Ian Dall ([email protected]).
This file is part of BFD, the Binary File Descriptor library.
@@ -20,6 +20,7 @@
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
MA 02110-1301, USA. */
+#include "sysdep.h"
#include "bfd.h"
#include "aout/aout64.h"
#include "ns32k.h"
@@ -303,10 +304,10 @@
from the abs section, or as a symbol which has an abs value.
Check for that here. */
if (bfd_is_com_section (output_section)
- || output_section == &bfd_abs_section
- || output_section == &bfd_und_section)
+ || bfd_is_abs_section (output_section)
+ || bfd_is_und_section (output_section))
{
- if (bfd_abs_section.symbol == sym)
+ if (bfd_abs_section_ptr->symbol == sym)
{
/* Whoops, looked like an abs symbol, but is really an offset
from the abs section. */
diff --git a/bfd/aout-sparcle.c b/bfd/aout-sparcle.c
index afcc342..e050423 100644
--- a/bfd/aout-sparcle.c
+++ b/bfd/aout-sparcle.c
@@ -1,5 +1,5 @@
/* BFD backend for sparc little-endian aout binaries.
- Copyright 1996, 2001, 2005, 2007 Free Software Foundation, Inc.
+ Copyright 1996, 2001, 2005, 2007, 2012 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@@ -25,6 +25,7 @@
the tokens. */
#define MY(OP) CONCAT2 (sparcle_aout_,OP)
+#include "sysdep.h"
#include "bfd.h"
#include "bfdlink.h"
#include "libaout.h"
diff --git a/bfd/aout-target.h b/bfd/aout-target.h
index f6e8bd2..1ffef87 100644
--- a/bfd/aout-target.h
+++ b/bfd/aout-target.h
@@ -577,7 +577,18 @@
#endif
#ifndef MY_close_and_cleanup
-#define MY_close_and_cleanup MY_bfd_free_cached_info
+
+/* Handle closing of a BFD including the resource-releasing parts. */
+
+static bfd_boolean
+MY_close_and_cleanup (bfd *abfd)
+{
+ if (!MY_bfd_free_cached_info (abfd))
+ return FALSE;
+
+ return _bfd_generic_close_and_cleanup (abfd);
+}
+
#endif
#ifndef MY_get_dynamic_symtab_upper_bound
diff --git a/bfd/aout-tic30.c b/bfd/aout-tic30.c
index 0b01177..d8ce9be 100644
--- a/bfd/aout-tic30.c
+++ b/bfd/aout-tic30.c
@@ -1,6 +1,6 @@
/* BFD back-end for TMS320C30 a.out binaries.
Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009,
- 2010, 2011
+ 2010, 2011, 2012
Free Software Foundation, Inc.
Contributed by Steven Haworth ([email protected])
@@ -189,7 +189,7 @@
bfd_vma relocation;
/* Make sure that the symbol's section is defined. */
- if (symbol->section == &bfd_und_section && (symbol->flags & BSF_WEAK) == 0)
+ if (bfd_is_und_section (symbol->section) && (symbol->flags & BSF_WEAK) == 0)
return output_bfd ? bfd_reloc_ok : bfd_reloc_undefined;
/* Get the size of the input section and turn it into the TMS320C30
32-bit address format. */
@@ -214,7 +214,7 @@
bfd_vma relocation;
/* Make sure that the symbol's section is defined. */
- if (symbol->section == &bfd_und_section && (symbol->flags & BSF_WEAK) == 0)
+ if (bfd_is_und_section (symbol->section) && (symbol->flags & BSF_WEAK) == 0)
return output_bfd ? bfd_reloc_ok : bfd_reloc_undefined;
/* Get the size of the input section and turn it into the TMS320C30
32-bit address format. */
@@ -701,7 +701,7 @@
*ptreloff = obj_datasec (abfd)->filepos + execp->a_data;
*pdreloff = *ptreloff + execp->a_trsize;
- *psymoff = *pdreloff + execp->a_drsize;;
+ *psymoff = *pdreloff + execp->a_drsize;
}
#endif
diff --git a/bfd/aout0.c b/bfd/aout0.c
index e87af00..be73fa0 100644
--- a/bfd/aout0.c
+++ b/bfd/aout0.c
@@ -1,10 +1,10 @@
/* BFD backend for SunOS style a.out with flags set to 0
- Copyright 1990, 1991, 1992, 1993, 1994, 1995, 2001, 2005, 2007
+ Copyright 1990, 1991, 1992, 1993, 1994, 1995, 2001, 2005, 2007, 2012
Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
-
+
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
@@ -27,6 +27,7 @@
the tokens. */
#define MY(OP) CONCAT2 (aout0_big_,OP)
+#include "sysdep.h"
#include "bfd.h"
#define MY_exec_hdr_flags 0
diff --git a/bfd/aoutx.h b/bfd/aoutx.h
index 1efb715..1e0ad38 100644
--- a/bfd/aoutx.h
+++ b/bfd/aoutx.h
@@ -3554,7 +3554,7 @@
aout_link_write_other_symbol (struct bfd_hash_entry *bh, void *data)
{
struct aout_link_hash_entry *h = (struct aout_link_hash_entry *) bh;
- struct aout_final_link_info *finfo = (struct aout_final_link_info *) data;
+ struct aout_final_link_info *flaginfo = (struct aout_final_link_info *) data;
bfd *output_bfd;
int type;
bfd_vma val;
@@ -3569,12 +3569,12 @@
return TRUE;
}
- output_bfd = finfo->output_bfd;
+ output_bfd = flaginfo->output_bfd;
if (aout_backend_info (output_bfd)->write_dynamic_symbol != NULL)
{
if (! ((*aout_backend_info (output_bfd)->write_dynamic_symbol)
- (output_bfd, finfo->info, h)))
+ (output_bfd, flaginfo->info, h)))
{
/* FIXME: No way to handle errors. */
abort ();
@@ -3588,9 +3588,9 @@
/* An indx of -2 means the symbol must be written. */
if (h->indx != -2
- && (finfo->info->strip == strip_all
- || (finfo->info->strip == strip_some
- && bfd_hash_lookup (finfo->info->keep_hash, h->root.root.string,
+ && (flaginfo->info->strip == strip_all
+ || (flaginfo->info->strip == strip_some
+ && bfd_hash_lookup (flaginfo->info->keep_hash, h->root.root.string,
FALSE, FALSE) == NULL)))
return TRUE;
@@ -3648,7 +3648,7 @@
H_PUT_8 (output_bfd, type, outsym.e_type);
H_PUT_8 (output_bfd, 0, outsym.e_other);
H_PUT_16 (output_bfd, 0, outsym.e_desc);
- indx = add_to_stringtab (output_bfd, finfo->strtab, h->root.root.string,
+ indx = add_to_stringtab (output_bfd, flaginfo->strtab, h->root.root.string,
FALSE);
if (indx == - (bfd_size_type) 1)
/* FIXME: No way to handle errors. */
@@ -3658,12 +3658,12 @@
PUT_WORD (output_bfd, val, outsym.e_value);
amt = EXTERNAL_NLIST_SIZE;
- if (bfd_seek (output_bfd, finfo->symoff, SEEK_SET) != 0
+ if (bfd_seek (output_bfd, flaginfo->symoff, SEEK_SET) != 0
|| bfd_bwrite ((void *) &outsym, amt, output_bfd) != amt)
/* FIXME: No way to handle errors. */
abort ();
- finfo->symoff += EXTERNAL_NLIST_SIZE;
+ flaginfo->symoff += EXTERNAL_NLIST_SIZE;
h->indx = obj_aout_external_sym_count (output_bfd);
++obj_aout_external_sym_count (output_bfd);
@@ -3673,7 +3673,7 @@
/* Handle a link order which is supposed to generate a reloc. */
static bfd_boolean
-aout_link_reloc_link_order (struct aout_final_link_info *finfo,
+aout_link_reloc_link_order (struct aout_final_link_info *flaginfo,
asection *o,
struct bfd_link_order *p)
{
@@ -3696,7 +3696,7 @@
r_index = N_ABS | N_EXT;
else
{
- BFD_ASSERT (pr->u.section->owner == finfo->output_bfd);
+ BFD_ASSERT (pr->u.section->owner == flaginfo->output_bfd);
r_index = pr->u.section->target_index;
}
}
@@ -3707,7 +3707,7 @@
BFD_ASSERT (p->type == bfd_symbol_reloc_link_order);
r_extern = 1;
h = ((struct aout_link_hash_entry *)
- bfd_wrapped_link_hash_lookup (finfo->output_bfd, finfo->info,
+ bfd_wrapped_link_hash_lookup (flaginfo->output_bfd, flaginfo->info,
pr->u.name, FALSE, FALSE, TRUE));
if (h != NULL
&& h->indx >= 0)
@@ -3720,37 +3720,37 @@
symbol. */
h->indx = -2;
h->written = FALSE;
- if (!aout_link_write_other_symbol (&h->root.root, finfo))
+ if (!aout_link_write_other_symbol (&h->root.root, flaginfo))
return FALSE;
r_index = h->indx;
}
else
{
- if (! ((*finfo->info->callbacks->unattached_reloc)
- (finfo->info, pr->u.name, NULL, NULL, (bfd_vma) 0)))
+ if (! ((*flaginfo->info->callbacks->unattached_reloc)
+ (flaginfo->info, pr->u.name, NULL, NULL, (bfd_vma) 0)))
return FALSE;
r_index = 0;
}
}
- howto = bfd_reloc_type_lookup (finfo->output_bfd, pr->reloc);
+ howto = bfd_reloc_type_lookup (flaginfo->output_bfd, pr->reloc);
if (howto == 0)
{
bfd_set_error (bfd_error_bad_value);
return FALSE;
}
- if (o == obj_textsec (finfo->output_bfd))
- reloff_ptr = &finfo->treloff;
- else if (o == obj_datasec (finfo->output_bfd))
- reloff_ptr = &finfo->dreloff;
+ if (o == obj_textsec (flaginfo->output_bfd))
+ reloff_ptr = &flaginfo->treloff;
+ else if (o == obj_datasec (flaginfo->output_bfd))
+ reloff_ptr = &flaginfo->dreloff;
else
abort ();
- if (obj_reloc_entry_size (finfo->output_bfd) == RELOC_STD_SIZE)
+ if (obj_reloc_entry_size (flaginfo->output_bfd) == RELOC_STD_SIZE)
{
#ifdef MY_put_reloc
- MY_put_reloc (finfo->output_bfd, r_extern, r_index, p->offset, howto,
+ MY_put_reloc (flaginfo->output_bfd, r_extern, r_index, p->offset, howto,
&srel);
#else
{
@@ -3766,8 +3766,8 @@
r_relative = (howto->type & 32) != 0;
r_length = howto->size;
- PUT_WORD (finfo->output_bfd, p->offset, srel.r_address);
- if (bfd_header_big_endian (finfo->output_bfd))
+ PUT_WORD (flaginfo->output_bfd, p->offset, srel.r_address);
+ if (bfd_header_big_endian (flaginfo->output_bfd))
{
srel.r_index[0] = r_index >> 16;
srel.r_index[1] = r_index >> 8;
@@ -3813,7 +3813,7 @@
buf = (bfd_byte *) bfd_zmalloc (size);
if (buf == NULL)
return FALSE;
- r = MY_relocate_contents (howto, finfo->output_bfd,
+ r = MY_relocate_contents (howto, flaginfo->output_bfd,
(bfd_vma) pr->addend, buf);
switch (r)
{
@@ -3823,10 +3823,10 @@
case bfd_reloc_outofrange:
abort ();
case bfd_reloc_overflow:
- if (! ((*finfo->info->callbacks->reloc_overflow)
- (finfo->info, NULL,
+ if (! ((*flaginfo->info->callbacks->reloc_overflow)
+ (flaginfo->info, NULL,
(p->type == bfd_section_reloc_link_order
- ? bfd_section_name (finfo->output_bfd,
+ ? bfd_section_name (flaginfo->output_bfd,
pr->u.section)
: pr->u.name),
howto->name, pr->addend, NULL, NULL, (bfd_vma) 0)))
@@ -3836,7 +3836,7 @@
}
break;
}
- ok = bfd_set_section_contents (finfo->output_bfd, o, (void *) buf,
+ ok = bfd_set_section_contents (flaginfo->output_bfd, o, (void *) buf,
(file_ptr) p->offset, size);
free (buf);
if (! ok)
@@ -3846,12 +3846,12 @@
else
{
#ifdef MY_put_ext_reloc
- MY_put_ext_reloc (finfo->output_bfd, r_extern, r_index, p->offset,
+ MY_put_ext_reloc (flaginfo->output_bfd, r_extern, r_index, p->offset,
howto, &erel, pr->addend);
#else
- PUT_WORD (finfo->output_bfd, p->offset, erel.r_address);
+ PUT_WORD (flaginfo->output_bfd, p->offset, erel.r_address);
- if (bfd_header_big_endian (finfo->output_bfd))
+ if (bfd_header_big_endian (flaginfo->output_bfd))
{
erel.r_index[0] = r_index >> 16;
erel.r_index[1] = r_index >> 8;
@@ -3870,25 +3870,25 @@
| (howto->type << RELOC_EXT_BITS_TYPE_SH_LITTLE);
}
- PUT_WORD (finfo->output_bfd, (bfd_vma) pr->addend, erel.r_addend);
+ PUT_WORD (flaginfo->output_bfd, (bfd_vma) pr->addend, erel.r_addend);
#endif /* MY_put_ext_reloc */
rel_ptr = (void *) &erel;
}
- amt = obj_reloc_entry_size (finfo->output_bfd);
- if (bfd_seek (finfo->output_bfd, *reloff_ptr, SEEK_SET) != 0
- || bfd_bwrite (rel_ptr, amt, finfo->output_bfd) != amt)
+ amt = obj_reloc_entry_size (flaginfo->output_bfd);
+ if (bfd_seek (flaginfo->output_bfd, *reloff_ptr, SEEK_SET) != 0
+ || bfd_bwrite (rel_ptr, amt, flaginfo->output_bfd) != amt)
return FALSE;
- *reloff_ptr += obj_reloc_entry_size (finfo->output_bfd);
+ *reloff_ptr += obj_reloc_entry_size (flaginfo->output_bfd);
/* Assert that the relocs have not run into the symbols, and that n
the text relocs have not run into the data relocs. */
- BFD_ASSERT (*reloff_ptr <= obj_sym_filepos (finfo->output_bfd)
- && (reloff_ptr != &finfo->treloff
+ BFD_ASSERT (*reloff_ptr <= obj_sym_filepos (flaginfo->output_bfd)
+ && (reloff_ptr != &flaginfo->treloff
|| (*reloff_ptr
- <= obj_datasec (finfo->output_bfd)->rel_filepos)));
+ <= obj_datasec (flaginfo->output_bfd)->rel_filepos)));
return TRUE;
}
@@ -3913,7 +3913,7 @@
/* Relocate an a.out section using standard a.out relocs. */
static bfd_boolean
-aout_link_input_section_std (struct aout_final_link_info *finfo,
+aout_link_input_section_std (struct aout_final_link_info *flaginfo,
bfd *input_bfd,
asection *input_section,
struct reloc_std_external *relocs,
@@ -3934,18 +3934,18 @@
struct reloc_std_external *rel;
struct reloc_std_external *rel_end;
- output_bfd = finfo->output_bfd;
+ output_bfd = flaginfo->output_bfd;
check_dynamic_reloc = aout_backend_info (output_bfd)->check_dynamic_reloc;
BFD_ASSERT (obj_reloc_entry_size (input_bfd) == RELOC_STD_SIZE);
BFD_ASSERT (input_bfd->xvec->header_byteorder
== output_bfd->xvec->header_byteorder);
- relocatable = finfo->info->relocatable;
+ relocatable = flaginfo->info->relocatable;
syms = obj_aout_external_syms (input_bfd);
strings = obj_aout_external_strings (input_bfd);
sym_hashes = obj_aout_sym_hashes (input_bfd);
- symbol_map = finfo->symbol_map;
+ symbol_map = flaginfo->symbol_map;
reloc_count = rel_size / RELOC_STD_SIZE;
rel = relocs;
@@ -4014,7 +4014,7 @@
if (howto == NULL)
{
- (*finfo->info->callbacks->einfo)
+ (*flaginfo->info->callbacks->einfo)
(_("%P: %B: unexpected relocation type\n"), input_bfd);
bfd_set_error (bfd_error_bad_value);
return FALSE;
@@ -4079,7 +4079,7 @@
h->indx = -2;
h->written = FALSE;
if (!aout_link_write_other_symbol (&h->root.root,
- finfo))
+ flaginfo))
return FALSE;
}
r_index = h->indx;
@@ -4090,8 +4090,8 @@
name = strings + GET_WORD (input_bfd,
syms[r_index].e_strx);
- if (! ((*finfo->info->callbacks->unattached_reloc)
- (finfo->info, name, input_bfd, input_section,
+ if (! ((*flaginfo->info->callbacks->unattached_reloc)
+ (flaginfo->info, name, input_bfd, input_section,
r_addr)))
return FALSE;
r_index = 0;
@@ -4197,7 +4197,7 @@
bfd_boolean skip;
if (! ((*check_dynamic_reloc)
- (finfo->info, input_bfd, input_section, h,
+ (flaginfo->info, input_bfd, input_section, h,
(void *) rel, contents, &skip, &relocation)))
return FALSE;
if (skip)
@@ -4207,7 +4207,7 @@
/* Now warn if a global symbol is undefined. We could not
do this earlier, because check_dynamic_reloc might want
to skip this reloc. */
- if (hundef && ! finfo->info->shared && ! r_baserel)
+ if (hundef && ! flaginfo->info->shared && ! r_baserel)
{
const char *name;
@@ -4215,8 +4215,8 @@
name = h->root.root.string;
else
name = strings + GET_WORD (input_bfd, syms[r_index].e_strx);
- if (! ((*finfo->info->callbacks->undefined_symbol)
- (finfo->info, name, input_bfd, input_section,
+ if (! ((*flaginfo->info->callbacks->undefined_symbol)
+ (flaginfo->info, name, input_bfd, input_section,
r_addr, TRUE)))
return FALSE;
}
@@ -4250,8 +4250,8 @@
s = aout_reloc_index_to_section (input_bfd, r_index);
name = bfd_section_name (input_bfd, s);
}
- if (! ((*finfo->info->callbacks->reloc_overflow)
- (finfo->info, (h ? &h->root : NULL), name,
+ if (! ((*flaginfo->info->callbacks->reloc_overflow)
+ (flaginfo->info, (h ? &h->root : NULL), name,
howto->name, (bfd_vma) 0, input_bfd,
input_section, r_addr)))
return FALSE;
@@ -4267,7 +4267,7 @@
/* Relocate an a.out section using extended a.out relocs. */
static bfd_boolean
-aout_link_input_section_ext (struct aout_final_link_info *finfo,
+aout_link_input_section_ext (struct aout_final_link_info *flaginfo,
bfd *input_bfd,
asection *input_section,
struct reloc_ext_external *relocs,
@@ -4288,18 +4288,18 @@
struct reloc_ext_external *rel;
struct reloc_ext_external *rel_end;
- output_bfd = finfo->output_bfd;
+ output_bfd = flaginfo->output_bfd;
check_dynamic_reloc = aout_backend_info (output_bfd)->check_dynamic_reloc;
BFD_ASSERT (obj_reloc_entry_size (input_bfd) == RELOC_EXT_SIZE);
BFD_ASSERT (input_bfd->xvec->header_byteorder
== output_bfd->xvec->header_byteorder);
- relocatable = finfo->info->relocatable;
+ relocatable = flaginfo->info->relocatable;
syms = obj_aout_external_syms (input_bfd);
strings = obj_aout_external_strings (input_bfd);
sym_hashes = obj_aout_sym_hashes (input_bfd);
- symbol_map = finfo->symbol_map;
+ symbol_map = flaginfo->symbol_map;
reloc_count = rel_size / RELOC_EXT_SIZE;
rel = relocs;
@@ -4340,7 +4340,7 @@
if (r_type >= TABLE_SIZE (howto_table_ext))
{
- (*finfo->info->callbacks->einfo)
+ (*flaginfo->info->callbacks->einfo)
(_("%P: %B: unexpected relocation type\n"), input_bfd);
bfd_set_error (bfd_error_bad_value);
return FALSE;
@@ -4421,7 +4421,7 @@
h->indx = -2;
h->written = FALSE;
if (!aout_link_write_other_symbol (&h->root.root,
- finfo))
+ flaginfo))
return FALSE;
}
r_index = h->indx;
@@ -4432,8 +4432,8 @@
name = strings + GET_WORD (input_bfd,
syms[r_index].e_strx);
- if (! ((*finfo->info->callbacks->unattached_reloc)
- (finfo->info, name, input_bfd, input_section,
+ if (! ((*flaginfo->info->callbacks->unattached_reloc)
+ (flaginfo->info, name, input_bfd, input_section,
r_addr)))
return FALSE;
r_index = 0;
@@ -4600,7 +4600,7 @@
bfd_boolean skip;
if (! ((*check_dynamic_reloc)
- (finfo->info, input_bfd, input_section, h,
+ (flaginfo->info, input_bfd, input_section, h,
(void *) rel, contents, &skip, &relocation)))
return FALSE;
if (skip)
@@ -4611,7 +4611,7 @@
do this earlier, because check_dynamic_reloc might want
to skip this reloc. */
if (hundef
- && ! finfo->info->shared
+ && ! flaginfo->info->shared
&& r_type != (unsigned int) RELOC_BASE10
&& r_type != (unsigned int) RELOC_BASE13
&& r_type != (unsigned int) RELOC_BASE22)
@@ -4622,8 +4622,8 @@
name = h->root.root.string;
else
name = strings + GET_WORD (input_bfd, syms[r_index].e_strx);
- if (! ((*finfo->info->callbacks->undefined_symbol)
- (finfo->info, name, input_bfd, input_section,
+ if (! ((*flaginfo->info->callbacks->undefined_symbol)
+ (flaginfo->info, name, input_bfd, input_section,
r_addr, TRUE)))
return FALSE;
}
@@ -4669,8 +4669,8 @@
s = aout_reloc_index_to_section (input_bfd, r_index);
name = bfd_section_name (input_bfd, s);
}
- if (! ((*finfo->info->callbacks->reloc_overflow)
- (finfo->info, (h ? &h->root : NULL), name,
+ if (! ((*flaginfo->info->callbacks->reloc_overflow)
+ (flaginfo->info, (h ? &h->root : NULL), name,
howto_table_ext[r_type].name,
r_addend, input_bfd, input_section, r_addr)))
return FALSE;
@@ -4687,7 +4687,7 @@
/* Link an a.out section into the output file. */
static bfd_boolean
-aout_link_input_section (struct aout_final_link_info *finfo,
+aout_link_input_section (struct aout_final_link_info *flaginfo,
bfd *input_bfd,
asection *input_section,
file_ptr *reloff_ptr,
@@ -4699,7 +4699,7 @@
/* Get the section contents. */
input_size = input_section->size;
if (! bfd_get_section_contents (input_bfd, input_section,
- (void *) finfo->contents,
+ (void *) flaginfo->contents,
(file_ptr) 0, input_size))
return FALSE;
@@ -4709,7 +4709,7 @@
relocs = aout_section_data (input_section)->relocs;
else
{
- relocs = finfo->relocs;
+ relocs = flaginfo->relocs;
if (rel_size > 0)
{
if (bfd_seek (input_bfd, input_section->rel_filepos, SEEK_SET) != 0
@@ -4721,44 +4721,44 @@
/* Relocate the section contents. */
if (obj_reloc_entry_size (input_bfd) == RELOC_STD_SIZE)
{
- if (! aout_link_input_section_std (finfo, input_bfd, input_section,
+ if (! aout_link_input_section_std (flaginfo, input_bfd, input_section,
(struct reloc_std_external *) relocs,
- rel_size, finfo->contents))
+ rel_size, flaginfo->contents))
return FALSE;
}
else
{
- if (! aout_link_input_section_ext (finfo, input_bfd, input_section,
+ if (! aout_link_input_section_ext (flaginfo, input_bfd, input_section,
(struct reloc_ext_external *) relocs,
- rel_size, finfo->contents))
+ rel_size, flaginfo->contents))
return FALSE;
}
/* Write out the section contents. */
- if (! bfd_set_section_contents (finfo->output_bfd,
+ if (! bfd_set_section_contents (flaginfo->output_bfd,
input_section->output_section,
- (void *) finfo->contents,
+ (void *) flaginfo->contents,
(file_ptr) input_section->output_offset,
input_size))
return FALSE;
/* If we are producing relocatable output, the relocs were
modified, and we now write them out. */
- if (finfo->info->relocatable && rel_size > 0)
+ if (flaginfo->info->relocatable && rel_size > 0)
{
- if (bfd_seek (finfo->output_bfd, *reloff_ptr, SEEK_SET) != 0)
+ if (bfd_seek (flaginfo->output_bfd, *reloff_ptr, SEEK_SET) != 0)
return FALSE;
- if (bfd_bwrite (relocs, rel_size, finfo->output_bfd) != rel_size)
+ if (bfd_bwrite (relocs, rel_size, flaginfo->output_bfd) != rel_size)
return FALSE;
*reloff_ptr += rel_size;
/* Assert that the relocs have not run into the symbols, and
that if these are the text relocs they have not run into the
data relocs. */
- BFD_ASSERT (*reloff_ptr <= obj_sym_filepos (finfo->output_bfd)
- && (reloff_ptr != &finfo->treloff
+ BFD_ASSERT (*reloff_ptr <= obj_sym_filepos (flaginfo->output_bfd)
+ && (reloff_ptr != &flaginfo->treloff
|| (*reloff_ptr
- <= obj_datasec (finfo->output_bfd)->rel_filepos)));
+ <= obj_datasec (flaginfo->output_bfd)->rel_filepos)));
}
return TRUE;
@@ -4768,7 +4768,7 @@
symbol indices into a symbol_map. */
static bfd_boolean
-aout_link_write_symbols (struct aout_final_link_info *finfo, bfd *input_bfd)
+aout_link_write_symbols (struct aout_final_link_info *flaginfo, bfd *input_bfd)
{
bfd *output_bfd;
bfd_size_type sym_count;
@@ -4784,25 +4784,25 @@
bfd_boolean pass;
bfd_boolean skip_next;
- output_bfd = finfo->output_bfd;
+ output_bfd = flaginfo->output_bfd;
sym_count = obj_aout_external_sym_count (input_bfd);
strings = obj_aout_external_strings (input_bfd);
- strip = finfo->info->strip;
- discard = finfo->info->discard;
- outsym = finfo->output_syms;
+ strip = flaginfo->info->strip;
+ discard = flaginfo->info->discard;
+ outsym = flaginfo->output_syms;
/* First write out a symbol for this object file, unless we are
discarding such symbols. */
if (strip != strip_all
&& (strip != strip_some
- || bfd_hash_lookup (finfo->info->keep_hash, input_bfd->filename,
+ || bfd_hash_lookup (flaginfo->info->keep_hash, input_bfd->filename,
FALSE, FALSE) != NULL)
&& discard != discard_all)
{
H_PUT_8 (output_bfd, N_TEXT, outsym->e_type);
H_PUT_8 (output_bfd, 0, outsym->e_other);
H_PUT_16 (output_bfd, 0, outsym->e_desc);
- strtab_index = add_to_stringtab (output_bfd, finfo->strtab,
+ strtab_index = add_to_stringtab (output_bfd, flaginfo->strtab,
input_bfd->filename, FALSE);
if (strtab_index == (bfd_size_type) -1)
return FALSE;
@@ -4821,7 +4821,7 @@
sym = obj_aout_external_syms (input_bfd);
sym_end = sym + sym_count;
sym_hash = obj_aout_sym_hashes (input_bfd);
- symbol_map = finfo->symbol_map;
+ symbol_map = flaginfo->symbol_map;
memset (symbol_map, 0, (size_t) sym_count * sizeof *symbol_map);
for (; sym < sym_end; sym++, sym_hash++, symbol_map++)
{
@@ -4920,7 +4920,7 @@
skip = TRUE;
break;
case strip_some:
- if (bfd_hash_lookup (finfo->info->keep_hash, name, FALSE, FALSE)
+ if (bfd_hash_lookup (flaginfo->info->keep_hash, name, FALSE, FALSE)
== NULL)
skip = TRUE;
break;
@@ -5148,8 +5148,8 @@
/* If we have already included a header file with the
same value, then replace this one with an N_EXCL
symbol. */
- copy = (bfd_boolean) (! finfo->info->keep_memory);
- incl_entry = aout_link_includes_lookup (&finfo->includes,
+ copy = (bfd_boolean) (! flaginfo->info->keep_memory);
+ incl_entry = aout_link_includes_lookup (&flaginfo->includes,
name, TRUE, copy);
if (incl_entry == NULL)
return FALSE;
@@ -5161,7 +5161,7 @@
/* This is the first time we have seen this header
file with this set of stabs strings. */
t = (struct aout_link_includes_totals *)
- bfd_hash_allocate (&finfo->includes.root,
+ bfd_hash_allocate (&flaginfo->includes.root,
sizeof *t);
if (t == NULL)
return FALSE;
@@ -5210,7 +5210,7 @@
H_PUT_8 (output_bfd, H_GET_8 (input_bfd, sym->e_other), outsym->e_other);
H_PUT_16 (output_bfd, H_GET_16 (input_bfd, sym->e_desc), outsym->e_desc);
copy = FALSE;
- if (! finfo->info->keep_memory)
+ if (! flaginfo->info->keep_memory)
{
/* name points into a string table which we are going to
free. If there is a hash table entry, use that string.
@@ -5220,7 +5220,7 @@
else
copy = TRUE;
}
- strtab_index = add_to_stringtab (output_bfd, finfo->strtab,
+ strtab_index = add_to_stringtab (output_bfd, flaginfo->strtab,
name, copy);
if (strtab_index == (bfd_size_type) -1)
return FALSE;
@@ -5232,18 +5232,18 @@
}
/* Write out the output symbols we have just constructed. */
- if (outsym > finfo->output_syms)
+ if (outsym > flaginfo->output_syms)
{
bfd_size_type outsym_size;
- if (bfd_seek (output_bfd, finfo->symoff, SEEK_SET) != 0)
+ if (bfd_seek (output_bfd, flaginfo->symoff, SEEK_SET) != 0)
return FALSE;
- outsym_size = outsym - finfo->output_syms;
+ outsym_size = outsym - flaginfo->output_syms;
outsym_size *= EXTERNAL_NLIST_SIZE;
- if (bfd_bwrite ((void *) finfo->output_syms, outsym_size, output_bfd)
+ if (bfd_bwrite ((void *) flaginfo->output_syms, outsym_size, output_bfd)
!= outsym_size)
return FALSE;
- finfo->symoff += outsym_size;
+ flaginfo->symoff += outsym_size;
}
return TRUE;
@@ -5252,7 +5252,7 @@
/* Link an a.out input BFD into the output file. */
static bfd_boolean
-aout_link_input_bfd (struct aout_final_link_info *finfo, bfd *input_bfd)
+aout_link_input_bfd (struct aout_final_link_info *flaginfo, bfd *input_bfd)
{
BFD_ASSERT (bfd_get_format (input_bfd) == bfd_object);
@@ -5260,16 +5260,16 @@
if ((input_bfd->flags & DYNAMIC) != 0
&& aout_backend_info (input_bfd)->link_dynamic_object != NULL)
return ((*aout_backend_info (input_bfd)->link_dynamic_object)
- (finfo->info, input_bfd));
+ (flaginfo->info, input_bfd));
/* Get the symbols. We probably have them already, unless
- finfo->info->keep_memory is FALSE. */
+ flaginfo->info->keep_memory is FALSE. */
if (! aout_get_external_symbols (input_bfd))
return FALSE;
/* Write out the symbols and get a map of the new indices. The map
- is placed into finfo->symbol_map. */
- if (! aout_link_write_symbols (finfo, input_bfd))
+ is placed into flaginfo->symbol_map. */
+ if (! aout_link_write_symbols (flaginfo, input_bfd))
return FALSE;
/* Relocate and write out the sections. These functions use the
@@ -5278,17 +5278,17 @@
link, which will normally be the case. */
if (obj_textsec (input_bfd)->linker_mark)
{
- if (! aout_link_input_section (finfo, input_bfd,
+ if (! aout_link_input_section (flaginfo, input_bfd,
obj_textsec (input_bfd),
- &finfo->treloff,
+ &flaginfo->treloff,
exec_hdr (input_bfd)->a_trsize))
return FALSE;
}
if (obj_datasec (input_bfd)->linker_mark)
{
- if (! aout_link_input_section (finfo, input_bfd,
+ if (! aout_link_input_section (flaginfo, input_bfd,
obj_datasec (input_bfd),
- &finfo->dreloff,
+ &flaginfo->dreloff,
exec_hdr (input_bfd)->a_drsize))
return FALSE;
}
@@ -5296,7 +5296,7 @@
/* If we are not keeping memory, we don't need the symbols any
longer. We still need them if we are keeping memory, because the
strings in the hash table point into them. */
- if (! finfo->info->keep_memory)
+ if (! flaginfo->info->keep_memory)
{
if (! aout_link_free_symbols (input_bfd))
return FALSE;
diff --git a/bfd/archive.c b/bfd/archive.c
index 3e333c7..32b07a7 100644
--- a/bfd/archive.c
+++ b/bfd/archive.c
@@ -1,7 +1,5 @@
/* BFD back-end for archive files (libraries).
- Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
- Free Software Foundation, Inc.
+ Copyright 1990-2013 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.
@@ -42,11 +40,17 @@
have to read the entire archive if you don't want
to! Read it until you find what you want.
+ A BFD returned by <<bfd_openr_next_archived_file>> can be
+ closed manually with <<bfd_close>>. If you do not close it,
+ then a second iteration through the members of an archive may
+ return the same BFD. If you close the archive BFD, then all
+ the member BFDs will automatically be closed as well.
+
Archive contents of output BFDs are chained through the
- <<next>> pointer in a BFD. The first one is findable through
- the <<archive_head>> slot of the archive. Set it with
- <<bfd_set_archive_head>> (q.v.). A given BFD may be in only one
- open output archive at a time.
+ <<archive_next>> pointer in a BFD. The first one is findable
+ through the <<archive_head>> slot of the archive. Set it with
+ <<bfd_set_archive_head>> (q.v.). A given BFD may be in only
+ one open output archive at a time.
As expected, the BFD archive code is more general than the
archive code of any given environment. BFD archives may
@@ -147,7 +151,8 @@
it's generally short enough to search linearly.
Note that the pointers here point to the front of the ar_hdr, not
to the front of the contents! */
-struct ar_cache {
+struct ar_cache
+{
file_ptr ptr;
bfd *arbfd;
};
@@ -168,6 +173,7 @@
{
static char buf[20];
size_t len;
+
snprintf (buf, sizeof (buf), fmt, val);
len = strlen (buf);
if (len < n)
@@ -178,6 +184,29 @@
else
memcpy (p, buf, n);
}
+
+bfd_boolean
+_bfd_ar_sizepad (char *p, size_t n, bfd_size_type size)
+{
+ static char buf[21];
+ size_t len;
+
+ snprintf (buf, sizeof (buf), "%-10" BFD_VMA_FMT "u", size);
+ len = strlen (buf);
+ if (len > n)
+ {
+ bfd_set_error (bfd_error_file_too_big);
+ return FALSE;
+ }
+ if (len < n)
+ {
+ memcpy (p, buf, len);
+ memset (p + len, ' ', n - len);
+ }
+ else
+ memcpy (p, buf, n);
+ return TRUE;
+}
bfd_boolean
_bfd_generic_mkarchive (bfd *abfd)
@@ -273,6 +302,7 @@
{
htab_t hash_table = bfd_ardata (arch_bfd)->cache;
struct ar_cache m;
+
m.ptr = filepos;
if (hash_table)
@@ -288,7 +318,7 @@
}
static hashval_t
-hash_file_ptr (const PTR p)
+hash_file_ptr (const void * p)
{
return (hashval_t) (((struct ar_cache *) p)->ptr);
}
@@ -296,7 +326,7 @@
/* Returns non-zero if P1 and P2 are equal. */
static int
-eq_file_ptr (const PTR p1, const PTR p2)
+eq_file_ptr (const void * p1, const void * p2)
{
struct ar_cache *arc1 = (struct ar_cache *) p1;
struct ar_cache *arc2 = (struct ar_cache *) p2;
@@ -336,6 +366,10 @@
cache->arbfd = new_elt;
*htab_find_slot (hash_table, (const void *) cache, INSERT) = cache;
+ /* Provide a means of accessing this from child. */
+ arch_eltdata (new_elt)->parent_cache = hash_table;
+ arch_eltdata (new_elt)->key = filepos;
+
return TRUE;
}
@@ -345,12 +379,19 @@
bfd *abfd;
const char *target;
+ /* PR 15140: Don't allow a nested archive pointing to itself. */
+ if (filename_cmp (filename, arch_bfd->filename) == 0)
+ {
+ bfd_set_error (bfd_error_malformed_archive);
+ return NULL;
+ }
+
for (abfd = arch_bfd->nested_archives;
abfd != NULL;
abfd = abfd->archive_next)
{
if (filename_cmp (filename, abfd->filename) == 0)
- return abfd;
+ return abfd;
}
target = NULL;
if (!arch_bfd->target_defaulted)
@@ -390,10 +431,10 @@
file_ptr origin = strtol (endp + 1, NULL, 10);
if (errno != 0)
- {
- bfd_set_error (bfd_error_malformed_archive);
- return NULL;
- }
+ {
+ bfd_set_error (bfd_error_malformed_archive);
+ return NULL;
+ }
*originp = origin;
}
else
@@ -424,7 +465,7 @@
{
struct ar_hdr hdr;
char *hdrp = (char *) &hdr;
- size_t parsed_size;
+ bfd_size_type parsed_size;
struct areltdata *ared;
char *filename = NULL;
bfd_size_type namelen = 0;
@@ -432,6 +473,8 @@
char *allocptr = 0;
file_ptr origin = 0;
unsigned int extra_size = 0;
+ char fmag_save;
+ int scan;
if (bfd_bread (hdrp, sizeof (struct ar_hdr), abfd) != sizeof (struct ar_hdr))
{
@@ -448,8 +491,11 @@
}
errno = 0;
- parsed_size = strtol (hdr.ar_size, NULL, 10);
- if (errno != 0)
+ fmag_save = hdr.ar_fmag[0];
+ hdr.ar_fmag[0] = 0;
+ scan = sscanf (hdr.ar_size, "%" BFD_VMA_FMT "u", &parsed_size);
+ hdr.ar_fmag[0] = fmag_save;
+ if (scan != 1)
{
bfd_set_error (bfd_error_malformed_archive);
return NULL;
@@ -476,7 +522,7 @@
parsed_size -= namelen;
extra_size = namelen;
- allocptr = (char *) bfd_zalloc (abfd, allocsize);
+ allocptr = (char *) bfd_zmalloc (allocsize);
if (allocptr == NULL)
return NULL;
filename = (allocptr
@@ -484,6 +530,7 @@
+ sizeof (struct ar_hdr));
if (bfd_bread (filename, namelen, abfd) != namelen)
{
+ free (allocptr);
if (bfd_get_error () != bfd_error_system_call)
bfd_set_error (bfd_error_no_more_archived_files);
return NULL;
@@ -519,7 +566,7 @@
if (!allocptr)
{
- allocptr = (char *) bfd_zalloc (abfd, allocsize);
+ allocptr = (char *) bfd_zmalloc (allocsize);
if (allocptr == NULL)
return NULL;
}
@@ -581,12 +628,6 @@
bfd *n_nfd;
char *filename;
- if (archive->my_archive)
- {
- filepos += archive->origin;
- archive = archive->my_archive;
- }
-
n_nfd = _bfd_look_for_bfd_in_cache (archive, filepos);
if (n_nfd)
return n_nfd;
@@ -605,35 +646,38 @@
/* This is a proxy entry for an external file. */
if (! IS_ABSOLUTE_PATH (filename))
- {
- filename = _bfd_append_relative_path (archive, filename);
- if (filename == NULL)
- return NULL;
- }
+ {
+ filename = _bfd_append_relative_path (archive, filename);
+ if (filename == NULL)
+ {
+ free (new_areldata);
+ return NULL;
+ }
+ }
if (new_areldata->origin > 0)
- {
- /* This proxy entry refers to an element of a nested archive.
- Locate the member of that archive and return a bfd for it. */
- bfd *ext_arch = _bfd_find_nested_archive (archive, filename);
+ {
+ /* This proxy entry refers to an element of a nested archive.
+ Locate the member of that archive and return a bfd for it. */
+ bfd *ext_arch = _bfd_find_nested_archive (archive, filename);
- if (ext_arch == NULL
- || ! bfd_check_format (ext_arch, bfd_archive))
- {
- bfd_release (archive, new_areldata);
- return NULL;
- }
- n_nfd = _bfd_get_elt_at_filepos (ext_arch, new_areldata->origin);
- if (n_nfd == NULL)
- {
- bfd_release (archive, new_areldata);
- return NULL;
- }
- n_nfd->proxy_origin = bfd_tell (archive);
- return n_nfd;
- }
+ if (ext_arch == NULL
+ || ! bfd_check_format (ext_arch, bfd_archive))
+ {
+ free (new_areldata);
+ return NULL;
+ }
+ n_nfd = _bfd_get_elt_at_filepos (ext_arch, new_areldata->origin);
+ if (n_nfd == NULL)
+ {
+ free (new_areldata);
+ return NULL;
+ }
+ n_nfd->proxy_origin = bfd_tell (archive);
+ return n_nfd;
+ }
/* It's not an element of a nested archive;
- open the external file as a bfd. */
+ open the external file as a bfd. */
target = NULL;
if (!archive->target_defaulted)
target = archive->xvec->name;
@@ -648,7 +692,7 @@
if (n_nfd == NULL)
{
- bfd_release (archive, new_areldata);
+ free (new_areldata);
return NULL;
}
@@ -672,7 +716,8 @@
if (_bfd_add_bfd_to_archive_cache (archive, filepos, n_nfd))
return n_nfd;
- bfd_release (archive, new_areldata);
+ free (new_areldata);
+ n_nfd->arelt_data = NULL;
return NULL;
}
@@ -727,13 +772,11 @@
filestart = bfd_ardata (archive)->first_file_filepos;
else
{
- unsigned int size = arelt_size (last_file);
+ bfd_size_type size = arelt_size (last_file);
filestart = last_file->proxy_origin;
if (! bfd_is_thin_archive (archive))
- filestart += size;
- if (archive->my_archive)
- filestart -= archive->origin;
+ filestart += size;
/* Pad to an even boundary...
Note that last_file->origin can be odd in the case of
BSD-4.4-style element with a long odd size. */
@@ -814,11 +857,7 @@
first->target_defaulted = FALSE;
if (bfd_check_format (first, bfd_object)
&& first->xvec != abfd->xvec)
- {
- bfd_set_error (bfd_error_wrong_object_format);
- bfd_ardata (abfd) = tdata_hold;
- return NULL;
- }
+ bfd_set_error (bfd_error_wrong_object_format);
/* And we ought to close `first' here too. */
}
}
@@ -861,7 +900,7 @@
if (mapdata == NULL)
return FALSE;
parsed_size = mapdata->parsed_size;
- bfd_release (abfd, mapdata); /* Don't need it any more. */
+ free (mapdata);
raw_armap = (bfd_byte *) bfd_zalloc (abfd, parsed_size);
if (raw_armap == NULL)
@@ -925,7 +964,7 @@
struct artdata *ardata = bfd_ardata (abfd);
char *stringbase;
bfd_size_type stringsize;
- unsigned int parsed_size;
+ bfd_size_type parsed_size;
carsym *carsyms;
bfd_size_type nsymz; /* Number of symbols in armap. */
bfd_vma (*swap) (const void *);
@@ -937,7 +976,7 @@
if (mapdata == NULL)
return FALSE;
parsed_size = mapdata->parsed_size;
- bfd_release (abfd, mapdata); /* Don't need it any more. */
+ free (mapdata);
if (bfd_bread (int_buf, 4, abfd) != 4)
{
@@ -979,7 +1018,7 @@
return FALSE;
ardata->symdefs = (struct carsym *) bfd_zalloc (abfd,
- carsym_size + stringsize + 1);
+ carsym_size + stringsize + 1);
if (ardata->symdefs == NULL)
return FALSE;
carsyms = ardata->symdefs;
@@ -1030,7 +1069,7 @@
ardata->first_file_filepos +=
(tmp->parsed_size + sizeof (struct ar_hdr) + 1) & ~(unsigned) 1;
}
- bfd_release (abfd, tmp);
+ free (tmp);
}
}
@@ -1079,21 +1118,21 @@
else if (CONST_STRNEQ (nextname, "#1/20 "))
{
/* Mach-O has a special name for armap when the map is sorted by name.
- However because this name has a space it is slightly more difficult
- to check it. */
+ However because this name has a space it is slightly more difficult
+ to check it. */
struct ar_hdr hdr;
char extname[21];
if (bfd_bread (&hdr, sizeof (hdr), abfd) != sizeof (hdr))
- return FALSE;
+ return FALSE;
/* Read the extended name. We know its length. */
if (bfd_bread (extname, 20, abfd) != 20)
- return FALSE;
- if (bfd_seek (abfd, (file_ptr) -(sizeof (hdr) + 20), SEEK_CUR) != 0)
- return FALSE;
+ return FALSE;
+ if (bfd_seek (abfd, -(file_ptr) (sizeof (hdr) + 20), SEEK_CUR) != 0)
+ return FALSE;
if (CONST_STRNEQ (extname, "__.SYMDEF SORTED")
- || CONST_STRNEQ (extname, "__.SYMDEF"))
- return do_slurp_bsd_armap (abfd);
+ || CONST_STRNEQ (extname, "__.SYMDEF"))
+ return do_slurp_bsd_armap (abfd);
}
bfd_has_map (abfd) = FALSE;
@@ -1147,15 +1186,17 @@
if (mapdata->parsed_size < HPUX_SYMDEF_COUNT_SIZE + BSD_STRING_COUNT_SIZE)
{
+ free (mapdata);
wrong_format:
bfd_set_error (bfd_error_wrong_format);
byebye:
- bfd_release (abfd, mapdata);
return FALSE;
}
left = mapdata->parsed_size - HPUX_SYMDEF_COUNT_SIZE - BSD_STRING_COUNT_SIZE;
amt = mapdata->parsed_size;
+ free (mapdata);
+
raw_armap = (bfd_byte *) bfd_zalloc (abfd, amt);
if (raw_armap == NULL)
goto byebye;
@@ -1250,14 +1291,14 @@
amt = namedata->parsed_size;
if (amt + 1 == 0)
- goto byebye;
+ goto byebye;
bfd_ardata (abfd)->extended_names_size = amt;
bfd_ardata (abfd)->extended_names = (char *) bfd_zalloc (abfd, amt + 1);
if (bfd_ardata (abfd)->extended_names == NULL)
{
byebye:
- bfd_release (abfd, namedata);
+ free (namedata);
return FALSE;
}
@@ -1276,7 +1317,7 @@
trailing '/'. DOS/NT created archive often have \ in them
We'll fix all problems here.. */
{
- char *ext_names = bfd_ardata (abfd)->extended_names;
+ char *ext_names = bfd_ardata (abfd)->extended_names;
char *temp = ext_names;
char *limit = temp + namedata->parsed_size;
for (; temp < limit; ++temp)
@@ -1294,8 +1335,7 @@
bfd_ardata (abfd)->first_file_filepos +=
(bfd_ardata (abfd)->first_file_filepos) % 2;
- /* FIXME, we can't release namedata here because it was allocated
- below extended_names on the objalloc... */
+ free (namedata);
}
return TRUE;
}
@@ -1366,7 +1406,7 @@
the autogenerated bfd.h header...
Note - the string is returned in a static buffer. */
-
+
static const char *
adjust_relative_path (const char * path, const char * ref_path)
{
@@ -1389,7 +1429,7 @@
rpath = lrealpath (ref_path);
refp = rpath == NULL ? ref_path : rpath;
-
+
/* Remove common leading path elements. */
for (;;)
{
@@ -1415,7 +1455,7 @@
{
/* PR 12710: If the path element is "../" then instead of
inserting "../" we need to insert the name of the directory
- at the current level. */
+ at the current level. */
if (refp > ref_path + 1
&& refp[-1] == '.'
&& refp[-2] == '.')
@@ -1426,7 +1466,7 @@
/* If the lrealpath calls above succeeded then we should never
see dir_up and dir_down both being non-zero. */
-
+
len += 3 * dir_up;
if (dir_down)
@@ -1531,40 +1571,40 @@
unsigned int thislen;
if (bfd_is_thin_archive (abfd))
- {
- const char *filename = current->filename;
+ {
+ const char *filename = current->filename;
- /* If the element being added is a member of another archive
- (i.e., we are flattening), use the containing archive's name. */
- if (current->my_archive
- && ! bfd_is_thin_archive (current->my_archive))
- filename = current->my_archive->filename;
+ /* If the element being added is a member of another archive
+ (i.e., we are flattening), use the containing archive's name. */
+ if (current->my_archive
+ && ! bfd_is_thin_archive (current->my_archive))
+ filename = current->my_archive->filename;
- /* If the path is the same as the previous path seen,
- reuse it. This can happen when flattening a thin
- archive that contains other archives. */
- if (last_filename && filename_cmp (last_filename, filename) == 0)
- continue;
+ /* If the path is the same as the previous path seen,
+ reuse it. This can happen when flattening a thin
+ archive that contains other archives. */
+ if (last_filename && filename_cmp (last_filename, filename) == 0)
+ continue;
- last_filename = filename;
+ last_filename = filename;
- /* If the path is relative, adjust it relative to
- the containing archive. */
- if (! IS_ABSOLUTE_PATH (filename)
- && ! IS_ABSOLUTE_PATH (abfd->filename))
- normal = adjust_relative_path (filename, abfd->filename);
- else
- normal = filename;
+ /* If the path is relative, adjust it relative to
+ the containing archive. */
+ if (! IS_ABSOLUTE_PATH (filename)
+ && ! IS_ABSOLUTE_PATH (abfd->filename))
+ normal = adjust_relative_path (filename, abfd->filename);
+ else
+ normal = filename;
- /* In a thin archive, always store the full pathname
- in the extended name table. */
- total_namelen += strlen (normal) + 1;
+ /* In a thin archive, always store the full pathname
+ in the extended name table. */
+ total_namelen += strlen (normal) + 1;
if (trailing_slash)
/* Leave room for trailing slash. */
++total_namelen;
- continue;
- }
+ continue;
+ }
normal = normalize (current, current->filename);
if (normal == NULL)
@@ -1594,7 +1634,7 @@
&& hdr->ar_name[thislen] != ar_padchar (current)))
{
/* Must have been using extended format even though it
- didn't need to. Fix it to use normal format. */
+ didn't need to. Fix it to use normal format. */
memcpy (hdr->ar_name, normal, thislen);
if (thislen < maxname
|| (thislen == maxname && thislen < sizeof hdr->ar_name))
@@ -1626,31 +1666,31 @@
const char *filename = current->filename;
if (bfd_is_thin_archive (abfd))
- {
- /* If the element being added is a member of another archive
- (i.e., we are flattening), use the containing archive's name. */
- if (current->my_archive
- && ! bfd_is_thin_archive (current->my_archive))
- filename = current->my_archive->filename;
- /* If the path is the same as the previous path seen,
- reuse it. This can happen when flattening a thin
- archive that contains other archives.
- If the path is relative, adjust it relative to
- the containing archive. */
- if (last_filename && filename_cmp (last_filename, filename) == 0)
- normal = last_filename;
- else if (! IS_ABSOLUTE_PATH (filename)
- && ! IS_ABSOLUTE_PATH (abfd->filename))
- normal = adjust_relative_path (filename, abfd->filename);
- else
- normal = filename;
- }
+ {
+ /* If the element being added is a member of another archive
+ (i.e., we are flattening), use the containing archive's name. */
+ if (current->my_archive
+ && ! bfd_is_thin_archive (current->my_archive))
+ filename = current->my_archive->filename;
+ /* If the path is the same as the previous path seen,
+ reuse it. This can happen when flattening a thin
+ archive that contains other archives.
+ If the path is relative, adjust it relative to
+ the containing archive. */
+ if (last_filename && filename_cmp (last_filename, filename) == 0)
+ normal = last_filename;
+ else if (! IS_ABSOLUTE_PATH (filename)
+ && ! IS_ABSOLUTE_PATH (abfd->filename))
+ normal = adjust_relative_path (filename, abfd->filename);
+ else
+ normal = filename;
+ }
else
- {
- normal = normalize (current, filename);
- if (normal == NULL)
- return FALSE;
- }
+ {
+ normal = normalize (current, filename);
+ if (normal == NULL)
+ return FALSE;
+ }
thislen = strlen (normal);
if (thislen > maxname || bfd_is_thin_archive (abfd))
@@ -1661,16 +1701,16 @@
struct ar_hdr *hdr = arch_hdr (current);
if (normal == last_filename)
stroff = last_stroff;
- else
- {
+ else
+ {
strcpy (strptr, normal);
if (! trailing_slash)
- strptr[thislen] = ARFMAG[1];
+ strptr[thislen] = ARFMAG[1];
else
- {
- strptr[thislen] = '/';
- strptr[thislen + 1] = ARFMAG[1];
- }
+ {
+ strptr[thislen] = '/';
+ strptr[thislen + 1] = ARFMAG[1];
+ }
stroff = strptr - *tabloc;
last_stroff = stroff;
}
@@ -1678,19 +1718,19 @@
if (bfd_is_thin_archive (abfd) && current->origin > 0)
{
int len = snprintf (hdr->ar_name + 1, maxname - 1, "%-ld:",
- stroff);
+ stroff);
_bfd_ar_spacepad (hdr->ar_name + 1 + len, maxname - 1 - len,
- "%-ld",
- current->origin - sizeof (struct ar_hdr));
+ "%-ld",
+ current->origin - sizeof (struct ar_hdr));
}
else
- _bfd_ar_spacepad (hdr->ar_name + 1, maxname - 1, "%-ld", stroff);
- if (normal != last_filename)
- {
+ _bfd_ar_spacepad (hdr->ar_name + 1, maxname - 1, "%-ld", stroff);
+ if (normal != last_filename)
+ {
strptr += thislen + 1;
if (trailing_slash)
- ++strptr;
- last_filename = filename;
+ ++strptr;
+ last_filename = filename;
}
}
}
@@ -1703,9 +1743,9 @@
bfd_boolean
_bfd_archive_bsd44_construct_extended_name_table (bfd *abfd,
- char **tabloc,
- bfd_size_type *tablen,
- const char **name)
+ char **tabloc,
+ bfd_size_type *tablen,
+ const char **name)
{
unsigned int maxname = ar_maxnamelen (abfd);
bfd *current;
@@ -1726,16 +1766,16 @@
return FALSE;
for (len = 0; normal[len]; len++)
- if (normal[len] == ' ')
- has_space = 1;
+ if (normal[len] == ' ')
+ has_space = 1;
if (len > maxname || has_space)
{
- struct ar_hdr *hdr = arch_hdr (current);
+ struct ar_hdr *hdr = arch_hdr (current);
- len = (len + 3) & ~3;
- arch_eltdata (current)->extra_size = len;
- _bfd_ar_spacepad (hdr->ar_name, maxname, "#1/%lu", len);
+ len = (len + 3) & ~3;
+ arch_eltdata (current)->extra_size = len;
+ _bfd_ar_spacepad (hdr->ar_name, maxname, "#1/%lu", len);
}
}
@@ -1770,27 +1810,29 @@
BFD_ASSERT (padded_len == arch_eltdata (abfd)->extra_size);
- _bfd_ar_spacepad (hdr->ar_size, sizeof (hdr->ar_size), "%-10ld",
- arch_eltdata (abfd)->parsed_size + padded_len);
+ if (!_bfd_ar_sizepad (hdr->ar_size, sizeof (hdr->ar_size),
+ arch_eltdata (abfd)->parsed_size + padded_len))
+ return FALSE;
if (bfd_bwrite (hdr, sizeof (*hdr), archive) != sizeof (*hdr))
- return FALSE;
+ return FALSE;
if (bfd_bwrite (fullname, len, archive) != len)
- return FALSE;
- if (len & 3)
- {
- static const char pad[3] = { 0, 0, 0 };
+ return FALSE;
- len = 4 - (len & 3);
- if (bfd_bwrite (pad, len, archive) != len)
- return FALSE;
- }
+ if (len & 3)
+ {
+ static const char pad[3] = { 0, 0, 0 };
+
+ len = 4 - (len & 3);
+ if (bfd_bwrite (pad, len, archive) != len)
+ return FALSE;
+ }
}
else
{
if (bfd_bwrite (hdr, sizeof (*hdr), archive) != sizeof (*hdr))
- return FALSE;
+ return FALSE;
}
return TRUE;
}
@@ -1861,7 +1903,7 @@
}
amt = sizeof (struct ar_hdr) + sizeof (struct areltdata);
- ared = (struct areltdata *) bfd_zalloc (abfd, amt);
+ ared = (struct areltdata *) bfd_zmalloc (amt);
if (ared == NULL)
return NULL;
hdr = (struct ar_hdr *) (((char *) ared) + sizeof (struct areltdata));
@@ -1870,7 +1912,7 @@
memset (hdr, ' ', sizeof (struct ar_hdr));
_bfd_ar_spacepad (hdr->ar_date, sizeof (hdr->ar_date), "%-12ld",
- status.st_mtime);
+ status.st_mtime);
#ifdef HPUX_LARGE_AR_IDS
/* HP has a very "special" way to handle UID/GID's with numeric values
> 99999. */
@@ -1879,7 +1921,7 @@
else
#endif
_bfd_ar_spacepad (hdr->ar_uid, sizeof (hdr->ar_uid), "%ld",
- status.st_uid);
+ status.st_uid);
#ifdef HPUX_LARGE_AR_IDS
/* HP has a very "special" way to handle UID/GID's with numeric values
> 99999. */
@@ -1888,11 +1930,14 @@
else
#endif
_bfd_ar_spacepad (hdr->ar_gid, sizeof (hdr->ar_gid), "%ld",
- status.st_gid);
+ status.st_gid);
_bfd_ar_spacepad (hdr->ar_mode, sizeof (hdr->ar_mode), "%-8lo",
- status.st_mode);
- _bfd_ar_spacepad (hdr->ar_size, sizeof (hdr->ar_size), "%-10ld",
- status.st_size);
+ status.st_mode);
+ if (!_bfd_ar_sizepad (hdr->ar_size, sizeof (hdr->ar_size), status.st_size))
+ {
+ free (ared);
+ return NULL;
+ }
memcpy (hdr->ar_fmag, ARFMAG, 2);
ared->parsed_size = status.st_size;
ared->arch_header = (char *) hdr;
@@ -2132,8 +2177,9 @@
memset (&hdr, ' ', sizeof (struct ar_hdr));
memcpy (hdr.ar_name, ename, strlen (ename));
/* Round size up to even number in archive header. */
- _bfd_ar_spacepad (hdr.ar_size, sizeof (hdr.ar_size), "%-10ld",
- (elength + 1) & ~(bfd_size_type) 1);
+ if (!_bfd_ar_sizepad (hdr.ar_size, sizeof (hdr.ar_size),
+ (elength + 1) & ~(bfd_size_type) 1))
+ return FALSE;
memcpy (hdr.ar_fmag, ARFMAG, 2);
if ((bfd_bwrite (&hdr, sizeof (struct ar_hdr), arch)
!= sizeof (struct ar_hdr))
@@ -2151,13 +2197,13 @@
current = current->archive_next)
{
char buffer[DEFAULT_BUFFERSIZE];
- unsigned int remaining = arelt_size (current);
+ bfd_size_type remaining = arelt_size (current);
/* Write ar header. */
if (!_bfd_write_ar_hdr (arch, current))
- return FALSE;
+ return FALSE;
if (bfd_is_thin_archive (arch))
- continue;
+ continue;
if (bfd_seek (current, (file_ptr) 0, SEEK_SET) != 0)
goto input_err;
@@ -2282,16 +2328,16 @@
goto error_return;
/* Now map over all the symbols, picking out the ones we
- want. */
+ want. */
for (src_count = 0; src_count < symcount; src_count++)
{
flagword flags = (syms[src_count])->flags;
asection *sec = syms[src_count]->section;
- if ((flags & BSF_GLOBAL
- || flags & BSF_WEAK
- || flags & BSF_INDIRECT
- || flags & BSF_GNU_UNIQUE
+ if (((flags & (BSF_GLOBAL
+ | BSF_WEAK
+ | BSF_INDIRECT
+ | BSF_GNU_UNIQUE)) != 0
|| bfd_is_com_section (sec))
&& ! bfd_is_und_section (sec))
{
@@ -2316,7 +2362,7 @@
if (map[orl_count].name == NULL)
goto error_return;
*(map[orl_count].name) = (char *) bfd_alloc (arch,
- namelen + 1);
+ namelen + 1);
if (*(map[orl_count].name) == NULL)
goto error_return;
strcpy (*(map[orl_count].name), syms[src_count]->name);
@@ -2406,10 +2452,11 @@
bfd_ardata (arch)->armap_datepos = (SARMAG
+ offsetof (struct ar_hdr, ar_date[0]));
_bfd_ar_spacepad (hdr.ar_date, sizeof (hdr.ar_date), "%ld",
- bfd_ardata (arch)->armap_timestamp);
+ bfd_ardata (arch)->armap_timestamp);
_bfd_ar_spacepad (hdr.ar_uid, sizeof (hdr.ar_uid), "%ld", uid);
_bfd_ar_spacepad (hdr.ar_gid, sizeof (hdr.ar_gid), "%ld", gid);
- _bfd_ar_spacepad (hdr.ar_size, sizeof (hdr.ar_size), "%-10ld", mapsize);
+ if (!_bfd_ar_sizepad (hdr.ar_size, sizeof (hdr.ar_size), mapsize))
+ return FALSE;
memcpy (hdr.ar_fmag, ARFMAG, 2);
if (bfd_bwrite (&hdr, sizeof (struct ar_hdr), arch)
!= sizeof (struct ar_hdr))
@@ -2420,22 +2467,33 @@
for (count = 0; count < orl_count; count++)
{
+ unsigned int offset;
bfd_byte buf[BSD_SYMDEF_SIZE];
if (map[count].u.abfd != last_elt)
{
do
{
- struct areltdata *ared = arch_eltdata (current);
+ struct areltdata *ared = arch_eltdata (current);
firstreal += (ared->parsed_size + ared->extra_size
- + sizeof (struct ar_hdr));
+ + sizeof (struct ar_hdr));
firstreal += firstreal % 2;
current = current->archive_next;
}
while (current != map[count].u.abfd);
}
+ /* The archive file format only has 4 bytes to store the offset
+ of the member. Check to make sure that firstreal has not grown
+ too big. */
+ offset = (unsigned int) firstreal;
+ if (firstreal != (file_ptr) offset)
+ {
+ bfd_set_error (bfd_error_file_truncated);
+ return FALSE;
+ }
+
last_elt = current;
H_PUT_32 (arch, map[count].namidx, buf);
H_PUT_32 (arch, firstreal, buf + BSD_SYMDEF_OFFSET_SIZE);
@@ -2503,7 +2561,7 @@
/* Prepare an ASCII version suitable for writing. */
memset (hdr.ar_date, ' ', sizeof (hdr.ar_date));
_bfd_ar_spacepad (hdr.ar_date, sizeof (hdr.ar_date), "%ld",
- bfd_ardata (arch)->armap_timestamp);
+ bfd_ardata (arch)->armap_timestamp);
/* Write it into the file. */
bfd_ardata (arch)->armap_datepos = (SARMAG
@@ -2547,7 +2605,7 @@
unsigned int ranlibsize = (symbol_count * 4) + 4;
unsigned int stringsize = stridx;
unsigned int mapsize = stringsize + ranlibsize;
- unsigned int archive_member_file_ptr;
+ file_ptr archive_member_file_ptr;
bfd *current = arch->archive_head;
unsigned int count;
struct ar_hdr hdr;
@@ -2564,11 +2622,11 @@
memset (&hdr, ' ', sizeof (struct ar_hdr));
hdr.ar_name[0] = '/';
- _bfd_ar_spacepad (hdr.ar_size, sizeof (hdr.ar_size), "%-10ld",
- mapsize);
+ if (!_bfd_ar_sizepad (hdr.ar_size, sizeof (hdr.ar_size), mapsize))
+ return FALSE;
_bfd_ar_spacepad (hdr.ar_date, sizeof (hdr.ar_date), "%ld",
- ((arch->flags & BFD_DETERMINISTIC_OUTPUT) == 0
- ? time (NULL) : 0));
+ ((arch->flags & BFD_DETERMINISTIC_OUTPUT) == 0
+ ? time (NULL) : 0));
/* This, at least, is what Intel coff sets the values to. */
_bfd_ar_spacepad (hdr.ar_uid, sizeof (hdr.ar_uid), "%ld", 0);
_bfd_ar_spacepad (hdr.ar_gid, sizeof (hdr.ar_gid), "%ld", 0);
@@ -2598,18 +2656,26 @@
while (count < symbol_count && map[count].u.abfd == current)
{
- if (!bfd_write_bigendian_4byte_int (arch, archive_member_file_ptr))
+ unsigned int offset = (unsigned int) archive_member_file_ptr;
+
+ /* Catch an attempt to grow an archive past its 4Gb limit. */
+ if (archive_member_file_ptr != (file_ptr) offset)
+ {
+ bfd_set_error (bfd_error_file_truncated);
+ return FALSE;
+ }
+ if (!bfd_write_bigendian_4byte_int (arch, offset))
return FALSE;
count++;
}
archive_member_file_ptr += sizeof (struct ar_hdr);
if (! bfd_is_thin_archive (arch))
- {
- /* Add size of this archive entry. */
- archive_member_file_ptr += arelt_size (current);
- /* Remember about the even alignment. */
- archive_member_file_ptr += archive_member_file_ptr % 2;
- }
+ {
+ /* Add size of this archive entry. */
+ archive_member_file_ptr += arelt_size (current);
+ /* Remember about the even alignment. */
+ archive_member_file_ptr += archive_member_file_ptr % 2;
+ }
current = current->archive_next;
}
@@ -2632,3 +2698,58 @@
return TRUE;
}
+
+static int
+archive_close_worker (void **slot, void *inf ATTRIBUTE_UNUSED)
+{
+ struct ar_cache *ent = (struct ar_cache *) *slot;
+
+ bfd_close_all_done (ent->arbfd);
+ return 1;
+}
+
+bfd_boolean
+_bfd_archive_close_and_cleanup (bfd *abfd)
+{
+ if (bfd_read_p (abfd) && abfd->format == bfd_archive)
+ {
+ bfd *nbfd;
+ bfd *next;
+ htab_t htab;
+
+ /* Close nested archives (if this bfd is a thin archive). */
+ for (nbfd = abfd->nested_archives; nbfd; nbfd = next)
+ {
+ next = nbfd->archive_next;
+ bfd_close (nbfd);
+ }
+
+ htab = bfd_ardata (abfd)->cache;
+ if (htab)
+ {
+ htab_traverse_noresize (htab, archive_close_worker, NULL);
+ htab_delete (htab);
+ bfd_ardata (abfd)->cache = NULL;
+ }
+ }
+ if (arch_eltdata (abfd) != NULL)
+ {
+ struct areltdata *ared = arch_eltdata (abfd);
+ htab_t htab = (htab_t) ared->parent_cache;
+
+ if (htab)
+ {
+ struct ar_cache ent;
+ void **slot;
+
+ ent.ptr = ared->key;
+ slot = htab_find_slot (htab, &ent, NO_INSERT);
+ if (slot != NULL)
+ {
+ BFD_ASSERT (((struct ar_cache *) *slot)->arbfd == abfd);
+ htab_clear_slot (htab, slot);
+ }
+ }
+ }
+ return TRUE;
+}
diff --git a/bfd/archive64.c b/bfd/archive64.c
index bbc4c3f..be64e0d 100644
--- a/bfd/archive64.c
+++ b/bfd/archive64.c
@@ -1,6 +1,5 @@
-/* MIPS-specific support for 64-bit ELF
- Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, 2006, 2007,
- 2010 Free Software Foundation, Inc.
+/* Support for 64-bit ELF archives.
+ Copyright 1996-2013 Free Software Foundation, Inc.
Ian Lance Taylor, Cygnus Support
Linker support added by Mark Mitchell, CodeSourcery, LLC.
<[email protected]>
@@ -77,7 +76,7 @@
if (mapdata == NULL)
return FALSE;
parsed_size = mapdata->parsed_size;
- bfd_release (abfd, mapdata);
+ free (mapdata);
if (bfd_bread (int_buf, 8, abfd) != 8)
{
@@ -169,8 +168,8 @@
memset (&hdr, ' ', sizeof (struct ar_hdr));
memcpy (hdr.ar_name, "/SYM64/", strlen ("/SYM64/"));
- _bfd_ar_spacepad (hdr.ar_size, sizeof (hdr.ar_size), "%-10ld",
- mapsize);
+ if (!_bfd_ar_sizepad (hdr.ar_size, sizeof (hdr.ar_size), mapsize))
+ return FALSE;
_bfd_ar_spacepad (hdr.ar_date, sizeof (hdr.ar_date), "%ld",
time (NULL));
/* This, at least, is what Intel coff sets the values to.: */
@@ -200,7 +199,7 @@
current = current->archive_next)
{
/* For each symbol which is used defined in this object, write out
- the object file's address in the archive */
+ the object file's address in the archive. */
for (;
count < symbol_count && map[count].u.abfd == current;
@@ -210,9 +209,11 @@
if (bfd_bwrite (buf, 8, arch) != 8)
return FALSE;
}
+
/* Add size of this archive entry */
- archive_member_file_ptr += (arelt_size (current)
- + sizeof (struct ar_hdr));
+ archive_member_file_ptr += sizeof (struct ar_hdr);
+ if (! bfd_is_thin_archive (arch))
+ archive_member_file_ptr += arelt_size (current);
/* remember about the even alignment */
archive_member_file_ptr += archive_member_file_ptr % 2;
}
diff --git a/bfd/archures.c b/bfd/archures.c
index 44850e7..97c540a 100644
--- a/bfd/archures.c
+++ b/bfd/archures.c
@@ -1,7 +1,5 @@
/* BFD library support routines for architectures.
- Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
- Free Software Foundation, Inc.
+ Copyright 1990-2013 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.
@@ -145,7 +143,7 @@
.#define bfd_mach_sparc_64bit_p(mach) \
. ((mach) >= bfd_mach_sparc_v9 && (mach) != bfd_mach_sparc_v8plusb)
. bfd_arch_spu, {* PowerPC SPU *}
-.#define bfd_mach_spu 256
+.#define bfd_mach_spu 256
. bfd_arch_mips, {* MIPS Rxxxx *}
.#define bfd_mach_mips3000 3000
.#define bfd_mach_mips3900 3900
@@ -161,6 +159,7 @@
.#define bfd_mach_mips5000 5000
.#define bfd_mach_mips5400 5400
.#define bfd_mach_mips5500 5500
+.#define bfd_mach_mips5900 5900
.#define bfd_mach_mips6000 6000
.#define bfd_mach_mips7000 7000
.#define bfd_mach_mips8000 8000
@@ -176,6 +175,8 @@
.#define bfd_mach_mips_loongson_3a 3003
.#define bfd_mach_mips_sb1 12310201 {* octal 'SB', 01 *}
.#define bfd_mach_mips_octeon 6501
+.#define bfd_mach_mips_octeonp 6601
+.#define bfd_mach_mips_octeon2 6502
.#define bfd_mach_mips_xlr 887682 {* decimal 'XLR' *}
.#define bfd_mach_mipsisa32 32
.#define bfd_mach_mipsisa32r2 33
@@ -197,6 +198,10 @@
. bfd_arch_k1om, {* Intel K1OM *}
.#define bfd_mach_k1om (1 << 6)
.#define bfd_mach_k1om_intel_syntax (bfd_mach_k1om | bfd_mach_i386_intel_syntax)
+.#define bfd_mach_i386_nacl (1 << 7)
+.#define bfd_mach_i386_i386_nacl (bfd_mach_i386_i386 | bfd_mach_i386_nacl)
+.#define bfd_mach_x86_64_nacl (bfd_mach_x86_64 | bfd_mach_i386_nacl)
+.#define bfd_mach_x64_32_nacl (bfd_mach_x64_32 | bfd_mach_i386_nacl)
. bfd_arch_we32k, {* AT&T WE32xxx *}
. bfd_arch_tahoe, {* CCI/Harris Tahoe *}
. bfd_arch_i860, {* Intel 860 *}
@@ -239,7 +244,10 @@
.#define bfd_mach_ppc_e500 500
.#define bfd_mach_ppc_e500mc 5001
.#define bfd_mach_ppc_e500mc64 5005
+.#define bfd_mach_ppc_e5500 5006
+.#define bfd_mach_ppc_e6500 5007
.#define bfd_mach_ppc_titan 83
+.#define bfd_mach_ppc_vle 84
. bfd_arch_rs6000, {* IBM RS/6000 *}
.#define bfd_mach_rs6k 6000
.#define bfd_mach_rs6k_rs1 6001
@@ -261,6 +269,8 @@
.#define bfd_mach_m6812_default 0
.#define bfd_mach_m6812 1
.#define bfd_mach_m6812s 2
+. bfd_arch_m9s12x, {* Freescale S12X *}
+. bfd_arch_m9s12xg, {* Freescale XGATE *}
. bfd_arch_z8k, {* Zilog Z8000 *}
.#define bfd_mach_z8001 1
.#define bfd_mach_z8002 2
@@ -316,11 +326,13 @@
. bfd_arch_tic6x, {* Texas Instruments TMS320C6X *}
. bfd_arch_tic80, {* TI TMS320c80 (MVP) *}
. bfd_arch_v850, {* NEC V850 *}
+. bfd_arch_v850_rh850,{* NEC V850 (using RH850 ABI) *}
.#define bfd_mach_v850 1
.#define bfd_mach_v850e 'E'
.#define bfd_mach_v850e1 '1'
.#define bfd_mach_v850e2 0x4532
.#define bfd_mach_v850e2v3 0x45325633
+.#define bfd_mach_v850e3v5 0x45335635 {* ('E'|'3'|'V'|'5') *}
. bfd_arch_arc, {* ARC Cores *}
.#define bfd_mach_arc_5 5
.#define bfd_mach_arc_6 6
@@ -356,6 +368,8 @@
.#define bfd_mach_mep 1
.#define bfd_mach_mep_h1 0x6831
.#define bfd_mach_mep_c5 0x6335
+. bfd_arch_metag,
+.#define bfd_mach_metag 1
. bfd_arch_ia64, {* HP/Intel ia64 *}
.#define bfd_mach_ia64_elf64 64
.#define bfd_mach_ia64_elf32 32
@@ -365,6 +379,9 @@
. bfd_arch_iq2000, {* Vitesse IQ2000. *}
.#define bfd_mach_iq2000 1
.#define bfd_mach_iq10 2
+. bfd_arch_epiphany, {* Adapteva EPIPHANY *}
+.#define bfd_mach_epiphany16 1
+.#define bfd_mach_epiphany32 2
. bfd_arch_mt,
.#define bfd_mach_ms1 1
.#define bfd_mach_mrisc2 2
@@ -400,12 +417,14 @@
.#define bfd_mach_cris_v0_v10 255
.#define bfd_mach_cris_v32 32
.#define bfd_mach_cris_v10_v32 1032
+. bfd_arch_rl78,
+.#define bfd_mach_rl78 0x75
. bfd_arch_rx, {* Renesas RX. *}
.#define bfd_mach_rx 0x75
. bfd_arch_s390, {* IBM s390 *}
.#define bfd_mach_s390_31 31
.#define bfd_mach_s390_64 64
-. bfd_arch_score, {* Sunplus score *}
+. bfd_arch_score, {* Sunplus score *}
.#define bfd_mach_score3 3
.#define bfd_mach_score7 7
. bfd_arch_openrisc, {* OpenRISC *}
@@ -420,7 +439,12 @@
.#define bfd_mach_msp14 14
.#define bfd_mach_msp15 15
.#define bfd_mach_msp16 16
+.#define bfd_mach_msp20 20
.#define bfd_mach_msp21 21
+.#define bfd_mach_msp22 22
+.#define bfd_mach_msp23 23
+.#define bfd_mach_msp24 24
+.#define bfd_mach_msp26 26
.#define bfd_mach_msp31 31
.#define bfd_mach_msp32 32
.#define bfd_mach_msp33 33
@@ -428,10 +452,16 @@
.#define bfd_mach_msp42 42
.#define bfd_mach_msp43 43
.#define bfd_mach_msp44 44
+.#define bfd_mach_msp430x 45
+.#define bfd_mach_msp46 46
+.#define bfd_mach_msp47 47
+.#define bfd_mach_msp54 54
. bfd_arch_xc16x, {* Infineon's XC16X Series. *}
.#define bfd_mach_xc16x 1
.#define bfd_mach_xc16xl 2
-.#define bfd_mach_xc16xs 3
+.#define bfd_mach_xc16xs 3
+. bfd_arch_xgate, {* Freescale XGATE *}
+.#define bfd_mach_xgate 1
. bfd_arch_xtensa, {* Tensilica's Xtensa cores. *}
.#define bfd_mach_xtensa 1
. bfd_arch_z80,
@@ -446,6 +476,12 @@
. bfd_arch_tilegx, {* Tilera TILE-Gx *}
.#define bfd_mach_tilepro 1
.#define bfd_mach_tilegx 1
+.#define bfd_mach_tilegx32 2
+. bfd_arch_aarch64, {* AArch64 *}
+.#define bfd_mach_aarch64 0
+.#define bfd_mach_aarch64_ilp32 32
+. bfd_arch_nios2,
+.#define bfd_mach_nios2 0
. bfd_arch_last
. };
*/
@@ -478,12 +514,19 @@
.
. bfd_boolean (*scan) (const struct bfd_arch_info *, const char *);
.
+. {* Allocate via bfd_malloc and return a fill buffer of size COUNT. If
+. IS_BIGENDIAN is TRUE, the order of bytes is big endian. If CODE is
+. TRUE, the buffer contains code. *}
+. void *(*fill) (bfd_size_type count, bfd_boolean is_bigendian,
+. bfd_boolean code);
+.
. const struct bfd_arch_info *next;
.}
.bfd_arch_info_type;
.
*/
+extern const bfd_arch_info_type bfd_aarch64_arch;
extern const bfd_arch_info_type bfd_alpha_arch;
extern const bfd_arch_info_type bfd_arc_arch;
extern const bfd_arch_info_type bfd_arm_arch;
@@ -496,6 +539,7 @@
extern const bfd_arch_info_type bfd_d10v_arch;
extern const bfd_arch_info_type bfd_d30v_arch;
extern const bfd_arch_info_type bfd_dlx_arch;
+extern const bfd_arch_info_type bfd_epiphany_arch;
extern const bfd_arch_info_type bfd_fr30_arch;
extern const bfd_arch_info_type bfd_frv_arch;
extern const bfd_arch_info_type bfd_h8300_arch;
@@ -515,10 +559,13 @@
extern const bfd_arch_info_type bfd_m32r_arch;
extern const bfd_arch_info_type bfd_m68hc11_arch;
extern const bfd_arch_info_type bfd_m68hc12_arch;
+extern const bfd_arch_info_type bfd_m9s12x_arch;
+extern const bfd_arch_info_type bfd_m9s12xg_arch;
extern const bfd_arch_info_type bfd_m68k_arch;
extern const bfd_arch_info_type bfd_m88k_arch;
extern const bfd_arch_info_type bfd_mcore_arch;
extern const bfd_arch_info_type bfd_mep_arch;
+extern const bfd_arch_info_type bfd_metag_arch;
extern const bfd_arch_info_type bfd_mips_arch;
extern const bfd_arch_info_type bfd_microblaze_arch;
extern const bfd_arch_info_type bfd_mmix_arch;
@@ -527,6 +574,7 @@
extern const bfd_arch_info_type bfd_moxie_arch;
extern const bfd_arch_info_type bfd_msp430_arch;
extern const bfd_arch_info_type bfd_mt_arch;
+extern const bfd_arch_info_type bfd_nios2_arch;
extern const bfd_arch_info_type bfd_ns32k_arch;
extern const bfd_arch_info_type bfd_openrisc_arch;
extern const bfd_arch_info_type bfd_or32_arch;
@@ -536,6 +584,7 @@
extern const bfd_arch_info_type bfd_powerpc_archs[];
#define bfd_powerpc_arch bfd_powerpc_archs[0]
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;
extern const bfd_arch_info_type bfd_s390_arch;
extern const bfd_arch_info_type bfd_score_arch;
@@ -550,12 +599,14 @@
extern const bfd_arch_info_type bfd_tilegx_arch;
extern const bfd_arch_info_type bfd_tilepro_arch;
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_w65_arch;
extern const bfd_arch_info_type bfd_we32k_arch;
extern const bfd_arch_info_type bfd_xstormy16_arch;
extern const bfd_arch_info_type bfd_xtensa_arch;
extern const bfd_arch_info_type bfd_xc16x_arch;
+extern const bfd_arch_info_type bfd_xgate_arch;
extern const bfd_arch_info_type bfd_z80_arch;
extern const bfd_arch_info_type bfd_z8k_arch;
@@ -564,6 +615,7 @@
#ifdef SELECT_ARCHITECTURES
SELECT_ARCHITECTURES,
#else
+ &bfd_aarch64_arch,
&bfd_alpha_arch,
&bfd_arc_arch,
&bfd_arm_arch,
@@ -576,6 +628,7 @@
&bfd_d10v_arch,
&bfd_d30v_arch,
&bfd_dlx_arch,
+ &bfd_epiphany_arch,
&bfd_fr30_arch,
&bfd_frv_arch,
&bfd_h8300_arch,
@@ -595,10 +648,13 @@
&bfd_m32r_arch,
&bfd_m68hc11_arch,
&bfd_m68hc12_arch,
+ &bfd_m9s12x_arch,
+ &bfd_m9s12xg_arch,
&bfd_m68k_arch,
&bfd_m88k_arch,
&bfd_mcore_arch,
&bfd_mep_arch,
+ &bfd_metag_arch,
&bfd_microblaze_arch,
&bfd_mips_arch,
&bfd_mmix_arch,
@@ -607,12 +663,14 @@
&bfd_moxie_arch,
&bfd_msp430_arch,
&bfd_mt_arch,
+ &bfd_nios2_arch,
&bfd_ns32k_arch,
&bfd_openrisc_arch,
&bfd_or32_arch,
&bfd_pdp11_arch,
&bfd_powerpc_arch,
&bfd_rs6000_arch,
+ &bfd_rl78_arch,
&bfd_rx_arch,
&bfd_s390_arch,
&bfd_score_arch,
@@ -627,12 +685,14 @@
&bfd_tilegx_arch,
&bfd_tilepro_arch,
&bfd_v850_arch,
+ &bfd_v850_rh850_arch,
&bfd_vax_arch,
&bfd_w65_arch,
&bfd_we32k_arch,
&bfd_xstormy16_arch,
&bfd_xtensa_arch,
&bfd_xc16x_arch,
+ &bfd_xgate_arch,
&bfd_z80_arch,
&bfd_z8k_arch,
#endif
@@ -803,6 +863,7 @@
32, 32, 8, bfd_arch_unknown, 0, "unknown", "unknown", 2, TRUE,
bfd_default_compatible,
bfd_default_scan,
+ bfd_arch_default_fill,
0,
};
@@ -1298,3 +1359,29 @@
return ap->bits_per_byte / 8;
return 1;
}
+
+/*
+INTERNAL_FUNCTION
+ bfd_arch_default_fill
+
+SYNOPSIS
+ void *bfd_arch_default_fill (bfd_size_type count,
+ bfd_boolean is_bigendian,
+ bfd_boolean code);
+
+DESCRIPTION
+ Allocate via bfd_malloc and return a fill buffer of size COUNT.
+ If IS_BIGENDIAN is TRUE, the order of bytes is big endian. If
+ CODE is TRUE, the buffer contains code.
+*/
+
+void *
+bfd_arch_default_fill (bfd_size_type count,
+ bfd_boolean is_bigendian ATTRIBUTE_UNUSED,
+ bfd_boolean code ATTRIBUTE_UNUSED)
+{
+ void *fill = bfd_malloc (count);
+ if (fill != NULL)
+ memset (fill, 0, count);
+ return fill;
+}
diff --git a/bfd/bfd-in.h b/bfd/bfd-in.h
index a477b49..c7c5a7d 100644
--- a/bfd/bfd-in.h
+++ b/bfd/bfd-in.h
@@ -1,8 +1,6 @@
/* Main header file for the bfd library -- portable access to object files.
- Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
- Free Software Foundation, Inc.
+ Copyright 1990-2013 Free Software Foundation, Inc.
Contributed by Cygnus Support.
@@ -25,12 +23,19 @@
#ifndef __BFD_H_SEEN__
#define __BFD_H_SEEN__
+/* PR 14072: Ensure that config.h is included first. */
+#if !defined PACKAGE && !defined PACKAGE_VERSION
+#error config.h must be included before this header
+#endif
+
#ifdef __cplusplus
extern "C" {
#endif
#include "ansidecl.h"
#include "symcat.h"
+#include <sys/stat.h>
+
#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
#ifndef SABER
/* This hack is to avoid a problem with some strict ANSI C preprocessors.
@@ -55,7 +60,7 @@
problem for example when trying to use STRING_COMMA_LEN to build
the arguments to the strncmp() macro. Hence this alternative
definition of strncmp is provided here.
-
+
Note - these macros do NOT work if STR2 is not a constant string. */
#define CONST_STRNEQ(STR1,STR2) (strncmp ((STR1), (STR2), sizeof (STR2) - 1) == 0)
/* strcpy() can have a similar problem, but since we know we are
@@ -271,38 +276,33 @@
typedef struct bfd_section *sec_ptr;
-#define bfd_get_section_name(bfd, ptr) ((ptr)->name + 0)
-#define bfd_get_section_vma(bfd, ptr) ((ptr)->vma + 0)
-#define bfd_get_section_lma(bfd, ptr) ((ptr)->lma + 0)
-#define bfd_get_section_alignment(bfd, ptr) ((ptr)->alignment_power + 0)
+#define bfd_get_section_name(bfd, ptr) ((void) bfd, (ptr)->name)
+#define bfd_get_section_vma(bfd, ptr) ((void) bfd, (ptr)->vma)
+#define bfd_get_section_lma(bfd, ptr) ((void) bfd, (ptr)->lma)
+#define bfd_get_section_alignment(bfd, ptr) ((void) bfd, \
+ (ptr)->alignment_power)
#define bfd_section_name(bfd, ptr) ((ptr)->name)
#define bfd_section_size(bfd, ptr) ((ptr)->size)
#define bfd_get_section_size(ptr) ((ptr)->size)
#define bfd_section_vma(bfd, ptr) ((ptr)->vma)
#define bfd_section_lma(bfd, ptr) ((ptr)->lma)
#define bfd_section_alignment(bfd, ptr) ((ptr)->alignment_power)
-#define bfd_get_section_flags(bfd, ptr) ((ptr)->flags + 0)
-#define bfd_get_section_userdata(bfd, ptr) ((ptr)->userdata)
+#define bfd_get_section_flags(bfd, ptr) ((void) bfd, (ptr)->flags)
+#define bfd_get_section_userdata(bfd, ptr) ((void) bfd, (ptr)->userdata)
#define bfd_is_com_section(ptr) (((ptr)->flags & SEC_IS_COMMON) != 0)
-#define bfd_set_section_vma(bfd, ptr, val) (((ptr)->vma = (ptr)->lma = (val)), ((ptr)->user_set_vma = TRUE), TRUE)
-#define bfd_set_section_alignment(bfd, ptr, val) (((ptr)->alignment_power = (val)),TRUE)
-#define bfd_set_section_userdata(bfd, ptr, val) (((ptr)->userdata = (val)),TRUE)
/* Find the address one past the end of SEC. */
#define bfd_get_section_limit(bfd, sec) \
(((bfd)->direction != write_direction && (sec)->rawsize != 0 \
? (sec)->rawsize : (sec)->size) / bfd_octets_per_byte (bfd))
/* Return TRUE if input section SEC has been discarded. */
-#define elf_discarded_section(sec) \
+#define discarded_section(sec) \
(!bfd_is_abs_section (sec) \
&& bfd_is_abs_section ((sec)->output_section) \
- && (sec)->sec_info_type != ELF_INFO_TYPE_MERGE \
- && (sec)->sec_info_type != ELF_INFO_TYPE_JUST_SYMS)
-
-/* Forward define. */
-struct stat;
+ && (sec)->sec_info_type != SEC_INFO_TYPE_MERGE \
+ && (sec)->sec_info_type != SEC_INFO_TYPE_JUST_SYMS)
typedef enum bfd_print_symbol
{
@@ -514,8 +514,6 @@
#define bfd_get_symbol_leading_char(abfd) ((abfd)->xvec->symbol_leading_char)
-#define bfd_set_cacheable(abfd,bool) (((abfd)->cacheable = bool), TRUE)
-
extern bfd_boolean bfd_cache_close
(bfd *abfd);
/* NB: This declaration should match the autogenerated one in libbfd.h. */
@@ -643,6 +641,8 @@
(bfd *, struct bfd_link_info *);
extern bfd_boolean bfd_elf_get_bfd_needed_list
(bfd *, struct bfd_link_needed_list **);
+extern bfd_boolean bfd_elf_stack_segment_size (bfd *, struct bfd_link_info *,
+ const char *, bfd_vma);
extern bfd_boolean bfd_elf_size_dynamic_sections
(bfd *, const char *, const char *, const char *, const char *, const char *,
const char * const *, struct bfd_link_info *, struct bfd_section **);
@@ -693,19 +693,15 @@
the remote memory. */
extern bfd *bfd_elf_bfd_from_remote_memory
(bfd *templ, bfd_vma ehdr_vma, bfd_vma *loadbasep,
- int (*target_read_memory) (bfd_vma vma, bfd_byte *myaddr, int len));
-
-/* Return the arch_size field of an elf bfd, or -1 if not elf. */
-extern int bfd_get_arch_size
- (bfd *);
-
-/* Return TRUE if address "naturally" sign extends, or -1 if not elf. */
-extern int bfd_get_sign_extend_vma
- (bfd *);
+ int (*target_read_memory) (bfd_vma vma, bfd_byte *myaddr,
+ bfd_size_type len));
extern struct bfd_section *_bfd_elf_tls_setup
(bfd *, struct bfd_link_info *);
+extern struct bfd_section *
+_bfd_nearby_section (bfd *, struct bfd_section *, bfd_vma);
+
extern void _bfd_fix_excluded_sec_syms
(bfd *, struct bfd_link_info *);
@@ -908,7 +904,8 @@
(struct bfd_link_info *, struct bfd_section *);
extern bfd_boolean elf32_arm_size_stubs
(bfd *, bfd *, struct bfd_link_info *, bfd_signed_vma,
- struct bfd_section * (*) (const char *, struct bfd_section *), void (*) (void));
+ struct bfd_section * (*) (const char *, struct bfd_section *, unsigned int),
+ void (*) (void));
extern bfd_boolean elf32_arm_build_stubs
(struct bfd_link_info *);
@@ -927,6 +924,50 @@
extern unsigned int _bfd_elf_ppc_at_tprel_transform
(unsigned int, unsigned int);
+extern void bfd_elf64_aarch64_init_maps
+ (bfd *);
+
+extern void bfd_elf32_aarch64_init_maps
+ (bfd *);
+
+extern void bfd_elf64_aarch64_set_options
+ (bfd *, struct bfd_link_info *, int, int, int);
+
+extern void bfd_elf32_aarch64_set_options
+ (bfd *, struct bfd_link_info *, int, int, int);
+
+/* ELF AArch64 mapping symbol support. */
+#define BFD_AARCH64_SPECIAL_SYM_TYPE_MAP (1 << 0)
+#define BFD_AARCH64_SPECIAL_SYM_TYPE_TAG (1 << 1)
+#define BFD_AARCH64_SPECIAL_SYM_TYPE_OTHER (1 << 2)
+#define BFD_AARCH64_SPECIAL_SYM_TYPE_ANY (~0)
+extern bfd_boolean bfd_is_aarch64_special_symbol_name
+ (const char * name, int type);
+
+/* AArch64 stub generation support for ELF64. Called from the linker. */
+extern int elf64_aarch64_setup_section_lists
+ (bfd *, struct bfd_link_info *);
+extern void elf64_aarch64_next_input_section
+ (struct bfd_link_info *, struct bfd_section *);
+extern bfd_boolean elf64_aarch64_size_stubs
+ (bfd *, bfd *, struct bfd_link_info *, bfd_signed_vma,
+ struct bfd_section * (*) (const char *, struct bfd_section *),
+ void (*) (void));
+extern bfd_boolean elf64_aarch64_build_stubs
+ (struct bfd_link_info *);
+/* AArch64 stub generation support for ELF32. Called from the linker. */
+extern int elf32_aarch64_setup_section_lists
+ (bfd *, struct bfd_link_info *);
+extern void elf32_aarch64_next_input_section
+ (struct bfd_link_info *, struct bfd_section *);
+extern bfd_boolean elf32_aarch64_size_stubs
+ (bfd *, bfd *, struct bfd_link_info *, bfd_signed_vma,
+ struct bfd_section * (*) (const char *, struct bfd_section *),
+ void (*) (void));
+extern bfd_boolean elf32_aarch64_build_stubs
+ (struct bfd_link_info *);
+
+
/* TI COFF load page support. */
extern void bfd_ticoff_set_section_load_page
(struct bfd_section *, int);
@@ -962,6 +1003,5 @@
long symbol;
};
-extern struct coff_comdat_info *bfd_coff_get_comdat_section
+extern struct coff_comdat_info * bfd_coff_get_comdat_section
(bfd *, struct bfd_section *);
-
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
index 523ad9c..99c5bf8 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h
@@ -7,9 +7,7 @@
/* Main header file for the bfd library -- portable access to object files.
- Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
- Free Software Foundation, Inc.
+ Copyright 1990-2013 Free Software Foundation, Inc.
Contributed by Cygnus Support.
@@ -32,12 +30,19 @@
#ifndef __BFD_H_SEEN__
#define __BFD_H_SEEN__
+/* PR 14072: Ensure that config.h is included first. */
+#if !defined PACKAGE && !defined PACKAGE_VERSION
+#error config.h must be included before this header
+#endif
+
#ifdef __cplusplus
extern "C" {
#endif
#include "ansidecl.h"
#include "symcat.h"
+#include <sys/stat.h>
+
#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
#ifndef SABER
/* This hack is to avoid a problem with some strict ANSI C preprocessors.
@@ -62,7 +67,7 @@
problem for example when trying to use STRING_COMMA_LEN to build
the arguments to the strncmp() macro. Hence this alternative
definition of strncmp is provided here.
-
+
Note - these macros do NOT work if STR2 is not a constant string. */
#define CONST_STRNEQ(STR1,STR2) (strncmp ((STR1), (STR2), sizeof (STR2) - 1) == 0)
/* strcpy() can have a similar problem, but since we know we are
@@ -278,38 +283,33 @@
typedef struct bfd_section *sec_ptr;
-#define bfd_get_section_name(bfd, ptr) ((ptr)->name + 0)
-#define bfd_get_section_vma(bfd, ptr) ((ptr)->vma + 0)
-#define bfd_get_section_lma(bfd, ptr) ((ptr)->lma + 0)
-#define bfd_get_section_alignment(bfd, ptr) ((ptr)->alignment_power + 0)
+#define bfd_get_section_name(bfd, ptr) ((void) bfd, (ptr)->name)
+#define bfd_get_section_vma(bfd, ptr) ((void) bfd, (ptr)->vma)
+#define bfd_get_section_lma(bfd, ptr) ((void) bfd, (ptr)->lma)
+#define bfd_get_section_alignment(bfd, ptr) ((void) bfd, \
+ (ptr)->alignment_power)
#define bfd_section_name(bfd, ptr) ((ptr)->name)
#define bfd_section_size(bfd, ptr) ((ptr)->size)
#define bfd_get_section_size(ptr) ((ptr)->size)
#define bfd_section_vma(bfd, ptr) ((ptr)->vma)
#define bfd_section_lma(bfd, ptr) ((ptr)->lma)
#define bfd_section_alignment(bfd, ptr) ((ptr)->alignment_power)
-#define bfd_get_section_flags(bfd, ptr) ((ptr)->flags + 0)
-#define bfd_get_section_userdata(bfd, ptr) ((ptr)->userdata)
+#define bfd_get_section_flags(bfd, ptr) ((void) bfd, (ptr)->flags)
+#define bfd_get_section_userdata(bfd, ptr) ((void) bfd, (ptr)->userdata)
#define bfd_is_com_section(ptr) (((ptr)->flags & SEC_IS_COMMON) != 0)
-#define bfd_set_section_vma(bfd, ptr, val) (((ptr)->vma = (ptr)->lma = (val)), ((ptr)->user_set_vma = TRUE), TRUE)
-#define bfd_set_section_alignment(bfd, ptr, val) (((ptr)->alignment_power = (val)),TRUE)
-#define bfd_set_section_userdata(bfd, ptr, val) (((ptr)->userdata = (val)),TRUE)
/* Find the address one past the end of SEC. */
#define bfd_get_section_limit(bfd, sec) \
(((bfd)->direction != write_direction && (sec)->rawsize != 0 \
? (sec)->rawsize : (sec)->size) / bfd_octets_per_byte (bfd))
/* Return TRUE if input section SEC has been discarded. */
-#define elf_discarded_section(sec) \
+#define discarded_section(sec) \
(!bfd_is_abs_section (sec) \
&& bfd_is_abs_section ((sec)->output_section) \
- && (sec)->sec_info_type != ELF_INFO_TYPE_MERGE \
- && (sec)->sec_info_type != ELF_INFO_TYPE_JUST_SYMS)
-
-/* Forward define. */
-struct stat;
+ && (sec)->sec_info_type != SEC_INFO_TYPE_MERGE \
+ && (sec)->sec_info_type != SEC_INFO_TYPE_JUST_SYMS)
typedef enum bfd_print_symbol
{
@@ -521,8 +521,6 @@
#define bfd_get_symbol_leading_char(abfd) ((abfd)->xvec->symbol_leading_char)
-#define bfd_set_cacheable(abfd,bool) (((abfd)->cacheable = bool), TRUE)
-
extern bfd_boolean bfd_cache_close
(bfd *abfd);
/* NB: This declaration should match the autogenerated one in libbfd.h. */
@@ -650,6 +648,8 @@
(bfd *, struct bfd_link_info *);
extern bfd_boolean bfd_elf_get_bfd_needed_list
(bfd *, struct bfd_link_needed_list **);
+extern bfd_boolean bfd_elf_stack_segment_size (bfd *, struct bfd_link_info *,
+ const char *, bfd_vma);
extern bfd_boolean bfd_elf_size_dynamic_sections
(bfd *, const char *, const char *, const char *, const char *, const char *,
const char * const *, struct bfd_link_info *, struct bfd_section **);
@@ -700,19 +700,15 @@
the remote memory. */
extern bfd *bfd_elf_bfd_from_remote_memory
(bfd *templ, bfd_vma ehdr_vma, bfd_vma *loadbasep,
- int (*target_read_memory) (bfd_vma vma, bfd_byte *myaddr, int len));
-
-/* Return the arch_size field of an elf bfd, or -1 if not elf. */
-extern int bfd_get_arch_size
- (bfd *);
-
-/* Return TRUE if address "naturally" sign extends, or -1 if not elf. */
-extern int bfd_get_sign_extend_vma
- (bfd *);
+ int (*target_read_memory) (bfd_vma vma, bfd_byte *myaddr,
+ bfd_size_type len));
extern struct bfd_section *_bfd_elf_tls_setup
(bfd *, struct bfd_link_info *);
+extern struct bfd_section *
+_bfd_nearby_section (bfd *, struct bfd_section *, bfd_vma);
+
extern void _bfd_fix_excluded_sec_syms
(bfd *, struct bfd_link_info *);
@@ -915,7 +911,8 @@
(struct bfd_link_info *, struct bfd_section *);
extern bfd_boolean elf32_arm_size_stubs
(bfd *, bfd *, struct bfd_link_info *, bfd_signed_vma,
- struct bfd_section * (*) (const char *, struct bfd_section *), void (*) (void));
+ struct bfd_section * (*) (const char *, struct bfd_section *, unsigned int),
+ void (*) (void));
extern bfd_boolean elf32_arm_build_stubs
(struct bfd_link_info *);
@@ -934,6 +931,50 @@
extern unsigned int _bfd_elf_ppc_at_tprel_transform
(unsigned int, unsigned int);
+extern void bfd_elf64_aarch64_init_maps
+ (bfd *);
+
+extern void bfd_elf32_aarch64_init_maps
+ (bfd *);
+
+extern void bfd_elf64_aarch64_set_options
+ (bfd *, struct bfd_link_info *, int, int, int);
+
+extern void bfd_elf32_aarch64_set_options
+ (bfd *, struct bfd_link_info *, int, int, int);
+
+/* ELF AArch64 mapping symbol support. */
+#define BFD_AARCH64_SPECIAL_SYM_TYPE_MAP (1 << 0)
+#define BFD_AARCH64_SPECIAL_SYM_TYPE_TAG (1 << 1)
+#define BFD_AARCH64_SPECIAL_SYM_TYPE_OTHER (1 << 2)
+#define BFD_AARCH64_SPECIAL_SYM_TYPE_ANY (~0)
+extern bfd_boolean bfd_is_aarch64_special_symbol_name
+ (const char * name, int type);
+
+/* AArch64 stub generation support for ELF64. Called from the linker. */
+extern int elf64_aarch64_setup_section_lists
+ (bfd *, struct bfd_link_info *);
+extern void elf64_aarch64_next_input_section
+ (struct bfd_link_info *, struct bfd_section *);
+extern bfd_boolean elf64_aarch64_size_stubs
+ (bfd *, bfd *, struct bfd_link_info *, bfd_signed_vma,
+ struct bfd_section * (*) (const char *, struct bfd_section *),
+ void (*) (void));
+extern bfd_boolean elf64_aarch64_build_stubs
+ (struct bfd_link_info *);
+/* AArch64 stub generation support for ELF32. Called from the linker. */
+extern int elf32_aarch64_setup_section_lists
+ (bfd *, struct bfd_link_info *);
+extern void elf32_aarch64_next_input_section
+ (struct bfd_link_info *, struct bfd_section *);
+extern bfd_boolean elf32_aarch64_size_stubs
+ (bfd *, bfd *, struct bfd_link_info *, bfd_signed_vma,
+ struct bfd_section * (*) (const char *, struct bfd_section *),
+ void (*) (void));
+extern bfd_boolean elf32_aarch64_build_stubs
+ (struct bfd_link_info *);
+
+
/* TI COFF load page support. */
extern void bfd_ticoff_set_section_load_page
(struct bfd_section *, int);
@@ -969,9 +1010,8 @@
long symbol;
};
-extern struct coff_comdat_info *bfd_coff_get_comdat_section
+extern struct coff_comdat_info * bfd_coff_get_comdat_section
(bfd *, struct bfd_section *);
-
/* Extracted from init.c. */
void bfd_init (void);
@@ -984,7 +1024,7 @@
bfd *bfd_fdopenr (const char *filename, const char *target, int fd);
-bfd *bfd_openstreamr (const char *, const char *, void *);
+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,
@@ -1020,8 +1060,14 @@
unsigned long bfd_calc_gnu_debuglink_crc32
(unsigned long crc, const unsigned char *buf, bfd_size_type len);
+char *bfd_get_debug_link_info (bfd *abfd, unsigned long *crc32_out);
+
+char *bfd_get_alt_debug_link_info (bfd *abfd, unsigned long *crc32_out);
+
char *bfd_follow_gnu_debuglink (bfd *abfd, const char *dir);
+char *bfd_follow_gnu_debugaltlink (bfd *abfd, const char *dir);
+
struct bfd_section *bfd_create_gnu_debuglink_section
(bfd *abfd, const char *filename);
@@ -1384,11 +1430,11 @@
/* Type of sec_info information. */
unsigned int sec_info_type:3;
-#define ELF_INFO_TYPE_NONE 0
-#define ELF_INFO_TYPE_STABS 1
-#define ELF_INFO_TYPE_MERGE 2
-#define ELF_INFO_TYPE_EH_FRAME 3
-#define ELF_INFO_TYPE_JUST_SYMS 4
+#define SEC_INFO_TYPE_NONE 0
+#define SEC_INFO_TYPE_STABS 1
+#define SEC_INFO_TYPE_MERGE 2
+#define SEC_INFO_TYPE_EH_FRAME 3
+#define SEC_INFO_TYPE_JUST_SYMS 4
/* Nonzero if this section uses RELA relocations, rather than REL. */
unsigned int use_rela_p:1;
@@ -1518,9 +1564,6 @@
/* The BFD which owns the section. */
bfd *owner;
- /* INPUT_SECTION_FLAGS if specified in the linker script. */
- struct flag_info *section_flag_info;
-
/* A symbol which points at this section only. */
struct bfd_symbol *symbol;
struct bfd_symbol **symbol_ptr_ptr;
@@ -1536,40 +1579,63 @@
} asection;
/* Relax table contains information about instructions which can
- be removed by relaxation -- replacing a long address with a
+ be removed by relaxation -- replacing a long address with a
short address. */
struct relax_table {
/* Address where bytes may be deleted. */
bfd_vma addr;
-
+
/* Number of bytes to be deleted. */
int size;
};
+/* Note: the following are provided as inline functions rather than macros
+ because not all callers use the return value. A macro implementation
+ would use a comma expression, eg: "((ptr)->foo = val, TRUE)" and some
+ compilers will complain about comma expressions that have no effect. */
+static inline bfd_boolean
+bfd_set_section_userdata (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, void * val)
+{
+ ptr->userdata = val;
+ return TRUE;
+}
+
+static inline bfd_boolean
+bfd_set_section_vma (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, bfd_vma val)
+{
+ ptr->vma = ptr->lma = val;
+ ptr->user_set_vma = TRUE;
+ return TRUE;
+}
+
+static inline bfd_boolean
+bfd_set_section_alignment (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, unsigned int val)
+{
+ ptr->alignment_power = val;
+ return TRUE;
+}
+
/* These sections are global, and are managed by BFD. The application
and target back end are not permitted to change the values in
- these sections. New code should use the section_ptr macros rather
- than referring directly to the const sections. The const sections
- may eventually vanish. */
+ these sections. */
+extern asection _bfd_std_section[4];
+
#define BFD_ABS_SECTION_NAME "*ABS*"
#define BFD_UND_SECTION_NAME "*UND*"
#define BFD_COM_SECTION_NAME "*COM*"
#define BFD_IND_SECTION_NAME "*IND*"
-/* The absolute section. */
-extern asection bfd_abs_section;
-#define bfd_abs_section_ptr ((asection *) &bfd_abs_section)
-#define bfd_is_abs_section(sec) ((sec) == bfd_abs_section_ptr)
-/* Pointer to the undefined section. */
-extern asection bfd_und_section;
-#define bfd_und_section_ptr ((asection *) &bfd_und_section)
-#define bfd_is_und_section(sec) ((sec) == bfd_und_section_ptr)
/* Pointer to the common section. */
-extern asection bfd_com_section;
-#define bfd_com_section_ptr ((asection *) &bfd_com_section)
+#define bfd_com_section_ptr (&_bfd_std_section[0])
+/* Pointer to the undefined section. */
+#define bfd_und_section_ptr (&_bfd_std_section[1])
+/* Pointer to the absolute section. */
+#define bfd_abs_section_ptr (&_bfd_std_section[2])
/* Pointer to the indirect section. */
-extern asection bfd_ind_section;
-#define bfd_ind_section_ptr ((asection *) &bfd_ind_section)
+#define bfd_ind_section_ptr (&_bfd_std_section[3])
+
+#define bfd_is_und_section(sec) ((sec) == bfd_und_section_ptr)
+#define bfd_is_abs_section(sec) ((sec) == bfd_abs_section_ptr)
#define bfd_is_ind_section(sec) ((sec) == bfd_ind_section_ptr)
#define bfd_is_const_section(SEC) \
@@ -1684,8 +1750,8 @@
/* vma, lma, size, rawsize, compressed_size, relax, relax_count, */ \
0, 0, 0, 0, 0, 0, 0, \
\
- /* output_offset, output_section, alignment_power, */ \
- 0, (struct bfd_section *) &SEC, 0, \
+ /* output_offset, output_section, alignment_power, */ \
+ 0, &SEC, 0, \
\
/* relocation, orelocation, reloc_count, filepos, rel_filepos, */ \
NULL, NULL, 0, 0, 0, \
@@ -1699,9 +1765,6 @@
/* target_index, used_by_bfd, constructor_chain, owner, */ \
0, NULL, NULL, NULL, \
\
- /* flag_info, */ \
- NULL, \
- \
/* symbol, symbol_ptr_ptr, */ \
(struct bfd_symbol *) SYM, &SEC.symbol, \
\
@@ -1713,6 +1776,10 @@
asection *bfd_get_section_by_name (bfd *abfd, const char *name);
+asection *bfd_get_next_section_by_name (asection *sec);
+
+asection *bfd_get_linker_section (bfd *abfd, const char *name);
+
asection *bfd_get_section_by_name_if
(bfd *abfd,
const char *name,
@@ -1852,7 +1919,7 @@
#define bfd_mach_sparc_64bit_p(mach) \
((mach) >= bfd_mach_sparc_v9 && (mach) != bfd_mach_sparc_v8plusb)
bfd_arch_spu, /* PowerPC SPU */
-#define bfd_mach_spu 256
+#define bfd_mach_spu 256
bfd_arch_mips, /* MIPS Rxxxx */
#define bfd_mach_mips3000 3000
#define bfd_mach_mips3900 3900
@@ -1868,6 +1935,7 @@
#define bfd_mach_mips5000 5000
#define bfd_mach_mips5400 5400
#define bfd_mach_mips5500 5500
+#define bfd_mach_mips5900 5900
#define bfd_mach_mips6000 6000
#define bfd_mach_mips7000 7000
#define bfd_mach_mips8000 8000
@@ -1883,6 +1951,8 @@
#define bfd_mach_mips_loongson_3a 3003
#define bfd_mach_mips_sb1 12310201 /* octal 'SB', 01 */
#define bfd_mach_mips_octeon 6501
+#define bfd_mach_mips_octeonp 6601
+#define bfd_mach_mips_octeon2 6502
#define bfd_mach_mips_xlr 887682 /* decimal 'XLR' */
#define bfd_mach_mipsisa32 32
#define bfd_mach_mipsisa32r2 33
@@ -1904,6 +1974,10 @@
bfd_arch_k1om, /* Intel K1OM */
#define bfd_mach_k1om (1 << 6)
#define bfd_mach_k1om_intel_syntax (bfd_mach_k1om | bfd_mach_i386_intel_syntax)
+#define bfd_mach_i386_nacl (1 << 7)
+#define bfd_mach_i386_i386_nacl (bfd_mach_i386_i386 | bfd_mach_i386_nacl)
+#define bfd_mach_x86_64_nacl (bfd_mach_x86_64 | bfd_mach_i386_nacl)
+#define bfd_mach_x64_32_nacl (bfd_mach_x64_32 | bfd_mach_i386_nacl)
bfd_arch_we32k, /* AT&T WE32xxx */
bfd_arch_tahoe, /* CCI/Harris Tahoe */
bfd_arch_i860, /* Intel 860 */
@@ -1946,7 +2020,10 @@
#define bfd_mach_ppc_e500 500
#define bfd_mach_ppc_e500mc 5001
#define bfd_mach_ppc_e500mc64 5005
+#define bfd_mach_ppc_e5500 5006
+#define bfd_mach_ppc_e6500 5007
#define bfd_mach_ppc_titan 83
+#define bfd_mach_ppc_vle 84
bfd_arch_rs6000, /* IBM RS/6000 */
#define bfd_mach_rs6k 6000
#define bfd_mach_rs6k_rs1 6001
@@ -1968,6 +2045,8 @@
#define bfd_mach_m6812_default 0
#define bfd_mach_m6812 1
#define bfd_mach_m6812s 2
+ bfd_arch_m9s12x, /* Freescale S12X */
+ bfd_arch_m9s12xg, /* Freescale XGATE */
bfd_arch_z8k, /* Zilog Z8000 */
#define bfd_mach_z8001 1
#define bfd_mach_z8002 2
@@ -2023,11 +2102,13 @@
bfd_arch_tic6x, /* Texas Instruments TMS320C6X */
bfd_arch_tic80, /* TI TMS320c80 (MVP) */
bfd_arch_v850, /* NEC V850 */
+ bfd_arch_v850_rh850,/* NEC V850 (using RH850 ABI) */
#define bfd_mach_v850 1
#define bfd_mach_v850e 'E'
#define bfd_mach_v850e1 '1'
#define bfd_mach_v850e2 0x4532
#define bfd_mach_v850e2v3 0x45325633
+#define bfd_mach_v850e3v5 0x45335635 /* ('E'|'3'|'V'|'5') */
bfd_arch_arc, /* ARC Cores */
#define bfd_mach_arc_5 5
#define bfd_mach_arc_6 6
@@ -2063,6 +2144,8 @@
#define bfd_mach_mep 1
#define bfd_mach_mep_h1 0x6831
#define bfd_mach_mep_c5 0x6335
+ bfd_arch_metag,
+#define bfd_mach_metag 1
bfd_arch_ia64, /* HP/Intel ia64 */
#define bfd_mach_ia64_elf64 64
#define bfd_mach_ia64_elf32 32
@@ -2072,6 +2155,9 @@
bfd_arch_iq2000, /* Vitesse IQ2000. */
#define bfd_mach_iq2000 1
#define bfd_mach_iq10 2
+ bfd_arch_epiphany, /* Adapteva EPIPHANY */
+#define bfd_mach_epiphany16 1
+#define bfd_mach_epiphany32 2
bfd_arch_mt,
#define bfd_mach_ms1 1
#define bfd_mach_mrisc2 2
@@ -2107,12 +2193,14 @@
#define bfd_mach_cris_v0_v10 255
#define bfd_mach_cris_v32 32
#define bfd_mach_cris_v10_v32 1032
+ bfd_arch_rl78,
+#define bfd_mach_rl78 0x75
bfd_arch_rx, /* Renesas RX. */
#define bfd_mach_rx 0x75
bfd_arch_s390, /* IBM s390 */
#define bfd_mach_s390_31 31
#define bfd_mach_s390_64 64
- bfd_arch_score, /* Sunplus score */
+ bfd_arch_score, /* Sunplus score */
#define bfd_mach_score3 3
#define bfd_mach_score7 7
bfd_arch_openrisc, /* OpenRISC */
@@ -2127,7 +2215,12 @@
#define bfd_mach_msp14 14
#define bfd_mach_msp15 15
#define bfd_mach_msp16 16
+#define bfd_mach_msp20 20
#define bfd_mach_msp21 21
+#define bfd_mach_msp22 22
+#define bfd_mach_msp23 23
+#define bfd_mach_msp24 24
+#define bfd_mach_msp26 26
#define bfd_mach_msp31 31
#define bfd_mach_msp32 32
#define bfd_mach_msp33 33
@@ -2135,10 +2228,16 @@
#define bfd_mach_msp42 42
#define bfd_mach_msp43 43
#define bfd_mach_msp44 44
+#define bfd_mach_msp430x 45
+#define bfd_mach_msp46 46
+#define bfd_mach_msp47 47
+#define bfd_mach_msp54 54
bfd_arch_xc16x, /* Infineon's XC16X Series. */
#define bfd_mach_xc16x 1
#define bfd_mach_xc16xl 2
-#define bfd_mach_xc16xs 3
+#define bfd_mach_xc16xs 3
+ bfd_arch_xgate, /* Freescale XGATE */
+#define bfd_mach_xgate 1
bfd_arch_xtensa, /* Tensilica's Xtensa cores. */
#define bfd_mach_xtensa 1
bfd_arch_z80,
@@ -2153,6 +2252,12 @@
bfd_arch_tilegx, /* Tilera TILE-Gx */
#define bfd_mach_tilepro 1
#define bfd_mach_tilegx 1
+#define bfd_mach_tilegx32 2
+ bfd_arch_aarch64, /* AArch64 */
+#define bfd_mach_aarch64 0
+#define bfd_mach_aarch64_ilp32 32
+ bfd_arch_nios2,
+#define bfd_mach_nios2 0
bfd_arch_last
};
@@ -2175,6 +2280,12 @@
bfd_boolean (*scan) (const struct bfd_arch_info *, const char *);
+ /* Allocate via bfd_malloc and return a fill buffer of size COUNT. If
+ IS_BIGENDIAN is TRUE, the order of bytes is big endian. If CODE is
+ TRUE, the buffer contains code. */
+ void *(*fill) (bfd_size_type count, bfd_boolean is_bigendian,
+ bfd_boolean code);
+
const struct bfd_arch_info *next;
}
bfd_arch_info_type;
@@ -2472,6 +2583,10 @@
BFD_RELOC_HI16_S_PLTOFF,
BFD_RELOC_8_PLTOFF,
+/* Size relocations. */
+ BFD_RELOC_SIZE32,
+ BFD_RELOC_SIZE64,
+
/* Relocations used by 68K ELF. */
BFD_RELOC_68K_GLOB_DAT,
BFD_RELOC_68K_JMP_SLOT,
@@ -2585,6 +2700,10 @@
BFD_RELOC_SPARC_M44,
BFD_RELOC_SPARC_L44,
BFD_RELOC_SPARC_REGISTER,
+ BFD_RELOC_SPARC_H34,
+ BFD_RELOC_SPARC_SIZE32,
+ BFD_RELOC_SPARC_SIZE64,
+ BFD_RELOC_SPARC_WDISP10,
/* SPARC little endian relocation */
BFD_RELOC_SPARC_REV32,
@@ -2780,6 +2899,15 @@
/* MIPS16 low 16 bits. */
BFD_RELOC_MIPS16_LO16,
+/* MIPS16 TLS relocations */
+ BFD_RELOC_MIPS16_TLS_GD,
+ BFD_RELOC_MIPS16_TLS_LDM,
+ BFD_RELOC_MIPS16_TLS_DTPREL_HI16,
+ BFD_RELOC_MIPS16_TLS_DTPREL_LO16,
+ BFD_RELOC_MIPS16_TLS_GOTTPREL,
+ BFD_RELOC_MIPS16_TLS_TPREL_HI16,
+ BFD_RELOC_MIPS16_TLS_TPREL_LO16,
+
/* Relocation against a MIPS literal section. */
BFD_RELOC_MIPS_LITERAL,
BFD_RELOC_MICROMIPS_LITERAL,
@@ -2851,6 +2979,7 @@
BFD_RELOC_MICROMIPS_TLS_TPREL_HI16,
BFD_RELOC_MIPS_TLS_TPREL_LO16,
BFD_RELOC_MICROMIPS_TLS_TPREL_LO16,
+ BFD_RELOC_MIPS_EH,
/* MIPS ELF relocations (VxWorks and PLT extensions). */
@@ -2941,6 +3070,25 @@
relaxation. */
BFD_RELOC_MN10300_ALIGN,
+/* Various TLS-related relocations. */
+ BFD_RELOC_MN10300_TLS_GD,
+ BFD_RELOC_MN10300_TLS_LD,
+ BFD_RELOC_MN10300_TLS_LDO,
+ BFD_RELOC_MN10300_TLS_GOTIE,
+ BFD_RELOC_MN10300_TLS_IE,
+ BFD_RELOC_MN10300_TLS_LE,
+ BFD_RELOC_MN10300_TLS_DTPMOD,
+ BFD_RELOC_MN10300_TLS_DTPOFF,
+ BFD_RELOC_MN10300_TLS_TPOFF,
+
+/* This is a 32bit pcrel reloc for the mn10300, offset by two bytes in the
+instruction. */
+ BFD_RELOC_MN10300_32_PCREL,
+
+/* This is a 16bit pcrel reloc for the mn10300, offset by two bytes in the
+instruction. */
+ BFD_RELOC_MN10300_16_PCREL,
+
/* i386/elf relocations */
BFD_RELOC_386_GOT32,
@@ -2996,6 +3144,8 @@
BFD_RELOC_X86_64_TLSDESC_CALL,
BFD_RELOC_X86_64_TLSDESC,
BFD_RELOC_X86_64_IRELATIVE,
+ BFD_RELOC_X86_64_PC32_BND,
+ BFD_RELOC_X86_64_PLT32_BND,
/* ns32k relocations */
BFD_RELOC_NS32K_IMM_8,
@@ -3054,6 +3204,23 @@
BFD_RELOC_PPC_EMB_RELST_HA,
BFD_RELOC_PPC_EMB_BIT_FLD,
BFD_RELOC_PPC_EMB_RELSDA,
+ BFD_RELOC_PPC_VLE_REL8,
+ BFD_RELOC_PPC_VLE_REL15,
+ BFD_RELOC_PPC_VLE_REL24,
+ BFD_RELOC_PPC_VLE_LO16A,
+ BFD_RELOC_PPC_VLE_LO16D,
+ BFD_RELOC_PPC_VLE_HI16A,
+ BFD_RELOC_PPC_VLE_HI16D,
+ BFD_RELOC_PPC_VLE_HA16A,
+ BFD_RELOC_PPC_VLE_HA16D,
+ BFD_RELOC_PPC_VLE_SDA21,
+ BFD_RELOC_PPC_VLE_SDA21_LO,
+ BFD_RELOC_PPC_VLE_SDAREL_LO16A,
+ BFD_RELOC_PPC_VLE_SDAREL_LO16D,
+ BFD_RELOC_PPC_VLE_SDAREL_HI16A,
+ BFD_RELOC_PPC_VLE_SDAREL_HI16D,
+ BFD_RELOC_PPC_VLE_SDAREL_HA16A,
+ BFD_RELOC_PPC_VLE_SDAREL_HA16D,
BFD_RELOC_PPC64_HIGHER,
BFD_RELOC_PPC64_HIGHER_S,
BFD_RELOC_PPC64_HIGHEST,
@@ -3077,6 +3244,8 @@
BFD_RELOC_PPC64_TOC16_LO_DS,
BFD_RELOC_PPC64_PLTGOT16_DS,
BFD_RELOC_PPC64_PLTGOT16_LO_DS,
+ BFD_RELOC_PPC64_ADDR16_HIGH,
+ BFD_RELOC_PPC64_ADDR16_HIGHA,
/* PowerPC and PowerPC64 thread-local storage relocations. */
BFD_RELOC_PPC_TLS,
@@ -3121,6 +3290,10 @@
BFD_RELOC_PPC64_DTPREL16_HIGHERA,
BFD_RELOC_PPC64_DTPREL16_HIGHEST,
BFD_RELOC_PPC64_DTPREL16_HIGHESTA,
+ BFD_RELOC_PPC64_TPREL16_HIGH,
+ BFD_RELOC_PPC64_TPREL16_HIGHA,
+ BFD_RELOC_PPC64_DTPREL16_HIGH,
+ BFD_RELOC_PPC64_DTPREL16_HIGHA,
/* IBM 370/390 relocations */
BFD_RELOC_I370_D12,
@@ -3776,14 +3949,6 @@
/* start data in text. */
BFD_RELOC_V850_DATA,
-/* This is a 32bit pcrel reloc for the mn10300, offset by two bytes in the
-instruction. */
- BFD_RELOC_MN10300_32_PCREL,
-
-/* This is a 16bit pcrel reloc for the mn10300, offset by two bytes in the
-instruction. */
- BFD_RELOC_MN10300_16_PCREL,
-
/* This is a 8bit DP reloc for the tms320c30, where the most
significant 8 bits of a 24 bit word are placed into the least
significant 8 bits of the opcode. */
@@ -3906,6 +4071,46 @@
BFD_RELOC_MEP_GNU_VTENTRY,
+/* Imagination Technologies Meta relocations. */
+ BFD_RELOC_METAG_HIADDR16,
+ BFD_RELOC_METAG_LOADDR16,
+ BFD_RELOC_METAG_RELBRANCH,
+ BFD_RELOC_METAG_GETSETOFF,
+ BFD_RELOC_METAG_HIOG,
+ BFD_RELOC_METAG_LOOG,
+ BFD_RELOC_METAG_REL8,
+ BFD_RELOC_METAG_REL16,
+ BFD_RELOC_METAG_HI16_GOTOFF,
+ BFD_RELOC_METAG_LO16_GOTOFF,
+ BFD_RELOC_METAG_GETSET_GOTOFF,
+ BFD_RELOC_METAG_GETSET_GOT,
+ BFD_RELOC_METAG_HI16_GOTPC,
+ BFD_RELOC_METAG_LO16_GOTPC,
+ BFD_RELOC_METAG_HI16_PLT,
+ BFD_RELOC_METAG_LO16_PLT,
+ BFD_RELOC_METAG_RELBRANCH_PLT,
+ BFD_RELOC_METAG_GOTOFF,
+ BFD_RELOC_METAG_PLT,
+ BFD_RELOC_METAG_COPY,
+ BFD_RELOC_METAG_JMP_SLOT,
+ BFD_RELOC_METAG_RELATIVE,
+ BFD_RELOC_METAG_GLOB_DAT,
+ BFD_RELOC_METAG_TLS_GD,
+ BFD_RELOC_METAG_TLS_LDM,
+ BFD_RELOC_METAG_TLS_LDO_HI16,
+ BFD_RELOC_METAG_TLS_LDO_LO16,
+ BFD_RELOC_METAG_TLS_LDO,
+ BFD_RELOC_METAG_TLS_IE,
+ BFD_RELOC_METAG_TLS_IENONPIC,
+ BFD_RELOC_METAG_TLS_IENONPIC_HI16,
+ BFD_RELOC_METAG_TLS_IENONPIC_LO16,
+ BFD_RELOC_METAG_TLS_TPOFF,
+ BFD_RELOC_METAG_TLS_DTPMOD,
+ BFD_RELOC_METAG_TLS_DTPOFF,
+ BFD_RELOC_METAG_TLS_LE,
+ BFD_RELOC_METAG_TLS_LE_HI16,
+ BFD_RELOC_METAG_TLS_LE_LO16,
+
/* These are relocations for the GETA instruction. */
BFD_RELOC_MMIX_GETA,
BFD_RELOC_MMIX_GETA_1,
@@ -4005,7 +4210,7 @@
command address) into 8 bit immediate value of LDI insn. */
BFD_RELOC_AVR_LO8_LDI_PM,
-/* This is a 16 bit reloc for the AVR that stores 8 bit value
+/* This is a 16 bit reloc for the AVR that stores 8 bit value
(command address) into 8 bit immediate value of LDI insn. If the address
is beyond the 128k boundary, the linker inserts a jump stub for this reloc
in the lower 128k. */
@@ -4055,6 +4260,53 @@
instructions */
BFD_RELOC_AVR_6_ADIW,
+/* This is a 8 bit reloc for the AVR that stores bits 0..7 of a symbol
+in .byte lo8(symbol) */
+ BFD_RELOC_AVR_8_LO,
+
+/* This is a 8 bit reloc for the AVR that stores bits 8..15 of a symbol
+in .byte hi8(symbol) */
+ BFD_RELOC_AVR_8_HI,
+
+/* This is a 8 bit reloc for the AVR that stores bits 16..23 of a symbol
+in .byte hlo8(symbol) */
+ BFD_RELOC_AVR_8_HLO,
+
+/* Renesas RL78 Relocations. */
+ BFD_RELOC_RL78_NEG8,
+ BFD_RELOC_RL78_NEG16,
+ BFD_RELOC_RL78_NEG24,
+ BFD_RELOC_RL78_NEG32,
+ BFD_RELOC_RL78_16_OP,
+ BFD_RELOC_RL78_24_OP,
+ BFD_RELOC_RL78_32_OP,
+ BFD_RELOC_RL78_8U,
+ BFD_RELOC_RL78_16U,
+ BFD_RELOC_RL78_24U,
+ BFD_RELOC_RL78_DIR3U_PCREL,
+ BFD_RELOC_RL78_DIFF,
+ BFD_RELOC_RL78_GPRELB,
+ BFD_RELOC_RL78_GPRELW,
+ BFD_RELOC_RL78_GPRELL,
+ BFD_RELOC_RL78_SYM,
+ BFD_RELOC_RL78_OP_SUBTRACT,
+ BFD_RELOC_RL78_OP_NEG,
+ BFD_RELOC_RL78_OP_AND,
+ BFD_RELOC_RL78_OP_SHRA,
+ BFD_RELOC_RL78_ABS8,
+ BFD_RELOC_RL78_ABS16,
+ BFD_RELOC_RL78_ABS16_REV,
+ BFD_RELOC_RL78_ABS32,
+ BFD_RELOC_RL78_ABS32_REV,
+ BFD_RELOC_RL78_ABS16U,
+ BFD_RELOC_RL78_ABS16UW,
+ BFD_RELOC_RL78_ABS16UL,
+ BFD_RELOC_RL78_RELAX,
+ BFD_RELOC_RL78_HI16,
+ BFD_RELOC_RL78_HI8,
+ BFD_RELOC_RL78_LO16,
+ BFD_RELOC_RL78_CODE,
+
/* Renesas RX Relocations. */
BFD_RELOC_RX_NEG8,
BFD_RELOC_RX_NEG16,
@@ -4111,12 +4363,24 @@
/* 16 bit GOT offset. */
BFD_RELOC_390_GOT16,
+/* PC relative 12 bit shifted by 1. */
+ BFD_RELOC_390_PC12DBL,
+
+/* 12 bit PC rel. PLT shifted by 1. */
+ BFD_RELOC_390_PLT12DBL,
+
/* PC relative 16 bit shifted by 1. */
BFD_RELOC_390_PC16DBL,
/* 16 bit PC rel. PLT shifted by 1. */
BFD_RELOC_390_PLT16DBL,
+/* PC relative 24 bit shifted by 1. */
+ BFD_RELOC_390_PC24DBL,
+
+/* 24 bit PC rel. PLT shifted by 1. */
+ BFD_RELOC_390_PLT24DBL,
+
/* PC relative 32 bit shifted by 1. */
BFD_RELOC_390_PC32DBL,
@@ -4190,6 +4454,9 @@
BFD_RELOC_390_GOTPLT20,
BFD_RELOC_390_TLS_GOTIE20,
+/* STT_GNU_IFUNC relocation. */
+ BFD_RELOC_390_IRELATIVE,
+
/* Score relocations
Low 16 bit for load/store */
BFD_RELOC_SCORE_GPREL15,
@@ -4404,6 +4671,83 @@
This is the 5 bits of a value. */
BFD_RELOC_M68HC12_5B,
+/* Freescale XGATE reloc.
+This reloc marks the beginning of a bra/jal instruction. */
+ BFD_RELOC_XGATE_RL_JUMP,
+
+/* Freescale XGATE reloc.
+This reloc marks a group of several instructions that gcc generates
+and for which the linker relaxation pass can modify and/or remove
+some of them. */
+ BFD_RELOC_XGATE_RL_GROUP,
+
+/* Freescale XGATE reloc.
+This is the 16-bit lower part of an address. It is used for the '16-bit'
+instructions. */
+ BFD_RELOC_XGATE_LO16,
+
+/* Freescale XGATE reloc. */
+ BFD_RELOC_XGATE_GPAGE,
+
+/* Freescale XGATE reloc. */
+ BFD_RELOC_XGATE_24,
+
+/* Freescale XGATE reloc.
+This is a 9-bit pc-relative reloc. */
+ BFD_RELOC_XGATE_PCREL_9,
+
+/* Freescale XGATE reloc.
+This is a 10-bit pc-relative reloc. */
+ BFD_RELOC_XGATE_PCREL_10,
+
+/* Freescale XGATE reloc.
+This is the 16-bit lower part of an address. It is used for the '16-bit'
+instructions. */
+ BFD_RELOC_XGATE_IMM8_LO,
+
+/* Freescale XGATE reloc.
+This is the 16-bit higher part of an address. It is used for the '16-bit'
+instructions. */
+ BFD_RELOC_XGATE_IMM8_HI,
+
+/* Freescale XGATE reloc.
+This is a 3-bit pc-relative reloc. */
+ BFD_RELOC_XGATE_IMM3,
+
+/* Freescale XGATE reloc.
+This is a 4-bit pc-relative reloc. */
+ BFD_RELOC_XGATE_IMM4,
+
+/* Freescale XGATE reloc.
+This is a 5-bit pc-relative reloc. */
+ BFD_RELOC_XGATE_IMM5,
+
+/* Motorola 68HC12 reloc.
+This is the 9 bits of a value. */
+ BFD_RELOC_M68HC12_9B,
+
+/* Motorola 68HC12 reloc.
+This is the 16 bits of a value. */
+ BFD_RELOC_M68HC12_16B,
+
+/* Motorola 68HC12/XGATE reloc.
+This is a PCREL9 branch. */
+ BFD_RELOC_M68HC12_9_PCREL,
+
+/* Motorola 68HC12/XGATE reloc.
+This is a PCREL10 branch. */
+ BFD_RELOC_M68HC12_10_PCREL,
+
+/* Motorola 68HC12/XGATE reloc.
+This is the 8 bit low part of an absolute address and immediately precedes
+a matching HI8XG part. */
+ BFD_RELOC_M68HC12_LO8XG,
+
+/* Motorola 68HC12/XGATE reloc.
+This is the 8 bit high part of an absolute address and immediately follows
+a matching LO8XG part. */
+ BFD_RELOC_M68HC12_HI8XG,
+
/* NS CR16C Relocations. */
BFD_RELOC_16C_NUM08,
BFD_RELOC_16C_NUM08_C,
@@ -4601,6 +4945,7 @@
BFD_RELOC_H8_DIR24A8,
BFD_RELOC_H8_DIR24R8,
BFD_RELOC_H8_DIR32A16,
+ BFD_RELOC_H8_DISP32A16,
/* Sony Xstormy16 Relocations. */
BFD_RELOC_XSTORMY16_REL_12,
@@ -4649,6 +4994,57 @@
BFD_RELOC_MSP430_16_BYTE,
BFD_RELOC_MSP430_2X_PCREL,
BFD_RELOC_MSP430_RL_PCREL,
+ BFD_RELOC_MSP430_ABS8,
+ BFD_RELOC_MSP430X_PCR20_EXT_SRC,
+ BFD_RELOC_MSP430X_PCR20_EXT_DST,
+ BFD_RELOC_MSP430X_PCR20_EXT_ODST,
+ BFD_RELOC_MSP430X_ABS20_EXT_SRC,
+ BFD_RELOC_MSP430X_ABS20_EXT_DST,
+ BFD_RELOC_MSP430X_ABS20_EXT_ODST,
+ BFD_RELOC_MSP430X_ABS20_ADR_SRC,
+ BFD_RELOC_MSP430X_ABS20_ADR_DST,
+ BFD_RELOC_MSP430X_PCR16,
+ BFD_RELOC_MSP430X_PCR20_CALL,
+ BFD_RELOC_MSP430X_ABS16,
+ BFD_RELOC_MSP430_ABS_HI16,
+ BFD_RELOC_MSP430_PREL31,
+ BFD_RELOC_MSP430_SYM_DIFF,
+
+/* Relocations used by the Altera Nios II core. */
+ BFD_RELOC_NIOS2_S16,
+ BFD_RELOC_NIOS2_U16,
+ BFD_RELOC_NIOS2_CALL26,
+ BFD_RELOC_NIOS2_IMM5,
+ BFD_RELOC_NIOS2_CACHE_OPX,
+ BFD_RELOC_NIOS2_IMM6,
+ BFD_RELOC_NIOS2_IMM8,
+ BFD_RELOC_NIOS2_HI16,
+ BFD_RELOC_NIOS2_LO16,
+ BFD_RELOC_NIOS2_HIADJ16,
+ BFD_RELOC_NIOS2_GPREL,
+ BFD_RELOC_NIOS2_UJMP,
+ BFD_RELOC_NIOS2_CJMP,
+ BFD_RELOC_NIOS2_CALLR,
+ BFD_RELOC_NIOS2_ALIGN,
+ BFD_RELOC_NIOS2_GOT16,
+ BFD_RELOC_NIOS2_CALL16,
+ BFD_RELOC_NIOS2_GOTOFF_LO,
+ BFD_RELOC_NIOS2_GOTOFF_HA,
+ BFD_RELOC_NIOS2_PCREL_LO,
+ BFD_RELOC_NIOS2_PCREL_HA,
+ BFD_RELOC_NIOS2_TLS_GD16,
+ BFD_RELOC_NIOS2_TLS_LDM16,
+ BFD_RELOC_NIOS2_TLS_LDO16,
+ BFD_RELOC_NIOS2_TLS_IE16,
+ BFD_RELOC_NIOS2_TLS_LE16,
+ BFD_RELOC_NIOS2_TLS_DTPMOD,
+ BFD_RELOC_NIOS2_TLS_DTPREL,
+ BFD_RELOC_NIOS2_TLS_TPREL,
+ BFD_RELOC_NIOS2_COPY,
+ BFD_RELOC_NIOS2_GLOB_DAT,
+ BFD_RELOC_NIOS2_JUMP_SLOT,
+ BFD_RELOC_NIOS2_RELATIVE,
+ BFD_RELOC_NIOS2_GOTOFF,
/* IQ2000 Relocations. */
BFD_RELOC_IQ2000_OFFSET_16,
@@ -4770,6 +5166,9 @@
BFD_RELOC_MACH_O_PAIR. */
BFD_RELOC_MACH_O_SECTDIFF,
+/* Like BFD_RELOC_MACH_O_SECTDIFF but with a local symbol. */
+ BFD_RELOC_MACH_O_LOCAL_SECTDIFF,
+
/* Pair of relocation. Contains the first symbol. */
BFD_RELOC_MACH_O_PAIR,
@@ -4800,52 +5199,52 @@
/* Same as BFD_RELOC_32_PCREL but with an implicit -4 addend. */
BFD_RELOC_MACH_O_X86_64_PCREL32_4,
-/* This is a 32 bit reloc for the microblaze that stores the
+/* This is a 32 bit reloc for the microblaze that stores the
low 16 bits of a value */
BFD_RELOC_MICROBLAZE_32_LO,
-/* This is a 32 bit pc-relative reloc for the microblaze that
+/* This is a 32 bit pc-relative reloc for the microblaze that
stores the low 16 bits of a value */
BFD_RELOC_MICROBLAZE_32_LO_PCREL,
-/* This is a 32 bit reloc for the microblaze that stores a
+/* This is a 32 bit reloc for the microblaze that stores a
value relative to the read-only small data area anchor */
BFD_RELOC_MICROBLAZE_32_ROSDA,
-/* This is a 32 bit reloc for the microblaze that stores a
+/* This is a 32 bit reloc for the microblaze that stores a
value relative to the read-write small data area anchor */
BFD_RELOC_MICROBLAZE_32_RWSDA,
-/* This is a 32 bit reloc for the microblaze to handle
+/* This is a 32 bit reloc for the microblaze to handle
expressions of the form "Symbol Op Symbol" */
BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM,
-/* This is a 64 bit reloc that stores the 32 bit pc relative
-value in two words (with an imm instruction). No relocation is
+/* This is a 64 bit reloc that stores the 32 bit pc relative
+value in two words (with an imm instruction). No relocation is
done here - only used for relaxing */
BFD_RELOC_MICROBLAZE_64_NONE,
-/* This is a 64 bit reloc that stores the 32 bit pc relative
+/* This is a 64 bit reloc that stores the 32 bit pc relative
value in two words (with an imm instruction). The relocation is
PC-relative GOT offset */
BFD_RELOC_MICROBLAZE_64_GOTPC,
-/* This is a 64 bit reloc that stores the 32 bit pc relative
+/* This is a 64 bit reloc that stores the 32 bit pc relative
value in two words (with an imm instruction). The relocation is
GOT offset */
BFD_RELOC_MICROBLAZE_64_GOT,
-/* This is a 64 bit reloc that stores the 32 bit pc relative
+/* This is a 64 bit reloc that stores the 32 bit pc relative
value in two words (with an imm instruction). The relocation is
PC-relative offset into PLT */
BFD_RELOC_MICROBLAZE_64_PLT,
-/* This is a 64 bit reloc that stores the 32 bit GOT relative
+/* This is a 64 bit reloc that stores the 32 bit GOT relative
value in two words (with an imm instruction). The relocation is
relative offset from _GLOBAL_OFFSET_TABLE_ */
BFD_RELOC_MICROBLAZE_64_GOTOFF,
-/* This is a 32 bit reloc that stores the 32 bit GOT relative
+/* This is a 32 bit reloc that stores the 32 bit GOT relative
value in a word. The relocation is relative offset from */
BFD_RELOC_MICROBLAZE_32_GOTOFF,
@@ -4853,6 +5252,325 @@
the dynamic object into the runtime process image. */
BFD_RELOC_MICROBLAZE_COPY,
+/* Unused Reloc */
+ BFD_RELOC_MICROBLAZE_64_TLS,
+
+/* This is a 64 bit reloc that stores the 32 bit GOT relative value
+of the GOT TLS GD info entry in two words (with an imm instruction). The
+relocation is GOT offset. */
+ BFD_RELOC_MICROBLAZE_64_TLSGD,
+
+/* This is a 64 bit reloc that stores the 32 bit GOT relative value
+of the GOT TLS LD info entry in two words (with an imm instruction). The
+relocation is GOT offset. */
+ BFD_RELOC_MICROBLAZE_64_TLSLD,
+
+/* This is a 32 bit reloc that stores the Module ID to GOT(n). */
+ BFD_RELOC_MICROBLAZE_32_TLSDTPMOD,
+
+/* This is a 32 bit reloc that stores TLS offset to GOT(n+1). */
+ BFD_RELOC_MICROBLAZE_32_TLSDTPREL,
+
+/* This is a 32 bit reloc for storing TLS offset to two words (uses imm
+instruction) */
+ BFD_RELOC_MICROBLAZE_64_TLSDTPREL,
+
+/* This is a 64 bit reloc that stores 32-bit thread pointer relative offset
+to two words (uses imm instruction). */
+ BFD_RELOC_MICROBLAZE_64_TLSGOTTPREL,
+
+/* This is a 64 bit reloc that stores 32-bit thread pointer relative offset
+to two words (uses imm instruction). */
+ BFD_RELOC_MICROBLAZE_64_TLSTPREL,
+
+/* AArch64 pseudo relocation code to mark the start of the AArch64
+relocation enumerators. N.B. the order of the enumerators is
+important as several tables in the AArch64 bfd backend are indexed
+by these enumerators; make sure they are all synced. */
+ BFD_RELOC_AARCH64_RELOC_START,
+
+/* AArch64 null relocation code. */
+ BFD_RELOC_AARCH64_NONE,
+
+/* Basic absolute relocations of N bits. These are equivalent to
+BFD_RELOC_N and they were added to assist the indexing of the howto
+table. */
+ BFD_RELOC_AARCH64_64,
+ BFD_RELOC_AARCH64_32,
+ BFD_RELOC_AARCH64_16,
+
+/* PC-relative relocations. These are equivalent to BFD_RELOC_N_PCREL
+and they were added to assist the indexing of the howto table. */
+ BFD_RELOC_AARCH64_64_PCREL,
+ BFD_RELOC_AARCH64_32_PCREL,
+ BFD_RELOC_AARCH64_16_PCREL,
+
+/* AArch64 MOV[NZK] instruction with most significant bits 0 to 15
+of an unsigned address/value. */
+ BFD_RELOC_AARCH64_MOVW_G0,
+
+/* AArch64 MOV[NZK] instruction with less significant bits 0 to 15 of
+an address/value. No overflow checking. */
+ BFD_RELOC_AARCH64_MOVW_G0_NC,
+
+/* AArch64 MOV[NZK] instruction with most significant bits 16 to 31
+of an unsigned address/value. */
+ BFD_RELOC_AARCH64_MOVW_G1,
+
+/* AArch64 MOV[NZK] instruction with less significant bits 16 to 31
+of an address/value. No overflow checking. */
+ BFD_RELOC_AARCH64_MOVW_G1_NC,
+
+/* AArch64 MOV[NZK] instruction with most significant bits 32 to 47
+of an unsigned address/value. */
+ BFD_RELOC_AARCH64_MOVW_G2,
+
+/* AArch64 MOV[NZK] instruction with less significant bits 32 to 47
+of an address/value. No overflow checking. */
+ BFD_RELOC_AARCH64_MOVW_G2_NC,
+
+/* AArch64 MOV[NZK] instruction with most signficant bits 48 to 64
+of a signed or unsigned address/value. */
+ BFD_RELOC_AARCH64_MOVW_G3,
+
+/* AArch64 MOV[NZ] instruction with most significant bits 0 to 15
+of a signed value. Changes instruction to MOVZ or MOVN depending on the
+value's sign. */
+ BFD_RELOC_AARCH64_MOVW_G0_S,
+
+/* AArch64 MOV[NZ] instruction with most significant bits 16 to 31
+of a signed value. Changes instruction to MOVZ or MOVN depending on the
+value's sign. */
+ BFD_RELOC_AARCH64_MOVW_G1_S,
+
+/* AArch64 MOV[NZ] instruction with most significant bits 32 to 47
+of a signed value. Changes instruction to MOVZ or MOVN depending on the
+value's sign. */
+ BFD_RELOC_AARCH64_MOVW_G2_S,
+
+/* AArch64 Load Literal instruction, holding a 19 bit pc-relative word
+offset. The lowest two bits must be zero and are not stored in the
+instruction, giving a 21 bit signed byte offset. */
+ BFD_RELOC_AARCH64_LD_LO19_PCREL,
+
+/* AArch64 ADR instruction, holding a simple 21 bit pc-relative byte offset. */
+ BFD_RELOC_AARCH64_ADR_LO21_PCREL,
+
+/* AArch64 ADRP instruction, with bits 12 to 32 of a pc-relative page
+offset, giving a 4KB aligned page base address. */
+ BFD_RELOC_AARCH64_ADR_HI21_PCREL,
+
+/* AArch64 ADRP instruction, with bits 12 to 32 of a pc-relative page
+offset, giving a 4KB aligned page base address, but with no overflow
+checking. */
+ BFD_RELOC_AARCH64_ADR_HI21_NC_PCREL,
+
+/* AArch64 ADD immediate instruction, holding bits 0 to 11 of the address.
+Used in conjunction with BFD_RELOC_AARCH64_ADR_HI21_PCREL. */
+ BFD_RELOC_AARCH64_ADD_LO12,
+
+/* AArch64 8-bit load/store instruction, holding bits 0 to 11 of the
+address. Used in conjunction with BFD_RELOC_AARCH64_ADR_HI21_PCREL. */
+ BFD_RELOC_AARCH64_LDST8_LO12,
+
+/* AArch64 14 bit pc-relative test bit and branch.
+The lowest two bits must be zero and are not stored in the instruction,
+giving a 16 bit signed byte offset. */
+ BFD_RELOC_AARCH64_TSTBR14,
+
+/* AArch64 19 bit pc-relative conditional branch and compare & branch.
+The lowest two bits must be zero and are not stored in the instruction,
+giving a 21 bit signed byte offset. */
+ BFD_RELOC_AARCH64_BRANCH19,
+
+/* AArch64 26 bit pc-relative unconditional branch.
+The lowest two bits must be zero and are not stored in the instruction,
+giving a 28 bit signed byte offset. */
+ BFD_RELOC_AARCH64_JUMP26,
+
+/* AArch64 26 bit pc-relative unconditional branch and link.
+The lowest two bits must be zero and are not stored in the instruction,
+giving a 28 bit signed byte offset. */
+ BFD_RELOC_AARCH64_CALL26,
+
+/* AArch64 16-bit load/store instruction, holding bits 0 to 11 of the
+address. Used in conjunction with BFD_RELOC_AARCH64_ADR_HI21_PCREL. */
+ BFD_RELOC_AARCH64_LDST16_LO12,
+
+/* AArch64 32-bit load/store instruction, holding bits 0 to 11 of the
+address. Used in conjunction with BFD_RELOC_AARCH64_ADR_HI21_PCREL. */
+ BFD_RELOC_AARCH64_LDST32_LO12,
+
+/* AArch64 64-bit load/store instruction, holding bits 0 to 11 of the
+address. Used in conjunction with BFD_RELOC_AARCH64_ADR_HI21_PCREL. */
+ BFD_RELOC_AARCH64_LDST64_LO12,
+
+/* AArch64 128-bit load/store instruction, holding bits 0 to 11 of the
+address. Used in conjunction with BFD_RELOC_AARCH64_ADR_HI21_PCREL. */
+ BFD_RELOC_AARCH64_LDST128_LO12,
+
+/* AArch64 Load Literal instruction, holding a 19 bit PC relative word
+offset of the global offset table entry for a symbol. The lowest two
+bits must be zero and are not stored in the instruction, giving a 21
+bit signed byte offset. This relocation type requires signed overflow
+checking. */
+ BFD_RELOC_AARCH64_GOT_LD_PREL19,
+
+/* Get to the page base of the global offset table entry for a symbol as
+part of an ADRP instruction using a 21 bit PC relative value.Used in
+conjunction with BFD_RELOC_AARCH64_LD64_GOT_LO12_NC. */
+ BFD_RELOC_AARCH64_ADR_GOT_PAGE,
+
+/* Unsigned 12 bit byte offset for 64 bit load/store from the page of
+the GOT entry for this symbol. Used in conjunction with
+BFD_RELOC_AARCH64_ADR_GOTPAGE. Valid in LP64 ABI only. */
+ BFD_RELOC_AARCH64_LD64_GOT_LO12_NC,
+
+/* Unsigned 12 bit byte offset for 32 bit load/store from the page of
+the GOT entry for this symbol. Used in conjunction with
+BFD_RELOC_AARCH64_ADR_GOTPAGE. Valid in ILP32 ABI only. */
+ BFD_RELOC_AARCH64_LD32_GOT_LO12_NC,
+
+/* Get to the page base of the global offset table entry for a symbols
+tls_index structure as part of an adrp instruction using a 21 bit PC
+relative value. Used in conjunction with
+BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC. */
+ BFD_RELOC_AARCH64_TLSGD_ADR_PAGE21,
+
+/* Unsigned 12 bit byte offset to global offset table entry for a symbols
+tls_index structure. Used in conjunction with
+BFD_RELOC_AARCH64_TLSGD_ADR_PAGE21. */
+ BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC,
+
+/* AArch64 TLS INITIAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSIE_MOVW_GOTTPREL_G1,
+
+/* AArch64 TLS INITIAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC,
+
+/* AArch64 TLS INITIAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21,
+
+/* AArch64 TLS INITIAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC,
+
+/* AArch64 TLS INITIAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSIE_LD32_GOTTPREL_LO12_NC,
+
+/* AArch64 TLS INITIAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_PREL19,
+
+/* AArch64 TLS LOCAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G2,
+
+/* AArch64 TLS LOCAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1,
+
+/* AArch64 TLS LOCAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1_NC,
+
+/* AArch64 TLS LOCAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0,
+
+/* AArch64 TLS LOCAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0_NC,
+
+/* AArch64 TLS LOCAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_HI12,
+
+/* AArch64 TLS LOCAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12,
+
+/* AArch64 TLS LOCAL EXEC relocation. */
+ BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12_NC,
+
+/* AArch64 TLS DESC relocation. */
+ BFD_RELOC_AARCH64_TLSDESC_LD_PREL19,
+
+/* AArch64 TLS DESC relocation. */
+ BFD_RELOC_AARCH64_TLSDESC_ADR_PREL21,
+
+/* AArch64 TLS DESC relocation. */
+ BFD_RELOC_AARCH64_TLSDESC_ADR_PAGE21,
+
+/* AArch64 TLS DESC relocation. */
+ BFD_RELOC_AARCH64_TLSDESC_LD64_LO12_NC,
+
+/* AArch64 TLS DESC relocation. */
+ BFD_RELOC_AARCH64_TLSDESC_LD32_LO12_NC,
+
+/* AArch64 TLS DESC relocation. */
+ BFD_RELOC_AARCH64_TLSDESC_ADD_LO12_NC,
+
+/* AArch64 TLS DESC relocation. */
+ BFD_RELOC_AARCH64_TLSDESC_OFF_G1,
+
+/* AArch64 TLS DESC relocation. */
+ BFD_RELOC_AARCH64_TLSDESC_OFF_G0_NC,
+
+/* AArch64 TLS DESC relocation. */
+ BFD_RELOC_AARCH64_TLSDESC_LDR,
+
+/* AArch64 TLS DESC relocation. */
+ BFD_RELOC_AARCH64_TLSDESC_ADD,
+
+/* AArch64 TLS DESC relocation. */
+ BFD_RELOC_AARCH64_TLSDESC_CALL,
+
+/* AArch64 TLS relocation. */
+ BFD_RELOC_AARCH64_COPY,
+
+/* AArch64 TLS relocation. */
+ BFD_RELOC_AARCH64_GLOB_DAT,
+
+/* AArch64 TLS relocation. */
+ BFD_RELOC_AARCH64_JUMP_SLOT,
+
+/* AArch64 TLS relocation. */
+ BFD_RELOC_AARCH64_RELATIVE,
+
+/* AArch64 TLS relocation. */
+ BFD_RELOC_AARCH64_TLS_DTPMOD,
+
+/* AArch64 TLS relocation. */
+ BFD_RELOC_AARCH64_TLS_DTPREL,
+
+/* AArch64 TLS relocation. */
+ BFD_RELOC_AARCH64_TLS_TPREL,
+
+/* AArch64 TLS relocation. */
+ BFD_RELOC_AARCH64_TLSDESC,
+
+/* AArch64 support for STT_GNU_IFUNC. */
+ BFD_RELOC_AARCH64_IRELATIVE,
+
+/* AArch64 pseudo relocation code to mark the end of the AArch64
+relocation enumerators that have direct mapping to ELF reloc codes.
+There are a few more enumerators after this one; those are mainly
+used by the AArch64 assembler for the internal fixup or to select
+one of the above enumerators. */
+ BFD_RELOC_AARCH64_RELOC_END,
+
+/* AArch64 pseudo relocation code to be used internally by the AArch64
+assembler and not (currently) written to any object files. */
+ BFD_RELOC_AARCH64_GAS_INTERNAL_FIXUP,
+
+/* AArch64 unspecified load/store instruction, holding bits 0 to 11 of the
+address. Used in conjunction with BFD_RELOC_AARCH64_ADR_HI21_PCREL. */
+ BFD_RELOC_AARCH64_LDST_LO12,
+
+/* AArch64 pseudo relocation code to be used internally by the AArch64
+assembler and not (currently) written to any object files. */
+ BFD_RELOC_AARCH64_LD_GOT_LO12_NC,
+
+/* AArch64 pseudo relocation code to be used internally by the AArch64
+assembler and not (currently) written to any object files. */
+ BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_LO12_NC,
+
+/* AArch64 pseudo relocation code to be used internally by the AArch64
+assembler and not (currently) written to any object files. */
+ BFD_RELOC_AARCH64_TLSDESC_LD_LO12_NC,
+
/* Tilera TILEPro Relocations. */
BFD_RELOC_TILEPRO_COPY,
BFD_RELOC_TILEPRO_GLOB_DAT,
@@ -4900,6 +5618,12 @@
BFD_RELOC_TILEPRO_SHAMT_X1,
BFD_RELOC_TILEPRO_SHAMT_Y0,
BFD_RELOC_TILEPRO_SHAMT_Y1,
+ BFD_RELOC_TILEPRO_TLS_GD_CALL,
+ BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD,
+ BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD,
+ BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD,
+ BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD,
+ BFD_RELOC_TILEPRO_TLS_IE_LOAD,
BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD,
BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD,
BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_LO,
@@ -4919,6 +5643,14 @@
BFD_RELOC_TILEPRO_TLS_DTPMOD32,
BFD_RELOC_TILEPRO_TLS_DTPOFF32,
BFD_RELOC_TILEPRO_TLS_TPOFF32,
+ BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE,
+ BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE,
+ BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO,
+ BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO,
+ BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI,
+ BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI,
+ BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA,
+ BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA,
/* Tilera TILE-Gx Relocations. */
BFD_RELOC_TILEGX_HW0,
@@ -4978,52 +5710,79 @@
BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PCREL,
BFD_RELOC_TILEGX_IMM16_X0_HW0_GOT,
BFD_RELOC_TILEGX_IMM16_X1_HW0_GOT,
- BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT,
- BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT,
- BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT,
- BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT,
- BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT,
- BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT,
+ BFD_RELOC_TILEGX_IMM16_X0_HW0_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW0_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X0_HW1_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW1_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X0_HW2_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW2_PLT_PCREL,
BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_GOT,
BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_GOT,
BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_GOT,
BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_GOT,
- BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT,
- BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT,
+ BFD_RELOC_TILEGX_IMM16_X0_HW3_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW3_PLT_PCREL,
BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_GD,
BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_GD,
- BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD,
- BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD,
- BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD,
- BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD,
- BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD,
- BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD,
+ BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE,
+ BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE,
+ BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE,
+ BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE,
+ BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE,
+ BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE,
BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_GD,
BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_GD,
BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_GD,
BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_GD,
- BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD,
- BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD,
BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_IE,
BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_IE,
- BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE,
- BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE,
- BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE,
- BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE,
- BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE,
- BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE,
+ BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_PLT_PCREL,
+ BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PLT_PCREL,
BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_IE,
BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_IE,
BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_IE,
BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_IE,
- BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE,
- BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE,
BFD_RELOC_TILEGX_TLS_DTPMOD64,
BFD_RELOC_TILEGX_TLS_DTPOFF64,
BFD_RELOC_TILEGX_TLS_TPOFF64,
BFD_RELOC_TILEGX_TLS_DTPMOD32,
BFD_RELOC_TILEGX_TLS_DTPOFF32,
BFD_RELOC_TILEGX_TLS_TPOFF32,
+ BFD_RELOC_TILEGX_TLS_GD_CALL,
+ BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD,
+ BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD,
+ BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD,
+ BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD,
+ BFD_RELOC_TILEGX_TLS_IE_LOAD,
+ BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD,
+ BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD,
+ BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD,
+ BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD,
+
+/* Adapteva EPIPHANY - 8 bit signed pc-relative displacement */
+ BFD_RELOC_EPIPHANY_SIMM8,
+
+/* Adapteva EPIPHANY - 24 bit signed pc-relative displacement */
+ BFD_RELOC_EPIPHANY_SIMM24,
+
+/* Adapteva EPIPHANY - 16 most-significant bits of absolute address */
+ BFD_RELOC_EPIPHANY_HIGH,
+
+/* Adapteva EPIPHANY - 16 least-significant bits of absolute address */
+ BFD_RELOC_EPIPHANY_LOW,
+
+/* Adapteva EPIPHANY - 11 bit signed number - add/sub immediate */
+ BFD_RELOC_EPIPHANY_SIMM11,
+
+/* Adapteva EPIPHANY - 11 bit sign-magnitude number (ld/st displacement) */
+ BFD_RELOC_EPIPHANY_IMM11,
+
+/* Adapteva EPIPHANY - 8 bit immediate for 16 bit mov instruction. */
+ BFD_RELOC_EPIPHANY_IMM8,
BFD_RELOC_UNUSED };
typedef enum bfd_reloc_code_real bfd_reloc_code_real_type;
reloc_howto_type *bfd_reloc_type_lookup
@@ -5497,6 +6256,14 @@
unsigned int selective_search : 1;
};
+/* See note beside bfd_set_section_userdata. */
+static inline bfd_boolean
+bfd_set_cacheable (bfd * abfd, bfd_boolean val)
+{
+ abfd->cacheable = val;
+ return TRUE;
+}
+
typedef enum bfd_error
{
bfd_error_no_error = 0,
@@ -5510,6 +6277,7 @@
bfd_error_no_armap,
bfd_error_no_more_archived_files,
bfd_error_malformed_archive,
+ bfd_error_missing_dso,
bfd_error_file_not_recognized,
bfd_error_file_ambiguously_recognized,
bfd_error_no_contents,
@@ -5539,6 +6307,15 @@
bfd_error_handler_type bfd_get_error_handler (void);
+typedef void (*bfd_assert_handler_type) (const char *bfd_formatmsg,
+ const char *bfd_version,
+ const char *bfd_file,
+ int bfd_line);
+
+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
@@ -5624,8 +6401,8 @@
#define bfd_gc_sections(abfd, link_info) \
BFD_SEND (abfd, _bfd_gc_sections, (abfd, link_info))
-#define bfd_lookup_section_flags(link_info, flag_info) \
- BFD_SEND (abfd, _bfd_lookup_section_flags, (link_info, flag_info))
+#define bfd_lookup_section_flags(link_info, flag_info, section) \
+ BFD_SEND (abfd, _bfd_lookup_section_flags, (link_info, flag_info, section))
#define bfd_merge_sections(abfd, link_info) \
BFD_SEND (abfd, _bfd_merge_sections, (abfd, link_info))
@@ -5679,24 +6456,6 @@
bfd_boolean bfd_alt_mach_code (bfd *abfd, int alternative);
-struct bfd_preserve
-{
- void *marker;
- void *tdata;
- flagword flags;
- const struct bfd_arch_info *arch_info;
- struct bfd_section *sections;
- struct bfd_section *section_last;
- unsigned int section_count;
- struct bfd_hash_table section_htab;
-};
-
-bfd_boolean bfd_preserve_save (bfd *, struct bfd_preserve *);
-
-void bfd_preserve_restore (bfd *, struct bfd_preserve *);
-
-void bfd_preserve_finish (bfd *, struct bfd_preserve *);
-
bfd_vma bfd_emul_get_maxpagesize (const char *);
void bfd_emul_set_maxpagesize (const char *, bfd_vma);
@@ -6105,8 +6864,9 @@
bfd_boolean (*_bfd_gc_sections) (bfd *, struct bfd_link_info *);
/* Sets the bitmask of allowed and disallowed section flags. */
- void (*_bfd_lookup_section_flags) (struct bfd_link_info *,
- struct flag_info *);
+ bfd_boolean (*_bfd_lookup_section_flags) (struct bfd_link_info *,
+ struct flag_info *,
+ asection *);
/* Attempt to merge SEC_MERGE sections. */
bfd_boolean (*_bfd_merge_sections) (bfd *, struct bfd_link_info *);
@@ -6222,6 +6982,9 @@
bfd_boolean bfd_get_full_section_contents
(bfd *abfd, asection *section, bfd_byte **ptr);
+void bfd_cache_section_contents
+ (asection *sec, void *contents);
+
bfd_boolean bfd_is_section_compressed
(bfd *abfd, asection *section);
diff --git a/bfd/bfd.c b/bfd/bfd.c
index 2871e2e..2d174f3 100644
--- a/bfd/bfd.c
+++ b/bfd/bfd.c
@@ -1,7 +1,5 @@
/* Generic BFD library interface and support routines.
- Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
- Free Software Foundation, Inc.
+ Copyright 1990-2013 Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@@ -22,6 +20,9 @@
MA 02110-1301, USA. */
/*
+INODE
+typedef bfd, Error reporting, BFD front end, BFD front end
+
SECTION
<<typedef bfd>>
@@ -310,6 +311,14 @@
. unsigned int selective_search : 1;
.};
.
+.{* See note beside bfd_set_section_userdata. *}
+.static inline bfd_boolean
+.bfd_set_cacheable (bfd * abfd, bfd_boolean val)
+.{
+. abfd->cacheable = val;
+. return TRUE;
+.}
+.
*/
#include "sysdep.h"
@@ -340,6 +349,9 @@
where it is needed. The typedef's used are defined in bfd.h */
/*
+INODE
+Error reporting, Miscellaneous, typedef bfd, BFD front end
+
SECTION
Error reporting
@@ -374,6 +386,7 @@
. bfd_error_no_armap,
. bfd_error_no_more_archived_files,
. bfd_error_malformed_archive,
+. bfd_error_missing_dso,
. bfd_error_file_not_recognized,
. bfd_error_file_ambiguously_recognized,
. bfd_error_no_contents,
@@ -406,6 +419,7 @@
N_("Archive has no index; run ranlib to add one"),
N_("No more archived files"),
N_("Malformed archive"),
+ N_("DSO missing from command line"),
N_("File format not recognized"),
N_("File format is ambiguous"),
N_("Section has no contents"),
@@ -727,7 +741,9 @@
vfprintf (stderr, new_fmt, ap);
va_end (ap);
- putc ('\n', stderr);
+ /* On AIX, putc is implemented as a macro that triggers a -Wunused-value
+ warning, so use the fputc function to avoid it. */
+ fputc ('\n', stderr);
fflush (stderr);
}
@@ -797,8 +813,93 @@
{
return _bfd_error_handler;
}
+
+/*
+SUBSECTION
+ BFD assert handler
+
+ If BFD finds an internal inconsistency, the bfd assert
+ handler is called with information on the BFD version, BFD
+ source file and line. If this happens, most programs linked
+ against BFD are expected to want to exit with an error, or mark
+ the current BFD operation as failed, so it is recommended to
+ override the default handler, which just calls
+ _bfd_error_handler and continues.
+
+CODE_FRAGMENT
+.
+.typedef void (*bfd_assert_handler_type) (const char *bfd_formatmsg,
+. const char *bfd_version,
+. const char *bfd_file,
+. int bfd_line);
+.
+*/
+
+/* Note the use of bfd_ prefix on the parameter names above: we want to
+ show which one is the message and which is the version by naming the
+ parameters, but avoid polluting the program-using-bfd namespace as
+ the typedef is visible in the exported headers that the program
+ includes. Below, it's just for consistency. */
+
+static void
+_bfd_default_assert_handler (const char *bfd_formatmsg,
+ const char *bfd_version,
+ const char *bfd_file,
+ int 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;
+
+/*
+FUNCTION
+ bfd_set_assert_handler
+
+SYNOPSIS
+ bfd_assert_handler_type bfd_set_assert_handler (bfd_assert_handler_type);
+
+DESCRIPTION
+ Set the BFD assert handler function. Returns the previous
+ function.
+*/
+
+bfd_assert_handler_type
+bfd_set_assert_handler (bfd_assert_handler_type pnew)
+{
+ bfd_assert_handler_type pold;
+
+ pold = _bfd_assert_handler;
+ _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
+Miscellaneous, Memory Usage, Error reporting, BFD front end
+
SECTION
Miscellaneous
@@ -942,8 +1043,8 @@
void
bfd_assert (const char *file, int line)
{
- (*_bfd_error_handler) (_("BFD %s assertion fail %s:%d"),
- BFD_VERSION_STRING, file, line);
+ (*_bfd_assert_handler) (_("BFD %s assertion fail %s:%d"),
+ BFD_VERSION_STRING, file, line);
}
/* A more or less friendly abort message. In libbfd.h abort is
@@ -1379,8 +1480,8 @@
.#define bfd_gc_sections(abfd, link_info) \
. BFD_SEND (abfd, _bfd_gc_sections, (abfd, link_info))
.
-.#define bfd_lookup_section_flags(link_info, flag_info) \
-. BFD_SEND (abfd, _bfd_lookup_section_flags, (link_info, flag_info))
+.#define bfd_lookup_section_flags(link_info, flag_info, section) \
+. BFD_SEND (abfd, _bfd_lookup_section_flags, (link_info, flag_info, section))
.
.#define bfd_merge_sections(abfd, link_info) \
. BFD_SEND (abfd, _bfd_merge_sections, (abfd, link_info))
@@ -1498,7 +1599,7 @@
if (count > 0)
memcpy (m->sections, secs, count * sizeof (asection *));
- for (pm = &elf_tdata (abfd)->segment_map; *pm != NULL; pm = &(*pm)->next)
+ for (pm = &elf_seg_map (abfd); *pm != NULL; pm = &(*pm)->next)
;
*pm = m;
@@ -1605,128 +1706,6 @@
}
/*
-CODE_FRAGMENT
-
-.struct bfd_preserve
-.{
-. void *marker;
-. void *tdata;
-. flagword flags;
-. const struct bfd_arch_info *arch_info;
-. struct bfd_section *sections;
-. struct bfd_section *section_last;
-. unsigned int section_count;
-. struct bfd_hash_table section_htab;
-.};
-.
-*/
-
-/*
-FUNCTION
- bfd_preserve_save
-
-SYNOPSIS
- bfd_boolean bfd_preserve_save (bfd *, struct bfd_preserve *);
-
-DESCRIPTION
- When testing an object for compatibility with a particular
- target back-end, the back-end object_p function needs to set
- up certain fields in the bfd on successfully recognizing the
- object. This typically happens in a piecemeal fashion, with
- failures possible at many points. On failure, the bfd is
- supposed to be restored to its initial state, which is
- virtually impossible. However, restoring a subset of the bfd
- state works in practice. This function stores the subset and
- reinitializes the bfd.
-
-*/
-
-bfd_boolean
-bfd_preserve_save (bfd *abfd, struct bfd_preserve *preserve)
-{
- preserve->tdata = abfd->tdata.any;
- preserve->arch_info = abfd->arch_info;
- preserve->flags = abfd->flags;
- preserve->sections = abfd->sections;
- preserve->section_last = abfd->section_last;
- preserve->section_count = abfd->section_count;
- preserve->section_htab = abfd->section_htab;
-
- if (! bfd_hash_table_init (&abfd->section_htab, bfd_section_hash_newfunc,
- sizeof (struct section_hash_entry)))
- return FALSE;
-
- abfd->tdata.any = NULL;
- abfd->arch_info = &bfd_default_arch_struct;
- abfd->flags &= BFD_FLAGS_SAVED;
- abfd->sections = NULL;
- abfd->section_last = NULL;
- abfd->section_count = 0;
-
- return TRUE;
-}
-
-/*
-FUNCTION
- bfd_preserve_restore
-
-SYNOPSIS
- void bfd_preserve_restore (bfd *, struct bfd_preserve *);
-
-DESCRIPTION
- This function restores bfd state saved by bfd_preserve_save.
- If MARKER is non-NULL in struct bfd_preserve then that block
- and all subsequently bfd_alloc'd memory is freed.
-
-*/
-
-void
-bfd_preserve_restore (bfd *abfd, struct bfd_preserve *preserve)
-{
- bfd_hash_table_free (&abfd->section_htab);
-
- abfd->tdata.any = preserve->tdata;
- abfd->arch_info = preserve->arch_info;
- abfd->flags = preserve->flags;
- abfd->section_htab = preserve->section_htab;
- abfd->sections = preserve->sections;
- abfd->section_last = preserve->section_last;
- abfd->section_count = preserve->section_count;
-
- /* bfd_release frees all memory more recently bfd_alloc'd than
- its arg, as well as its arg. */
- if (preserve->marker != NULL)
- {
- bfd_release (abfd, preserve->marker);
- preserve->marker = NULL;
- }
-}
-
-/*
-FUNCTION
- bfd_preserve_finish
-
-SYNOPSIS
- void bfd_preserve_finish (bfd *, struct bfd_preserve *);
-
-DESCRIPTION
- This function should be called when the bfd state saved by
- bfd_preserve_save is no longer needed. ie. when the back-end
- object_p function returns with success.
-
-*/
-
-void
-bfd_preserve_finish (bfd *abfd ATTRIBUTE_UNUSED, struct bfd_preserve *preserve)
-{
- /* It would be nice to be able to free more memory here, eg. old
- tdata, but that's not possible since these blocks are sitting
- inside bfd_alloc'd memory. The section hash is on a separate
- objalloc. */
- bfd_hash_table_free (&preserve->section_htab);
-}
-
-/*
FUNCTION
bfd_emul_get_maxpagesize
diff --git a/bfd/bfd.m4 b/bfd/bfd.m4
index 394c41a..7f86aab 100644
--- a/bfd/bfd.m4
+++ b/bfd/bfd.m4
@@ -1,5 +1,21 @@
dnl This file was derived from acinclude.m4.
-
+dnl
+dnl Copyright 2012 Free Software Foundation
+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
+dnl the Free Software Foundation; either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program; see the file COPYING3. If not see
+dnl <http://www.gnu.org/licenses/>.
+dnl
dnl Check for existence of a type $1 in sys/procfs.h
diff --git a/bfd/bfdio.c b/bfd/bfdio.c
index 841c781..363402e 100644
--- a/bfd/bfdio.c
+++ b/bfd/bfdio.c
@@ -1,8 +1,6 @@
/* Low-level I/O routines for BFDs.
- Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2011
- Free Software Foundation, Inc.
+ Copyright 1990-2013 Free Software Foundation, Inc.
Written by Cygnus Support.
@@ -87,10 +85,9 @@
real_fopen (const char *filename, const char *modes)
{
#ifdef VMS
- char vms_modes[4];
char *vms_attr;
- /* On VMS, fopen allows file attributes as optionnal arguments.
+ /* On VMS, fopen allows file attributes as optional arguments.
We need to use them but we'd better to use the common prototype.
In fopen-vms.h, they are separated from the mode with a comma.
Split here. */
@@ -185,7 +182,8 @@
this element. */
if (abfd->arelt_data != NULL)
{
- size_t maxbytes = ((struct areltdata *) abfd->arelt_data)->parsed_size;
+ bfd_size_type maxbytes = arelt_size (abfd);
+
if (abfd->where + size > maxbytes)
{
if (abfd->where >= maxbytes)
@@ -233,10 +231,14 @@
if (abfd->iovec)
{
+ bfd *parent_bfd = abfd;
ptr = abfd->iovec->btell (abfd);
- if (abfd->my_archive)
- ptr -= abfd->origin;
+ while (parent_bfd->my_archive != NULL)
+ {
+ ptr -= parent_bfd->origin;
+ parent_bfd = parent_bfd->my_archive;
+ }
}
else
ptr = 0;
@@ -308,8 +310,16 @@
}
file_position = position;
- if (direction == SEEK_SET && abfd->my_archive != NULL)
- file_position += abfd->origin;
+ if (direction == SEEK_SET)
+ {
+ bfd *parent_bfd = abfd;
+
+ while (parent_bfd->my_archive != NULL)
+ {
+ file_position += parent_bfd->origin;
+ parent_bfd = parent_bfd->my_archive;
+ }
+ }
if (abfd->iovec)
result = abfd->iovec->bseek (abfd, file_position, direction);
@@ -574,7 +584,7 @@
free (bim);
abfd->iostream = NULL;
- return TRUE;
+ return 0;
}
static int
diff --git a/bfd/cache.c b/bfd/cache.c
index 5ddbbe4..4d46936 100644
--- a/bfd/cache.c
+++ b/bfd/cache.c
@@ -31,7 +31,7 @@
regard to the underlying operating system's file descriptor
limit (often as low as 20 open files). The module in
<<cache.c>> maintains a least recently used list of
- <<BFD_CACHE_MAX_OPEN>> files, and exports the name
+ <<bfd_cache_max_open>> files, and exports the name
<<bfd_cache_lookup>>, which runs around and makes sure that
the required BFD is open. If not, then it chooses a file to
close, closes it and opens the one wanted, returning its file
@@ -67,9 +67,35 @@
};
/* The maximum number of files which the cache will keep open at
- one time. */
+ one time. When needed call bfd_cache_max_open to initialize. */
-#define BFD_CACHE_MAX_OPEN 10
+static int max_open_files = 0;
+
+/* Set max_open_files, if not already set, to 12.5% of the allowed open
+ file descriptors, but at least 10, and return the value. */
+static int
+bfd_cache_max_open (void)
+{
+ if (max_open_files == 0)
+ {
+ int max;
+#ifdef HAVE_GETRLIMIT
+ struct rlimit rlim;
+ if (getrlimit (RLIMIT_NOFILE, &rlim) == 0
+ && rlim.rlim_cur != RLIM_INFINITY)
+ max = rlim.rlim_cur / 8;
+ else
+#endif /* HAVE_GETRLIMIT */
+#ifdef _SC_OPEN_MAX
+ max = sysconf (_SC_OPEN_MAX) / 8;
+#else
+ max = 10;
+#endif /* _SC_OPEN_MAX */
+ max_open_files = max < 10 ? 10 : max;
+ }
+
+ return max_open_files;
+}
/* The number of BFD files we have open. */
@@ -187,7 +213,7 @@
/* Called when the macro <<bfd_cache_lookup>> fails to find a
quick answer. Find a file descriptor for @var{abfd}. If
necessary, it open it. If there are already more than
- <<BFD_CACHE_MAX_OPEN>> files open, it tries to close one first, to
+ <<bfd_cache_max_open>> files open, it tries to close one first, to
avoid running out of file descriptors. It will return NULL
if it is unable to (re)open the @var{abfd}. */
@@ -198,7 +224,7 @@
if ((abfd->flags & BFD_IN_MEMORY) != 0)
abort ();
- if (abfd->my_archive)
+ while (abfd->my_archive)
abfd = abfd->my_archive;
if (abfd->iostream != NULL)
@@ -362,7 +388,7 @@
static int
cache_bclose (struct bfd *abfd)
{
- return bfd_cache_close (abfd);
+ return bfd_cache_close (abfd) - 1;
}
static int
@@ -437,7 +463,7 @@
{
*map_addr = ret;
*map_len = pg_len;
- ret += offset & pagesize_m1;
+ ret = (char *) ret + (offset & pagesize_m1);
}
}
#endif
@@ -466,7 +492,7 @@
bfd_cache_init (bfd *abfd)
{
BFD_ASSERT (abfd->iostream != NULL);
- if (open_files >= BFD_CACHE_MAX_OPEN)
+ if (open_files >= bfd_cache_max_open ())
{
if (! close_one ())
return FALSE;
@@ -553,7 +579,7 @@
{
abfd->cacheable = TRUE; /* Allow it to be closed later. */
- if (open_files >= BFD_CACHE_MAX_OPEN)
+ if (open_files >= bfd_cache_max_open ())
{
if (! close_one ())
return NULL;
@@ -563,15 +589,15 @@
{
case read_direction:
case no_direction:
- abfd->iostream = (PTR) real_fopen (abfd->filename, FOPEN_RB);
+ abfd->iostream = real_fopen (abfd->filename, FOPEN_RB);
break;
case both_direction:
case write_direction:
if (abfd->opened_once)
{
- abfd->iostream = (PTR) real_fopen (abfd->filename, FOPEN_RUB);
+ abfd->iostream = real_fopen (abfd->filename, FOPEN_RUB);
if (abfd->iostream == NULL)
- abfd->iostream = (PTR) real_fopen (abfd->filename, FOPEN_WUB);
+ abfd->iostream = real_fopen (abfd->filename, FOPEN_WUB);
}
else
{
@@ -601,7 +627,7 @@
if (stat (abfd->filename, &s) == 0 && s.st_size != 0)
unlink_if_ordinary (abfd->filename);
#endif
- abfd->iostream = (PTR) real_fopen (abfd->filename, FOPEN_WUB);
+ abfd->iostream = real_fopen (abfd->filename, FOPEN_WUB);
abfd->opened_once = TRUE;
}
break;
diff --git a/bfd/cisco-core.c b/bfd/cisco-core.c
index 40eaca9..5d0454c 100644
--- a/bfd/cisco-core.c
+++ b/bfd/cisco-core.c
@@ -1,6 +1,6 @@
/* BFD back-end for CISCO crash dumps.
Copyright 1994, 1997, 1999, 2000, 2001, 2002, 2004, 2005, 2006, 2007,
- 2010, 2011
+ 2010, 2011, 2012
Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
@@ -38,7 +38,8 @@
# define SIGBUS 10
#endif
-int crash_info_locs[] = {
+int crash_info_locs[] =
+{
0x0250, /* mips, ppc, x86, i960 */
0x0400, /* m68k, mips, x86, i960 */
0x0FFC, /* m68k, mips, ppc, x86, i960 */
@@ -50,13 +51,15 @@
#define CRASH_MAGIC 0xdead1234
#define MASK_ADDR(x) ((x) & 0x0fffffff) /* Mask crash info address */
-typedef enum {
- CRASH_REASON_NOTCRASHED = 0,
- CRASH_REASON_EXCEPTION = 1,
- CRASH_REASON_CORRUPT = 2,
+typedef enum
+{
+ CRASH_REASON_NOTCRASHED = 0,
+ CRASH_REASON_EXCEPTION = 1,
+ CRASH_REASON_CORRUPT = 2,
} crashreason;
-typedef struct {
+typedef struct
+{
char magic[4]; /* Magic number */
char version[4]; /* Version number */
char reason[4]; /* Crash reason */
@@ -73,10 +76,6 @@
int sig;
};
-static const bfd_target *cisco_core_file_validate PARAMS ((bfd *, int));
-static const bfd_target *cisco_core_file_p PARAMS ((bfd *));
-char *cisco_core_file_failing_command PARAMS ((bfd *));
-int cisco_core_file_failing_signal PARAMS ((bfd *));
#define cisco_core_file_matches_executable_p generic_core_file_matches_executable_p
#define cisco_core_file_pid _bfd_nocore_core_file_pid
@@ -84,9 +83,7 @@
CRASH_INFO_LOC. */
static const bfd_target *
-cisco_core_file_validate (abfd, crash_info_loc)
- bfd *abfd;
- int crash_info_loc;
+cisco_core_file_validate (bfd *abfd, int crash_info_loc)
{
char buf[4];
unsigned int crashinfo_offset;
@@ -292,8 +289,7 @@
}
static const bfd_target *
-cisco_core_file_p (abfd)
- bfd *abfd;
+cisco_core_file_p (bfd *abfd)
{
int *crash_info_locp;
const bfd_target *target = NULL;
@@ -307,16 +303,14 @@
return (target);
}
-char *
-cisco_core_file_failing_command (abfd)
- bfd *abfd ATTRIBUTE_UNUSED;
+static char *
+cisco_core_file_failing_command (bfd *abfd ATTRIBUTE_UNUSED)
{
return NULL;
}
-int
-cisco_core_file_failing_signal (abfd)
- bfd *abfd ATTRIBUTE_UNUSED;
+static int
+cisco_core_file_failing_signal (bfd *abfd ATTRIBUTE_UNUSED)
{
return abfd->tdata.cisco_core_data->sig;
}
@@ -324,7 +318,7 @@
extern const bfd_target cisco_core_little_vec;
const bfd_target cisco_core_big_vec =
- {
+{
"cisco-ios-core-big",
bfd_target_unknown_flavour,
BFD_ENDIAN_BIG, /* target byte order */
@@ -371,11 +365,11 @@
& cisco_core_little_vec,
- (PTR) 0 /* backend_data */
+ NULL /* backend_data */
};
const bfd_target cisco_core_little_vec =
- {
+{
"cisco-ios-core-little",
bfd_target_unknown_flavour,
BFD_ENDIAN_LITTLE, /* target byte order */
@@ -422,5 +416,5 @@
&cisco_core_big_vec,
- (PTR) 0 /* backend_data */
+ NULL /* backend_data */
};
diff --git a/bfd/coff-alpha.c b/bfd/coff-alpha.c
index 4466e4d..028e703 100644
--- a/bfd/coff-alpha.c
+++ b/bfd/coff-alpha.c
@@ -1,6 +1,6 @@
/* BFD back-end for ALPHA Extended-Coff files.
Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011
+ 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011, 2012
Free Software Foundation, Inc.
Modified from coff-mips.c by Steve Chamberlain <[email protected]> and
Ian Lance Taylor <[email protected]>.
@@ -37,40 +37,7 @@
/* Prototypes for static functions. */
-static const bfd_target *alpha_ecoff_object_p
- PARAMS ((bfd *));
-static bfd_boolean alpha_ecoff_bad_format_hook
- PARAMS ((bfd *abfd, PTR filehdr));
-static PTR alpha_ecoff_mkobject_hook
- PARAMS ((bfd *, PTR filehdr, PTR aouthdr));
-static void alpha_ecoff_swap_reloc_in
- PARAMS ((bfd *, PTR, struct internal_reloc *));
-static void alpha_ecoff_swap_reloc_out
- PARAMS ((bfd *, const struct internal_reloc *, PTR));
-static void alpha_adjust_reloc_in
- PARAMS ((bfd *, const struct internal_reloc *, arelent *));
-static void alpha_adjust_reloc_out
- PARAMS ((bfd *, const arelent *, struct internal_reloc *));
-static reloc_howto_type *alpha_bfd_reloc_type_lookup
- PARAMS ((bfd *, bfd_reloc_code_real_type));
-static bfd_byte *alpha_ecoff_get_relocated_section_contents
- PARAMS ((bfd *abfd, struct bfd_link_info *, struct bfd_link_order *,
- bfd_byte *data, bfd_boolean relocatable, asymbol **symbols));
-static bfd_vma alpha_convert_external_reloc
- PARAMS ((bfd *, struct bfd_link_info *, bfd *, struct external_reloc *,
- struct ecoff_link_hash_entry *));
-static bfd_boolean alpha_relocate_section
- PARAMS ((bfd *, struct bfd_link_info *, bfd *, asection *, bfd_byte *, PTR));
-static bfd_boolean alpha_adjust_headers
- PARAMS ((bfd *, struct internal_filehdr *, struct internal_aouthdr *));
-static PTR alpha_ecoff_read_ar_hdr
- PARAMS ((bfd *));
-static bfd *alpha_ecoff_get_elt_at_filepos
- PARAMS ((bfd *, file_ptr));
-static bfd *alpha_ecoff_openr_next_archived_file
- PARAMS ((bfd *, bfd *));
-static bfd *alpha_ecoff_get_elt_at_index
- PARAMS ((bfd *, symindex));
+
/* ECOFF has COFF sections, but the debugging information is stored in
a completely different format. ECOFF targets use some of the
@@ -128,18 +95,14 @@
/* How to process the various reloc types. */
-static bfd_reloc_status_type reloc_nil
- PARAMS ((bfd *, arelent *, asymbol *, PTR, asection *, bfd *, char **));
-
static bfd_reloc_status_type
-reloc_nil (abfd, reloc, sym, data, sec, output_bfd, error_message)
- bfd *abfd ATTRIBUTE_UNUSED;
- arelent *reloc ATTRIBUTE_UNUSED;
- asymbol *sym ATTRIBUTE_UNUSED;
- PTR data ATTRIBUTE_UNUSED;
- asection *sec ATTRIBUTE_UNUSED;
- bfd *output_bfd ATTRIBUTE_UNUSED;
- char **error_message ATTRIBUTE_UNUSED;
+reloc_nil (bfd *abfd ATTRIBUTE_UNUSED,
+ arelent *reloc ATTRIBUTE_UNUSED,
+ asymbol *sym ATTRIBUTE_UNUSED,
+ void * data ATTRIBUTE_UNUSED,
+ asection *sec ATTRIBUTE_UNUSED,
+ bfd *output_bfd ATTRIBUTE_UNUSED,
+ char **error_message ATTRIBUTE_UNUSED)
{
return bfd_reloc_ok;
}
@@ -438,8 +401,7 @@
/* Recognize an Alpha ECOFF file. */
static const bfd_target *
-alpha_ecoff_object_p (abfd)
- bfd *abfd;
+alpha_ecoff_object_p (bfd *abfd)
{
static const bfd_target *ret;
@@ -477,9 +439,8 @@
/* See whether the magic number matches. */
static bfd_boolean
-alpha_ecoff_bad_format_hook (abfd, filehdr)
- bfd *abfd ATTRIBUTE_UNUSED;
- PTR filehdr;
+alpha_ecoff_bad_format_hook (bfd *abfd ATTRIBUTE_UNUSED,
+ void * filehdr)
{
struct internal_filehdr *internal_f = (struct internal_filehdr *) filehdr;
@@ -498,13 +459,10 @@
/* This is a hook called by coff_real_object_p to create any backend
specific information. */
-static PTR
-alpha_ecoff_mkobject_hook (abfd, filehdr, aouthdr)
- bfd *abfd;
- PTR filehdr;
- PTR aouthdr;
+static void *
+alpha_ecoff_mkobject_hook (bfd *abfd, void * filehdr, void * aouthdr)
{
- PTR ecoff;
+ void * ecoff;
ecoff = _bfd_ecoff_mkobject_hook (abfd, filehdr, aouthdr);
@@ -534,10 +492,9 @@
/* Swap a reloc in. */
static void
-alpha_ecoff_swap_reloc_in (abfd, ext_ptr, intern)
- bfd *abfd;
- PTR ext_ptr;
- struct internal_reloc *intern;
+alpha_ecoff_swap_reloc_in (bfd *abfd,
+ void * ext_ptr,
+ struct internal_reloc *intern)
{
const RELOC *ext = (RELOC *) ext_ptr;
@@ -582,10 +539,9 @@
/* Swap a reloc out. */
static void
-alpha_ecoff_swap_reloc_out (abfd, intern, dst)
- bfd *abfd;
- const struct internal_reloc *intern;
- PTR dst;
+alpha_ecoff_swap_reloc_out (bfd *abfd,
+ const struct internal_reloc *intern,
+ void * dst)
{
RELOC *ext = (RELOC *) dst;
long symndx;
@@ -637,10 +593,9 @@
this backend routine. It must fill in the howto field. */
static void
-alpha_adjust_reloc_in (abfd, intern, rptr)
- bfd *abfd;
- const struct internal_reloc *intern;
- arelent *rptr;
+alpha_adjust_reloc_in (bfd *abfd,
+ const struct internal_reloc *intern,
+ arelent *rptr)
{
if (intern->r_type > ALPHA_R_GPVALUE)
{
@@ -729,10 +684,9 @@
not need to undo. */
static void
-alpha_adjust_reloc_out (abfd, rel, intern)
- bfd *abfd ATTRIBUTE_UNUSED;
- const arelent *rel;
- struct internal_reloc *intern;
+alpha_adjust_reloc_out (bfd *abfd ATTRIBUTE_UNUSED,
+ const arelent *rel,
+ struct internal_reloc *intern)
{
switch (intern->r_type)
{
@@ -771,14 +725,12 @@
assembler is going to handle this. */
static bfd_byte *
-alpha_ecoff_get_relocated_section_contents (abfd, link_info, link_order,
- data, relocatable, symbols)
- bfd *abfd;
- struct bfd_link_info *link_info;
- struct bfd_link_order *link_order;
- bfd_byte *data;
- bfd_boolean relocatable;
- asymbol **symbols;
+alpha_ecoff_get_relocated_section_contents (bfd *abfd,
+ struct bfd_link_info *link_info,
+ struct bfd_link_order *link_order,
+ bfd_byte *data,
+ bfd_boolean relocatable,
+ asymbol **symbols)
{
bfd *input_bfd = link_order->u.indirect.section->owner;
asection *input_section = link_order->u.indirect.section;
@@ -1195,9 +1147,8 @@
/* Get the howto structure for a generic reloc type. */
static reloc_howto_type *
-alpha_bfd_reloc_type_lookup (abfd, code)
- bfd *abfd ATTRIBUTE_UNUSED;
- bfd_reloc_code_real_type code;
+alpha_bfd_reloc_type_lookup (bfd *abfd ATTRIBUTE_UNUSED,
+ bfd_reloc_code_real_type code)
{
int alpha_type;
@@ -1268,12 +1219,11 @@
relocation amount. */
static bfd_vma
-alpha_convert_external_reloc (output_bfd, info, input_bfd, ext_rel, h)
- bfd *output_bfd ATTRIBUTE_UNUSED;
- struct bfd_link_info *info;
- bfd *input_bfd;
- struct external_reloc *ext_rel;
- struct ecoff_link_hash_entry *h;
+alpha_convert_external_reloc (bfd *output_bfd ATTRIBUTE_UNUSED,
+ struct bfd_link_info *info,
+ bfd *input_bfd,
+ struct external_reloc *ext_rel,
+ struct ecoff_link_hash_entry *h)
{
unsigned long r_symndx;
bfd_vma relocation;
@@ -1385,14 +1335,12 @@
could be combined somehow. */
static bfd_boolean
-alpha_relocate_section (output_bfd, info, input_bfd, input_section,
- contents, external_relocs)
- bfd *output_bfd;
- struct bfd_link_info *info;
- bfd *input_bfd;
- asection *input_section;
- bfd_byte *contents;
- PTR external_relocs;
+alpha_relocate_section (bfd *output_bfd,
+ struct bfd_link_info *info,
+ bfd *input_bfd,
+ asection *input_section,
+ bfd_byte *contents,
+ void * external_relocs)
{
asection **symndx_to_section, *lita_sec;
struct ecoff_link_hash_entry **sym_hashes;
@@ -1562,14 +1510,14 @@
input_bfd);
bfd_set_error (bfd_error_bad_value);
continue;
-
+
case ALPHA_R_GPRELLOW:
(*_bfd_error_handler)
(_("%B: unsupported relocation: ALPHA_R_GPRELLOW"),
input_bfd);
bfd_set_error (bfd_error_bad_value);
continue;
-
+
default:
(*_bfd_error_handler)
(_("%B: unknown relocation type %d"),
@@ -2042,10 +1990,9 @@
sets the dynamic bits in the file header. */
static bfd_boolean
-alpha_adjust_headers (abfd, fhdr, ahdr)
- bfd *abfd;
- struct internal_filehdr *fhdr;
- struct internal_aouthdr *ahdr ATTRIBUTE_UNUSED;
+alpha_adjust_headers (bfd *abfd,
+ struct internal_filehdr *fhdr,
+ struct internal_aouthdr *ahdr ATTRIBUTE_UNUSED)
{
if ((abfd->flags & (DYNAMIC | EXEC_P)) == (DYNAMIC | EXEC_P))
fhdr->f_flags |= F_ALPHA_CALL_SHARED;
@@ -2077,9 +2024,8 @@
/* Read an archive header. This is like the standard routine, but it
also accepts ARFZMAG. */
-static PTR
-alpha_ecoff_read_ar_hdr (abfd)
- bfd *abfd;
+static void *
+alpha_ecoff_read_ar_hdr (bfd *abfd)
{
struct areltdata *ret;
struct ar_hdr *h;
@@ -2103,16 +2049,14 @@
ret->parsed_size = H_GET_64 (abfd, ab);
}
- return (PTR) ret;
+ return ret;
}
/* Get an archive element at a specified file position. This is where
we uncompress the archive element if necessary. */
static bfd *
-alpha_ecoff_get_elt_at_filepos (archive, filepos)
- bfd *archive;
- file_ptr filepos;
+alpha_ecoff_get_elt_at_filepos (bfd *archive, file_ptr filepos)
{
bfd *nbfd = NULL;
struct areltdata *tdata;
@@ -2225,7 +2169,7 @@
nbfd->mtime = strtol (hdr->ar_date, (char **) NULL, 10);
nbfd->flags |= BFD_IN_MEMORY;
- nbfd->iostream = (PTR) bim;
+ nbfd->iostream = bim;
nbfd->iovec = &_bfd_memory_iovec;
nbfd->origin = 0;
BFD_ASSERT (! nbfd->cacheable);
@@ -2243,9 +2187,7 @@
/* Open the next archived file. */
static bfd *
-alpha_ecoff_openr_next_archived_file (archive, last_file)
- bfd *archive;
- bfd *last_file;
+alpha_ecoff_openr_next_archived_file (bfd *archive, bfd *last_file)
{
file_ptr filestart;
@@ -2291,16 +2233,16 @@
{
/* COFF backend structure. */
{
- (void (*) PARAMS ((bfd *,PTR,int,int,int,int,PTR))) bfd_void, /* aux_in */
- (void (*) PARAMS ((bfd *,PTR,PTR))) bfd_void, /* sym_in */
- (void (*) PARAMS ((bfd *,PTR,PTR))) bfd_void, /* lineno_in */
- (unsigned (*) PARAMS ((bfd *,PTR,int,int,int,int,PTR)))bfd_void,/*aux_out*/
- (unsigned (*) PARAMS ((bfd *,PTR,PTR))) bfd_void, /* sym_out */
- (unsigned (*) PARAMS ((bfd *,PTR,PTR))) bfd_void, /* lineno_out */
- (unsigned (*) PARAMS ((bfd *,PTR,PTR))) bfd_void, /* reloc_out */
+ (void (*) (bfd *,void *,int,int,int,int,void *)) bfd_void, /* aux_in */
+ (void (*) (bfd *,void *,void *)) bfd_void, /* sym_in */
+ (void (*) (bfd *,void *,void *)) bfd_void, /* lineno_in */
+ (unsigned (*) (bfd *,void *,int,int,int,int,void *)) bfd_void,/*aux_out*/
+ (unsigned (*) (bfd *,void *,void *)) bfd_void, /* sym_out */
+ (unsigned (*) (bfd *,void *,void *)) bfd_void, /* lineno_out */
+ (unsigned (*) (bfd *,void *,void *)) bfd_void, /* reloc_out */
alpha_ecoff_swap_filehdr_out, alpha_ecoff_swap_aouthdr_out,
alpha_ecoff_swap_scnhdr_out,
- FILHSZ, AOUTSZ, SCNHSZ, 0, 0, 0, 0, FILNMLEN, TRUE,
+ FILHSZ, AOUTSZ, SCNHSZ, 0, 0, 0, 0, FILNMLEN, TRUE,
ECOFF_NO_LONG_SECTION_NAMES, 4, FALSE, 2,
alpha_ecoff_swap_filehdr_in, alpha_ecoff_swap_aouthdr_in,
alpha_ecoff_swap_scnhdr_in, NULL,
@@ -2448,5 +2390,5 @@
NULL,
- (PTR) &alpha_ecoff_backend_data
+ & alpha_ecoff_backend_data
};
diff --git a/bfd/coff-apollo.c b/bfd/coff-apollo.c
index e177099..46cf5ea 100644
--- a/bfd/coff-apollo.c
+++ b/bfd/coff-apollo.c
@@ -1,6 +1,6 @@
/* BFD back-end for Apollo 68000 COFF binaries.
Copyright 1990, 1991, 1992, 1993, 1994, 1999, 2000, 2001, 2002, 2003,
- 2005, 2007, 2008 Free Software Foundation, Inc.
+ 2005, 2007, 2008, 2012 Free Software Foundation, Inc.
By Troy Rollo ([email protected])
Based on m68k standard COFF version Written by Cygnus Support.
@@ -52,14 +52,12 @@
/* Turn a howto into a reloc number. */
-extern void apollo_rtype2howto PARAMS ((arelent *, int));
-extern int apollo_howto2rtype PARAMS ((reloc_howto_type *));
+extern void apollo_rtype2howto (arelent *, int);
+extern int apollo_howto2rtype (reloc_howto_type *);
#ifndef ONLY_DECLARE_RELOCS
void
-apollo_rtype2howto (internal, relocentry)
- arelent *internal;
- int relocentry;
+apollo_rtype2howto (arelent *internal, int relocentry)
{
switch (relocentry)
{
@@ -74,8 +72,7 @@
}
int
-apollo_howto2rtype (internal)
- reloc_howto_type *internal;
+apollo_howto2rtype (reloc_howto_type *internal)
{
if (internal->pc_relative)
{
diff --git a/bfd/coff-arm.c b/bfd/coff-arm.c
index bdadfb2..efcf522 100644
--- a/bfd/coff-arm.c
+++ b/bfd/coff-arm.c
@@ -1,6 +1,6 @@
/* BFD back-end for ARM COFF files.
Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+ 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012
Free Software Foundation, Inc.
Written by Cygnus Support.
@@ -599,7 +599,7 @@
bfd_reloc_status_type flag = bfd_reloc_ok;
/* If this is an undefined symbol, return error. */
- if (symbol->section == &bfd_und_section
+ if (bfd_is_und_section (symbol->section)
&& (symbol->flags & BSF_WEAK) == 0)
return output_bfd ? bfd_reloc_continue : bfd_reloc_undefined;
@@ -687,7 +687,7 @@
}
/* If this is an undefined symbol, return error. */
- if (symbol->section == &bfd_und_section
+ if (bfd_is_und_section (symbol->section)
&& (symbol->flags & BSF_WEAK) == 0)
return output_bfd ? bfd_reloc_continue : bfd_reloc_undefined;
@@ -918,7 +918,7 @@
struct coff_arm_link_hash_table * ret;
bfd_size_type amt = sizeof (struct coff_arm_link_hash_table);
- ret = bfd_malloc (amt);
+ ret = bfd_zmalloc (amt);
if (ret == NULL)
return NULL;
@@ -931,10 +931,6 @@
return NULL;
}
- ret->thumb_glue_size = 0;
- ret->arm_glue_size = 0;
- ret->bfd_of_glue_owner = NULL;
-
return & ret->root.root;
}
diff --git a/bfd/coff-aux.c b/bfd/coff-aux.c
index 84805a8..852f585 100644
--- a/bfd/coff-aux.c
+++ b/bfd/coff-aux.c
@@ -1,5 +1,5 @@
/* BFD back-end for Apple M68K COFF A/UX 3.x files.
- Copyright 1996, 1997, 2000, 2002, 2005, 2007, 2008, 2011
+ Copyright 1996, 1997, 2000, 2002, 2005, 2007, 2008, 2011, 2012
Free Software Foundation, Inc.
Written by Richard Henderson <[email protected]>.
@@ -42,12 +42,12 @@
#include "sysdep.h"
#include "bfd.h"
-static bfd_boolean coff_m68k_aux_link_add_one_symbol
- PARAMS ((struct bfd_link_info *, bfd *, const char *, flagword,
- asection *, bfd_vma, const char *, bfd_boolean, bfd_boolean,
- struct bfd_link_hash_entry **));
-
#define coff_link_add_one_symbol coff_m68k_aux_link_add_one_symbol
+static bfd_boolean
+coff_m68k_aux_link_add_one_symbol
+ (struct bfd_link_info *, bfd *, const char *, flagword, asection *,
+ bfd_vma, const char *, bfd_boolean, bfd_boolean,
+ struct bfd_link_hash_entry **);
#ifndef bfd_pe_print_pdata
#define bfd_pe_print_pdata NULL
@@ -63,18 +63,16 @@
what you include in the shared object. */
static bfd_boolean
-coff_m68k_aux_link_add_one_symbol (info, abfd, name, flags, section, value,
- string, copy, collect, hashp)
- struct bfd_link_info *info;
- bfd *abfd;
- const char *name;
- flagword flags;
- asection *section;
- bfd_vma value;
- const char *string;
- bfd_boolean copy;
- bfd_boolean collect;
- struct bfd_link_hash_entry **hashp;
+coff_m68k_aux_link_add_one_symbol (struct bfd_link_info *info,
+ bfd *abfd,
+ const char *name,
+ flagword flags,
+ asection *section,
+ bfd_vma value,
+ const char *string,
+ bfd_boolean copy,
+ bfd_boolean collect,
+ struct bfd_link_hash_entry **hashp)
{
struct bfd_link_hash_entry *h;
diff --git a/bfd/coff-h8300.c b/bfd/coff-h8300.c
index e2a10a6..1e34275 100644
--- a/bfd/coff-h8300.c
+++ b/bfd/coff-h8300.c
@@ -1,6 +1,6 @@
/* BFD back-end for Renesas H8/300 COFF binaries.
Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+ 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2012
Free Software Foundation, Inc.
Written by Steve Chamberlain, <[email protected]>.
@@ -60,28 +60,6 @@
unsigned int offset;
};
-static struct bfd_hash_entry *
-funcvec_hash_newfunc
- (struct bfd_hash_entry *, struct bfd_hash_table *, const char *);
-
-static bfd_reloc_status_type special
- (bfd *, arelent *, asymbol *, PTR, asection *, bfd *, char **);
-static int select_reloc
- (reloc_howto_type *);
-static void rtype2howto
- (arelent *, struct internal_reloc *);
-static void reloc_processing
- (arelent *, struct internal_reloc *, asymbol **, bfd *, asection *);
-static bfd_boolean h8300_symbol_address_p
- (bfd *, asection *, bfd_vma);
-static int h8300_reloc16_estimate
- (bfd *, asection *, arelent *, unsigned int,
- struct bfd_link_info *);
-static void h8300_reloc16_extra_cases
- (bfd *, struct bfd_link_info *, struct bfd_link_order *, arelent *,
- bfd_byte *, unsigned int *, unsigned int *);
-static bfd_boolean h8300_bfd_link_add_symbols
- (bfd *, struct bfd_link_info *);
/* To lookup a value in the function vector hash table. */
#define funcvec_hash_lookup(table, string, create, copy) \
@@ -195,7 +173,7 @@
struct h8300_coff_link_hash_table *ret;
bfd_size_type amt = sizeof (struct h8300_coff_link_hash_table);
- ret = (struct h8300_coff_link_hash_table *) bfd_malloc (amt);
+ ret = (struct h8300_coff_link_hash_table *) bfd_zmalloc (amt);
if (ret == NULL)
return NULL;
if (!_bfd_link_hash_table_init (&ret->root.root, abfd,
@@ -206,11 +184,6 @@
return NULL;
}
- /* Initialize our data. */
- ret->vectors_sec = NULL;
- ret->funcvec_hash_table = NULL;
-
- /* OK. Everything's initialized, return the base pointer. */
return &ret->root.root;
}
@@ -224,13 +197,13 @@
the addend until the final link. */
static bfd_reloc_status_type
-special (bfd *abfd ATTRIBUTE_UNUSED,
- arelent *reloc_entry ATTRIBUTE_UNUSED,
- asymbol *symbol ATTRIBUTE_UNUSED,
- PTR data ATTRIBUTE_UNUSED,
- asection *input_section ATTRIBUTE_UNUSED,
- bfd *output_bfd,
- char **error_message ATTRIBUTE_UNUSED)
+special (bfd * abfd ATTRIBUTE_UNUSED,
+ arelent * reloc_entry ATTRIBUTE_UNUSED,
+ asymbol * symbol ATTRIBUTE_UNUSED,
+ void * data ATTRIBUTE_UNUSED,
+ asection * input_section ATTRIBUTE_UNUSED,
+ bfd * output_bfd,
+ char ** error_message ATTRIBUTE_UNUSED)
{
if (output_bfd == (bfd *) NULL)
return bfd_reloc_continue;
@@ -240,7 +213,8 @@
return bfd_reloc_ok;
}
-static reloc_howto_type howto_table[] = {
+static reloc_howto_type howto_table[] =
+{
HOWTO (R_RELBYTE, 0, 0, 8, FALSE, 0, complain_overflow_bitfield, special, "8", FALSE, 0x000000ff, 0x000000ff, FALSE),
HOWTO (R_RELWORD, 0, 1, 16, FALSE, 0, complain_overflow_bitfield, special, "16", FALSE, 0x0000ffff, 0x0000ffff, FALSE),
HOWTO (R_RELLONG, 0, 2, 32, FALSE, 0, complain_overflow_bitfield, special, "32", FALSE, 0xffffffff, 0xffffffff, FALSE),
diff --git a/bfd/coff-h8500.c b/bfd/coff-h8500.c
index 139a8ed..9b64599 100644
--- a/bfd/coff-h8500.c
+++ b/bfd/coff-h8500.c
@@ -1,6 +1,6 @@
/* BFD back-end for Renesas H8/500 COFF binaries.
Copyright 1993, 1994, 1995, 1997, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2007, 2008 Free Software Foundation, Inc.
+ 2005, 2007, 2008, 2012 Free Software Foundation, Inc.
Contributed by Cygnus Support.
Written by Steve Chamberlain, <[email protected]>.
@@ -29,10 +29,6 @@
#include "coff/internal.h"
#include "libcoff.h"
-static int coff_h8500_select_reloc PARAMS ((reloc_howto_type *));
-static void rtype2howto PARAMS ((arelent *, struct internal_reloc *));
-static void reloc_processing PARAMS ((arelent *, struct internal_reloc *, asymbol **, bfd *, asection *));
-static void extra_case PARAMS ((bfd *, struct bfd_link_info *, struct bfd_link_order *, arelent *, bfd_byte *, unsigned int *, unsigned int *));
#define COFF_DEFAULT_SECTION_ALIGNMENT_POWER (1)
@@ -73,8 +69,7 @@
/* Turn a howto into a reloc number. */
static int
-coff_h8500_select_reloc (howto)
- reloc_howto_type *howto;
+coff_h8500_select_reloc (reloc_howto_type *howto)
{
return howto->type;
}
@@ -96,9 +91,7 @@
/* Code to turn a r_type into a howto ptr, uses the above howto table. */
static void
-rtype2howto (internal, dst)
- arelent * internal;
- struct internal_reloc *dst;
+rtype2howto (arelent * internal, struct internal_reloc *dst)
{
switch (dst->r_type)
{
@@ -145,12 +138,12 @@
#define RELOC_PROCESSING(relent,reloc,symbols,abfd,section) \
reloc_processing(relent, reloc, symbols, abfd, section)
-static void reloc_processing (relent, reloc, symbols, abfd, section)
- arelent * relent;
- struct internal_reloc *reloc;
- asymbol ** symbols;
- bfd * abfd;
- asection * section;
+static void
+reloc_processing (arelent * relent,
+ struct internal_reloc *reloc,
+ asymbol ** symbols,
+ bfd * abfd,
+ asection * section)
{
relent->address = reloc->r_vaddr;
rtype2howto (relent, reloc);
@@ -165,14 +158,13 @@
}
static void
-extra_case (in_abfd, link_info, link_order, reloc, data, src_ptr, dst_ptr)
- bfd *in_abfd;
- struct bfd_link_info *link_info;
- struct bfd_link_order *link_order;
- arelent *reloc;
- bfd_byte *data;
- unsigned int *src_ptr;
- unsigned int *dst_ptr;
+extra_case (bfd *in_abfd,
+ struct bfd_link_info *link_info,
+ struct bfd_link_order *link_order,
+ arelent *reloc,
+ bfd_byte *data,
+ unsigned int *src_ptr,
+ unsigned int *dst_ptr)
{
bfd_byte *d = data+*dst_ptr;
asection *input_section = link_order->u.indirect.section;
@@ -230,7 +222,7 @@
v = (v & 0x00ffffff) | (o & 0xff00000);
bfd_put_32 (in_abfd, (bfd_vma) v, data + *dst_ptr -1);
(*dst_ptr) += 3;
- (*src_ptr) += 3;;
+ (*src_ptr) += 3;
}
break;
case R_H8500_IMM32:
@@ -238,7 +230,7 @@
int v = bfd_coff_reloc16_get_value (reloc, link_info, input_section);
bfd_put_32 (in_abfd, (bfd_vma) v, data + *dst_ptr);
(*dst_ptr) += 4;
- (*src_ptr) += 4;;
+ (*src_ptr) += 4;
}
break;
diff --git a/bfd/coff-i386.c b/bfd/coff-i386.c
index 2f17a55..af92b40 100644
--- a/bfd/coff-i386.c
+++ b/bfd/coff-i386.c
@@ -1,6 +1,6 @@
/* BFD back-end for Intel 386 COFF files.
Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011
+ 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011, 2012
Free Software Foundation, Inc.
Written by Cygnus Support.
@@ -43,8 +43,6 @@
#include "libcoff.h"
-static bfd_reloc_status_type coff_i386_reloc
- (bfd *, arelent *, asymbol *, PTR, asection *, bfd *, char **);
static reloc_howto_type *coff_i386_rtype_to_howto
(bfd *, asection *, struct internal_reloc *,
struct coff_link_hash_entry *, struct internal_syment *,
@@ -67,15 +65,13 @@
reloc type to make any required adjustments. */
static bfd_reloc_status_type
-coff_i386_reloc (abfd, reloc_entry, symbol, data, input_section, output_bfd,
- error_message)
- bfd *abfd;
- arelent *reloc_entry;
- asymbol *symbol;
- PTR data;
- asection *input_section ATTRIBUTE_UNUSED;
- bfd *output_bfd;
- char **error_message ATTRIBUTE_UNUSED;
+coff_i386_reloc (bfd *abfd,
+ arelent *reloc_entry,
+ asymbol *symbol,
+ void * data,
+ asection *input_section ATTRIBUTE_UNUSED,
+ bfd *output_bfd,
+ char **error_message ATTRIBUTE_UNUSED)
{
symvalue diff;
@@ -189,11 +185,8 @@
/* Return TRUE if this relocation should appear in the output .reloc
section. */
-static bfd_boolean in_reloc_p PARAMS ((bfd *, reloc_howto_type *));
-
-static bfd_boolean in_reloc_p (abfd, howto)
- bfd * abfd ATTRIBUTE_UNUSED;
- reloc_howto_type *howto;
+static bfd_boolean in_reloc_p (bfd * abfd ATTRIBUTE_UNUSED,
+ reloc_howto_type *howto)
{
return ! howto->pc_relative && howto->type != R_IMAGEBASE
&& howto->type != R_SECREL32;
@@ -413,22 +406,15 @@
and the regular routine is that we don't want to do anything for a
relocatable link. */
-static bfd_boolean coff_pe_i386_relocate_section
- PARAMS ((bfd *, struct bfd_link_info *, bfd *, asection *, bfd_byte *,
- struct internal_reloc *, struct internal_syment *, asection **));
-
static bfd_boolean
-coff_pe_i386_relocate_section (output_bfd, info, input_bfd,
- input_section, contents, relocs, syms,
- sections)
- bfd *output_bfd;
- struct bfd_link_info *info;
- bfd *input_bfd;
- asection *input_section;
- bfd_byte *contents;
- struct internal_reloc *relocs;
- struct internal_syment *syms;
- asection **sections;
+coff_pe_i386_relocate_section (bfd *output_bfd,
+ struct bfd_link_info *info,
+ bfd *input_bfd,
+ asection *input_section,
+ bfd_byte *contents,
+ struct internal_reloc *relocs,
+ struct internal_syment *syms,
+ asection **sections)
{
if (info->relocatable)
return TRUE;
@@ -445,13 +431,12 @@
/* Convert an rtype to howto for the COFF backend linker. */
static reloc_howto_type *
-coff_i386_rtype_to_howto (abfd, sec, rel, h, sym, addendp)
- bfd *abfd ATTRIBUTE_UNUSED;
- asection *sec;
- struct internal_reloc *rel;
- struct coff_link_hash_entry *h;
- struct internal_syment *sym;
- bfd_vma *addendp;
+coff_i386_rtype_to_howto (bfd *abfd ATTRIBUTE_UNUSED,
+ asection *sec,
+ struct internal_reloc *rel,
+ struct coff_link_hash_entry *h,
+ struct internal_syment *sym,
+ bfd_vma *addendp)
{
reloc_howto_type *howto;
@@ -528,8 +513,8 @@
{
bfd_vma osect_vma;
- if (h && (h->type == bfd_link_hash_defined
- || h->type == bfd_link_hash_defweak))
+ if (h && (h->root.type == bfd_link_hash_defined
+ || h->root.type == bfd_link_hash_defweak))
osect_vma = h->root.u.def.section->output_section->vma;
else
{
@@ -556,9 +541,8 @@
#define coff_bfd_reloc_name_lookup coff_i386_reloc_name_lookup
static reloc_howto_type *
-coff_i386_reloc_type_lookup (abfd, code)
- bfd *abfd ATTRIBUTE_UNUSED;
- bfd_reloc_code_real_type code;
+coff_i386_reloc_type_lookup (bfd *abfd ATTRIBUTE_UNUSED,
+ bfd_reloc_code_real_type code)
{
switch (code)
{
@@ -608,13 +592,8 @@
a leading dot for local labels, so if TARGET_UNDERSCORE is defined
we treat all symbols starting with L as local. */
-static bfd_boolean coff_i386_is_local_label_name
- PARAMS ((bfd *, const char *));
-
static bfd_boolean
-coff_i386_is_local_label_name (abfd, name)
- bfd *abfd;
- const char *name;
+coff_i386_is_local_label_name (bfd *abfd, const char *name)
{
if (name[0] == 'L')
return TRUE;
@@ -628,6 +607,9 @@
#include "coffcode.h"
+#define _bfd_generic_find_nearest_line_discriminator \
+ coff_find_nearest_line_discriminator
+
const bfd_target
#ifdef TARGET_SYM
TARGET_SYM =
@@ -646,13 +628,13 @@
(HAS_RELOC | EXEC_P | /* object flags */
HAS_LINENO | HAS_DEBUG |
- HAS_SYMS | HAS_LOCALS | WP_TEXT | D_PAGED),
+ HAS_SYMS | HAS_LOCALS | WP_TEXT | D_PAGED | BFD_COMPRESS | BFD_DECOMPRESS ),
(SEC_HAS_CONTENTS | SEC_ALLOC | SEC_LOAD | SEC_RELOC /* section flags */
#ifdef COFF_WITH_PE
- | SEC_LINK_ONCE | SEC_LINK_DUPLICATES | SEC_READONLY
+ | SEC_LINK_ONCE | SEC_LINK_DUPLICATES | SEC_READONLY | SEC_DEBUGGING
#endif
- | SEC_CODE | SEC_DATA),
+ | SEC_CODE | SEC_DATA | SEC_EXCLUDE ),
#ifdef TARGET_UNDERSCORE
TARGET_UNDERSCORE, /* leading underscore */
diff --git a/bfd/coff-i860.c b/bfd/coff-i860.c
index 9eb39a5..79b4a7e 100644
--- a/bfd/coff-i860.c
+++ b/bfd/coff-i860.c
@@ -131,7 +131,7 @@
return bfd_reloc_continue;
}
-/* This is just a temporary measure until we teach bfd to generate
+/* This is just a temporary measure until we teach bfd to generate
these relocations. */
static bfd_reloc_status_type
diff --git a/bfd/coff-i960.c b/bfd/coff-i960.c
index 928315f..5205caf 100644
--- a/bfd/coff-i960.c
+++ b/bfd/coff-i960.c
@@ -1,6 +1,6 @@
/* BFD back-end for Intel 960 COFF files.
Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1997, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2011
+ 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2011, 2012
Free Software Foundation, Inc.
Written by Cygnus Support.
@@ -36,22 +36,6 @@
#include "libcoff.h" /* To allow easier abstraction-breaking. */
-static bfd_boolean coff_i960_is_local_label_name
- PARAMS ((bfd *, const char *));
-static bfd_reloc_status_type optcall_callback
- PARAMS ((bfd *, arelent *, asymbol *, PTR, asection *, bfd *, char **));
-static bfd_reloc_status_type coff_i960_relocate
- PARAMS ((bfd *, arelent *, asymbol *, PTR, asection *, bfd *, char **));
-static reloc_howto_type *coff_i960_reloc_type_lookup
- PARAMS ((bfd *, bfd_reloc_code_real_type));
-static bfd_boolean coff_i960_start_final_link
- PARAMS ((bfd *, struct bfd_link_info *));
-static bfd_boolean coff_i960_relocate_section
- PARAMS ((bfd *, struct bfd_link_info *, bfd *, asection *, bfd_byte *,
- struct internal_reloc *, struct internal_syment *, asection **));
-static bfd_boolean coff_i960_adjust_symndx
- PARAMS ((bfd *, struct bfd_link_info *, bfd *, asection *,
- struct internal_reloc *, bfd_boolean *));
#define COFF_DEFAULT_SECTION_ALIGNMENT_POWER (3)
#define COFF_ALIGN_IN_SECTION_HEADER 1
@@ -68,9 +52,7 @@
/* This set of local label names is taken from gas. */
static bfd_boolean
-coff_i960_is_local_label_name (abfd, name)
- bfd *abfd ATTRIBUTE_UNUSED;
- const char *name;
+coff_i960_is_local_label_name (bfd *abfd ATTRIBUTE_UNUSED, const char *name)
{
return (name[0] == 'L'
|| (name[0] == '.'
@@ -108,15 +90,13 @@
#define BAL_MASK 0x00ffffff
static bfd_reloc_status_type
-optcall_callback (abfd, reloc_entry, symbol_in, data,
- input_section, ignore_bfd, error_message)
- bfd *abfd;
- arelent *reloc_entry;
- asymbol *symbol_in;
- PTR data;
- asection *input_section;
- bfd *ignore_bfd ATTRIBUTE_UNUSED;
- char **error_message;
+optcall_callback (bfd *abfd,
+ arelent *reloc_entry,
+ asymbol *symbol_in,
+ void * data,
+ asection *input_section,
+ bfd *ignore_bfd ATTRIBUTE_UNUSED,
+ char **error_message)
{
/* This item has already been relocated correctly, but we may be
* able to patch in yet better code - done by digging out the
@@ -198,15 +178,13 @@
COFF specific backend linker. */
static bfd_reloc_status_type
-coff_i960_relocate (abfd, reloc_entry, symbol, data, input_section,
- output_bfd, error_message)
- bfd *abfd;
- arelent *reloc_entry;
- asymbol *symbol;
- PTR data ATTRIBUTE_UNUSED;
- asection *input_section ATTRIBUTE_UNUSED;
- bfd *output_bfd;
- char **error_message ATTRIBUTE_UNUSED;
+coff_i960_relocate (bfd *abfd,
+ arelent *reloc_entry,
+ asymbol *symbol,
+ void * data ATTRIBUTE_UNUSED,
+ asection *input_section ATTRIBUTE_UNUSED,
+ bfd *output_bfd,
+ char **error_message ATTRIBUTE_UNUSED)
{
asection *osec;
@@ -261,11 +239,11 @@
if (coff_section_data (output_bfd, osec) == NULL)
{
bfd_size_type amt = sizeof (struct coff_section_tdata);
- osec->used_by_bfd = (PTR) bfd_zalloc (abfd, amt);
+ osec->used_by_bfd = bfd_zalloc (abfd, amt);
if (osec->used_by_bfd == NULL)
return bfd_reloc_overflow;
}
- coff_section_data (output_bfd, osec)->tdata = (PTR) syms;
+ coff_section_data (output_bfd, osec)->tdata = syms;
}
/* Let bfd_perform_relocation do its thing, which will include
@@ -285,9 +263,8 @@
optcall_callback, "optcall", TRUE, 0x00ffffff, 0x00ffffff, 0);
static reloc_howto_type *
-coff_i960_reloc_type_lookup (abfd, code)
- bfd *abfd ATTRIBUTE_UNUSED;
- bfd_reloc_code_real_type code;
+coff_i960_reloc_type_lookup (bfd *abfd ATTRIBUTE_UNUSED,
+ bfd_reloc_code_real_type code)
{
switch (code)
{
@@ -341,9 +318,7 @@
necessary symbols. */
static bfd_boolean
-coff_i960_start_final_link (abfd, info)
- bfd *abfd;
- struct bfd_link_info *info;
+coff_i960_start_final_link (bfd *abfd, struct bfd_link_info *info)
{
bfd_size_type symesz = bfd_coff_symesz (abfd);
asection *o;
@@ -370,7 +345,7 @@
isym.n_sclass = C_STAT;
isym.n_numaux = 0;
- bfd_coff_swap_sym_out (abfd, (PTR) &isym, (PTR) esym);
+ bfd_coff_swap_sym_out (abfd, &isym, esym);
if (bfd_bwrite (esym, symesz, abfd) != symesz)
{
@@ -389,16 +364,14 @@
/* The reloc processing routine for the optimized COFF linker. */
static bfd_boolean
-coff_i960_relocate_section (output_bfd, info, input_bfd, input_section,
- contents, relocs, syms, sections)
- bfd *output_bfd ATTRIBUTE_UNUSED;
- struct bfd_link_info *info;
- bfd *input_bfd;
- asection *input_section;
- bfd_byte *contents;
- struct internal_reloc *relocs;
- struct internal_syment *syms;
- asection **sections;
+coff_i960_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED,
+ struct bfd_link_info *info,
+ bfd *input_bfd,
+ asection *input_section,
+ bfd_byte *contents,
+ struct internal_reloc *relocs,
+ struct internal_syment *syms,
+ asection **sections)
{
struct internal_reloc *rel;
struct internal_reloc *relend;
@@ -530,9 +503,9 @@
BFD_ASSERT (sym->n_numaux == 2);
esyms = (bfd_byte *) obj_coff_external_syms (input_bfd);
esyms += (symndx + 2) * bfd_coff_symesz (input_bfd);
- bfd_coff_swap_aux_in (input_bfd, (PTR) esyms, sym->n_type,
+ bfd_coff_swap_aux_in (input_bfd, esyms, sym->n_type,
sym->n_sclass, 1, sym->n_numaux,
- (PTR) &aux);
+ &aux);
olf = aux.x_bal.x_balntry;
}
@@ -601,13 +574,12 @@
for the section. */
static bfd_boolean
-coff_i960_adjust_symndx (obfd, info, ibfd, sec, irel, adjustedp)
- bfd *obfd ATTRIBUTE_UNUSED;
- struct bfd_link_info *info ATTRIBUTE_UNUSED;
- bfd *ibfd;
- asection *sec ATTRIBUTE_UNUSED;
- struct internal_reloc *irel;
- bfd_boolean *adjustedp;
+coff_i960_adjust_symndx (bfd *obfd ATTRIBUTE_UNUSED,
+ struct bfd_link_info *info ATTRIBUTE_UNUSED,
+ bfd *ibfd,
+ asection *sec ATTRIBUTE_UNUSED,
+ struct internal_reloc *irel,
+ bfd_boolean *adjustedp)
{
struct coff_link_hash_entry *h;
diff --git a/bfd/coff-ia64.c