Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 1 Jun 2011 10:23:03 +0000 (UTC)
From:      "Jayachandran C." <jchandra@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r222558 - head/contrib/binutils/ld/emulparams
Message-ID:  <201106011023.p51AN3M7064489@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jchandra
Date: Wed Jun  1 10:23:03 2011
New Revision: 222558
URL: http://svn.freebsd.org/changeset/base/222558

Log:
  Add .interp back into INITIAL_READONLY_SECTIONS in MIPS n64 ABI.
  
  The binutils update in r218822 caused the MIPS n64 dynamic binaries to
  fail because the ".interp" section is not in the initial sections.
  This happens because elf64bmip-defs.sh overrides INITIAL_READONLY_SECTIONS
  to add ".MIPS.options" sections instead of the ".reginfo" section used
  by n32.
  This used to work fine, but after r218822, INITIAL_READONLY_SECTIONS also
  contains the .interp section, so the override has to be done differently.
  
  Reported by : aduane at juniper
  
  Obtained from:	gonzo (Initial version)

Modified:
  head/contrib/binutils/ld/emulparams/elf64bmip-defs.sh

Modified: head/contrib/binutils/ld/emulparams/elf64bmip-defs.sh
==============================================================================
--- head/contrib/binutils/ld/emulparams/elf64bmip-defs.sh	Wed Jun  1 06:07:57 2011	(r222557)
+++ head/contrib/binutils/ld/emulparams/elf64bmip-defs.sh	Wed Jun  1 10:23:03 2011	(r222558)
@@ -1,3 +1,11 @@
 . ${srcdir}/emulparams/elf32bmipn32-defs.sh
 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
-INITIAL_READONLY_SECTIONS=".MIPS.options : { *(.MIPS.options) }"
+
+# elf32bmipn32-defs.sh use .reginfo, n64 ABI should use .MIPS.options,
+# override INITIAL_READONLY_SECTIONS to do this.
+INITIAL_READONLY_SECTIONS=
+if test -z "${CREATE_SHLIB}"; then
+  INITIAL_READONLY_SECTIONS=".interp       ${RELOCATING-0} : { *(.interp) }"
+fi
+INITIAL_READONLY_SECTIONS="${INITIAL_READONLY_SECTIONS}
+  .MIPS.options      ${RELOCATING-0} : { *(.MIPS.options) }"



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201106011023.p51AN3M7064489>