binutils-gdb/include/elf
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
..
aarch64.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
alpha.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
arc-cpu.def Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
arc-reloc.def Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
arc.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
arm.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
avr.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
bfin.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
bpf.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
ChangeLog-0415 binutils ChangeLog rotation 2016-01-01 22:59:17 +10:30
ChangeLog-9103 Add copyright notices 2012-12-10 12:48:03 +00:00
common.h x86: Restore PC16 relocation overflow check 2021-05-28 09:34:28 -07:00
cr16.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
cris.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
crx.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
csky.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
d10v.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
d30v.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
dlx.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
dwarf.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
epiphany.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
external.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
fr30.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
frv.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
ft32.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
h8.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
hppa.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
i370.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
i386.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
i860.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
i960.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
ia64.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
internal.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
ip2k.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
iq2000.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
lm32.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
m32c.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
m32r.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
m68hc11.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
m68k.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
mcore.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
mep.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
metag.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
microblaze.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
mips.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
mmix.h Use bool in include 2021-03-31 10:49:23 +10:30
mn10200.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
mn10300.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
moxie.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
msp430.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
mt.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
nds32.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
nfp.h Remove bfd_stdint.h 2021-03-31 10:49:23 +10:30
nios2.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
or1k.h or1k: Implement relocation R_OR1K_GOT_AHI16 for gotha() 2021-05-06 20:51:24 +09:00
pj.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
ppc64.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
ppc.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
pru.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
reloc-macros.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
riscv.h RISC-V: Comments tidy and improvement. 2021-01-15 17:28:07 +08:00
rl78.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
rx.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
s12z.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
s390.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
score.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
sh.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
sparc.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
spu.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
tic6x-attrs.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
tic6x.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
tilegx.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
tilepro.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
v850.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
vax.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
visium.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
vxworks.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
wasm32.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
x86-64.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
xc16x.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
xgate.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
xstormy16.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30
xtensa.h Use bool in include 2021-03-31 10:49:23 +10:30
z80.h Update year range in copyright notice of binutils files 2021-01-01 10:31:05 +10:30