old-cross-binutils/ld/testsuite/ld-tic6x/shlib-1b.rd
Nathan Sidwell 04c3a75556 bfd/
* bfd-in.h (bfd_elf_stack_segment_size): Declare.
	* bfd-in2.h: Rebuilt.
	* elfxx-target.h (elf_backend_stack_align): New.
	(elfNN_bed): Add it.
	* elf-bfd.h (struct elf_backend_data): Add stack_align field.
	* elf.c (bfd_elf_map_sections_to_segments): Pay attention to
	stack_align and stacksize for PT_GNU_STACK segment.
	(assign_file_positions_for_non_load_sections): Set p_memsz for
	PT_GNU_STACK segment.
	(copy_elf_program_header): Copy PT_GNU_STACK size.
	* elflink.c (bfd_elf_stack_segment_size): New function, taken from
	uclinux backends.
	(bfd_elf_size_dynamic_sections): Determine
	PT_GNU_STACK requirements after calling backend.  Pay attention to
	stacksize.
	* elf32-bfin.c (elf32_bfinfdpic_always_size_sections): Call
	bfd_elf_stack_segment_size.
	(elf32_bfinfdpic_modify_program_headers): Delete.
	(elf32_bfingfdpic_copy_private_bfd_data): Don't copy PT_GNU_STACK
	here.
	(elf_backend_stack_align): Override.
	(elf_backend_modify_program_headers): Don't override.
	* elf32-frv.c (frvfdpic_always_size_sections): Call
	bfd_elf_stack_segment_size.
	(elf32_frvfdpic_modify_program_headers): Delete.
	(elf32_frvfdpic_copy_private_bfd_data): Don't copy PT_GNU_STACK
	here.
	(elf_backend_stack_align): Override.
	(elf_backend_modify_program_headers): Don't override.
	* elf32-lm32.c (lm32_elf_always_size_sections): Leave
	PT_GNU_STACK creation to underlying elf support.  Check
	__stacksize here for backwards compatibility, and set it if
	needed.
	(lm32_elf_modify_segment_map): Delete.
	(lm32_elf_modify_program_headers): Delete.
	(elf_backend_stack_align): Override.
	(elf_backend_modify_segment_map): Don't override.
	(elf_backend_modify_program_headers): Don't override.
	* elf32-sh.c (sh_elf_always_size_sections): Call
	bfd_elf_stack_segment_size.
	(sh_elf_modify_program_headers): Delete.
	(sh_elf_copy_private_data): Don't copy PT_GNU_STACK
	here.
	(elf_backend_stack_align): Override.
	(elf_backend_modify_program_headers): Don't override.
	* elf32-tic6x.c (elf32_tic6x_always_size_sections): Call
	bfd_elf_stack_segment_size.
	(elf32_tic6x_modify_program_headers): Delete.
	(elf32_tic6x_copy_private_data): Delete.
	(elf_backend_stack_align): Override.
	(bfd_elf32_bfd_copy_private_bfd_data): Don't override.
	(elf_backend_modify_program_headers): Don't override.

	include/
	* bfdlink.h (struct bfd_link_info): Add stacksize option.

	ld/
	* ld.texinfo (stack-size): New option.
	* emultempl/elf32.em: Add stack-size option.

	ld/testsuite/
	* ld-elf/binutils.exp: Add -z stack-size=0.
	* ld-elf/elf.exp: Add stack-exec and stack-size tests.
	* ld-elf/orphan-region.d: Add stack-size option. Remove xfail.
	* ld-elf/stack-exec.rd: New.
	* ld-elf/stack-size.rd: New.
	* ld-elf/stack.s: New.
	* ld-scripts/empty-aligned.d: Add stack-size option.
	* ld-sh/fdpic-stack-set.d: New.
	* ld-tic6x/shlib-1.rd: Remove __stacksize symbol.
	* ld-tic6x/shlib-1b.rd: Likewise.
	* ld-tic6x/shlib-1r.rd: Likewise.
	* ld-tic6x/shlib-1rb.rd: Likewise.
	* ld-tic6x/shlib-app-1.rd: Likewise.
	* ld-tic6x/shlib-app-1b.rd: Likewise.
	* ld-tic6x/shlib-app-1r.rd: Likewise.
	* ld-tic6x/shlib-app-1rb.rd: Likewise.
	* ld-tic6x/shlib-noindex.rd: Likewise.
	* ld-tic6x/static-app-1.rd: Likewise.
	* ld-tic6x/static-app-1b.rd: Likewise.
	* ld-tic6x/static-app-1r.rd: Likewise.
	* ld-tic6x/static-app-1rb.rd: Likewise.
2012-10-23 09:33:56 +00:00

124 lines
6.5 KiB
R

There are 17 section headers, starting at offset 0x21c4:
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 000048 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 00008048 001048 0000d0 10 A 3 6 4
\[ 3\] \.dynstr STRTAB 00008118 001118 000025 00 A 0 0 1
\[ 4\] \.rela\.got RELA 00008140 001140 000024 0c A 2 10 4
\[ 5\] \.rela\.neardata RELA 00008164 001164 000018 0c A 2 11 4
\[ 6\] \.dynamic DYNAMIC 0000817c 00117c 0000a8 08 WA 3 0 4
\[ 7\] \.rela\.plt RELA 10000000 002000 000018 0c A 2 8 4
\[ 8\] \.plt PROGBITS 10000020 002020 000060 18 AX 0 0 32
\[ 9\] \.text PROGBITS 10000080 002080 000080 00 AX 0 0 32
\[10\] \.got PROGBITS 10000100 002100 000028 00 WA 0 0 4
\[11\] \.neardata PROGBITS 10000128 002128 000008 00 WA 0 0 4
\[12\] \.bss NOBITS 10000130 002130 000004 00 WA 0 0 4
\[13\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 002130 000019 00 0 0 1
\[14\] \.shstrtab STRTAB 00000000 002149 00007b 00 0 0 1
\[15\] \.symtab SYMTAB 00000000 [0-9a-f]+ [0-9a-f]+ 10 16 [0-9]+ 4
\[16\] \.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\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
Elf file type is DYN \(Shared object file\)
Entry point 0x10000080
There are 4 program headers, starting at offset 52
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x00224 0x00224 RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x00130 0x00134 RWE 0x1000
DYNAMIC 0x00117c 0x0000817c 0x0000817c 0x000a8 0x000a8 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.got \.rela\.neardata \.dynamic
01 \.rela\.plt \.plt \.text \.got \.neardata \.bss
02 \.dynamic
03
Dynamic section at offset 0x117c contains 16 entries:
Tag Type Name/Value
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x8118
0x00000006 \(SYMTAB\) 0x8048
0x0000000a \(STRSZ\) 37 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x70000000 \(C6000_DSBT_BASE\) 0x10000100
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x2
0x00000003 \(PLTGOT\) 0x1000010c
0x00000002 \(PLTRELSZ\) 24 \(bytes\)
0x00000014 \(PLTREL\) RELA
0x00000017 \(JMPREL\) 0x10000000
0x00000007 \(RELA\) 0x8140
0x00000008 \(RELASZ\) 84 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000000 \(NULL\) 0x0
Relocation section '\.rela\.got' at offset 0x1140 contains 3 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000120 00000501 R_C6000_ABS32 10000130 \.bss \+ 0
1000011c 00000701 R_C6000_ABS32 00000000 b \+ 0
10000124 00000b01 R_C6000_ABS32 10000128 a \+ 0
Relocation section '\.rela\.neardata' at offset 0x1164 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000128 00000a01 R_C6000_ABS32 10000088 sub0 \+ 0
1000012c 00000801 R_C6000_ABS32 00000000 g1 \+ 0
Relocation section '\.rela\.plt' at offset 0x2000 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000114 00000a1b R_C6000_JUMP_SLOT 10000088 sub0 \+ 0
10000118 00000c1b R_C6000_JUMP_SLOT 100000c0 sub \+ 0
Symbol table '\.dynsym' contains 13 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000020 0 SECTION LOCAL DEFAULT 8
2: 10000080 0 SECTION LOCAL DEFAULT 9
3: 10000100 0 SECTION LOCAL DEFAULT 10
4: 10000128 0 SECTION LOCAL DEFAULT 11
5: 10000130 0 SECTION LOCAL DEFAULT 12
6: 10000100 0 NOTYPE LOCAL DEFAULT 10 __c6xabi_DSBT_BASE
7: 00000000 0 NOTYPE WEAK DEFAULT UND b
8: 00000000 0 NOTYPE WEAK DEFAULT UND g1
9: 1000012c 4 OBJECT GLOBAL DEFAULT 11 g2
10: 10000088 52 FUNC GLOBAL DEFAULT 9 sub0
11: 10000128 4 OBJECT GLOBAL DEFAULT 11 a
12: 100000c0 52 FUNC GLOBAL DEFAULT 9 sub
Symbol table '\.symtab' contains [0-9]+ entries:
Num: Value Size Type Bind Vis Ndx Name
.* 00000000 0 NOTYPE LOCAL DEFAULT UND
.* 00008000 0 SECTION LOCAL DEFAULT 1
.* 00008048 0 SECTION LOCAL DEFAULT 2
.* 00008118 0 SECTION LOCAL DEFAULT 3
.* 00008140 0 SECTION LOCAL DEFAULT 4
.* 00008164 0 SECTION LOCAL DEFAULT 5
.* 0000817c 0 SECTION LOCAL DEFAULT 6
.* 10000000 0 SECTION LOCAL DEFAULT 7
.* 10000020 0 SECTION LOCAL DEFAULT 8
.* 10000080 0 SECTION LOCAL DEFAULT 9
.* 10000100 0 SECTION LOCAL DEFAULT 10
.* 10000128 0 SECTION LOCAL DEFAULT 11
.* 10000130 0 SECTION LOCAL DEFAULT 12
.* 00000000 0 SECTION LOCAL DEFAULT 13
.* 00000000 0 FILE LOCAL DEFAULT ABS .*
.* 10000080 0 FUNC LOCAL HIDDEN 9 sub1
.* 10000130 4 OBJECT LOCAL DEFAULT 12 c
.* 00000000 0 FILE LOCAL DEFAULT ABS .*
.* 0000817c 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC
.* 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
.* 10000100 0 NOTYPE LOCAL DEFAULT 10 __c6xabi_DSBT_BASE
.* 00000000 0 NOTYPE WEAK DEFAULT UND b
.* 00000000 0 NOTYPE WEAK DEFAULT UND g1
.* 1000012c 4 OBJECT GLOBAL DEFAULT 11 g2
.* 10000088 52 FUNC GLOBAL DEFAULT 9 sub0
.* 10000128 4 OBJECT GLOBAL DEFAULT 11 a
.* 100000c0 52 FUNC GLOBAL DEFAULT 9 sub