From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5115 invoked by alias); 27 Oct 2004 06:06:07 -0000 Mailing-List: contact binutils-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sources.redhat.com Received: (qmail 5103 invoked from network); 27 Oct 2004 06:06:06 -0000 Received: from unknown (HELO sirius.codesourcery.com) (65.74.133.4) by sourceware.org with SMTP; 27 Oct 2004 06:06:06 -0000 Received: from sirius.codesourcery.com (localhost.localdomain [127.0.0.1]) by sirius.codesourcery.com (8.12.8/8.12.5) with ESMTP id i9R665Aq015274; Tue, 26 Oct 2004 23:06:05 -0700 Received: (from mitchell@localhost) by sirius.codesourcery.com (8.12.8/8.12.8/Submit) id i9R665YW015270; Tue, 26 Oct 2004 23:06:05 -0700 Date: Wed, 27 Oct 2004 06:06:00 -0000 Message-Id: <200410270606.i9R665YW015270@sirius.codesourcery.com> From: Mark Mitchell To: binutils@sources.redhat.com Cc: paul@codesourcery.com Subject: PATCH: Do not create __exidx_{start,end} for ld -r Reply-to: mark@codesourcery.com X-SW-Source: 2004-10/txt/msg00438.txt.bz2 The armelf.sh configuration is presently creating the __exidx_{start,end} even when not relocating, e.g., when doing "ld -r". That's incorrect; these symbols should only be defined when creating a shared library or executable. OK to commit? -- Mark Mitchell CodeSourcery, LLC mark@codesourcery.com 2004-10-26 Mark Mitchell * emulparams/armelf.sh (OTHER_READONLY_SECTIONS): Do not emit __exidx_{start,end} when not relocating. Index: emulparams/armelf.sh =================================================================== RCS file: /cvs/src/src/ld/emulparams/armelf.sh,v retrieving revision 1.13 diff -c -5 -p -r1.13 armelf.sh *** emulparams/armelf.sh 1 Oct 2004 12:59:34 -0000 1.13 --- emulparams/armelf.sh 27 Oct 2004 06:02:14 -0000 *************** OTHER_TEXT_SECTIONS='*(.glue_7t) *(.glue *** 10,22 **** OTHER_BSS_SYMBOLS='__bss_start__ = .;' OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ; __end__ = . ;' OTHER_SECTIONS='.note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) }' OTHER_READONLY_SECTIONS=" .ARM.extab ${RELOCATING-0} : { *(.ARM.extab${RELOCATING+* .gnu.linkonce.armextab.*}) } ! __exidx_start = .; .ARM.exidx ${RELOCATING-0} : { *(.ARM.exidx${RELOCATING+* .gnu.linkonce.armexidx.*}) } ! __exidx_end = .;" DATA_START_SYMBOLS='__data_start = . ;'; GENERATE_SHLIB_SCRIPT=yes --- 10,22 ---- OTHER_BSS_SYMBOLS='__bss_start__ = .;' OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ; __end__ = . ;' OTHER_SECTIONS='.note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) }' OTHER_READONLY_SECTIONS=" .ARM.extab ${RELOCATING-0} : { *(.ARM.extab${RELOCATING+* .gnu.linkonce.armextab.*}) } ! ${RELOCATING+ __exidx_start = .; } .ARM.exidx ${RELOCATING-0} : { *(.ARM.exidx${RELOCATING+* .gnu.linkonce.armexidx.*}) } ! ${RELOCATING+ __exidx_end = .; }" DATA_START_SYMBOLS='__data_start = . ;'; GENERATE_SHLIB_SCRIPT=yes