Home | History | Annotate | Line # | Download | only in include
      1  1.6  christos /*	$NetBSD: elf_machdep.h,v 1.6 2017/11/06 03:47:45 christos Exp $	*/
      2  1.2       mrg 
      3  1.4    cegger #if !defined __i386__
      4  1.1      fvdl 
      5  1.1      fvdl #define	ELF32_MACHDEP_ENDIANNESS	ELFDATA2LSB
      6  1.1      fvdl #define	ELF32_MACHDEP_ID_CASES						\
      7  1.1      fvdl 		case EM_386:						\
      8  1.1      fvdl 			break;
      9  1.1      fvdl 
     10  1.1      fvdl #define	ELF64_MACHDEP_ENDIANNESS	ELFDATA2LSB
     11  1.1      fvdl #define	ELF64_MACHDEP_ID_CASES						\
     12  1.1      fvdl 		case EM_X86_64:						\
     13  1.1      fvdl 			break;
     14  1.1      fvdl 
     15  1.1      fvdl #define	ELF32_MACHDEP_ID	EM_386
     16  1.1      fvdl #define	ELF64_MACHDEP_ID	EM_X86_64
     17  1.1      fvdl 
     18  1.6  christos #define	KERN_ELFSIZE		64
     19  1.1      fvdl #define ARCH_ELFSIZE		64	/* MD native binary size */
     20  1.1      fvdl 
     21  1.1      fvdl /* x86-64 relocations */
     22  1.1      fvdl 
     23  1.1      fvdl #define R_X86_64_NONE		0
     24  1.1      fvdl #define R_X86_64_64		1
     25  1.1      fvdl #define R_X86_64_PC32		2
     26  1.1      fvdl #define R_X86_64_GOT32		3
     27  1.1      fvdl #define R_X86_64_PLT32		4
     28  1.1      fvdl #define R_X86_64_COPY		5
     29  1.1      fvdl #define R_X86_64_GLOB_DAT	6
     30  1.1      fvdl #define R_X86_64_JUMP_SLOT	7
     31  1.1      fvdl #define R_X86_64_RELATIVE	8
     32  1.1      fvdl #define R_X86_64_GOTPCREL	9
     33  1.1      fvdl #define R_X86_64_32		10
     34  1.1      fvdl #define R_X86_64_32S		11
     35  1.1      fvdl #define R_X86_64_16		12
     36  1.1      fvdl #define R_X86_64_PC16		13
     37  1.1      fvdl #define R_X86_64_8		14
     38  1.1      fvdl #define R_X86_64_PC8		15
     39  1.1      fvdl 
     40  1.3     skrll /* TLS relocations */
     41  1.3     skrll #define R_X86_64_DTPMOD64	16
     42  1.3     skrll #define R_X86_64_DTPOFF64	17
     43  1.3     skrll #define R_X86_64_TPOFF64	18
     44  1.3     skrll #define R_X86_64_TLSGD		19
     45  1.3     skrll #define R_X86_64_TLSLD		20
     46  1.3     skrll #define R_X86_64_DTPOFF32	21
     47  1.3     skrll #define R_X86_64_GOTTPOFF	22
     48  1.3     skrll #define R_X86_64_TPOFF32	23
     49  1.3     skrll 
     50  1.5  christos #define R_X86_64_PC64		24
     51  1.5  christos #define R_X86_64_GOTOFF64	25
     52  1.5  christos #define R_X86_64_GOTPC32	26
     53  1.5  christos #define R_X86_64_GOT64		27
     54  1.5  christos #define R_X86_64_GOTPCREL64	28
     55  1.5  christos #define R_X86_64_GOTPC64	29
     56  1.5  christos #define R_X86_64_GOTPLT64	30
     57  1.5  christos #define R_X86_64_PLTOFF64	31
     58  1.5  christos #define R_X86_64_SIZE32		32
     59  1.5  christos #define R_X86_64_SIZE64		33
     60  1.5  christos #define R_X86_64_GOTPC32_TLSDESC 34
     61  1.5  christos #define R_X86_64_TLSDESC_CALL	35
     62  1.5  christos #define R_X86_64_TLSDESC	36
     63  1.5  christos #define R_X86_64_IRELATIVE	37
     64  1.5  christos #define R_X86_64_RELATIVE64	38
     65  1.5  christos #define R_X86_64_PC32_BND	39
     66  1.5  christos #define R_X86_64_PLT32_BND	40
     67  1.5  christos #define R_X86_64_GOTPCRELX	41
     68  1.5  christos #define R_X86_64_REX_GOTPCRELX	42
     69  1.5  christos 
     70  1.1      fvdl #define	R_TYPE(name)	__CONCAT(R_X86_64_,name)
     71  1.2       mrg 
     72  1.4    cegger #else	/*	!__i386__	*/
     73  1.2       mrg 
     74  1.2       mrg #include <i386/elf_machdep.h>
     75  1.2       mrg 
     76  1.4    cegger #endif	/*	!__i386__	*/
     77