binutils-gdb/ld/testsuite
Sudakshina Das cd702818c6 [BFD, LD, AArch64, 1/3] Add support for GNU PROPERTIES in AArch64 for BTI and PAC
This is part of the patch series to add support for BTI and
PAC in AArch64 linker.

This patch implements the following:
1) This extends in the gnu property support in the linker for
AArch64 by defining backend hooks for elf_backend_setup_gnu_properties,
elf_backend_merge_gnu_properties and elf_backend_parse_gnu_properties.
2) It defines AArch64 specific GNU property
GNU_PROPERTY_AARCH64_FEATURE_1_AND and 2 bit for BTI and PAC in it.
3) It also adds support in readelf.c to read and print these new
GNU properties in AArch64.
All these are made according to the new AArch64 ELF ABI
https://developer.arm.com/docs/ihi0056/latest/elf-for-the-arm-64-bit-architecture-aarch64-abi-2018q4

*** bfd/ChangeLog ***

2019-03-13  Sudakshina Das  <sudi.das@arm.com>

	* elf-properties.c (_bfd_elf_link_setup_gnu_properties): Exclude
	linker created inputs from merge.
	* elfnn-aarch64.c (struct elf_aarch64_obj_tdata): Add field for
	GNU_PROPERTY_AARCH64_FEATURE_1_AND properties.
	(elfNN_aarch64_link_setup_gnu_properties): New.
	(elfNN_aarch64_merge_gnu_properties): New.
	(elf_backend_setup_gnu_properties): Define for AArch64.
	(elf_backend_merge_gnu_properties): Likewise.
	* elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Define.
	(_bfd_aarch64_elf_parse_gnu_properties): Define.
	(_bfd_aarch64_elf_merge_gnu_properties): Define.
	* elfxx-aarch64.h (_bfd_aarch64_elf_link_setup_gnu_properties): Declare.
	(_bfd_aarch64_elf_parse_gnu_properties): Declare.
	(_bfd_aarch64_elf_merge_gnu_properties): Declare.
	(elf_backend_parse_gnu_properties): Define for AArch64.

*** binutils/ChangeLog ***

2019-03-13  Sudakshina Das  <sudi.das@arm.com>

	* readelf.c (decode_aarch64_feature_1_and): New.
	(print_gnu_property_note): Add case for AArch64 gnu notes.

*** include/ChangeLog ***

2019-03-13  Sudakshina Das  <sudi.das@arm.com>

	* elf/common.h (GNU_PROPERTY_AARCH64_FEATURE_1_AND): New.
	(GNU_PROPERTY_AARCH64_FEATURE_1_BTI): New.
	(GNU_PROPERTY_AARCH64_FEATURE_1_PAC): New.

*** ld/ChangeLog ***

2019-03-13  Sudakshina Das  <sudi.das@arm.com>

	* NEWS: Document GNU_PROPERTY_AARCH64_FEATURE_1_BTI and
	GNU_PROPERTY_AARCH64_FEATURE_1_PAC.
	* testsuite/ld-aarch64/aarch64-elf.exp: Add run commands for new tests.
	* testsuite/ld-aarch64/property-bti-pac1.d: New test.
	* testsuite/ld-aarch64/property-bti-pac1.s: New test.
	* testsuite/ld-aarch64/property-bti-pac2.d: New test.
	* testsuite/ld-aarch64/property-bti-pac2.s: New test.
	* testsuite/ld-aarch64/property-bti-pac3.d: New test.
2019-03-13 11:47:00 +00:00
..
config Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-aarch64 [BFD, LD, AArch64, 1/3] Add support for GNU PROPERTIES in AArch64 for BTI and PAC 2019-03-13 11:47:00 +00:00
ld-alpha Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-arc Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-arm Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-auto-import Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-avr Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-bootstrap Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-cdtest Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-checks Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-cris Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-crx Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-csky Add support for the C_SKY series of processors. 2018-07-30 12:24:14 +01:00
ld-cygwin Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-d10v Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-discard Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-elf [ld, hurd] Remove 'ld-elf/elf.exp' XFAILs 2019-02-14 17:51:22 +01:00
ld-elfcomm Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-elfvers Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-elfvsb Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-elfweak Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-fastcall Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-frv Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-gc Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-h8300 Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-i386 x86: Properly set IBT and SHSTK properties for -z ibt/shstk 2019-03-13 14:38:29 +08:00
ld-ia64 Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-ifunc Skip ld/pr23169 on SPARC. 2019-01-29 10:11:01 +01:00
ld-libs Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-linkonce Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-m68hc11 Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-m68k run_dump_test source in build directory 2019-01-08 18:50:54 +10:30
ld-mep Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-metag Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-mips-elf Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-misc Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-mmix Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-mn10300 Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-msp430-elf Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-nds32 Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-nios2 Run more ld tests when not native 2017-01-02 23:48:08 +10:30
ld-or1k Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-pe Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-pie Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-plugin Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-powerpc PowerPC __tls_get_addr arg parsing 2019-02-21 18:05:05 +10:30
ld-pru Fix binary compatibility between GCC and the TI compiler for the PRU target. 2018-05-09 11:39:32 +01:00
ld-riscv-elf Fix spelling mistakes in BFD library. 2019-01-21 12:39:24 +00:00
ld-s12z Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-s390 Revert "Add support to GNU ld to separate got related plt entries" 2019-03-01 15:35:00 +01:00
ld-scripts Fix some ldscripts/pr24008 fails 2019-02-06 17:33:54 +10:30
ld-selective Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-sh Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-shared Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-size Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-sparc Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-spu Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-srec Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-tic6x Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-tilegx Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-tilepro Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-undefined Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-unique Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-v850 Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-vax-elf Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-visium Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-vxworks Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-x86-64 x86: Properly set IBT and SHSTK properties for -z ibt/shstk 2019-03-13 14:38:29 +08:00
ld-xc16x Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-xstormy16 Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ld-xtensa bfd: xtensa: fix callx relaxation 2019-02-20 02:51:01 -08:00
ld-z8k Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
lib Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
ChangeLog-2004
ChangeLog-2005
ChangeLog-2006
ChangeLog-2007
ChangeLog-2008
ChangeLog-2009
ChangeLog-2010
ChangeLog-2011
ChangeLog-2012
ChangeLog-2013
ChangeLog-2014
ChangeLog-2015 binutils ChangeLog rotation 2016-01-01 22:59:17 +10:30
ChangeLog-9303