binutils-gdb/ld/testsuite/ld-i386
H.J. Lu 994b251328 ld/elf: Ignore section symbols when matching linkonce with comdat
When deciding if a single member comdat group section in file FOO should
be discarded by a linkonce section in file BAR, we check if 2 sections
define the same set of local and global symbols.  When only one of the
files doesn't contain the unused section symbols in the symbol table,
such as object files generated by clang or GNU assembler with

commit d1bcae833b
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Thu Jan 7 06:42:00 2021 -0800

    ELF: Don't generate unused section symbols

the check will fail since one file has the extra unused section symbols.
We should ignore both undefined and section symbols in the symbol table
when making such a decision.

bfd/

	PR ld/27193
	* elflink.c (elf_create_symbuf): Also ignore section symbols.

ld/

	PR ld/27193
	* testsuite/ld-i386/i386.exp: Run PR ld/27193 test.
	* testsuite/ld-i386/pr27193.dd: New file.
	* testsuite/ld-i386/pr27193a.o.bz2: Likewise.
	* testsuite/ld-i386/pr27193b.s: Likewise.
2021-01-17 20:01:30 -08:00
..
abs-iamcu.d
abs.d
abs.s
align-branch-1.d
align-branch-1.s
alloc.d
alloc.s
alloc.t
branch1.d
branch1.s
call1.d
call1.s
call2.d
call2.s
call3.s
call3a.d
call3b.d
call3c.d
call3d.d
call3e.d
call3f.d
call3g.d
call3h.d
combreloc.d
combreloc.s
compressed1.d
compressed1.s
copyreloc-lib.c
copyreloc-main1.rd
copyreloc-main2.rd
copyreloc-main.out
copyreloc-main.S
discarded1.d
discarded1.s
discarded1.t
dummy.c
dummy.s
emit-relocs.rd
emit-relocs.s
export-class.exp Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
foo.s
got1.dd
got1.out
got1a.S
got1b.c
got1c.c
got1d.S
hidden1.d
hidden1.s
hidden2.d
hidden2.s
hidden3.d
hidden3.s
i386-export-class.rd
i386-export-class.xd
i386.exp ld/elf: Ignore section symbols when matching linkonce with comdat 2021-01-17 20:01:30 -08:00
iamcu-1.d
iamcu-2.d
iamcu-3.d
iamcu-4.d
ibt-plt-1.d ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
ibt-plt-1.s
ibt-plt-2.s
ibt-plt-2a.d ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
ibt-plt-2b.d
ibt-plt-2c.d ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
ibt-plt-2d.d
ibt-plt-3.s
ibt-plt-3a.d ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
ibt-plt-3b.d
ibt-plt-3c.d ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
ibt-plt-3d.d
ifunc-1a.c
ifunc-1b.S
ifunc-1c.S
ifunc-1d.S
ifunc-textrel-1a.d
ifunc-textrel-1b.d
ifunc-textrel-2a.d
ifunc-textrel-2b.d
jmp1.d
jmp1.s
jmp2.d
jmp2.s
lea1.s
lea1a.d
lea1b.d
lea1c.d
lea1d.d
lea1e.d
lea1f.d
libno-plt-1b.dd
libno-plt-1b.rd
ljmp1.d i386: Allow non-absolute segment values for lcall/ljmp 2020-10-05 05:58:33 -07:00
ljmp1.s i386: Allow non-absolute segment values for lcall/ljmp 2020-10-05 05:58:33 -07:00
ljmp2.d i386: Allow non-absolute segment values for lcall/ljmp 2020-10-05 05:58:33 -07:00
ljmp2.s i386: Allow non-absolute segment values for lcall/ljmp 2020-10-05 05:58:33 -07:00
ljmp.s i386: Allow non-absolute segment values for lcall/ljmp 2020-10-05 05:58:33 -07:00
load1.d
load1.s
load2.d
load2.s
load3.d
load3.s
load4.s
load4a.d
load4b.d
load5.s
load5a.d
load5b.d
load6.d
load6.s
load7.d
load7.map
load7.s
mov1.s
mov1a.d
mov1b.d
mov2.s
mov2a.d
mov2b.d
mov3.d
mov3.s
no-plt-1a.dd
no-plt-1a.rd
no-plt-1b.dd
no-plt-1b.rd
no-plt-1c.dd
no-plt-1c.rd
no-plt-1d.dd
no-plt-1d.rd
no-plt-1e.dd
no-plt-1e.rd
no-plt-1f.dd
no-plt-1f.rd
no-plt-1g.dd
no-plt-1g.rd
no-plt-1h.dd
no-plt-1h.rd
no-plt-1i.dd
no-plt-1i.rd
no-plt-1j.dd
no-plt-1j.rd
no-plt-check1a.S
no-plt-check1b.S
no-plt-extern1a.S
no-plt-extern1b.S
no-plt-func1.c
no-plt-main1.c
no-plt.exp Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
nogot1.d
nogot1.s
nogot2.d
nogot2.s
pass.c
pass.out
pcrel8.d
pcrel8.s
pcrel16.d
pcrel16.s
pcrel16abs.d
pcrel16abs.s
pie1.d
pie1.s
plt2.dd ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
plt2.rd
plt2.s
plt-lib.c
plt-main1.c
plt-main1.rd
plt-main2.c
plt-main2.rd
plt-main3.c
plt-main3.rd
plt-main4.c
plt-main4.rd
plt-main5.c
plt-main-ibt.dd
plt-main.out
plt-main.rd
plt-pic2.dd ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
plt-pic.pd ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
plt-pic.s
plt-pie-ibt.dd
plt.pd ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
plt.s
pltgot-1.d
pltgot-1.s
pltgot-2.d
pltlib.s
pr12570a.d
pr12570a.s
pr12570b.d
pr12570b.s
pr12627.d
pr12627.s
pr12627.t
pr12718.d
pr12718.s
pr12921.d
pr12921.s
pr13302.d
pr13302.s
pr14215.d
pr14215.s
pr17057.d
pr17057.s
pr17306a.s
pr17306b.s
pr17689.out
pr17689.rd
pr17689a.c
pr17689a.t
pr17689b.S
pr17689now.rd
pr17689ver.rd
pr17709.rd
pr17709a.s
pr17709b.s
pr17827.rd
pr17935-1.d
pr17935-1.s
pr17935-2.d
pr17935-2.s
pr18801.s
pr18801a.d
pr18801b.d
pr18815.d
pr18815.s
pr18900.out
pr18900a.c
pr18900a.rd
pr18900b.c
pr18900b.rd
pr18900c.c
pr19031.out
pr19031a.c
pr19031b.S
pr19031c.c
pr19175.d
pr19175.s
pr19175.t
pr19319.dd
pr19319a.S
pr19319b.S
pr19539.d
pr19539.s
pr19539.t
pr19609-1.s
pr19609-1a.d
pr19609-1b.d
pr19609-1c.d
pr19609-1d.d
pr19609-1e.d
pr19609-1f.d
pr19609-1g.d
pr19609-1h.d
pr19609-1i.d
pr19609-2.s
pr19609-2a.d
pr19609-2b.d
pr19609-2c.d
pr19615.d
pr19615.s
pr19636-1.s
pr19636-1a.d
pr19636-1b.d
pr19636-1c.d
pr19636-1d.d ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
pr19636-1e.d
pr19636-1f.d
pr19636-1g.d
pr19636-1h.d
pr19636-1i.d
pr19636-1j.d
pr19636-1k.d
pr19636-1l.d ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
pr19636-2.s
pr19636-2a.d
pr19636-2b.d
pr19636-2c.d ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
pr19636-2d.d
pr19636-2e.d
pr19636-3.s
pr19636-3a.d
pr19636-3b.d
pr19636-3c.d
pr19636-3d.d
pr19636-3e.d
pr19636-3f.d
pr19636-3g.d
pr19636-3h.d
pr19636-3i.d
pr19636-4.s
pr19636-4a.d
pr19636-4b.d
pr19636-4c.d
pr19636-4d.d
pr19645.d
pr19645.s
pr19704.out
pr19704a.c
pr19704b.c
pr19827.rd
pr19827a.S
pr19827b.S
pr19939.s
pr19939a.d
pr19939b.d
pr20117.d
pr20117.s
pr20244-1.s
pr20244-1a.d
pr20244-1b.d
pr20244-1c.d
pr20244-2.s
pr20244-2a.d
pr20244-2b.d
pr20244-2c.d
pr20244-2d.d
pr20244-3a.c
pr20244-3b.S
pr20244-3c.S
pr20244-3d.S
pr20244-4.s
pr20244-4a.d
pr20244-4b.d
pr20244-4c.d
pr20253-1a.c
pr20253-1b.S
pr20253-1c.S
pr20253-1d.S
pr20253-2a.c
pr20253-2b.S
pr20253-2c.S
pr20253-2d.S
pr20253-3.d
pr20253-3.s
pr20253-4.s
pr20253-4a.d
pr20253-4b.d
pr20253-4c.d
pr20253-5.d
pr20253-5.s
pr20515.d
pr20515.s
pr20830.d x86: avoid attaching suffixes to unambiguous insns 2020-07-15 08:53:55 +02:00
pr20830.s
pr21168a.c
pr21168b.S
pr21884.d
pr21884.t
pr21997-1a.S
pr21997-1b.c
pr21997-1c.S
pr22001-1a.c
pr22001-1b.c
pr22001-1c.S
pr22115-1.s
pr22115-1a.d
pr22115-1b.d
pr22115-1c.d
pr22115-1d.d
pr22135.d
pr22135.s
pr22782.d
pr22782.s
pr22842a.c
pr22842b.S
pr22929.d
pr22929.s
pr23189.d
pr23189.s
pr23189.t
pr23194.d
pr23194.map
pr23194.s
pr23372a.d
pr23372a.s
pr23372b.d
pr23372b.s
pr23372c.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
pr23372c.s
pr23372d.d
pr23486a.d
pr23486b.d
pr23486c.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
pr23486d.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
pr23854.d
pr23854.s
pr23930.d
pr24276.dso
pr24276.warn
pr24322a.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
pr24322b.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
pr26018.d
pr26263.d x86: Update PR gas/26263 linker tests 2020-07-20 04:53:58 -07:00
pr26711-1.d x86: Properly merge -z ibt and -z shstk 2020-10-06 15:38:34 -07:00
pr26711-2.d x86: Properly merge -z ibt and -z shstk 2020-10-06 15:38:34 -07:00
pr26711-3.d x86: Properly merge -z ibt and -z shstk 2020-10-06 15:38:34 -07:00
pr26869.d elf: Set rel_from_abs to 1 for __ehdr_start 2020-11-13 15:44:47 -08:00
pr26869.s elf: Set rel_from_abs to 1 for __ehdr_start 2020-11-13 15:44:47 -08:00
pr27193.dd ld/elf: Ignore section symbols when matching linkonce with comdat 2021-01-17 20:01:30 -08:00
pr27193a.o.bz2 ld/elf: Ignore section symbols when matching linkonce with comdat 2021-01-17 20:01:30 -08:00
pr27193b.s ld/elf: Ignore section symbols when matching linkonce with comdat 2021-01-17 20:01:30 -08:00
property-1.r
property-1a.r x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-2.r
property-2a.r x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-3.r x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-3a.r x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-4.r x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-4a.r x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-5.r x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-5a.r x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-6.r
property-6a.c
property-6b.c
property-6c.S
property-7.r
property-7a.r x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-no-copy.S
property-stack.S
property-unsorted-1.S
property-unsorted-2.S
property-x86-1.S x86: Support GNU_PROPERTY_X86_ISA_1_V[234] marker 2020-10-09 05:13:26 -07:00
property-x86-2.S x86: Support GNU_PROPERTY_X86_ISA_1_V[234] marker 2020-10-09 05:13:26 -07:00
property-x86-3.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-3.s x86: Support GNU_PROPERTY_X86_ISA_1_V[234] marker 2020-10-09 05:13:26 -07:00
property-x86-4a.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-4a.s
property-x86-4b.d
property-x86-4b.s
property-x86-5.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-6.d x86: Support GNU_PROPERTY_X86_ISA_1_V[234] marker 2020-10-09 05:13:26 -07:00
property-x86-cet1.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-cet2a.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-cet2b.d
property-x86-cet3a.d
property-x86-cet3b.d
property-x86-cet4a.d
property-x86-cet4b.d
property-x86-cet5a.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-cet5b.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-cet6.d
property-x86-empty.s
property-x86-ibt1a.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-ibt1b.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-ibt2.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-ibt3a.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-ibt3b.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-ibt4.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-ibt5.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-ibt.s
property-x86-isa1.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-isa2.d x86: Support GNU_PROPERTY_X86_ISA_1_V[234] marker 2020-10-09 05:13:26 -07:00
property-x86-isa3.d x86: Support GNU_PROPERTY_X86_ISA_1_V[234] marker 2020-10-09 05:13:26 -07:00
property-x86-isa4.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-shstk1a.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-shstk1b.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-shstk2.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-shstk3a.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-shstk3b.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-shstk4.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-shstk5.d x86: Support GNU_PROPERTY_X86_ISA_1_BASELINE marker 2020-10-30 06:50:10 -07:00
property-x86-shstk.s
protected1.d
protected1.s
protected2.d
protected2.s
protected3.d
protected3.s
protected4.d
protected4.s
protected5.d
protected5.s
protected6.s
protected6a.d
protected6b.d
protected7.d
protected7.s
reloc.d
reloc.s
report-reloc-1.d ld/x86: Add -z report-relative-reloc 2021-01-15 18:07:07 -08:00
report-reloc-1.l ld/x86: Add -z report-relative-reloc 2021-01-15 18:07:07 -08:00
report-reloc-1.s ld/x86: Add -z report-relative-reloc 2021-01-15 18:07:07 -08:00
start.s
tls-def1.c
tls-gd1.S
tls-ld1.S
tls-main1.c
tls.exp Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
tlsbin2.dd
tlsbin2.rd ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
tlsbin2.sd
tlsbin2.td
tlsbin.dd
tlsbin.rd ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
tlsbin.s
tlsbin.sd
tlsbin.td
tlsbindesc.dd
tlsbindesc.rd ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
tlsbindesc.s
tlsbindesc.sd
tlsbindesc.td
tlsbinpic2.s
tlsbinpic.s
tlsdesc1a.c
tlsdesc1b.c
tlsdesc2.d
tlsdesc.dd
tlsdesc.rd ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
tlsdesc.s
tlsdesc.sd
tlsdesc.td
tlsg.s
tlsg.sd
tlsgd1.dd
tlsgd1.s
tlsgd2.d
tlsgd2.s
tlsgd3.dd
tlsgd3.s
tlsgd4.d
tlsgd4.s
tlsgdesc.dd
tlsgdesc.rd ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
tlsgdesc.s
tlsie1.dd
tlsie1.s
tlsie2.d
tlsie2.s
tlsie3.d
tlsie3.s
tlsie4.d
tlsie4.s
tlsie5.d
tlsie5.s
tlsindntpoff.dd
tlsindntpoff.s
tlsld1.dd
tlsld1.s
tlsld2.dd
tlsld2.s
tlslib.s
tlsnopic1.s
tlsnopic2.s
tlsnopic.dd
tlsnopic.rd ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
tlsnopic.sd
tlspic1.s
tlspic2.dd
tlspic2.rd ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
tlspic2.s
tlspic2.sd
tlspic2.td
tlspic3.s
tlspic.dd
tlspic.rd ELF: Don't generate unused section symbols 2021-01-07 06:46:55 -08:00
tlspic.sd
tlspic.td
tlspie1.d
tlspie1.s
tlspie2.d
tlspie2.s
tlspie3.s
tlspie3a.d
tlspie3b.d
tlspie3c.d
undefweak.s
undefweaka.d
undefweakb.d
vxworks1-lib.dd x86: avoid attaching suffixes to unambiguous insns 2020-07-15 08:53:55 +02:00
vxworks1-lib.nd
vxworks1-lib.rd
vxworks1-lib.s
vxworks1-lib.td
vxworks1-static.d
vxworks1.dd x86: avoid attaching suffixes to unambiguous insns 2020-07-15 08:53:55 +02:00
vxworks1.ld
vxworks1.rd Re: Change readelf's display of symbol names 2020-07-03 17:15:16 +09:30
vxworks1.s
vxworks2-static.sd
vxworks2.s
vxworks2.sd
warn1.d
warn1.s
weakundef1.c
zero.s