From 260bcd09bfb98ebc5d8f0eb564edca21872e9f7f Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Tue, 17 Dec 2019 17:46:04 +1030 Subject: Accept mips-sgi-irix output in a few ld tests mips-sgi-irix gas emits STT_OBJECT symbols where other assemblers would use STT_NOTYPE. See mips_frob_symbol in gas/config/tc-mips.c. Also, the section of some dynamic symbols is set to SHN_MIPS_TEXT or SHN_MIPS_DATA. See _bfd_mips_elf_finish_dynamic_symbol in bfd/elfxx-mips.c. These differences are visible in readelf output and cause some tests to fail for no other good reason. The patch fixes the following fails and removes an xfail. FAIL: ld-elf/pr23591 FAIL: PROVIDE_HIDDEN test (auxiliary shared object) FAIL: PR ld/21233 dynamic symbols with section GC (auxiliary shared library) * testsuite/ld-elf/pr21233-l.sd: Accept OBJECT for type and PRC for section of symbols. * testsuite/ld-elf/pr23591.d: Likewise. * testsuite/ld-elf/provide-hidden-s.nd: Likewise. * testsuite/ld-mips-elf/start.s: Make symbols function type. * testsuite/ld-mips-elf/hash2.d: Adjust. Don't xfail irix. --- ld/ChangeLog | 9 +++++++++ ld/testsuite/ld-elf/pr21233-l.sd | 2 +- ld/testsuite/ld-elf/pr23591.d | 2 +- ld/testsuite/ld-elf/provide-hidden-s.nd | 4 ++-- ld/testsuite/ld-mips-elf/hash2.d | 9 ++++----- ld/testsuite/ld-mips-elf/start.s | 13 +++++++++---- 6 files changed, 26 insertions(+), 13 deletions(-) (limited to 'ld') diff --git a/ld/ChangeLog b/ld/ChangeLog index f23d70b..8a38d86 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,5 +1,14 @@ 2019-12-17 Alan Modra + * testsuite/ld-elf/pr21233-l.sd: Accept OBJECT for type and + PRC for section of symbols. + * testsuite/ld-elf/pr23591.d: Likewise. + * testsuite/ld-elf/provide-hidden-s.nd: Likewise. + * testsuite/ld-mips-elf/start.s: Make symbols function type. + * testsuite/ld-mips-elf/hash2.d: Adjust. Don't xfail irix. + +2019-12-17 Alan Modra + * emulparams/tic80coff.sh: Delete file. * scripttempl/tic80coff.sc: Delete file. * configure.tgt: Remove tic80 support. diff --git a/ld/testsuite/ld-elf/pr21233-l.sd b/ld/testsuite/ld-elf/pr21233-l.sd index 724fdd4..c7e56e3 100644 --- a/ld/testsuite/ld-elf/pr21233-l.sd +++ b/ld/testsuite/ld-elf/pr21233-l.sd @@ -2,5 +2,5 @@ # Num: Value Size Type Bind Vis Ndx Name # 1: 00000000 1 OBJECT GLOBAL DEFAULT 5 bar #... - *[0-9]+: +[0-9a-f]+ +1 +OBJECT +GLOBAL +DEFAULT +[0-9]+ +bar + *[0-9]+: +[0-9a-f]+ +1 +OBJECT +GLOBAL +DEFAULT +([0-9]+|PRC\[0xff02\]) +bar #pass diff --git a/ld/testsuite/ld-elf/pr23591.d b/ld/testsuite/ld-elf/pr23591.d index e5a7475..c9cfdfa 100644 --- a/ld/testsuite/ld-elf/pr23591.d +++ b/ld/testsuite/ld-elf/pr23591.d @@ -8,5 +8,5 @@ # relocations in read-only sections. #... - +[0-9]+: +[a-f0-9]+ +0 +NOTYPE +(GLOBAL +HIDDEN|LOCAL +DEFAULT) +[0-9]+ +___?start___sancov_cntrs + +[0-9]+: +[a-f0-9]+ +0 +(NOTYPE|OBJECT) +(GLOBAL +HIDDEN|LOCAL +DEFAULT) +[0-9]+ +___?start___sancov_cntrs #pass diff --git a/ld/testsuite/ld-elf/provide-hidden-s.nd b/ld/testsuite/ld-elf/provide-hidden-s.nd index 4fd2cc5..96ce725 100644 --- a/ld/testsuite/ld-elf/provide-hidden-s.nd +++ b/ld/testsuite/ld-elf/provide-hidden-s.nd @@ -1,8 +1,8 @@ Symbol table '\.dynsym' contains [0-9]+ entries: #... - *[0-9]+: 0*12300000 +0 (?:NOTYPE|OBJECT) +GLOBAL +DEFAULT +[0-9]+ foo + *[0-9]+: 0*12300000 +0 (?:NOTYPE|OBJECT) +GLOBAL +DEFAULT +([0-9]+|PRC\[0xff02\]) foo #... Symbol table '\.symtab' contains [0-9]+ entries: #... - *[0-9]+: 0*12300000 +0 (?:NOTYPE|OBJECT) +GLOBAL +DEFAULT +[0-9]+ foo + *[0-9]+: 0*12300000 +0 (?:NOTYPE|OBJECT) +GLOBAL +DEFAULT +([0-9]+|PRC\[0xff02\]) foo #pass diff --git a/ld/testsuite/ld-mips-elf/hash2.d b/ld/testsuite/ld-mips-elf/hash2.d index 79fda3c..122edb8 100644 --- a/ld/testsuite/ld-mips-elf/hash2.d +++ b/ld/testsuite/ld-mips-elf/hash2.d @@ -2,16 +2,15 @@ #readelf: -d -s -D #ld: -shared --hash-style=gnu #target: [check_shared_lib_support] -#xfail: mips*-*-irix* #... +0x[0-9a-z]+ +\(MIPS_XHASH\) +0x[0-9a-z]+ #... - +[0-9]+ +[0-9]+: +[0-9a-f]+ +[0-9]+ +NOTYPE +GLOBAL +DEFAULT +[1-9] _start + +[0-9]+ +[0-9]+: +[0-9a-f]+ +[0-9]+ +FUNC +GLOBAL +DEFAULT +([1-9]|PRC) _start #... - +[0-9]+ +[0-9]+: +[0-9a-f]+ +[0-9]+ +NOTYPE +GLOBAL +DEFAULT +[1-9] main + +[0-9]+ +[0-9]+: +[0-9a-f]+ +[0-9]+ +FUNC +GLOBAL +DEFAULT +([1-9]|PRC) main #... - +[0-9]+ +[0-9]+: +[0-9a-f]+ +[0-9]+ +NOTYPE +GLOBAL +DEFAULT +[1-9] start + +[0-9]+ +[0-9]+: +[0-9a-f]+ +[0-9]+ +FUNC +GLOBAL +DEFAULT +([1-9]|PRC) start #... - +[0-9]+ +[0-9]+: +[0-9a-f]+ +[0-9]+ +NOTYPE +GLOBAL +DEFAULT +[1-9] __start + +[0-9]+ +[0-9]+: +[0-9a-f]+ +[0-9]+ +FUNC +GLOBAL +DEFAULT +([1-9]|PRC) __start #... diff --git a/ld/testsuite/ld-mips-elf/start.s b/ld/testsuite/ld-mips-elf/start.s index ee26ab3..b252f79 100644 --- a/ld/testsuite/ld-mips-elf/start.s +++ b/ld/testsuite/ld-mips-elf/start.s @@ -1,12 +1,17 @@ .text - .globl start + .globl start + .type start, @function start: - .globl _start + .globl _start + .type _start, @function _start: - .globl __start + .globl __start + .type __start, @function __start: - .globl main + .globl main + .type main, @function main: .globl _main + .type _main, @function _main: .dc.a 0 -- cgit v1.1