This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 2/2] ld: Don't evaluate unneeded PROVIDE expressions.


On Thu, Jan 08, 2015 at 08:03:04PM +0000, Andrew Burgess wrote:
> ld/ChangeLog:
> 
> 	* ldlang.c (print_assignment): Only evaluate the expression for a
> 	PROVIDE'd assignment when the destination is being defined.
> 	Display a special message for PROVIDE'd symbols that are not being
> 	provided.

This is OK.

> ld/testsuite/ChangeLog:
> 
> 	* ld-scripts/provide-4.d: New file.
> 	* ld-scripts/provide-4-map.d: New file.
> 	* ld-scripts/provide-4.t: New file.
> 	* ld-scripts/provide.exp: Run the provide-4.d test.

This part isn't OK yet.  You need to make sure new tests pass on more
than just Linux x86.  I could see this would fail so applied your
patches and gave my usual set of targets a whirl, results below.  To
fix this you can either restrict the set of targets tested (the lazy
option), or relax the .d file matching to the minimum you need to
verify the feature being tested.

aarch64-linux  +FAIL: ld-scripts/provide-4 (map file check)
alpha-dec-vms  +FAIL: ld-scripts/provide-4
alpha-linux  +FAIL: ld-scripts/provide-4 (map file check)
alpha-linuxecoff  +FAIL: ld-scripts/provide-4 (map file check)
alpha-netbsd  +FAIL: ld-scripts/provide-4 (map file check)
alpha-unknown-freebsd4.7  +FAIL: ld-scripts/provide-4 (map file check)
am33_2.0-linux  +FAIL: ld-scripts/provide-4 (map file check)
arc-elf  +FAIL: ld-scripts/provide-4 (map file check)
arm-coff  +FAIL: ld-scripts/provide-4 (map file check)
arm-coff  +FAIL: ld-scripts/provide-4
arm-epoc-pe  +FAIL: ld-scripts/provide-4 (map file check)
arm-epoc-pe  +FAIL: ld-scripts/provide-4
arm-linuxeabi  +FAIL: ld-scripts/provide-4 (map file check)
arm-nacl  +FAIL: ld-scripts/provide-4 (map file check)
arm-netbsdelf  +FAIL: ld-scripts/provide-4 (map file check)
arm-nto  +FAIL: ld-scripts/provide-4 (map file check)
arm-pe  +FAIL: ld-scripts/provide-4 (map file check)
arm-pe  +FAIL: ld-scripts/provide-4
arm-symbianelf  +FAIL: ld-scripts/provide-4 (map file check)
arm-symbianelf  +FAIL: ld-scripts/provide-4
arm-vxworks  +FAIL: ld-scripts/provide-4 (map file check)
arm-wince-pe  +FAIL: ld-scripts/provide-4 (map file check)
arm-wince-pe  +FAIL: ld-scripts/provide-4
avr-elf  +FAIL: ld-scripts/provide-4 (map file check)
bfin-elf  +FAIL: ld-scripts/provide-4 (map file check)
cr16-elf  +FAIL: ld-scripts/provide-4 (map file check)
cris-elf  +FAIL: ld-scripts/provide-4 (map file check)
crisv32-linux  +FAIL: ld-scripts/provide-4 (map file check)
crx-elf  +FAIL: ld-scripts/provide-4 (map file check)
d10v-elf  +FAIL: ld-scripts/provide-4 (map file check)
d30v-elf  +FAIL: ld-scripts/provide-4 (map file check)
dlx-elf  +FAIL: ld-scripts/provide-4 (map file check)
fr30-elf  +FAIL: ld-scripts/provide-4 (map file check)
frv-elf  +FAIL: ld-scripts/provide-4 (map file check)
frv-linux  +FAIL: ld-scripts/provide-4 (map file check)
frv-linux  +FAIL: ld-scripts/provide-4
h8300-elf  +FAIL: ld-scripts/provide-4 (map file check)
hppa64-hp-hpux11.23  +FAIL: ld-scripts/provide-4 (map file check)
hppa64-hp-hpux11.23  +FAIL: ld-scripts/provide-4
hppa64-linux  +FAIL: ld-scripts/provide-4 (map file check)
hppa64-linux  +FAIL: ld-scripts/provide-4
hppa-linux  +FAIL: ld-scripts/provide-4 (map file check)
i370-linux  +FAIL: ld-scripts/provide-4 (map file check)
i386-lynxos  +FAIL: ld-scripts/provide-4 (map file check)
i386-netware  +FAIL: ld-scripts/provide-4 (map file check)
i586-coff  +FAIL: ld-scripts/provide-4 (map file check)
i586-coff  +FAIL: ld-scripts/provide-4
i586-linux  +FAIL: ld-scripts/provide-4 (map file check)
i686-nacl  +FAIL: ld-scripts/provide-4 (map file check)
i686-pc-beos  +FAIL: ld-scripts/provide-4 (map file check)
i686-pc-elf  +FAIL: ld-scripts/provide-4 (map file check)
i686-pe  +FAIL: ld-scripts/provide-4 (map file check)
i686-pe  +FAIL: ld-scripts/provide-4
i860-stardent-elf  +FAIL: ld-scripts/provide-4 (map file check)
i960-elf  +FAIL: ld-scripts/provide-4 (map file check)
ia64-elf  +FAIL: ld-scripts/provide-4 (map file check)
ia64-freebsd5  +FAIL: ld-scripts/provide-4 (map file check)
ia64-linux  +FAIL: ld-scripts/provide-4 (map file check)
ia64-netbsd  +FAIL: ld-scripts/provide-4 (map file check)
ip2k-elf  +FAIL: ld-scripts/provide-4 (map file check)
iq2000-elf  +FAIL: ld-scripts/provide-4 (map file check)
lm32-elf  +FAIL: ld-scripts/provide-4 (map file check)
m32c-elf  +FAIL: ld-scripts/provide-4 (map file check)
m32r-elf  +FAIL: ld-scripts/provide-4 (map file check)
m68hc11-elf  +FAIL: ld-scripts/provide-4 (map file check)
m68hc12-elf  +FAIL: ld-scripts/provide-4 (map file check)
m68k-elf  +FAIL: ld-scripts/provide-4 (map file check)
m68k-linux  +FAIL: ld-scripts/provide-4 (map file check)
mcore-elf  +FAIL: ld-scripts/provide-4 (map file check)
mcore-pe  +FAIL: ld-scripts/provide-4 (map file check)
mcore-pe  +FAIL: ld-scripts/provide-4
mep-elf  +FAIL: ld-scripts/provide-4 (map file check)
microblaze-elf  +FAIL: ld-scripts/provide-4 (map file check)
mips64-linux  +FAIL: ld-scripts/provide-4 (map file check)
mipsel-linux-gnu  +FAIL: ld-scripts/provide-4 (map file check)
mipsisa32el-linux  +FAIL: ld-scripts/provide-4 (map file check)
mips-linux  +FAIL: ld-scripts/provide-4 (map file check)
mmix  +FAIL: ld-scripts/provide-4 (map file check)
mmix  +FAIL: ld-scripts/provide-4
mn10200-elf  +FAIL: ld-scripts/provide-4 (map file check)
mn10300-elf  +FAIL: ld-scripts/provide-4 (map file check)
moxie-elf  +FAIL: ld-scripts/provide-4 (map file check)
ms1-elf  +FAIL: ld-scripts/provide-4 (map file check)
msp430-elf  +FAIL: ld-scripts/provide-4 (map file check)
msp430-elf  +FAIL: ld-scripts/provide-4
nios2-linux  +FAIL: ld-scripts/provide-4 (map file check)
or1k-elf  +FAIL: ld-scripts/provide-4 (map file check)
pj-elf  +FAIL: ld-scripts/provide-4 (map file check)
powerpc64le-elf  +FAIL: ld-scripts/provide-4 (map file check)
powerpc64-linux  +FAIL: ld-scripts/provide-4 (map file check)
powerpc-eabisim  +FAIL: ld-scripts/provide-4 (map file check)
powerpcle-cygwin  +FAIL: ld-scripts/provide-4
powerpcle-elf  +FAIL: ld-scripts/provide-4 (map file check)
powerpc-linux  +FAIL: ld-scripts/provide-4 (map file check)
powerpc-nto  +FAIL: ld-scripts/provide-4 (map file check)
powerpc-wrs-vxworks  +FAIL: ld-scripts/provide-4 (map file check)
ppc-lynxos  +FAIL: ld-scripts/provide-4 (map file check)
ppc-lynxos  +FAIL: ld-scripts/provide-4
rl78-elf  +FAIL: ld-scripts/provide-4 (map file check)
rx-elf  +XPASS: overlay size (map file check)
rx-elf  +FAIL: overlay size
rx-elf  +FAIL: ld-scripts/provide-4 (map file check)
sh64-elf  +FAIL: ld-scripts/provide-4 (map file check)
sh-linux  +FAIL: ld-scripts/provide-4 (map file check)
shl-unknown-netbsdelf  +FAIL: ld-scripts/provide-4 (map file check)
sh-nto  +FAIL: ld-scripts/provide-4 (map file check)
sh-pe  +FAIL: ld-scripts/provide-4 (map file check)
sh-pe  +FAIL: ld-scripts/provide-4
sh-rtems  +FAIL: ld-scripts/provide-4 (map file check)
sparc64-linux  +FAIL: ld-scripts/provide-4 (map file check)
sparc-coff  +FAIL: ld-scripts/provide-4 (map file check)
sparc-coff  +FAIL: ld-scripts/provide-4
sparc-linux  +FAIL: ld-scripts/provide-4 (map file check)
spu-elf  +FAIL: ld-scripts/provide-4 (map file check)
tic30-unknown-coff  +FAIL: ld-scripts/provide-4 (map file check)
tic30-unknown-coff  +FAIL: ld-scripts/provide-4
tic4x-coff  +FAIL: ld-scripts/provide-4 (map file check)
tic4x-coff  +FAIL: ld-scripts/provide-4
tic54x-coff  +FAIL: ld-scripts/provide-4
tic6x-elf  +FAIL: ld-scripts/provide-4 (map file check)
tilegx-linux  +FAIL: ld-scripts/provide-4 (map file check)
tilepro-linux  +FAIL: ld-scripts/provide-4 (map file check)
tx39-elf  +FAIL: ld-scripts/provide-4 (map file check)
v850-elf  +FAIL: ld-scripts/provide-4 (map file check)
vax-netbsdelf  +FAIL: ld-scripts/provide-4 (map file check)
x86_64-mingw32  +FAIL: ld-scripts/provide-4 (map file check)
x86_64-mingw32  +FAIL: ld-scripts/provide-4
xgate-elf  +FAIL: ld-scripts/provide-4 (map file check)
xstormy16-elf  +FAIL: ld-scripts/provide-4 (map file check)
xtensa-elf  +FAIL: ld-scripts/provide-4 (map file check)
z80-coff  +FAIL: ld-scripts/provide-4 (map file check)
z80-coff  +FAIL: ld-scripts/provide-4
z8k-coff  +FAIL: ld-scripts/provide-4 (map file check)
z8k-coff  +FAIL: ld-scripts/provide-4

-- 
Alan Modra
Australia Development Lab, IBM


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]