diff options
author | Nick Clifton <nickc@redhat.com> | 2008-12-23 09:01:51 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2008-12-23 09:01:51 +0000 |
commit | 0f88be7a13937526f4789565a7dee988bf1369d5 (patch) | |
tree | dec9b5642bf6f5910809de144c2a28886f63dcf5 /ld | |
parent | 5995b57073ad5990e2f63c7f65c0a6c27cad55a9 (diff) | |
download | gdb-0f88be7a13937526f4789565a7dee988bf1369d5.zip gdb-0f88be7a13937526f4789565a7dee988bf1369d5.tar.gz gdb-0f88be7a13937526f4789565a7dee988bf1369d5.tar.bz2 |
Remove STT_IFUNC support.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 4 | ||||
-rw-r--r-- | ld/NEWS | 4 | ||||
-rw-r--r-- | ld/testsuite/ChangeLog | 9 | ||||
-rw-r--r-- | ld/testsuite/ld-i386/i386.exp | 1 | ||||
-rw-r--r-- | ld/testsuite/ld-i386/ifunc.d | 14 | ||||
-rw-r--r-- | ld/testsuite/ld-i386/ifunc.s | 128 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/ifunc.d | 14 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/ifunc.s | 198 | ||||
-rw-r--r-- | ld/testsuite/ld-x86-64/x86-64.exp | 2 |
9 files changed, 14 insertions, 360 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index b631ccb..5eccb4e 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,7 @@ +2008-12-23 Nick Clifton <nickc@redhat.com> + + * NEWS: Remove mention of support for STT_IFUNC. + 2008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> * configure: Regenerate. @@ -1,8 +1,4 @@ -*- text -*- -* For GNU/Linux systems the linker will now forego processing any relocations - made against symbols of the STT_IFUNC type and instead emit them into - the resulting binary for processing by the loader. - * Add CR16 ELF --embedded-relocs (used to embedded relocations into binaries for Embedded-PIC code) option. diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 9421562..de2862f 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,12 @@ +2008-12-23 Nick Clifton <nickc@redhat.com> + + * ld-i386/i386.exp: Do not run ifunc test. + * ld-i386/ifunc.s: Delete. + * ld-i386/ifunc.d: Delete. + * ld-x86-64/x86-64.exp: Do not run ifunc test. + * ld-x86-64/ifunc.s: Delete. + * ld-x86-64/ifunc.d: Delete. + 2008-12-20 Hans-Peter Nilsson <hp@axis.com> * ld-cris/tls-err-77.d, ld-cris/tls-gc-79.d, ld-cris/tls-ie-8e.s, diff --git a/ld/testsuite/ld-i386/i386.exp b/ld/testsuite/ld-i386/i386.exp index 0446f18..6f75f3a 100644 --- a/ld/testsuite/ld-i386/i386.exp +++ b/ld/testsuite/ld-i386/i386.exp @@ -138,4 +138,3 @@ run_dump_test "hidden3" run_dump_test "protected1" run_dump_test "protected2" run_dump_test "protected3" -run_dump_test "ifunc" diff --git a/ld/testsuite/ld-i386/ifunc.d b/ld/testsuite/ld-i386/ifunc.d deleted file mode 100644 index f5a7584..0000000 --- a/ld/testsuite/ld-i386/ifunc.d +++ /dev/null @@ -1,14 +0,0 @@ -#name: Generation of dynamic relocs for STT_IFUNC symbols -#source: ifunc.s -#as: --32 -#ld: -melf_i386 -lc --defsym _start=0 -L/usr/lib -#readelf: --relocs --syms - -Relocation section '.rel.ifunc.dyn' at offset 0x[0-9a-f]+ contains 2 entries: - +Offset +Info +Type +Sym.Value +Sym. Name -[0-9a-f]+ 0+0202 R_386_PC32 func\(\) func -[0-9a-f]+ 0+0102 R_386_PC32 long_fun\(\) long_func_name -#... - ..: [0-9a-f]+ .. IFUNC GLOBAL DEFAULT .. long_func_name - ..: [0-9a-f]+ .. IFUNC GLOBAL DEFAULT .. func -#pass diff --git a/ld/testsuite/ld-i386/ifunc.s b/ld/testsuite/ld-i386/ifunc.s deleted file mode 100644 index 3f34cfb..0000000 --- a/ld/testsuite/ld-i386/ifunc.s +++ /dev/null @@ -1,128 +0,0 @@ - .file "ifunc.c" -#APP - .type func, %indirect_function - .type long_func_name, %indirect_function - .section .rodata.str1.1,"aMS",@progbits,1 -.LC0: - .string "arg is %d\n" -#NO_APP - .text - .p2align 4,,15 -.globl bar - .type bar, @function -bar: - pushl %ebp - movl %esp, %ebp - subl $8, %esp - movl 8(%ebp), %eax - movl $.LC0, (%esp) - movl %eax, 4(%esp) - call printf - leave - ret - .size bar, .-bar - .section .rodata.str1.1 -.LC1: - .string "main: calling func" - .section .rodata.str1.4,"aMS",@progbits,1 - .align 4 -.LC2: - .string "main: func finished, calling long_func_name" - .section .rodata.str1.1 -.LC3: - .string "main: long_func_name finished" - .text - .p2align 4,,15 -.globl main - .type main, @function -main: - leal 4(%esp), %ecx - andl $-16, %esp - pushl -4(%ecx) - pushl %ebp - movl %esp, %ebp - pushl %ecx - subl $4, %esp - movl $.LC1, (%esp) - call puts - call func - movl $.LC2, (%esp) - call puts - call long_func_name - movl $.LC3, (%esp) - call puts - addl $4, %esp - xorl %eax, %eax - popl %ecx - popl %ebp - leal -4(%ecx), %esp - ret - .size main, .-main - .p2align 4,,15 -.globl long_func_name - .type long_func_name, @function -long_func_name: - pushl %ebp - movl %esp, %ebp - subl $8, %esp - call rand - movl $func0, %edx - testl %eax, %eax - jne .L7 - movl $func1, %edx -.L7: - movl %edx, %eax - leave - ret - .size long_func_name, .-long_func_name - .p2align 4,,15 -.globl func - .type func, @function -func: - pushl %ebp - movl %esp, %ebp - subl $8, %esp - call rand - movl $func0, %edx - testl %eax, %eax - jne .L12 - movl $func1, %edx -.L12: - movl %edx, %eax - leave - ret - .size func, .-func - .section .rodata.str1.1 -.LC4: - .string "func1\n" - .text - .p2align 4,,15 -.globl func1 - .type func1, @function -func1: - pushl %ebp - movl %esp, %ebp - subl $8, %esp - movl $.LC4, (%esp) - call puts - leave - ret - .size func1, .-func1 - .section .rodata.str1.1 -.LC5: - .string "func0\n" - .text - .p2align 4,,15 -.globl func0 - .type func0, @function -func0: - pushl %ebp - movl %esp, %ebp - subl $8, %esp - movl $.LC5, (%esp) - call puts - leave - ret - .size func0, .-func0 - .ident "GCC: (GNU) 4.3.0 20080428 (Red Hat 4.3.0-8)" - .section .note.GNU-stack,"",@progbits diff --git a/ld/testsuite/ld-x86-64/ifunc.d b/ld/testsuite/ld-x86-64/ifunc.d deleted file mode 100644 index 1f147e3..0000000 --- a/ld/testsuite/ld-x86-64/ifunc.d +++ /dev/null @@ -1,14 +0,0 @@ -#name: Generation of dynamic relocs for STT_IFUNC symbols -#source: ifunc.s -#ld: --defsym _start=0 --defsym puts=0 --defsym rand=0 --defsym printf=0 -#readelf: --relocs --syms - -Relocation section '.rela.ifunc.dyn' at offset 0x[0-9a-f]+ contains 2 entries: - +Offset +Info +Type +Sym. Value +Sym. Name \+ Addend -[0-9a-f]+ 0+20+2 R_X86_64_PC32 .* -[0-9a-f]+ 0+10+2 R_X86_64_PC32 .* -#... - ..: [0-9a-f]+ .. IFUNC GLOBAL DEFAULT .. long_func_name -#... - ..: [0-9a-f]+ .. IFUNC GLOBAL DEFAULT .. func -#pass diff --git a/ld/testsuite/ld-x86-64/ifunc.s b/ld/testsuite/ld-x86-64/ifunc.s deleted file mode 100644 index 4a6a62e..0000000 --- a/ld/testsuite/ld-x86-64/ifunc.s +++ /dev/null @@ -1,198 +0,0 @@ - .file "ifunc.c" -#APP - .type func, %indirect_function - .type long_func_name, %indirect_function - .section .rodata.str1.1,"aMS",@progbits,1 -.LC0: - .string "arg is %d\n" -#NO_APP - .text - .p2align 4,,15 -.globl bar - .type bar, @function -bar: -.LFB25: - movl %edi, %esi - xorl %eax, %eax - movl $.LC0, %edi - jmp printf -.LFE25: - .size bar, .-bar - .section .rodata.str1.1 -.LC1: - .string "main: calling func" - .section .rodata.str1.8,"aMS",@progbits,1 - .align 8 -.LC2: - .string "main: func finished, calling long_func_name" - .section .rodata.str1.1 -.LC3: - .string "main: long_func_name finished" - .text - .p2align 4,,15 -.globl main - .type main, @function -main: -.LFB24: - subq $8, %rsp -.LCFI0: - movl $.LC1, %edi - call puts - call func - movl $.LC2, %edi - call puts - call long_func_name - movl $.LC3, %edi - call puts - xorl %eax, %eax - addq $8, %rsp - ret -.LFE24: - .size main, .-main - .p2align 4,,15 -.globl long_func_name - .type long_func_name, @function -long_func_name: -.LFB23: - subq $8, %rsp -.LCFI1: - call rand - movl %eax, %edx - movl $func1, %eax - testl %edx, %edx - movl $func0, %edx - cmovne %rdx, %rax - addq $8, %rsp - ret -.LFE23: - .size long_func_name, .-long_func_name - .p2align 4,,15 -.globl func - .type func, @function -func: -.LFB22: - subq $8, %rsp -.LCFI2: - call rand - movl %eax, %edx - movl $func1, %eax - testl %edx, %edx - movl $func0, %edx - cmovne %rdx, %rax - addq $8, %rsp - ret -.LFE22: - .size func, .-func - .section .rodata.str1.1 -.LC4: - .string "func1\n" - .text - .p2align 4,,15 -.globl func1 - .type func1, @function -func1: -.LFB21: - movl $.LC4, %edi - jmp puts -.LFE21: - .size func1, .-func1 - .section .rodata.str1.1 -.LC5: - .string "func0\n" - .text - .p2align 4,,15 -.globl func0 - .type func0, @function -func0: -.LFB20: - movl $.LC5, %edi - jmp puts -.LFE20: - .size func0, .-func0 - .section .eh_frame,"a",@progbits -.Lframe1: - .long .LECIE1-.LSCIE1 -.LSCIE1: - .long 0x0 - .byte 0x1 - .string "zR" - .uleb128 0x1 - .sleb128 -8 - .byte 0x10 - .uleb128 0x1 - .byte 0x3 - .byte 0xc - .uleb128 0x7 - .uleb128 0x8 - .byte 0x90 - .uleb128 0x1 - .align 8 -.LECIE1: -.LSFDE1: - .long .LEFDE1-.LASFDE1 -.LASFDE1: - .long .LASFDE1-.Lframe1 - .long .LFB25 - .long .LFE25-.LFB25 - .uleb128 0x0 - .align 8 -.LEFDE1: -.LSFDE3: - .long .LEFDE3-.LASFDE3 -.LASFDE3: - .long .LASFDE3-.Lframe1 - .long .LFB24 - .long .LFE24-.LFB24 - .uleb128 0x0 - .byte 0x4 - .long .LCFI0-.LFB24 - .byte 0xe - .uleb128 0x10 - .align 8 -.LEFDE3: -.LSFDE5: - .long .LEFDE5-.LASFDE5 -.LASFDE5: - .long .LASFDE5-.Lframe1 - .long .LFB23 - .long .LFE23-.LFB23 - .uleb128 0x0 - .byte 0x4 - .long .LCFI1-.LFB23 - .byte 0xe - .uleb128 0x10 - .align 8 -.LEFDE5: -.LSFDE7: - .long .LEFDE7-.LASFDE7 -.LASFDE7: - .long .LASFDE7-.Lframe1 - .long .LFB22 - .long .LFE22-.LFB22 - .uleb128 0x0 - .byte 0x4 - .long .LCFI2-.LFB22 - .byte 0xe - .uleb128 0x10 - .align 8 -.LEFDE7: -.LSFDE9: - .long .LEFDE9-.LASFDE9 -.LASFDE9: - .long .LASFDE9-.Lframe1 - .long .LFB21 - .long .LFE21-.LFB21 - .uleb128 0x0 - .align 8 -.LEFDE9: -.LSFDE11: - .long .LEFDE11-.LASFDE11 -.LASFDE11: - .long .LASFDE11-.Lframe1 - .long .LFB20 - .long .LFE20-.LFB20 - .uleb128 0x0 - .align 8 -.LEFDE11: - .ident "GCC: (GNU) 4.3.0 20080428 (Red Hat 4.3.0-8)" - .section .note.GNU-stack,"",@progbits diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp index d3608f6..0b8e614 100644 --- a/ld/testsuite/ld-x86-64/x86-64.exp +++ b/ld/testsuite/ld-x86-64/x86-64.exp @@ -92,4 +92,4 @@ run_dump_test "hidden3" run_dump_test "protected1" run_dump_test "protected2" run_dump_test "protected3" -run_dump_test "ifunc" + |