Home | History | Annotate | Line # | Download | only in include
elf_machdep.h revision 1.8
      1  1.8    skrll /*	$NetBSD: elf_machdep.h,v 1.8 2009/05/30 05:56:53 skrll Exp $	*/
      2  1.1  thorpej 
      3  1.3   kleink #define	ELF32_MACHDEP_ENDIANNESS	ELFDATA2MSB
      4  1.1  thorpej #define	ELF32_MACHDEP_ID_CASES						\
      5  1.3   kleink 		case EM_PPC:						\
      6  1.1  thorpej 			break;
      7  1.1  thorpej 
      8  1.6     ross #define	ELF64_MACHDEP_ENDIANNESS	ELFDATA2MSB
      9  1.1  thorpej #define	ELF64_MACHDEP_ID_CASES						\
     10  1.6     ross 		case EM_PPC64:						\
     11  1.6     ross 			break;
     12  1.5  thorpej 
     13  1.5  thorpej #define	ELF32_MACHDEP_ID	EM_PPC
     14  1.6     ross #define	ELF64_MACHDEP_ID	EM_PPC64
     15  1.4  minoura 
     16  1.6     ross #ifdef _LP64
     17  1.6     ross #define ARCH_ELFSIZE		64	/* MD native binary size */
     18  1.6     ross #else
     19  1.4  minoura #define ARCH_ELFSIZE		32	/* MD native binary size */
     20  1.6     ross #endif
     21  1.1  thorpej 
     22  1.7    freza #define	R_PPC_NONE 		0
     23  1.7    freza #define	R_PPC_32 		1
     24  1.7    freza #define	R_PPC_24 		2
     25  1.7    freza #define	R_PPC_16 		3
     26  1.7    freza #define	R_PPC_16_LO 		4
     27  1.7    freza #define	R_PPC_16_HI 		5 /* R_PPC_ADDIS */
     28  1.7    freza #define	R_PPC_16_HA 		6
     29  1.7    freza #define	R_PPC_14 		7
     30  1.7    freza #define	R_PPC_14_TAKEN 		8
     31  1.7    freza #define	R_PPC_14_NTAKEN 	9
     32  1.7    freza #define	R_PPC_REL24 		10 /* R_PPC_BRANCH */
     33  1.7    freza #define	R_PPC_REL14 		11
     34  1.7    freza #define	R_PPC_REL14_TAKEN 	12
     35  1.7    freza #define	R_PPC_REL14_NTAKEN 	13
     36  1.7    freza #define	R_PPC_GOT16 		14
     37  1.7    freza #define	R_PPC_GOT16_LO 		15
     38  1.7    freza #define	R_PPC_GOT16_HI 		16
     39  1.7    freza #define	R_PPC_GOT16_HA 		17
     40  1.7    freza #define	R_PPC_PLT24 		18
     41  1.7    freza #define	R_PPC_COPY 		19
     42  1.7    freza #define	R_PPC_GLOB_DAT 		20
     43  1.7    freza #define	R_PPC_JMP_SLOT 		21
     44  1.7    freza #define	R_PPC_RELATIVE 		22
     45  1.7    freza #define	R_PPC_LOCAL24PC 	23
     46  1.7    freza #define	R_PPC_U32 		24
     47  1.7    freza #define	R_PPC_U16 		25
     48  1.7    freza #define	R_PPC_REL32 		26
     49  1.7    freza #define	R_PPC_PLT32 		27
     50  1.7    freza #define	R_PPC_PLTREL32 		28
     51  1.7    freza #define	R_PPC_PLT16_LO 		29
     52  1.7    freza #define	R_PPC_PLT16_HI 		30
     53  1.7    freza #define	R_PPC_PLT16_HA 		31
     54  1.7    freza #define	R_PPC_SDAREL 		32
     55  1.2   tsubai 
     56  1.8    skrll /* TLS relocations */
     57  1.8    skrll #define	R_PPC_TLS		67
     58  1.8    skrll 
     59  1.8    skrll #define	R_PPC_DTPMOD32		68
     60  1.8    skrll #define	R_PPC_TPREL16		69
     61  1.8    skrll #define	R_PPC_TPREL16_LO	70
     62  1.8    skrll #define	R_PPC_TPREL16_HI	71
     63  1.8    skrll #define	R_PPC_TPREL16_HA	72
     64  1.8    skrll #define	R_PPC_TPREL32		73
     65  1.8    skrll #define	R_PPC_DTPREL16		74
     66  1.8    skrll #define	R_PPC_DTPREL16_LO	75
     67  1.8    skrll #define	R_PPC_DTPREL16_HI	76
     68  1.8    skrll #define	R_PPC_DTPREL16_HA	77
     69  1.8    skrll #define	R_PPC_DTPREL32		78
     70  1.8    skrll 
     71  1.8    skrll #define	R_PPC_GOT_TLSGD16	79
     72  1.8    skrll #define	R_PPC_GOT_TLSGD16_LO	80
     73  1.8    skrll #define	R_PPC_GOT_TLSGD16_HI	81
     74  1.8    skrll #define	R_PPC_GOT_TLSGD16_HA	82
     75  1.8    skrll #define	R_PPC_GOT_TLSLD16	83
     76  1.8    skrll #define	R_PPC_GOT_TLSLD16_LO	84
     77  1.8    skrll #define	R_PPC_GOT_TLSLD16_HI	85
     78  1.8    skrll #define	R_PPC_GOT_TLSLD16_HA	86
     79  1.8    skrll 
     80  1.8    skrll #define	R_PPC_GOT_TPREL16	87
     81  1.8    skrll #define	R_PPC_GOT_TPREL16_LO	88
     82  1.8    skrll #define	R_PPC_GOT_TPREL16_HI	89
     83  1.8    skrll #define	R_PPC_GOT_TPREL16_HA	90
     84  1.8    skrll #define	R_PPC_GOT_DTPREL16	91
     85  1.8    skrll #define	R_PPC_GOT_DTPREL16_LO	92
     86  1.8    skrll #define	R_PPC_GOT_DTPREL16_HI	93
     87  1.8    skrll #define	R_PPC_GOT_DTPREL16_HA	94
     88  1.8    skrll #define	R_PPC_TLSGD		95
     89  1.8    skrll #define	R_PPC_TLSLD		96
     90  1.8    skrll 
     91  1.7    freza #define R_TYPE(name) 		__CONCAT(R_PPC_,name)
     92