aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-x86-64
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2006-10-17 13:41:49 +0000
committerAlan Modra <amodra@gmail.com>2006-10-17 13:41:49 +0000
commit74541ad4c01323646d5bebe7ff10828f84af0f49 (patch)
tree290813ab87157e643bf32d7271cecb1dc394179d /ld/testsuite/ld-x86-64
parent21643204152d14c5e9c32a56ef6dfd1b4067cf28 (diff)
downloadgdb-74541ad4c01323646d5bebe7ff10828f84af0f49.zip
gdb-74541ad4c01323646d5bebe7ff10828f84af0f49.tar.gz
gdb-74541ad4c01323646d5bebe7ff10828f84af0f49.tar.bz2
bfd/
* elf-bfd.h (struct elf_link_hash_table): Reorder. Add text_index_section and data_index_section. (struct elf_backend_data): Add elf_backend_init_index_section. (_bfd_elf_init_1_index_section): Declare. (_bfd_elf_init_2_index_sections): Declare. * elfxx-target.h (elf_backend_init_index_section): Define. (elfNN_bed): Init new field. * elflink.c (_bfd_elf_link_omit_section_dynsym): Keep first tls section and text_index_section plus data_index_section. (_bfd_elf_link_renumber_dynsyms): Clear dynindx on omitted sections. (_bfd_elf_init_1_index_section): New function. (_bfd_elf_init_2_index_sections): New function. (bfd_elf_size_dynsym_hash_dynstr): Call elf_backend_init_index_section. (elf_link_input_bfd): When emitting relocs, use text_index_section and data_index_section for removed sections. * elf-m10300.c (elf_backend_omit_section_dynsym): Define. * elf32-i386.c: Likewise. * elf32-m32r.c: Likewise. * elf32-sh.c: Likewise. * elf32-xstormy16.c: Likewise. * elf32-xtensa.c: Likewise. * elf64-alpha.c: Likewise. * elf64-hppa.c: Likewise. * elf64-mmix.c: Likewise. * elf64-sh64.c: Likewise. * elfxx-ia64.c: Likewise. * elf32-arm.c (elf32_arm_final_link_relocate): Use text_index_section and data_index_section sym for relocs against sections with no dynamic section sym. (elf_backend_init_index_section): Define. * elf32-cris.c: Similarly. * elf32-hppa.c: Similarly. * elf32-i370.c: Similarly. * elf32-m68k.c: Similarly. * elf32-mips.c: Similarly. * elf32-ppc.c: Similarly. * elf32-s390.c: Similarly. * elf32-sparc.c: Similarly. * elf32-vax.c: Similarly. * elf64-mips.c: Similarly. * elf64-ppc.c: Similarly. * elf64-s390.c: Similarly. * elf64-sparc.c: Similarly. * elf64-x86-64.c: Similarly. * elfn32-mips.c: Similarly. * elfxx-mips.c: Similarly. * elfxx-sparc.c: Similarly. * linker.c (fix_syms): Base symbols in removed sections on previous section in preference to using absolute section. ld/ * ldlang.c (strip_excluded_output_sections): Do strip sections that define syms, but don't ignore them. * ld.texinfo (Output Section Discarding): Revise. * emultempl/armcoff.em (gld${EMULATION_NAME}_finish): Always call finish_default. ld/testsuite/ Update for section sym changes.
Diffstat (limited to 'ld/testsuite/ld-x86-64')
-rw-r--r--ld/testsuite/ld-x86-64/tlsdesc.pd16
-rw-r--r--ld/testsuite/ld-x86-64/tlsdesc.rd33
-rw-r--r--ld/testsuite/ld-x86-64/tlspic.rd1
3 files changed, 24 insertions, 26 deletions
diff --git a/ld/testsuite/ld-x86-64/tlsdesc.pd b/ld/testsuite/ld-x86-64/tlsdesc.pd
index cd22fd5..bf3bc2f 100644
--- a/ld/testsuite/ld-x86-64/tlsdesc.pd
+++ b/ld/testsuite/ld-x86-64/tlsdesc.pd
@@ -9,12 +9,12 @@
Disassembly of section .plt:
-0000000000000470 <.*@plt-0x10>:
- 470: ff 35 e2 0e 20 00 pushq 2100962\(%rip\) # 201358 <_GLOBAL_OFFSET_TABLE_\+0x8>
- 476: ff 25 e4 0e 20 00 jmpq \*2100964\(%rip\) # 201360 <_GLOBAL_OFFSET_TABLE_\+0x10>
- 47c: 0f 1f 40 00 nopl 0x0\(%rax\)
-0000000000000480 <.*@plt>:
- 480: ff 35 d2 0e 20 00 pushq 2100946\(%rip\) # 201358 <_GLOBAL_OFFSET_TABLE_\+0x8>
- 486: ff 25 bc 0e 20 00 jmpq \*2100924\(%rip\) # 201348 <_DYNAMIC\+0x190>
- 48c: 0f 1f 40 00 nopl 0x0\(%rax\)
+[0-9a-f]+ <.*@plt-0x10>:
+ [0-9a-f]+: ff 35 .. .. 20 00 pushq .*\(%rip\) # 201358 <_GLOBAL_OFFSET_TABLE_\+0x8>
+ [0-9a-f]+: ff 25 .. .. 20 00 jmpq \*.*\(%rip\) # 201360 <_GLOBAL_OFFSET_TABLE_\+0x10>
+ [0-9a-f]+: 0f 1f 40 00 nopl 0x0\(%rax\)
+[0-9a-f]+ <.*@plt>:
+ [0-9a-f]+: ff 35 .. .. 20 00 pushq .*\(%rip\) # 201358 <_GLOBAL_OFFSET_TABLE_\+0x8>
+ [0-9a-f]+: ff 25 .. .. 20 00 jmpq \*.*\(%rip\) # 201348 <_DYNAMIC\+0x190>
+ [0-9a-f]+: 0f 1f 40 00 nopl 0x0\(%rax\)
diff --git a/ld/testsuite/ld-x86-64/tlsdesc.rd b/ld/testsuite/ld-x86-64/tlsdesc.rd
index 14c632b..20aa075 100644
--- a/ld/testsuite/ld-x86-64/tlsdesc.rd
+++ b/ld/testsuite/ld-x86-64/tlsdesc.rd
@@ -15,7 +15,7 @@ Section Headers:
\[ 3\] .dynstr +.*
\[ 4\] .rela.dyn +.*
\[ 5\] .rela.plt +.*
- \[ 6\] .plt +PROGBITS +0+470 0+470 0+20 10 +AX +0 +0 +4
+ \[ 6\] .plt +PROGBITS +0+450 0+450 0+20 10 +AX +0 +0 +4
\[ 7\] .text +PROGBITS +0+1000 0+1000 0+154 00 +AX +0 +0 4096
\[ 8\] .tdata +PROGBITS +0+201154 0+1154 0+60 00 WAT +0 +0 +1
\[ 9\] .tbss +NOBITS +0+2011b4 0+11b4 0+20 00 WAT +0 +0 +1
@@ -59,7 +59,7 @@ Dynamic section at offset 0x[0-9a-f]+ contains 16 entries:
0x[0-9a-f]+ +\(PLTRELSZ\).*
0x[0-9a-f]+ +\(PLTREL\).*
0x[0-9a-f]+ +\(JMPREL\).*
- 0x[0-9a-f]+ +\(TLSDESC_PLT\) +0x480
+ 0x[0-9a-f]+ +\(TLSDESC_PLT\) +0x460
0x[0-9a-f]+ +\(TLSDESC_GOT\) +0x201348
0x[0-9a-f]+ +\(RELA\).*
0x[0-9a-f]+ +\(RELASZ\).*
@@ -69,29 +69,28 @@ Dynamic section at offset 0x[0-9a-f]+ contains 16 entries:
Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 8 entries:
+Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-0+201308 0+12 R_X86_64_TPOFF64 +0+24
-0+201310 0+12 R_X86_64_TPOFF64 +0+30
-0+201318 0+12 R_X86_64_TPOFF64 +0+64
-0+201328 0+12 R_X86_64_TPOFF64 +0+50
-0+201330 0+12 R_X86_64_TPOFF64 +0+70
-0+201340 0+12 R_X86_64_TPOFF64 +0+44
-0+201320 0+700000012 R_X86_64_TPOFF64 +0+10 sg5 \+ 0
-0+201338 0+b00000012 R_X86_64_TPOFF64 +0+4 sg2 \+ 0
+0+201308 [0-9a-f]+ R_X86_64_TPOFF64 +0+24
+0+201310 [0-9a-f]+ R_X86_64_TPOFF64 +0+30
+0+201318 [0-9a-f]+ R_X86_64_TPOFF64 +0+64
+0+201328 [0-9a-f]+ R_X86_64_TPOFF64 +0+50
+0+201330 [0-9a-f]+ R_X86_64_TPOFF64 +0+70
+0+201340 [0-9a-f]+ R_X86_64_TPOFF64 +0+44
+0+201320 [0-9a-f]+ R_X86_64_TPOFF64 +0+10 sg5 \+ 0
+0+201338 [0-9a-f]+ R_X86_64_TPOFF64 +0+4 sg2 \+ 0
Relocation section '.rela.plt' at offset 0x[0-9a-f]+ contains 5 entries:
+Offset +Info +Type +Symbol's Value Symbol's Name \+ Addend
-0+201398 0+800000024 R_X86_64_TLSDESC +0+ sg1 \+ 0
-0+201368 0+24 R_X86_64_TLSDESC +0+20
-0+2013a8 0+24 R_X86_64_TLSDESC +0+40
-0+201378 0+24 R_X86_64_TLSDESC +0+60
-0+201388 0+24 R_X86_64_TLSDESC +0+
+0+201398 [0-9a-f]+ R_X86_64_TLSDESC +0+ sg1 \+ 0
+0+201368 [0-9a-f]+ R_X86_64_TLSDESC +0+20
+0+2013a8 [0-9a-f]+ R_X86_64_TLSDESC +0+40
+0+201378 [0-9a-f]+ R_X86_64_TLSDESC +0+60
+0+201388 [0-9a-f]+ R_X86_64_TLSDESC +0+
-Symbol table '.dynsym' contains 16 entries:
+Symbol table '.dynsym' contains [0-9]+ entries:
+Num: +Value +Size Type +Bind +Vis +Ndx Name
+[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND *
+[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 *
+[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 *
- +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 *
+[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 3198377..492cf6f 100644
--- a/ld/testsuite/ld-x86-64/tlspic.rd
+++ b/ld/testsuite/ld-x86-64/tlspic.rd
@@ -74,7 +74,6 @@ Symbol table '.dynsym' contains [0-9]+ entries:
.* NOTYPE LOCAL DEFAULT UND *
.* SECTION LOCAL DEFAULT +7 *
.* SECTION LOCAL DEFAULT +8 *
-.* SECTION LOCAL DEFAULT +9 *
.* TLS +GLOBAL DEFAULT +8 sg8
.* TLS +GLOBAL DEFAULT +8 sg3
.* TLS +GLOBAL DEFAULT +8 sg4