mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-24 12:23:31 +08:00
PR ld/20828: Relax symbol ordering in tests
Complement commit 81ff47b3a546 ("PR ld/20828: Fix linker script symbols wrongly forced local with section GC") and make tests check for the presence of global `_fdata' and `_edata' symbols separately, removing any dependency on symbol table ordering for tests to succeed and removing: FAIL: PR ld/20828 dynamic symbols with section GC (auxiliary shared library) FAIL: PR ld/20828 dynamic symbols with section GC (plain) failures with the `x86_64-solaris2' target, which has additional intervening entries: Symbol table '.dynsym' contains 6 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND 1: 0000000000000000 0 NOTYPE GLOBAL DEFAULT 1 _fdata 2: 0000000000000000 0 OBJECT GLOBAL DEFAULT 1 _DYNAMIC 3: 0000000000000000 0 OBJECT GLOBAL DEFAULT ABS _PROCEDURE_LINKAGE_TABLE_ 4: 0000000000000000 0 NOTYPE GLOBAL DEFAULT 1 _edata 5: 00000000000001b8 0 OBJECT GLOBAL DEFAULT 4 _GLOBAL_OFFSET_TABLE_ Rename dump pattern files accordingly for consistency. ld/ PR ld/20828 * testsuite/ld-elf/pr20828-1.sd: Remove test. * testsuite/ld-elf/pr20828-a.sd: New test. * testsuite/ld-elf/pr20828-2a.sd: Rename test to... * testsuite/ld-elf/pr20828-b.sd: ... this. * testsuite/ld-elf/pr20828-2b.sd: Rename test to... * testsuite/ld-elf/pr20828-c.sd: ... this. * testsuite/ld-elf/shared.exp: Adjust accordingly.
This commit is contained in:
11
ld/ChangeLog
11
ld/ChangeLog
@ -1,3 +1,14 @@
|
||||
2017-01-23 Maciej W. Rozycki <macro@imgtec.com>
|
||||
|
||||
PR ld/20828
|
||||
* testsuite/ld-elf/pr20828-1.sd: Remove test.
|
||||
* testsuite/ld-elf/pr20828-a.sd: New test.
|
||||
* testsuite/ld-elf/pr20828-2a.sd: Rename test to...
|
||||
* testsuite/ld-elf/pr20828-b.sd: ... this.
|
||||
* testsuite/ld-elf/pr20828-2b.sd: Rename test to...
|
||||
* testsuite/ld-elf/pr20828-c.sd: ... this.
|
||||
* testsuite/ld-elf/shared.exp: Adjust accordingly.
|
||||
|
||||
2017-01-23 Jiong Wang <jiong.wang@arm.com>
|
||||
|
||||
* testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Append
|
||||
|
@ -1,12 +1,9 @@
|
||||
# Make sure symbols are global rather than local in the dynamic symbol table,
|
||||
# Make sure `_fdata' is global rather than local in the dynamic symbol table,
|
||||
# e.g.:
|
||||
# Num: Value Size Type Bind Vis Ndx Name
|
||||
# 1: 00000000 0 NOTYPE GLOBAL DEFAULT 1 _fdata
|
||||
# 2: 00000000 0 NOTYPE GLOBAL DEFAULT 1 _edata
|
||||
# vs:
|
||||
# 1: 00000000 0 NOTYPE LOCAL DEFAULT 1 _fdata
|
||||
# 2: 00000000 0 NOTYPE LOCAL DEFAULT 1 _edata
|
||||
#...
|
||||
*[0-9]+: +[0-9a-f]+ +0 +NOTYPE +GLOBAL +DEFAULT +[0-9]+ +_fdata
|
||||
*[0-9]+: +[0-9a-f]+ +0 +NOTYPE +GLOBAL +DEFAULT +[0-9]+ +_edata
|
||||
#pass
|
@ -57,14 +57,16 @@ if { [check_gc_sections_available] } {
|
||||
(auxiliary shared library)" \
|
||||
"$LFLAGS -shared --gc-sections -T pr20828.ld" "" "$AFLAGS_PIC" \
|
||||
{pr20828.s} \
|
||||
{{readelf --dyn-syms pr20828-1.sd}} \
|
||||
{{readelf --dyn-syms pr20828-a.sd} \
|
||||
{readelf --dyn-syms pr20828-b.sd}} \
|
||||
"libpr20828.so"] \
|
||||
[list \
|
||||
"PR ld/20828 dynamic symbols with section GC (plain)" \
|
||||
"$LFLAGS -shared --gc-sections -T pr20828.ld" \
|
||||
"tmpdir/libpr20828.so" "$AFLAGS_PIC" \
|
||||
{pr20828.s} \
|
||||
{{readelf --dyn-syms pr20828-1.sd}} \
|
||||
{{readelf --dyn-syms pr20828-a.sd} \
|
||||
{readelf --dyn-syms pr20828-b.sd}} \
|
||||
"pr20828-1.so"] \
|
||||
[list \
|
||||
"PR ld/20828 dynamic symbols with section GC (version script)" \
|
||||
@ -73,8 +75,8 @@ if { [check_gc_sections_available] } {
|
||||
"tmpdir/libpr20828.so" \
|
||||
"$AFLAGS_PIC" \
|
||||
{pr20828.s} \
|
||||
{{readelf --dyn-syms pr20828-2a.sd} \
|
||||
{readelf --dyn-syms pr20828-2b.sd}} \
|
||||
{{readelf --dyn-syms pr20828-b.sd} \
|
||||
{readelf --dyn-syms pr20828-c.sd}} \
|
||||
"pr20828-2.so"]]
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user