elf_machdep.h revision 1.6
11.6Sthorpej/*	$NetBSD: elf_machdep.h,v 1.6 2002/01/29 01:35:36 thorpej Exp $	*/
21.1Sitojun
31.4Smarcus#ifndef _BYTE_ORDER
41.4Smarcus#error Define _BYTE_ORDER!
51.4Smarcus#endif
61.4Smarcus
71.4Smarcus#if _BYTE_ORDER == _LITTLE_ENDIAN
81.4Smarcus#define	ELF32_MACHDEP_ENDIANNESS	ELFDATA2LSB
91.4Smarcus#else
101.2Skleink#define	ELF32_MACHDEP_ENDIANNESS	ELFDATA2MSB
111.4Smarcus#endif
121.1Sitojun#define	ELF32_MACHDEP_ID_CASES						\
131.2Skleink		case EM_SH:						\
141.1Sitojun			break;
151.1Sitojun
161.1Sitojun#define	ELF64_MACHDEP_ENDIANNESS	XXX	/* break compilation */
171.1Sitojun#define	ELF64_MACHDEP_ID_CASES						\
181.1Sitojun		/* no 64-bit ELF machine types supported */
191.5Sthorpej
201.5Sthorpej#define	ELF32_MACHDEP_ID	EM_SH
211.3Sminoura
221.3Sminoura#define ARCH_ELFSIZE		32	/* MD native binary size */
231.6Sthorpej
241.6Sthorpej#define	R_SH_NONE		0
251.6Sthorpej#define	R_SH_DIR32		1
261.6Sthorpej#define	R_SH_REL32		2
271.6Sthorpej#define	R_SH_DIR8WPN		3
281.6Sthorpej#define	R_SH_IND12W		4
291.6Sthorpej#define	R_SH_DIR8WPL		5
301.6Sthorpej#define	R_SH_DIR8WPZ		6
311.6Sthorpej#define	R_SH_DIR8BP		7
321.6Sthorpej#define	R_SH_DIR8W		8
331.6Sthorpej#define	R_SH_DIR8L		9
341.6Sthorpej#define	R_SH_SWITCH16		25
351.6Sthorpej#define	R_SH_SWITCH32		26
361.6Sthorpej#define	R_SH_USES		27
371.6Sthorpej#define	R_SH_COUNT		28
381.6Sthorpej#define	R_SH_ALIGN		29
391.6Sthorpej#define	R_SH_CODE		30
401.6Sthorpej#define	R_SH_DATA		31
411.6Sthorpej#define	R_SH_LABEL		32
421.6Sthorpej#define	R_SH_SWITCH8		33
431.6Sthorpej#define	R_SH_GNU_VTINHERIT	34
441.6Sthorpej#define	R_SH_GNU_VTENTRY	35
451.6Sthorpej#define	R_SH_LOOP_START		36
461.6Sthorpej#define	R_SH_LOOP_END		37
471.6Sthorpej#define	R_SH_GOT32		160
481.6Sthorpej#define	R_SH_PLT32		161
491.6Sthorpej#define	R_SH_COPY		162
501.6Sthorpej#define	R_SH_GLOB_DAT		163
511.6Sthorpej#define	R_SH_JMP_SLOT		164
521.6Sthorpej#define	R_SH_RELATIVE		165
531.6Sthorpej#define	R_SH_GOTOFF		166
541.6Sthorpej#define	R_SH_GOTPC		167
551.6Sthorpej
561.6Sthorpej#define	R_TYPE(name)	__CONCAT(R_SH_,name)
57