binutils-gdb/ld/testsuite/ld-ifunc
Nick Clifton f657f8c4a1 Fix Sparc, s390 and AArch64 targets so that they can handle relocs against ifunc symbols found in note sections.
Following on from PR 22929, I have found the same problem exists with
  other ifunc supporting targets too.  Plus see this link for the bug
  being reported against the s390x binutils for Fedora rawhide:

     https://bugzilla.redhat.com/show_bug.cgi?id=1553705

  So I am going to check in the patch below which applies the same
  change that H.J. made for the x86_64 target to the other affected
  targets.  (Specifically: S390, AArch64 and Sparc).  Plus it adds a new
  test to the linker testsuite to make sure that this problem stays
  fixed.

bfd	* elf64-s390.c (elf_s390_relocate_section): Move check for
	relocations against non-allocated sections to before the code that
	handles ifunc relocations.
	* elf32-s390.c (elf_s390_relocate_section): Likewise.
	* elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Treat
	relocs against IFUNC symbols in non-allocated sections as relocs
	against FUNC symbols.
	* elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.

ld	* testsuite/ld-ifunc/ifuncmod5.s: New test.  Checks that targets
	that support IFUNC symbols can handle relocations against those
	symbols in NOTE sections.
	* testsuite/ld-ifunc/ifuncmod5.d: New file:  Driver for the new
	test.
	* testsuite/ld-ifunc/ifunc.exp: Run the new test.
2018-03-09 14:37:36 +00:00
..
binutils.exp Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
dummy.c
ifunc-1-local-x86.d i386: Update IFUNC tests for PLT address 2018-02-16 09:32:56 -08:00
ifunc-1-local-x86.map
ifunc-1-local-x86.s
ifunc-1-x86.d i386: Update IFUNC tests for PLT address 2018-02-16 09:32:56 -08:00
ifunc-1-x86.map
ifunc-1-x86.s
ifunc-2-i386-now.d x86: Add -z noseparate-code to IFUNC tests 2018-02-16 09:45:24 -08:00
ifunc-2-i386.d
ifunc-2-i386.s
ifunc-2-local-i386-now.d x86: Add -z noseparate-code to IFUNC tests 2018-02-16 09:45:24 -08:00
ifunc-2-local-i386.d
ifunc-2-local-i386.s
ifunc-2-local-x86-64-now.d x86-64: Add -z max-page-size=0x200000 -z noseparate-code to IFUNC tests 2018-02-16 09:39:22 -08:00
ifunc-2-local-x86-64.d x86: Add -z noseparate-code to IFUNC tests 2018-02-16 09:45:24 -08:00
ifunc-2-local-x86-64.s
ifunc-2-x86-64-now.d x86-64: Add -z max-page-size=0x200000 -z noseparate-code to IFUNC tests 2018-02-16 09:39:22 -08:00
ifunc-2-x86-64.d x86-64: Add -z max-page-size=0x200000 -z noseparate-code to IFUNC tests 2018-02-16 09:39:22 -08:00
ifunc-2-x86-64.s
ifunc-3-x86.s
ifunc-3a-x86.d i386: Update IFUNC tests for PLT address 2018-02-16 09:32:56 -08:00
ifunc-3b-x86.d
ifunc-4-local-x86.d
ifunc-4-local-x86.s
ifunc-4-x86.d
ifunc-4-x86.s
ifunc-4a-x86.d
ifunc-5-i386.s
ifunc-5-local-i386.s
ifunc-5-local-x86-64.s
ifunc-5-x86-64.s
ifunc-5a-i386.d
ifunc-5a-local-i386.d
ifunc-5a-local-x86-64.d
ifunc-5a-x86-64.d
ifunc-5b-i386.d
ifunc-5b-local-i386.d
ifunc-5b-local-x86-64.d
ifunc-5b-x86-64.d
ifunc-5r-local-i386.d
ifunc-5r-local-x86-64.d
ifunc-6-i386.s
ifunc-6-x86-64.s
ifunc-6a-i386.d
ifunc-6a-x86-64.d
ifunc-6b-i386.d
ifunc-6b-x86-64.d
ifunc-7-i386.s
ifunc-7-x86-64.s
ifunc-7a-i386.d
ifunc-7a-x86-64.d
ifunc-7b-i386.d
ifunc-7b-x86-64.d
ifunc-8-i386.d
ifunc-8-x86-64.d
ifunc-8a-i386.s
ifunc-8a-x86-64.s
ifunc-8b-i386.s
ifunc-8b-x86-64.s
ifunc-9-x86.d
ifunc-9-x86.s
ifunc-10-i386.d
ifunc-10-i386.s
ifunc-10-x86-64.d
ifunc-10-x86-64.s
ifunc-11-i386.d
ifunc-11-i386.s
ifunc-11-x86-64.d
ifunc-11-x86-64.s
ifunc-12-i386.d
ifunc-12-i386.s
ifunc-12-x86-64.d
ifunc-12-x86-64.s
ifunc-13-i386.d
ifunc-13-x86-64.d
ifunc-13a-i386.s
ifunc-13a-x86-64.s
ifunc-13b-i386.s
ifunc-13b-x86-64.s
ifunc-14a-i386.d
ifunc-14a-x86-64.d
ifunc-14a.s
ifunc-14b-i386.d
ifunc-14b-x86-64.d
ifunc-14b.s
ifunc-14c-i386.d
ifunc-14c-x86-64.d
ifunc-14c.s
ifunc-14d-i386.d
ifunc-14d-x86-64.d
ifunc-14e-i386.d
ifunc-14e-x86-64.d
ifunc-14f-i386.d
ifunc-14f-x86-64.d
ifunc-15-i386.d
ifunc-15-i386.s
ifunc-15-x86-64.d
ifunc-15-x86-64.s
ifunc-16-i386-now.d
ifunc-16-i386.d
ifunc-16-x86-64-now.d
ifunc-16-x86-64.d
ifunc-16-x86.s
ifunc-17a-i386.d
ifunc-17a-x86-64.d
ifunc-17a.s
ifunc-17b-i386.d
ifunc-17b-x86-64.d
ifunc-17b.s
ifunc-18a-i386.d
ifunc-18a-x86-64.d
ifunc-18a.s
ifunc-18b-i386.d
ifunc-18b-x86-64.d
ifunc-18b.s
ifunc-19a-i386.d
ifunc-19a-x86-64.d
ifunc-19a.s
ifunc-19b-i386.d
ifunc-19b-x86-64.d
ifunc-19b.s
ifunc-20-i386.d
ifunc-20-x86-64.d
ifunc-20.s
ifunc-21-i386.d x86: Add -z noseparate-code to IFUNC tests 2018-02-16 09:45:24 -08:00
ifunc-21-i386.s
ifunc-21-x86-64.d x86-64: Add -z max-page-size=0x200000 -z noseparate-code to IFUNC tests 2018-02-16 09:39:22 -08:00
ifunc-21-x86-64.s
ifunc-22-i386.d x86: Add -z noseparate-code to IFUNC tests 2018-02-16 09:45:24 -08:00
ifunc-22-i386.s
ifunc-22-x86-64.d x86-64: Add -z max-page-size=0x200000 -z noseparate-code to IFUNC tests 2018-02-16 09:39:22 -08:00
ifunc-22-x86-64.s
ifunc-23-x86.s
ifunc-23a-x86.d
ifunc-23b-x86.d
ifunc-23c-x86.d
ifunc-24-x86.s
ifunc-24a-x86.d
ifunc-24b-x86.d
ifunc-24c-x86.d
ifunc-25-x86.s
ifunc-25a-x86.d
ifunc-25b-x86.d
ifunc-25c-x86.d
ifunc-common-1.out
ifunc-common-1a.c
ifunc-common-1b.c
ifunc-lib.c
ifunc-main.c
ifunc-main.out
ifunc.exp Fix Sparc, s390 and AArch64 targets so that they can handle relocs against ifunc symbols found in note sections. 2018-03-09 14:37:36 +00:00
ifuncmod5.d Fix Sparc, s390 and AArch64 targets so that they can handle relocs against ifunc symbols found in note sections. 2018-03-09 14:37:36 +00:00
ifuncmod5.s Fix Sparc, s390 and AArch64 targets so that they can handle relocs against ifunc symbols found in note sections. 2018-03-09 14:37:36 +00:00
lib.c
pass.out
pr16467.out
pr16467a.c
pr16467a.map
pr16467b.c
pr16467b.map
pr16467c.c
pr17154-i386-now.d x86: Add -z noseparate-code to IFUNC tests 2018-02-16 09:45:24 -08:00
pr17154-i386.d x86: Add -z noseparate-code to IFUNC tests 2018-02-16 09:45:24 -08:00
pr17154-x86-64-now.d x86-64: Add -z max-page-size=0x200000 -z noseparate-code to IFUNC tests 2018-02-16 09:39:22 -08:00
pr17154-x86-64.d x86-64: Add -z max-page-size=0x200000 -z noseparate-code to IFUNC tests 2018-02-16 09:39:22 -08:00
pr17154-x86.s
pr18808.out
pr18808a.c
pr18808b.c
pr18841.out
pr18841a.c
pr18841b.c
pr18841c.c
prog.c
test-1.c
test-2.c