X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=include%2Felf%2Fx86-64.h;h=f13a373f80c75c2676b28479fbab5872993c1441;hb=a2c5833233df078288c791c348a265c96c6182da;hp=309be6bfc0328acb9131dfa0f34769fd9dc5f084;hpb=3b22753a67cf616514de804ef6d5ed5e90a7d883;p=thirdparty%2Fbinutils-gdb.git diff --git a/include/elf/x86-64.h b/include/elf/x86-64.h index 309be6bfc03..f13a373f80c 100644 --- a/include/elf/x86-64.h +++ b/include/elf/x86-64.h @@ -1,12 +1,12 @@ /* x86_64 ELF support for BFD. - Copyright (C) 2000, 2001, 2002, 2004 Free Software Foundation, Inc. + Copyright (C) 2000-2022 Free Software Foundation, Inc. Contributed by Jan Hubicka This file is part of BFD, the Binary File Descriptor library. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or + the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -53,6 +53,35 @@ START_RELOC_NUMBERS (elf_x86_64_reloc_type) RELOC_NUMBER (R_X86_64_GOTOFF64, 25) /* 64 bit offset to GOT */ RELOC_NUMBER (R_X86_64_GOTPC32, 26) /* 32 bit signed pc relative offset to GOT */ + RELOC_NUMBER (R_X86_64_GOT64, 27) /* 64 bit GOT entry offset */ + RELOC_NUMBER (R_X86_64_GOTPCREL64, 28) /* 64 bit signed pc relative + offset to GOT entry */ + RELOC_NUMBER (R_X86_64_GOTPC64, 29) /* 64 bit signed pc relative + offset to GOT */ + RELOC_NUMBER (R_X86_64_GOTPLT64, 30) /* Obsolete. The same as GOT64. */ + RELOC_NUMBER (R_X86_64_PLTOFF64, 31) /* 64 bit GOT relative offset + to PLT entry */ + RELOC_NUMBER (R_X86_64_SIZE32, 32) /* 32-bit symbol size */ + RELOC_NUMBER (R_X86_64_SIZE64, 33) /* 64-bit symbol size */ + RELOC_NUMBER (R_X86_64_GOTPC32_TLSDESC, 34) + /* 32 bit signed pc relative + offset to TLS descriptor + in the GOT. */ + RELOC_NUMBER (R_X86_64_TLSDESC_CALL, 35) /* Relaxable call through TLS + descriptor. */ + RELOC_NUMBER (R_X86_64_TLSDESC, 36) /* 2x64-bit TLS descriptor. */ + RELOC_NUMBER (R_X86_64_IRELATIVE, 37) /* Adjust indirectly by program base */ + RELOC_NUMBER (R_X86_64_RELATIVE64, 38) /* 64bit adjust by program base */ + RELOC_NUMBER (R_X86_64_PC32_BND, 39) /* PC relative 32 bit + signed with BND prefix */ + RELOC_NUMBER (R_X86_64_PLT32_BND, 40) /* 32 bit PLT address with + BND prefix */ + /* Load from 32 bit signed pc relative offset to GOT entry without + REX prefix, relaxable. */ + RELOC_NUMBER (R_X86_64_GOTPCRELX, 41) + /* Load from 32 bit signed pc relative offset to GOT entry with + REX prefix, relaxable. */ + RELOC_NUMBER (R_X86_64_REX_GOTPCRELX, 42) RELOC_NUMBER (R_X86_64_GNU_VTINHERIT, 250) /* GNU C++ hack */ RELOC_NUMBER (R_X86_64_GNU_VTENTRY, 251) /* GNU C++ hack */ END_RELOC_NUMBERS (R_X86_64_max) @@ -63,7 +92,7 @@ END_RELOC_NUMBERS (R_X86_64_max) /* Like SHN_COMMON but the symbol will be allocated in the .lbss section. */ -#define SHN_X86_64_LCOMMON 0xff02 +#define SHN_X86_64_LCOMMON (SHN_LORESERVE + 2) #define SHF_X86_64_LARGE 0x10000000 #endif