xref: /openbsd-src/sys/arch/sh/include/exec.h (revision 043da68552b3f08939b7a1b6b17a69f1860b0781)
1*043da685Sguenther /*	$OpenBSD: exec.h,v 1.5 2017/02/08 05:09:26 guenther Exp $	*/
295c7671fSmiod /*	$NetBSD: elf_machdep.h,v 1.8 2002/04/28 17:10:34 uch Exp $	*/
395c7671fSmiod 
495c7671fSmiod #define __LDPGSZ	4096
595c7671fSmiod 
695c7671fSmiod #define	ARCH_ELFSIZE		32	/* MD native binary size */
795c7671fSmiod #define	ELF_TARG_CLASS		ELFCLASS32
895c7671fSmiod #ifdef __LITTLE_ENDIAN__
995c7671fSmiod #define	ELF_TARG_DATA		ELFDATA2LSB
1095c7671fSmiod #else
1195c7671fSmiod #define	ELF_TARG_DATA		ELFDATA2MSB
1295c7671fSmiod #endif
1395c7671fSmiod #define	ELF_TARG_MACH		EM_SH
1495c7671fSmiod 
1595c7671fSmiod /*
1695c7671fSmiod  * SuperH ELF header flags.
1795c7671fSmiod  */
1895c7671fSmiod #define	EF_SH_MACH_MASK		0x1f
1995c7671fSmiod 
2095c7671fSmiod #define	EF_SH_UNKNOWN		0x00
2195c7671fSmiod #define	EF_SH_SH1		0x01
2295c7671fSmiod #define	EF_SH_SH2		0x02
2395c7671fSmiod #define	EF_SH_SH3		0x03
2495c7671fSmiod #define	EF_SH_DSP		0x04
2595c7671fSmiod #define	EF_SH_SH3_DSP		0x05
2695c7671fSmiod #define	EF_SH_SH3E		0x08
2795c7671fSmiod #define	EF_SH_SH4		0x09
2895c7671fSmiod 
2995c7671fSmiod #define	EF_SH_HAS_DSP(x)	((x) & EF_SH_DSP)
3095c7671fSmiod #define	EF_SH_HAS_FP(x)		((x) & EF_SH_SH3E)
31