1*ed3b4d37SSimon Glass /* 2*ed3b4d37SSimon Glass * Brought in from Linux 4.1, removed things not useful to U-Boot. 3*ed3b4d37SSimon Glass * The definitions perhaps came from the GNU Library which is GPL. 4*ed3b4d37SSimon Glass * 5*ed3b4d37SSimon Glass * SPDX-License-Identifier: GPL-2.0+ 6*ed3b4d37SSimon Glass */ 7*ed3b4d37SSimon Glass 8*ed3b4d37SSimon Glass #ifndef _ASM_X86_ELF_H 9*ed3b4d37SSimon Glass #define _ASM_X86_ELF_H 10*ed3b4d37SSimon Glass 11*ed3b4d37SSimon Glass /* ELF register definitions */ 12*ed3b4d37SSimon Glass #define R_386_NONE 0 13*ed3b4d37SSimon Glass #define R_386_32 1 14*ed3b4d37SSimon Glass #define R_386_PC32 2 15*ed3b4d37SSimon Glass #define R_386_GOT32 3 16*ed3b4d37SSimon Glass #define R_386_PLT32 4 17*ed3b4d37SSimon Glass #define R_386_COPY 5 18*ed3b4d37SSimon Glass #define R_386_GLOB_DAT 6 19*ed3b4d37SSimon Glass #define R_386_JMP_SLOT 7 20*ed3b4d37SSimon Glass #define R_386_RELATIVE 8 21*ed3b4d37SSimon Glass #define R_386_GOTOFF 9 22*ed3b4d37SSimon Glass #define R_386_GOTPC 10 23*ed3b4d37SSimon Glass #define R_386_NUM 11 24*ed3b4d37SSimon Glass 25*ed3b4d37SSimon Glass /* x86-64 relocation types */ 26*ed3b4d37SSimon Glass #define R_X86_64_NONE 0 /* No reloc */ 27*ed3b4d37SSimon Glass #define R_X86_64_64 1 /* Direct 64 bit */ 28*ed3b4d37SSimon Glass #define R_X86_64_PC32 2 /* PC relative 32 bit signed */ 29*ed3b4d37SSimon Glass #define R_X86_64_GOT32 3 /* 32 bit GOT entry */ 30*ed3b4d37SSimon Glass #define R_X86_64_PLT32 4 /* 32 bit PLT address */ 31*ed3b4d37SSimon Glass #define R_X86_64_COPY 5 /* Copy symbol at runtime */ 32*ed3b4d37SSimon Glass #define R_X86_64_GLOB_DAT 6 /* Create GOT entry */ 33*ed3b4d37SSimon Glass #define R_X86_64_JUMP_SLOT 7 /* Create PLT entry */ 34*ed3b4d37SSimon Glass #define R_X86_64_RELATIVE 8 /* Adjust by program base */ 35*ed3b4d37SSimon Glass /* 32 bit signed pc relative offset to GOT */ 36*ed3b4d37SSimon Glass #define R_X86_64_GOTPCREL 9 37*ed3b4d37SSimon Glass #define R_X86_64_32 10 /* Direct 32 bit zero extended */ 38*ed3b4d37SSimon Glass #define R_X86_64_32S 11 /* Direct 32 bit sign extended */ 39*ed3b4d37SSimon Glass #define R_X86_64_16 12 /* Direct 16 bit zero extended */ 40*ed3b4d37SSimon Glass #define R_X86_64_PC16 13 /* 16 bit sign extended pc relative */ 41*ed3b4d37SSimon Glass #define R_X86_64_8 14 /* Direct 8 bit sign extended */ 42*ed3b4d37SSimon Glass #define R_X86_64_PC8 15 /* 8 bit sign extended pc relative */ 43*ed3b4d37SSimon Glass 44*ed3b4d37SSimon Glass #define R_X86_64_NUM 16 45*ed3b4d37SSimon Glass 46*ed3b4d37SSimon Glass #endif 47