1 /* 2 ** Copyright 2003, Axel Dörfler, axeld@pinc-software.de. All rights reserved. 3 ** Distributed under the terms of the MIT License. 4 */ 5 #ifndef _KERNEL_ARCH_x86_ELF_H 6 #define _KERNEL_ARCH_x86_ELF_H 7 8 /* relocation types */ 9 10 #define R_386_NONE 0 11 #define R_386_32 1 /* add symbol value */ 12 #define R_386_PC32 2 /* add PC relative symbol value */ 13 #define R_386_GOT32 3 /* add PC relative GOT offset */ 14 #define R_386_PLT32 4 /* add PC relative PLT offset */ 15 #define R_386_COPY 5 /* copy data from shared object */ 16 #define R_386_GLOB_DAT 6 /* set GOT entry to data address */ 17 #define R_386_JMP_SLOT 7 /* set GOT entry to code address */ 18 #define R_386_RELATIVE 8 /* add load address of shared object */ 19 #define R_386_GOTOFF 9 /* add GOT relative symbol address */ 20 #define R_386_GOTPC 10 /* add PC relative GOT table address */ 21 #define R_386_TLS_DTPMOD32 35 22 #define R_386_TLS_DTPOFF32 36 23 24 #ifdef _BOOT_MODE 25 # include "../x86_64/arch_elf.h" 26 #endif 27 28 #endif /* _KERNEL_ARCH_x86_ELF_H */ 29