diff options
author | Alan Modra <amodra@gmail.com> | 2012-06-06 10:50:18 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2012-06-06 10:50:18 +0000 |
commit | ffbc01ccf0e0c923db2ffa3a6b3ca6b4f6d08ac5 (patch) | |
tree | faa1a304878cc3a84bbb519e71b76a371975937e /ld/testsuite/ld-x86-64 | |
parent | 7b2fe205fd75672d5925fe63f3a0896fa3168aaf (diff) | |
download | gdb-ffbc01ccf0e0c923db2ffa3a6b3ca6b4f6d08ac5.zip gdb-ffbc01ccf0e0c923db2ffa3a6b3ca6b4f6d08ac5.tar.gz gdb-ffbc01ccf0e0c923db2ffa3a6b3ca6b4f6d08ac5.tar.bz2 |
bfd/
* elflink.c (elf_link_input_bfd): Provide a file symbol for
each input file with local syms, if the input lacks such.
(bfd_elf_final_link): Add a file symbol to mark end of locals
for which we can associate with input files.
(struct elf_final_link_info): Add filesym_count field.
(struct elf_outext_info): Add need_second_pass and second_pass.
(elf_link_output_extsym): Detect symbols defined in the output
file, emit them on second pass over locals.
ld/testsuite/
Update to suit added STT_FILE symbols.
Diffstat (limited to 'ld/testsuite/ld-x86-64')
-rw-r--r-- | ld/testsuite/ld-x86-64/ilp32-4-nacl.d | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/ilp32-4.d | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/pr12718.d | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/pr12921.d | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/split-by-file-nacl.rd | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/split-by-file.rd | 4 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/tlsbin.rd | 3 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/tlsbindesc.rd | 3 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/tlsdesc.rd | 8 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/tlspic.rd | 6 |
10 files changed, 26 insertions, 16 deletions
diff --git a/ld/testsuite/ld-x86-64/ilp32-4-nacl.d b/ld/testsuite/ld-x86-64/ilp32-4-nacl.d index 4de7e66..56188af 100644 --- a/ld/testsuite/ld-x86-64/ilp32-4-nacl.d +++ b/ld/testsuite/ld-x86-64/ilp32-4-nacl.d @@ -15,8 +15,8 @@ Section Headers: +\[ 4\] \.dynstr +STRTAB +10000140 +0+140 +0+19 +00 +A +0 +0 +1 +\[ 5\] \.dynamic +DYNAMIC +1001015c +0+15c +0+58 +08 +WA +4 +0 +4 +\[ 6\] \.shstrtab +STRTAB +0+ +0+10001 +0+40 +00 +0 +0 +1 - +\[ 7\] \.symtab +SYMTAB +0+0 +0+101ac +0+c0 +10 +8 +8 +4 - +\[ 8\] \.strtab +STRTAB +0+ 0+1026c 0+3f +00 +0 +0 +1 + +\[ 7\] \.symtab +SYMTAB +0+0 +[0-9a-f]+ +[0-9a-f]+ +10 +8 +[0-9] +4 + +\[ 8\] \.strtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +00 +0 +0 +1 Key to Flags: W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\), l \(large\) I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\) diff --git a/ld/testsuite/ld-x86-64/ilp32-4.d b/ld/testsuite/ld-x86-64/ilp32-4.d index 8c2d22c..54041f1 100644 --- a/ld/testsuite/ld-x86-64/ilp32-4.d +++ b/ld/testsuite/ld-x86-64/ilp32-4.d @@ -14,8 +14,8 @@ Section Headers: \[ 4\] .text PROGBITS 0000013c 00013c 000001 00 AX 0 0 4 \[ 5\] .dynamic DYNAMIC 00200140 000140 000058 08 WA 3 0 4 \[ 6\] .shstrtab STRTAB 00000000 000198 000040 00 0 0 1 - \[ 7\] .symtab SYMTAB 00000000 000340 0000c0 10 8 8 4 - \[ 8\] .strtab STRTAB 00000000 000400 00003f 00 0 0 1 + \[ 7\] .symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 8 [0-9] 4 + \[ 8\] .strtab STRTAB 00000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 Key to Flags: W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\), l \(large\) I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\) diff --git a/ld/testsuite/ld-x86-64/pr12718.d b/ld/testsuite/ld-x86-64/pr12718.d index a5e904e..1f1a16e 100644 --- a/ld/testsuite/ld-x86-64/pr12718.d +++ b/ld/testsuite/ld-x86-64/pr12718.d @@ -10,7 +10,7 @@ Section Headers: +\[ 0\] +NULL +0+ +0+ +0+ +0+ +0 +0 +0 +\[ 1\] +.text +PROGBITS +[0-9a-f]+ +[0-9a-f]+ +000006 00 +AX +0 +0 +4 +\[ 2\] +.shstrtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +0+ +0 +0 +1 - +\[ 3\] +.symtab +SYMTAB +0+ +[0-9a-f]+ +[0-9a-f]+ 18 +4 +2 +8 + +\[ 3\] +.symtab +SYMTAB +0+ +[0-9a-f]+ +[0-9a-f]+ 18 +4 +[0-9] +8 +\[ 4\] +.strtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ 00 +0 +0 +1 Key to Flags: W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\), l \(large\) diff --git a/ld/testsuite/ld-x86-64/pr12921.d b/ld/testsuite/ld-x86-64/pr12921.d index 5c9537b..61939e4 100644 --- a/ld/testsuite/ld-x86-64/pr12921.d +++ b/ld/testsuite/ld-x86-64/pr12921.d @@ -12,8 +12,8 @@ Section Headers: +\[ 2\] .data +PROGBITS +[0-9a-f]+ +[0-9a-f]+000 +0+28 +00 +WA +0 +0 +4096 +\[ 3\] .bss +NOBITS +[0-9a-f]+ +[0-9a-f]+028 +0+10000 +00 +WA +0 +0 +4096 +\[ 4\] .shstrtab +STRTAB +0+ +[0-9a-f]+ +0+2c +00 +0 +0 +1 - +\[ 5\] .symtab +SYMTAB +0+ +[0-9a-f]+ +0+120 +18 +6 +6 +8 - +\[ 6\] .strtab +STRTAB +0+ +[0-9a-f]+ +0+37 +00 +0 +0 +1 + +\[ 5\] .symtab +SYMTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +18 +6 +[0-9] +8 + +\[ 6\] .strtab +STRTAB +0+ +[0-9a-f]+ +[0-9a-f]+ +00 +0 +0 +1 Key to Flags: W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\), l \(large\) I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\) diff --git a/ld/testsuite/ld-x86-64/split-by-file-nacl.rd b/ld/testsuite/ld-x86-64/split-by-file-nacl.rd index 7c63aaa..897ab0f 100644 --- a/ld/testsuite/ld-x86-64/split-by-file-nacl.rd +++ b/ld/testsuite/ld-x86-64/split-by-file-nacl.rd @@ -9,8 +9,8 @@ Section Headers: \[ 4\] .bss NOBITS 0000000000000000 000044 000000 00 WA 0 0 4 \[ 5\] .foo.0 PROGBITS 0000000000000003 000044 000003 00 AXl 0 0 1 \[ 6\] .shstrtab STRTAB 0000000000000000 000047 000038 00 0 0 1 - \[ 7\] .symtab SYMTAB 0000000000000000 0002c0 0000d8 18 8 6 8 - \[ 8\] .strtab STRTAB 0000000000000000 000398 000016 00 0 0 1 + \[ 7\] .symtab SYMTAB 0000000000000000 [0-9a-f]+ [0-9a-f]+ 18 8 [0-9] 8 + \[ 8\] .strtab STRTAB 0000000000000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 Key to Flags: W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\), l \(large\) I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\) diff --git a/ld/testsuite/ld-x86-64/split-by-file.rd b/ld/testsuite/ld-x86-64/split-by-file.rd index 7c63aaa..897ab0f 100644 --- a/ld/testsuite/ld-x86-64/split-by-file.rd +++ b/ld/testsuite/ld-x86-64/split-by-file.rd @@ -9,8 +9,8 @@ Section Headers: \[ 4\] .bss NOBITS 0000000000000000 000044 000000 00 WA 0 0 4 \[ 5\] .foo.0 PROGBITS 0000000000000003 000044 000003 00 AXl 0 0 1 \[ 6\] .shstrtab STRTAB 0000000000000000 000047 000038 00 0 0 1 - \[ 7\] .symtab SYMTAB 0000000000000000 0002c0 0000d8 18 8 6 8 - \[ 8\] .strtab STRTAB 0000000000000000 000398 000016 00 0 0 1 + \[ 7\] .symtab SYMTAB 0000000000000000 [0-9a-f]+ [0-9a-f]+ 18 8 [0-9] 8 + \[ 8\] .strtab STRTAB 0000000000000000 [0-9a-f]+ [0-9a-f]+ 00 0 0 1 Key to Flags: W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\), l \(large\) I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\) diff --git a/ld/testsuite/ld-x86-64/tlsbin.rd b/ld/testsuite/ld-x86-64/tlsbin.rd index 9bfa3cc..a246a35 100644 --- a/ld/testsuite/ld-x86-64/tlsbin.rd +++ b/ld/testsuite/ld-x86-64/tlsbin.rd @@ -93,6 +93,7 @@ Symbol table '\.symtab' contains [0-9]+ entries: .* SECTION +LOCAL +DEFAULT +11 * .* SECTION +LOCAL +DEFAULT +12 * .* SECTION +LOCAL +DEFAULT +13 * +.* FILE +LOCAL +DEFAULT +ABS .* .* TLS +LOCAL +DEFAULT +9 sl1 .* TLS +LOCAL +DEFAULT +9 sl2 .* TLS +LOCAL +DEFAULT +9 sl3 @@ -101,6 +102,7 @@ Symbol table '\.symtab' contains [0-9]+ entries: .* TLS +LOCAL +DEFAULT +9 sl6 .* TLS +LOCAL +DEFAULT +9 sl7 .* TLS +LOCAL +DEFAULT +9 sl8 +.* FILE +LOCAL +DEFAULT +ABS .* .* TLS +LOCAL +DEFAULT +10 bl1 .* TLS +LOCAL +DEFAULT +10 bl2 .* TLS +LOCAL +DEFAULT +10 bl3 @@ -109,6 +111,7 @@ Symbol table '\.symtab' contains [0-9]+ entries: .* TLS +LOCAL +DEFAULT +10 bl6 .* TLS +LOCAL +DEFAULT +10 bl7 .* TLS +LOCAL +DEFAULT +10 bl8 +.* FILE +LOCAL +DEFAULT +ABS .* .* OBJECT +LOCAL +DEFAULT +11 _DYNAMIC .* OBJECT +LOCAL +DEFAULT +13 _GLOBAL_OFFSET_TABLE_ .* TLS +GLOBAL +DEFAULT +9 sg8 diff --git a/ld/testsuite/ld-x86-64/tlsbindesc.rd b/ld/testsuite/ld-x86-64/tlsbindesc.rd index 3527495..633690e 100644 --- a/ld/testsuite/ld-x86-64/tlsbindesc.rd +++ b/ld/testsuite/ld-x86-64/tlsbindesc.rd @@ -84,6 +84,7 @@ Symbol table '\.symtab' contains [0-9]+ entries: +[0-9]+: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +9 * +[0-9]+: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +10 * +[0-9]+: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +11 * +.* FILE +LOCAL +DEFAULT +ABS .* +[0-9]+: 0+20 +0 +TLS +LOCAL +DEFAULT +7 sl1 +[0-9]+: 0+24 +0 +TLS +LOCAL +DEFAULT +7 sl2 +[0-9]+: 0+28 +0 +TLS +LOCAL +DEFAULT +7 sl3 @@ -92,6 +93,7 @@ Symbol table '\.symtab' contains [0-9]+ entries: +[0-9]+: 0+34 +0 +TLS +LOCAL +DEFAULT +7 sl6 +[0-9]+: 0+38 +0 +TLS +LOCAL +DEFAULT +7 sl7 +[0-9]+: 0+3c +0 +TLS +LOCAL +DEFAULT +7 sl8 +.* FILE +LOCAL +DEFAULT +ABS .* +[0-9]+: 0+80 +0 +TLS +LOCAL +DEFAULT +8 bl1 +[0-9]+: 0+84 +0 +TLS +LOCAL +DEFAULT +8 bl2 +[0-9]+: 0+88 +0 +TLS +LOCAL +DEFAULT +8 bl3 @@ -100,6 +102,7 @@ Symbol table '\.symtab' contains [0-9]+ entries: +[0-9]+: 0+94 +0 +TLS +LOCAL +DEFAULT +8 bl6 +[0-9]+: 0+98 +0 +TLS +LOCAL +DEFAULT +8 bl7 +[0-9]+: 0+9c +0 +TLS +LOCAL +DEFAULT +8 bl8 +.* FILE +LOCAL +DEFAULT +ABS .* +[0-9]+: 0+a0 +0 +TLS +LOCAL +DEFAULT +7 _TLS_MODULE_BASE_ +[0-9]+: 0+601260 +0 +OBJECT +LOCAL +DEFAULT +9 _DYNAMIC +[0-9]+: 0+601380 +0 +OBJECT +LOCAL +DEFAULT +11 _GLOBAL_OFFSET_TABLE_ diff --git a/ld/testsuite/ld-x86-64/tlsdesc.rd b/ld/testsuite/ld-x86-64/tlsdesc.rd index ba5c9d9..f9497de 100644 --- a/ld/testsuite/ld-x86-64/tlsdesc.rd +++ b/ld/testsuite/ld-x86-64/tlsdesc.rd @@ -119,6 +119,7 @@ Symbol table '\.symtab' contains [0-9]+ entries: +[0-9]+: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +10 * +[0-9]+: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +11 * +[0-9]+: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +12 * +.* FILE +LOCAL +DEFAULT +ABS .* +[0-9]+: 0+20 +0 +TLS +LOCAL +DEFAULT +8 sl1 +[0-9]+: 0+24 +0 +TLS +LOCAL +DEFAULT +8 sl2 +[0-9]+: 0+28 +0 +TLS +LOCAL +DEFAULT +8 sl3 @@ -128,8 +129,6 @@ Symbol table '\.symtab' contains [0-9]+ entries: +[0-9]+: 0+38 +0 +TLS +LOCAL +DEFAULT +8 sl7 +[0-9]+: 0+3c +0 +TLS +LOCAL +DEFAULT +8 sl8 +[0-9]+: 0+60 +0 +TLS +LOCAL +DEFAULT +9 sH1 - +[0-9]+: 0+ +0 +TLS +LOCAL +DEFAULT +8 _TLS_MODULE_BASE_ - +[0-9]+: 0+2011b8 +0 +OBJECT +LOCAL +DEFAULT +10 _DYNAMIC +[0-9]+: 0+48 +0 +TLS +LOCAL +DEFAULT +8 sh3 +[0-9]+: 0+64 +0 +TLS +LOCAL +DEFAULT +9 sH2 +[0-9]+: 0+78 +0 +TLS +LOCAL +DEFAULT +9 sH7 @@ -143,9 +142,12 @@ Symbol table '\.symtab' contains [0-9]+ entries: +[0-9]+: 0+74 +0 +TLS +LOCAL +DEFAULT +9 sH6 +[0-9]+: 0+7c +0 +TLS +LOCAL +DEFAULT +9 sH8 +[0-9]+: 0+40 +0 +TLS +LOCAL +DEFAULT +8 sh1 - +[0-9]+: 0+201350 +0 +OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_ +[0-9]+: 0+44 +0 +TLS +LOCAL +DEFAULT +8 sh2 +[0-9]+: 0+54 +0 +TLS +LOCAL +DEFAULT +8 sh6 +.* FILE +LOCAL +DEFAULT +ABS .* + +[0-9]+: 0+ +0 +TLS +LOCAL +DEFAULT +8 _TLS_MODULE_BASE_ + +[0-9]+: 0+2011b8 +0 +OBJECT +LOCAL +DEFAULT +10 _DYNAMIC + +[0-9]+: 0+201350 +0 +OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_ +[0-9]+: 0+1c +0 +TLS +GLOBAL +DEFAULT +8 sg8 +[0-9]+: 0+8 +0 +TLS +GLOBAL +DEFAULT +8 sg3 +[0-9]+: 0+c +0 +TLS +GLOBAL +DEFAULT +8 sg4 diff --git a/ld/testsuite/ld-x86-64/tlspic.rd b/ld/testsuite/ld-x86-64/tlspic.rd index 72c66bf..f2cd8e8 100644 --- a/ld/testsuite/ld-x86-64/tlspic.rd +++ b/ld/testsuite/ld-x86-64/tlspic.rd @@ -103,6 +103,7 @@ Symbol table '\.symtab' contains [0-9]+ entries: .* SECTION +LOCAL +DEFAULT +10 * .* SECTION +LOCAL +DEFAULT +11 * .* SECTION +LOCAL +DEFAULT +12 * +.* FILE +LOCAL +DEFAULT +ABS .* .* TLS +LOCAL +DEFAULT +8 sl1 .* TLS +LOCAL +DEFAULT +8 sl2 .* TLS +LOCAL +DEFAULT +8 sl3 @@ -112,7 +113,6 @@ Symbol table '\.symtab' contains [0-9]+ entries: .* TLS +LOCAL +DEFAULT +8 sl7 .* TLS +LOCAL +DEFAULT +8 sl8 .* TLS +LOCAL +DEFAULT +9 sH1 -.* OBJECT +LOCAL +DEFAULT +10 _DYNAMIC .* TLS +LOCAL +DEFAULT +8 sh3 .* TLS +LOCAL +DEFAULT +9 sH2 .* TLS +LOCAL +DEFAULT +9 sH7 @@ -126,9 +126,11 @@ Symbol table '\.symtab' contains [0-9]+ entries: .* TLS +LOCAL +DEFAULT +9 sH6 .* TLS +LOCAL +DEFAULT +9 sH8 .* TLS +LOCAL +DEFAULT +8 sh1 -.* OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_ .* TLS +LOCAL +DEFAULT +8 sh2 .* TLS +LOCAL +DEFAULT +8 sh6 +.* FILE +LOCAL +DEFAULT +ABS .* +.* OBJECT +LOCAL +DEFAULT +10 _DYNAMIC +.* OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_ .* TLS +GLOBAL +DEFAULT +8 sg8 .* TLS +GLOBAL +DEFAULT +8 sg3 .* TLS +GLOBAL +DEFAULT +8 sg4 |