This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
gcc 3.3 default_assemble_visibility problem (Was: Re: sh-elf toolchain broken on mainline)
- From: Joern Rennecke <joern dot rennecke at superh dot com>
- To: gcc at gcc dot gnu dot org, Mark Mitchell <mark at codesourcery dot com>
- Cc: binutils at sources dot redhat dot com
- Date: Mon, 28 Apr 2003 20:42:19 +0100
- Subject: gcc 3.3 default_assemble_visibility problem (Was: Re: sh-elf toolchain broken on mainline)
- Organization: SuperH UK Ltd.
- References: <3EAD7081.FAE963B1@superh.com>
P.S.:
This problem is likely to affect other targets besides sh-elf.
On any target where USER_LABEL_PREFIX is not empty, or
ASM_OUTPUT_LABELREF does any other non-identity operations,
and which does not define its own way to output hidden symbols,
hidden symbol output will be incorrect, not making the intended
symbol hidden, and creating an undefined hidden symbol with a
different name instead - likewise for internal and protected
symbols.
The following port config files define USER_LABEL_PREFIX to "_":
arm/aout.h
arm/coff.h
arm/pe.h
c4x/c4x.h
cris/cris.h
dsp16xx/dsp16xx.h
h8300/elf.h
h8300/h8300.h
i386/bsd.h
i960/i960.h
ip2k/ip2k.h
m68k/m68k.h
m88k/m88k.h
pdp11/pdp11.h
romp/romp.h
sh/coff.h
sh/embed-elf.h
sparc/sparc.h
v850/v850.h
vax/vax.h
Moreover, ASM_OUTPUT_LABELREF is defined by the
following further config files:
alpha/alpha.h
arc/arc.h
arm/aof.h
arm/arm.h
arm/pe.h
i370/i370.h
i386/cygming.h
ia64/sysv4.h
mcore/mcore.h
mips/mips.h
mmix/mmix.h
mn10200/mn10200.h
mn10300/mn10300.h
pa/pa.h
rs6000/linux64.h
OTOH, Only rs6000/rs6000.c defines TARGET_ASM_ASSEMBLE_VISIBILITY
With the release of binutils 2.15 - or maybe already 1.14.1 -
the damage will become apparent for all of the above targets that
use binutils - i.e. most of the ones that are not already dead.
Unless my patch:
http://gcc.gnu.org/ml/gcc-patches/2003-04/msg02110.html
or an equivalent is accepted for the 3.3 branch, we should make
target-specific patches to all targets that we don't want to deprecate.
--
--------------------------
SuperH (UK) Ltd.
2410 Aztec West / Almondsbury / BRISTOL / BS32 4QX
T:+44 1454 465658