1/* $NetBSD: elf_machdep.h,v 1.6 2001/12/09 23:05:58 thorpej Exp $ */ 2 3#define ELF32_MACHDEP_ENDIANNESS ELFDATA2MSB 4#define ELF32_MACHDEP_ID_CASES \ 5 case EM_SPARC: \ 6 case EM_SPARC32PLUS: \ 7 break; 8 9#define ELF64_MACHDEP_ENDIANNESS ELFDATA2MSB 10#define ELF64_MACHDEP_ID_CASES \ 11 case EM_SPARC32PLUS: \ 12 case EM_SPARCV9: \ 13 /* no 64-bit ELF machine types supported */ 14 15#define ELF32_MACHDEP_ID EM_SPARC /* XXX right? */ 16 17#define ARCH_ELFSIZE 32 /* MD native binary size */ 18 19#define R_SPARC_NONE 0 20#define R_SPARC_8 1 21#define R_SPARC_16 2 22#define R_SPARC_32 3 23#define R_SPARC_DISP8 4 24#define R_SPARC_DISP16 5 25#define R_SPARC_DISP32 6 26#define R_SPARC_WDISP30 7 27#define R_SPARC_WDISP22 8 28#define R_SPARC_HI22 9 29#define R_SPARC_22 10 30#define R_SPARC_13 11 31#define R_SPARC_LO10 12 32#define R_SPARC_GOT10 13 33#define R_SPARC_GOT13 14 34#define R_SPARC_GOT22 15 35#define R_SPARC_PC10 16 36#define R_SPARC_PC22 17 37#define R_SPARC_WPLT30 18 38#define R_SPARC_COPY 19 39#define R_SPARC_GLOB_DAT 20 40#define R_SPARC_JMP_SLOT 21 41#define R_SPARC_RELATIVE 22 42#define R_SPARC_UA32 23 43#define R_SPARC_PLT32 24 44#define R_SPARC_HIPLT22 25 45#define R_SPARC_LOPLT10 26 46#define R_SPARC_PCPLT32 27 47#define R_SPARC_PCPLT22 28 48#define R_SPARC_PCPLT10 29 49#define R_SPARC_10 30 50#define R_SPARC_11 31 51#define R_SPARC_64 32 52#define R_SPARC_OLO10 33 53#define R_SPARC_HH22 34 54#define R_SPARC_HM10 35 55#define R_SPARC_LM22 36 56#define R_SPARC_PC_HH22 37 57#define R_SPARC_PC_HM10 38 58#define R_SPARC_PC_LM22 39 59#define R_SPARC_WDISP16 40 60#define R_SPARC_WDISP19 41 61#define R_SPARC_GLOB_JMP 42 62#define R_SPARC_7 43 63#define R_SPARC_5 44 64#define R_SPARC_6 45 65 66/* TLS relocations */ 67#define R_SPARC_TLS_GD_HI22 56 68#define R_SPARC_TLS_GD_LO10 57 69#define R_SPARC_TLS_GD_ADD 58 70#define R_SPARC_TLS_GD_CALL 59 71#define R_SPARC_TLS_LDM_HI22 60 72#define R_SPARC_TLS_LDM_LO10 61 73#define R_SPARC_TLS_LDM_ADD 62 74#define R_SPARC_TLS_LDM_CALL 63 75#define R_SPARC_TLS_LDO_HIX22 64 76#define R_SPARC_TLS_LDO_LOX10 65 77#define R_SPARC_TLS_LDO_ADD 66 78#define R_SPARC_TLS_IE_HI22 67 79#define R_SPARC_TLS_IE_LO10 68 80#define R_SPARC_TLS_IE_LD 69 81#define R_SPARC_TLS_IE_LDX 70 82#define R_SPARC_TLS_IE_ADD 71 83#define R_SPARC_TLS_LE_HIX22 72 84#define R_SPARC_TLS_LE_LOX10 73 85#define R_SPARC_TLS_DTPMOD32 74 86#define R_SPARC_TLS_DTPMOD64 75 87#define R_SPARC_TLS_DTPOFF32 76 88#define R_SPARC_TLS_DTPOFF64 77 89#define R_SPARC_TLS_TPOFF32 78 90#define R_SPARC_TLS_TPOFF64 79 91 92#define R_TYPE(name) __CONCAT(R_SPARC_,name) 93