Browse Source
* config.bfd: Include 64-bit support for i[3-7]86-*-solaris2*. * elf64-x86-64.c (elf64_x86_64_section_from_shdr): New function. (elf_backend_section_from_shdr): Define. binutils/ * readelf.c (get_x86_64_section_type_name): New function. (get_section_type_name): Use it. gas/ * config/tc-i386.c: Include "elf/x86-64.h". (i386_elf_section_type): New function. * config/tc-i386.h (md_elf_section_type): Define. (i386_elf_section_type): New prototype. gas/testsuite/ * gas/i386/i386.exp: Don't run divide test for targets where '/' is a comment. Run x86-64-unwind for 64-bit ELF targets. * gas/i386/x86-64-unwind.d, gas/i386/x86-64-unwind.s: New. include/ * elf/common.h (PT_SUNW_EH_FRAME): Define. * elf/x86-64.h (SHT_X86_64_UNWIND): Define. ld/ * configure.tgt: Include elf_x86_64 for i[3-7]86-*-solaris2*.jimb-rda-nptl-branch
17 changed files with 149 additions and 3 deletions
@ -0,0 +1,28 @@ |
|||
#readelf: -S |
|||
#name: x86-64 unwind |
|||
|
|||
There are 8 section headers, starting at offset 0x80: |
|||
|
|||
Section Headers: |
|||
\[Nr\] Name Type Address Offset |
|||
Size EntSize Flags Link Info Align |
|||
\[ 0\] NULL 0000000000000000 00000000 |
|||
0000000000000000 0000000000000000 0 0 0 |
|||
\[ 1\] \.text PROGBITS 0000000000000000 00000040 |
|||
0000000000000000 0000000000000000 AX 0 0 4 |
|||
\[ 2\] \.data PROGBITS 0000000000000000 00000040 |
|||
0000000000000000 0000000000000000 WA 0 0 4 |
|||
\[ 3\] \.bss NOBITS 0000000000000000 00000040 |
|||
0000000000000000 0000000000000000 WA 0 0 4 |
|||
\[ 4\] \.eh_frame X86_64_UNWIND 0000000000000000 00000040 |
|||
0000000000000008 0000000000000000 A 0 0 1 |
|||
\[ 5\] \.shstrtab STRTAB 0000000000000000 00000048 |
|||
0000000000000036 0000000000000000 0 0 1 |
|||
\[ 6\] \.symtab SYMTAB 0000000000000000 00000280 |
|||
0000000000000078 0000000000000018 7 5 8 |
|||
\[ 7\] \.strtab STRTAB 0000000000000000 000002f8 |
|||
0000000000000001 0000000000000000 0 0 1 |
|||
Key to Flags: |
|||
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\) |
|||
I \(info\), L \(link order\), G \(group\), x \(unknown\) |
|||
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\) |
|||
@ -0,0 +1,8 @@ |
|||
# First create .eh_frame with the right type. |
|||
.section .eh_frame,"a",@unwind |
|||
.long 0 |
|||
|
|||
# Verify that switching back into .eh_frame does not change |
|||
# its type. |
|||
.section .eh_frame |
|||
.long 1 |
|||
Loading…
Reference in new issue