binutils-gdb/include
H.J. Lu 1273b2f8ac x86: Restore PC16 relocation overflow check
The x86-64 psABI has

---
A program or object file using R_X86_64_8, R_X86_64_16, R_X86_64_PC16
or R_X86_64_PC8 relocations is not conformant to this ABI, these
relocations are only added for documentation purposes.
---

Since x86 PC16 relocations have been used for 16-bit programs in an ELF32
or ELF64 container, PC16 relocation should wrap-around in 16-bit address
space.  Revert

commit a7664973b2
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Apr 26 10:41:35 2021 +0200

    x86: correct overflow checking for 16-bit PC-relative relocs

and xfail the related tests.  Also revert

commit 50c95a739c
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed May 26 12:13:13 2021 -0700

    x86: Propery check PC16 reloc overflow in 16-bit mode instructions

while keeping PR ld/27905 tests for PC16 relocation in 16-bit programs.

bfd/

	PR ld/27905
	* elf32-i386.c: Don't include "libiberty.h".
	(elf_howto_table): Revert commits a7664973b2 and 50c95a739c.
	(elf_i386_rtype_to_howto): Revert commit 50c95a739c.
	(elf_i386_info_to_howto_rel): Likewise.
	(elf_i386_tls_transition): Likewise.
	(elf_i386_relocate_section): Likewise.
	* elf64-x86-64.c (x86_64_elf_howto_table): Revert commits
	a7664973b2 and 50c95a739c.
	(elf_x86_64_rtype_to_howto): Revert commit 50c95a739c.
	* elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Likewise.
	* elfxx-x86.h (elf_x86_obj_tdata): Likewise.
	(elf_x86_has_code16): Likewise.

binutils/

	PR ld/27905
	* readelf.c (decode_x86_feature_2): Revert commit 50c95a739c.

gas/

	PR ld/27905
	* config/tc-i386.c (set_code_flag): Revert commit 50c95a739c.
	(set_16bit_gcc_code_flag): Likewise.
	(x86_cleanup): Likewise.
	* testsuite/gas/i386/code16-2.d: Updated.
	* testsuite/gas/i386/x86-64-code16-2.d: Likewise.

include/

	PR ld/27905
	* elf/common.h (GNU_PROPERTY_X86_FEATURE_2_CODE16): Removed.

ld/

	PR ld/27905
	* testsuite/ld-i386/pcrel16-2.d: xfail.
	* testsuite/ld-x86-64/pcrel16-2.d: Likewise.
2021-05-28 09:34:28 -07:00
..
aout Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
cgen Remove bfd_stdint.h 2021-03-31 10:49:23 +10:30
coff Fix .dwsect generation for XCOFF. Handle .function generated with DWARF on XCOFF. 2021-05-07 15:29:49 +01:00
elf x86: Restore PC16 relocation overflow check 2021-05-28 09:34:28 -07:00
gdb sim: create header namespace 2021-05-14 00:41:05 -04:00
mach-o Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
opcode Remove strneq macro and use startswith. 2021-04-01 15:00:56 +02:00
sim sim: callback: convert FS interfaces to 64-bit 2021-05-14 21:16:40 -04:00
som Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
vms Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
alloca-conf.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
ansidecl.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
bfdlink.h Use bool in include 2021-03-31 10:49:23 +10:30
binary-io.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
bout.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
ChangeLog x86: Restore PC16 relocation overflow check 2021-05-28 09:34:28 -07:00
ChangeLog-0415
ChangeLog-2016
ChangeLog-2017
ChangeLog-2018
ChangeLog-2019
ChangeLog-2020 ChangeLog rotation 2021-01-01 10:31:02 +10:30
ChangeLog-9103
COPYING
COPYING3
ctf-api.h libctf, include: support an alternative encoding for nonrepresentable types 2021-05-06 09:30:59 +01:00
ctf.h libctf, include: support an alternative encoding for nonrepresentable types 2021-05-06 09:30:59 +01:00
demangle.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
diagnostics.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
dis-asm.h PowerPC disassembly of pcrel references 2021-04-09 16:56:43 +09:30
dwarf2.def Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
dwarf2.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
dyn-string.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
environ.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
fibheap.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
filenames.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
floatformat.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
fnmatch.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
fopen-bin.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
fopen-same.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
fopen-vms.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
gcc-c-fe.def Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
gcc-c-interface.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
gcc-cp-fe.def Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
gcc-cp-interface.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
gcc-interface.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
getopt.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
hashtab.h libiberty: add htab_eq_string 2021-05-07 11:17:11 +01:00
hp-symtab.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
leb128.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
libiberty.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
longlong.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
lto-symtab.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
MAINTAINERS Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
md5.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
oasys.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
objalloc.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
obstack.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
os9k.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
partition.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
plugin-api.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
progress.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
safe-ctype.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
sha1.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
simple-object.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
sort.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
splay-tree.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
symcat.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
timeval-utils.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
vtv-change-permission.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
xregex2.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
xregex.h
xtensa-config.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
xtensa-isa-internal.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
xtensa-isa.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30