binutils-gdb/elfcpp
Andre Vieira 1889da7048 [binutils, ARM, 10/16] BFCSEL infrastructure with new global reloc R_ARM_THM_BF12
This patch is part of a series of patches to add support for Armv8.1-M Mainline
instructions to binutils.
This adds infrastructure for the BFCSEL instructions which is one of the first
instructions in Arm that have more than one relocations in them.

This adds a new relocation R_ARM_THM_BF12.

The inconsistency between external R_ARM_THM_BF12 and internal
BFD_RELOC_ARM_THUMB_BF13 is because internally we count the static bit-0 of the
immediate and we don't externally.

ChangeLog entries are as follows :

ChangeLog entries are as follows :

*** bfd/ChnageLog ***

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

	* reloc.c (BFD_RELOC_ARM_THUMB_BF13): New.
	* bfd-in2.h: Regenerated.
	* libbfd.h: Regenerated.
	* elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF13.
	(elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF13
	and R_ARM_THM_BF12 together.
	(elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF13.

*** elfcpp/ChangeLog ***

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

	* arm.h (R_ARM_THM_BF12): New relocation code.

*** gas/ChangeLog ***

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

	* config/tc-arm.c (md_pcrel_from_section): New switch case for
	BFD_RELOC_ARM_THUMB_BF13.
	(md_appdy_fix): Likewise.
	(tc_gen_reloc): Likewise.

*** include/ChangeLog ***

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

	* elf/arm.h (START_RELOC_NUMBERS): New entry for R_ARM_THM_BF12.

*** opcodes/ChangeLog ***

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

	* arm-dis.c (print_insn_thumb32): Updated to accept new %Z pattern.
2019-04-15 12:31:34 +01:00
..
ChangeLog [binutils, ARM, 10/16] BFCSEL infrastructure with new global reloc R_ARM_THM_BF12 2019-04-15 12:31:34 +01:00
ChangeLog-0815 binutils ChangeLog rotation 2016-01-01 22:59:17 +10:30
ChangeLog-2016 ChangeLog rotation 2017-01-02 13:55:05 +10:30
ChangeLog-2017 ChangeLog rotation 2018-01-03 17:49:42 +10:30
ChangeLog-2018 ChangeLog rotation 2019-01-01 21:25:40 +10:30
README Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
aarch64.h Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
arm.h [binutils, ARM, 10/16] BFCSEL infrastructure with new global reloc R_ARM_THM_BF12 2019-04-15 12:31:34 +01:00
dwarf.h Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
elfcpp.h Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
elfcpp_file.h Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
elfcpp_internal.h Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
elfcpp_swap.h Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
i386.h Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
mips.h Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
powerpc.h Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
s390.h Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
sparc.h Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
tilegx.h Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
x86_64.h Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30

README

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

elfcpp is a C++ library for reading and writing ELF information.  This
was written to support gold, the ELF linker, and may not be generally
useful.

elfcpp does not do file I/O.  It deals only with offsets and memory
data.

For efficiency, most accessors are templates with two arguments: the
ELF file class (32 or 64 bits) and the endianness.


Copyright (C) 2012-2019 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.