Home | History | Annotate | Line # | Download | only in include
elf_machdep.h revision 1.8.4.1
      1  1.8.4.1    rmind /*	$NetBSD: elf_machdep.h,v 1.8.4.1 2011/03/05 20:51:37 rmind 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.8.4.1    rmind /* Specify the value of _GLOBAL_OFFSET_TABLE_ */
     23  1.8.4.1    rmind #define	DT_PPC_GOT		DT_LOPROC
     24  1.8.4.1    rmind 
     25      1.7    freza #define	R_PPC_NONE 		0
     26      1.7    freza #define	R_PPC_32 		1
     27      1.7    freza #define	R_PPC_24 		2
     28      1.7    freza #define	R_PPC_16 		3
     29      1.7    freza #define	R_PPC_16_LO 		4
     30      1.7    freza #define	R_PPC_16_HI 		5 /* R_PPC_ADDIS */
     31      1.7    freza #define	R_PPC_16_HA 		6
     32      1.7    freza #define	R_PPC_14 		7
     33      1.7    freza #define	R_PPC_14_TAKEN 		8
     34      1.7    freza #define	R_PPC_14_NTAKEN 	9
     35      1.7    freza #define	R_PPC_REL24 		10 /* R_PPC_BRANCH */
     36      1.7    freza #define	R_PPC_REL14 		11
     37      1.7    freza #define	R_PPC_REL14_TAKEN 	12
     38      1.7    freza #define	R_PPC_REL14_NTAKEN 	13
     39      1.7    freza #define	R_PPC_GOT16 		14
     40      1.7    freza #define	R_PPC_GOT16_LO 		15
     41      1.7    freza #define	R_PPC_GOT16_HI 		16
     42      1.7    freza #define	R_PPC_GOT16_HA 		17
     43      1.7    freza #define	R_PPC_PLT24 		18
     44      1.7    freza #define	R_PPC_COPY 		19
     45      1.7    freza #define	R_PPC_GLOB_DAT 		20
     46      1.7    freza #define	R_PPC_JMP_SLOT 		21
     47      1.7    freza #define	R_PPC_RELATIVE 		22
     48      1.7    freza #define	R_PPC_LOCAL24PC 	23
     49      1.7    freza #define	R_PPC_U32 		24
     50      1.7    freza #define	R_PPC_U16 		25
     51      1.7    freza #define	R_PPC_REL32 		26
     52      1.7    freza #define	R_PPC_PLT32 		27
     53      1.7    freza #define	R_PPC_PLTREL32 		28
     54      1.7    freza #define	R_PPC_PLT16_LO 		29
     55      1.7    freza #define	R_PPC_PLT16_HI 		30
     56      1.7    freza #define	R_PPC_PLT16_HA 		31
     57  1.8.4.1    rmind #define	R_PPC_SDAREL16 		32
     58  1.8.4.1    rmind #define	R_PPC_SECTOFF 		33
     59  1.8.4.1    rmind #define	R_PPC_SECTOFF_LO 	34
     60  1.8.4.1    rmind #define	R_PPC_SECTOFF_HI	35
     61  1.8.4.1    rmind #define	R_PPC_SECTOFF_HA	36
     62  1.8.4.1    rmind #define	R_PPC_ADDR30 		37
     63      1.2   tsubai 
     64      1.8    skrll /* TLS relocations */
     65      1.8    skrll #define	R_PPC_TLS		67
     66      1.8    skrll 
     67      1.8    skrll #define	R_PPC_DTPMOD32		68
     68      1.8    skrll #define	R_PPC_TPREL16		69
     69      1.8    skrll #define	R_PPC_TPREL16_LO	70
     70      1.8    skrll #define	R_PPC_TPREL16_HI	71
     71      1.8    skrll #define	R_PPC_TPREL16_HA	72
     72      1.8    skrll #define	R_PPC_TPREL32		73
     73      1.8    skrll #define	R_PPC_DTPREL16		74
     74      1.8    skrll #define	R_PPC_DTPREL16_LO	75
     75      1.8    skrll #define	R_PPC_DTPREL16_HI	76
     76      1.8    skrll #define	R_PPC_DTPREL16_HA	77
     77      1.8    skrll #define	R_PPC_DTPREL32		78
     78      1.8    skrll 
     79      1.8    skrll #define	R_PPC_GOT_TLSGD16	79
     80      1.8    skrll #define	R_PPC_GOT_TLSGD16_LO	80
     81      1.8    skrll #define	R_PPC_GOT_TLSGD16_HI	81
     82      1.8    skrll #define	R_PPC_GOT_TLSGD16_HA	82
     83      1.8    skrll #define	R_PPC_GOT_TLSLD16	83
     84      1.8    skrll #define	R_PPC_GOT_TLSLD16_LO	84
     85      1.8    skrll #define	R_PPC_GOT_TLSLD16_HI	85
     86      1.8    skrll #define	R_PPC_GOT_TLSLD16_HA	86
     87      1.8    skrll 
     88      1.8    skrll #define	R_PPC_GOT_TPREL16	87
     89      1.8    skrll #define	R_PPC_GOT_TPREL16_LO	88
     90      1.8    skrll #define	R_PPC_GOT_TPREL16_HI	89
     91      1.8    skrll #define	R_PPC_GOT_TPREL16_HA	90
     92      1.8    skrll #define	R_PPC_GOT_DTPREL16	91
     93      1.8    skrll #define	R_PPC_GOT_DTPREL16_LO	92
     94      1.8    skrll #define	R_PPC_GOT_DTPREL16_HI	93
     95      1.8    skrll #define	R_PPC_GOT_DTPREL16_HA	94
     96      1.8    skrll #define	R_PPC_TLSGD		95
     97      1.8    skrll #define	R_PPC_TLSLD		96
     98      1.8    skrll 
     99  1.8.4.1    rmind /* Used for the secure-plt PIC code sequences */
    100  1.8.4.1    rmind #define	R_PPC_REL16		249
    101  1.8.4.1    rmind #define	R_PPC_REL16_LO		250
    102  1.8.4.1    rmind #define	R_PPC_REL16_HI		251
    103  1.8.4.1    rmind #define	R_PPC_REL16_HA		252
    104  1.8.4.1    rmind 
    105      1.7    freza #define R_TYPE(name) 		__CONCAT(R_PPC_,name)
    106