/* List the relocation types for sparc. -*- C -*-
- Copyright (C) 2005 Red Hat, Inc.
+ Copyright (C) 2009 Red Hat, Inc.
This file is part of Red Hat elfutils.
Red Hat elfutils is free software; you can redistribute it and/or modify
/* NAME, REL|EXEC|DYN */
-RELOC_TYPE (NONE, 0)
-RELOC_TYPE (8, 0)
-RELOC_TYPE (16, 0)
-RELOC_TYPE (32, 0)
-RELOC_TYPE (DISP8, 0)
-RELOC_TYPE (DISP16, 0)
-RELOC_TYPE (DISP32, 0)
-RELOC_TYPE (WDISP30, 0)
-RELOC_TYPE (WDISP22, 0)
-RELOC_TYPE (HI22, 0)
-RELOC_TYPE (22, 0)
-RELOC_TYPE (13, 0)
-RELOC_TYPE (LO10, 0)
-RELOC_TYPE (GOT10, 0)
-RELOC_TYPE (GOT13, 0)
-RELOC_TYPE (GOT22, 0)
-RELOC_TYPE (PC10, 0)
-RELOC_TYPE (PC22, 0)
-RELOC_TYPE (WPLT30, 0)
+RELOC_TYPE (NONE, REL)
+RELOC_TYPE (8, REL)
+RELOC_TYPE (16, REL)
+RELOC_TYPE (32, REL|DYN)
+RELOC_TYPE (DISP8, REL)
+RELOC_TYPE (DISP16, REL)
+RELOC_TYPE (DISP32, REL)
+RELOC_TYPE (WDISP30, REL)
+RELOC_TYPE (WDISP22, REL)
+RELOC_TYPE (HI22, REL)
+RELOC_TYPE (22, REL)
+RELOC_TYPE (13, REL)
+RELOC_TYPE (LO10, REL)
+RELOC_TYPE (GOT10, REL)
+RELOC_TYPE (GOT13, REL)
+RELOC_TYPE (GOT22, REL)
+RELOC_TYPE (PC10, REL)
+RELOC_TYPE (PC22, REL)
+RELOC_TYPE (WPLT30, REL)
RELOC_TYPE (COPY, EXEC)
RELOC_TYPE (GLOB_DAT, EXEC|DYN)
RELOC_TYPE (JMP_SLOT, EXEC|DYN)
RELOC_TYPE (RELATIVE, EXEC|DYN)
-RELOC_TYPE (UA32, 0)
-RELOC_TYPE (PLT32, 0)
-RELOC_TYPE (HIPLT22, 0)
-RELOC_TYPE (LOPLT10, 0)
-RELOC_TYPE (PCPLT32, 0)
-RELOC_TYPE (PCPLT22, 0)
-RELOC_TYPE (PCPLT10, 0)
-RELOC_TYPE (10, 0)
-RELOC_TYPE (11, 0)
-RELOC_TYPE (64, 0)
-RELOC_TYPE (OLO10, 0)
-RELOC_TYPE (HH22, 0)
-RELOC_TYPE (HM10, 0)
-RELOC_TYPE (LM22, 0)
-RELOC_TYPE (PC_HH22, 0)
-RELOC_TYPE (PC_HM10, 0)
-RELOC_TYPE (PC_LM22, 0)
-RELOC_TYPE (WDISP16, 0)
-RELOC_TYPE (WDISP19, 0)
-RELOC_TYPE (7, 0)
-RELOC_TYPE (5, 0)
-RELOC_TYPE (6, 0)
-RELOC_TYPE (DISP64, 0)
-RELOC_TYPE (PLT64, 0)
-RELOC_TYPE (HIX22, 0)
-RELOC_TYPE (LOX10, 0)
-RELOC_TYPE (H44, 0)
-RELOC_TYPE (M44, 0)
-RELOC_TYPE (L44, 0)
-RELOC_TYPE (REGISTER, 0)
-RELOC_TYPE (UA64, 0)
-RELOC_TYPE (UA16, 0)
-RELOC_TYPE (TLS_GD_HI22, 0)
-RELOC_TYPE (TLS_GD_LO10, 0)
-RELOC_TYPE (TLS_GD_ADD, 0)
-RELOC_TYPE (TLS_GD_CALL, 0)
-RELOC_TYPE (TLS_LDM_HI22, 0)
-RELOC_TYPE (TLS_LDM_LO10, 0)
-RELOC_TYPE (TLS_LDM_ADD, 0)
-RELOC_TYPE (TLS_LDM_CALL, 0)
-RELOC_TYPE (TLS_LDO_HIX22, 0)
-RELOC_TYPE (TLS_LDO_LOX10, 0)
-RELOC_TYPE (TLS_LDO_ADD, 0)
-RELOC_TYPE (TLS_IE_HI22, 0)
-RELOC_TYPE (TLS_IE_LO10, 0)
-RELOC_TYPE (TLS_IE_LD, 0)
-RELOC_TYPE (TLS_IE_LDX, 0)
-RELOC_TYPE (TLS_IE_ADD, 0)
-RELOC_TYPE (TLS_LE_HIX22, 0)
-RELOC_TYPE (TLS_LE_LOX10, 0)
-RELOC_TYPE (TLS_DTPMOD32, 0)
-RELOC_TYPE (TLS_DTPMOD64, 0)
-RELOC_TYPE (TLS_DTPOFF32, 0)
-RELOC_TYPE (TLS_DTPOFF64, 0)
-RELOC_TYPE (TLS_TPOFF32, 0)
-RELOC_TYPE (TLS_TPOFF64, 0)
+RELOC_TYPE (UA32, REL)
+RELOC_TYPE (PLT32, REL)
+RELOC_TYPE (HIPLT22, REL)
+RELOC_TYPE (LOPLT10, REL)
+RELOC_TYPE (PCPLT32, REL)
+RELOC_TYPE (PCPLT22, REL)
+RELOC_TYPE (PCPLT10, REL)
+RELOC_TYPE (10, REL)
+RELOC_TYPE (11, REL)
+RELOC_TYPE (64, REL|DYN)
+RELOC_TYPE (OLO10, REL)
+RELOC_TYPE (HH22, REL)
+RELOC_TYPE (HM10, REL)
+RELOC_TYPE (LM22, REL)
+RELOC_TYPE (PC_HH22, REL)
+RELOC_TYPE (PC_HM10, REL)
+RELOC_TYPE (PC_LM22, REL)
+RELOC_TYPE (WDISP16, REL)
+RELOC_TYPE (WDISP19, REL)
+RELOC_TYPE (GLOB_JMP, EXEC|DYN)
+RELOC_TYPE (7, REL)
+RELOC_TYPE (5, REL)
+RELOC_TYPE (6, REL)
+RELOC_TYPE (DISP64, REL)
+RELOC_TYPE (PLT64, REL)
+RELOC_TYPE (HIX22, REL)
+RELOC_TYPE (LOX10, REL)
+RELOC_TYPE (H44, REL)
+RELOC_TYPE (M44, REL)
+RELOC_TYPE (L44, REL)
+RELOC_TYPE (REGISTER, REL)
+RELOC_TYPE (UA64, REL)
+RELOC_TYPE (UA16, REL)
+RELOC_TYPE (TLS_GD_HI22, REL)
+RELOC_TYPE (TLS_GD_LO10, REL)
+RELOC_TYPE (TLS_GD_ADD, REL)
+RELOC_TYPE (TLS_GD_CALL, REL)
+RELOC_TYPE (TLS_LDM_HI22, REL)
+RELOC_TYPE (TLS_LDM_LO10, REL)
+RELOC_TYPE (TLS_LDM_ADD, REL)
+RELOC_TYPE (TLS_LDM_CALL, REL)
+RELOC_TYPE (TLS_LDO_HIX22, REL)
+RELOC_TYPE (TLS_LDO_LOX10, REL)
+RELOC_TYPE (TLS_LDO_ADD, REL)
+RELOC_TYPE (TLS_IE_HI22, REL)
+RELOC_TYPE (TLS_IE_LO10, REL)
+RELOC_TYPE (TLS_IE_LD, REL)
+RELOC_TYPE (TLS_IE_LDX, REL)
+RELOC_TYPE (TLS_IE_ADD, REL)
+RELOC_TYPE (TLS_LE_HIX22, REL)
+RELOC_TYPE (TLS_LE_LOX10, REL)
+RELOC_TYPE (TLS_DTPMOD32, DYN)
+RELOC_TYPE (TLS_DTPMOD64, DYN)
+RELOC_TYPE (TLS_DTPOFF32, DYN)
+RELOC_TYPE (TLS_DTPOFF64, DYN)
+RELOC_TYPE (TLS_TPOFF32, DYN)
+RELOC_TYPE (TLS_TPOFF64, DYN)
+RELOC_TYPE (GOTDATA_HIX22, REL)
+RELOC_TYPE (GOTDATA_LOX10, REL)
+RELOC_TYPE (GOTDATA_OP_HIX22, DYN)
+RELOC_TYPE (GOTDATA_OP_LOX10, DYN)
+RELOC_TYPE (GOTDATA_OP, DYN)
+RELOC_TYPE (H34, REL)
+RELOC_TYPE (SIZE32, REL)
+RELOC_TYPE (SIZE64, REL)
+RELOC_TYPE (GNU_VTINHERIT, REL)
+RELOC_TYPE (GNU_VTENTRY, REL)
+RELOC_TYPE (REV32, REL)
/* This file defines standard ELF types, structures, and macros.
- Copyright (C) 1995-2003,2004,2005,2006,2007,2008
+ Copyright (C) 1995-2003,2004,2005,2006,2007,2008,2009
Free Software Foundation, Inc.
This file is part of the GNU C Library.
#define STT_TLS 6 /* Symbol is thread-local data object*/
#define STT_NUM 7 /* Number of defined types. */
#define STT_LOOS 10 /* Start of OS-specific */
+#define STT_GNU_IFUNC 10 /* Symbol is indirect code object */
#define STT_HIOS 12 /* End of OS-specific */
#define STT_LOPROC 13 /* Start of processor-specific */
#define STT_HIPROC 15 /* End of processor-specific */
#define AT_SECURE 23 /* Boolean, was exec setuid-like? */
+#define AT_BASE_PLATFORM 24 /* String identifying real platforms.*/
+
+#define AT_RANDOM 25 /* Address of 16 random bytes. */
+
#define AT_EXECFN 31 /* Filename of executable. */
/* Pointer to the global system page used for system calls and other
#define R_SPARC_PC_LM22 39 /* Low miggle 22 bits of ... */
#define R_SPARC_WDISP16 40 /* PC relative 16 bit shifted */
#define R_SPARC_WDISP19 41 /* PC relative 19 bit shifted */
+#define R_SPARC_GLOB_JMP 42 /* was part of v9 ABI but was removed */
#define R_SPARC_7 43 /* Direct 7 bit */
#define R_SPARC_5 44 /* Direct 5 bit */
#define R_SPARC_6 45 /* Direct 6 bit */
#define R_SPARC_TLS_DTPOFF64 77
#define R_SPARC_TLS_TPOFF32 78
#define R_SPARC_TLS_TPOFF64 79
+#define R_SPARC_GOTDATA_HIX22 80
+#define R_SPARC_GOTDATA_LOX10 81
+#define R_SPARC_GOTDATA_OP_HIX22 82
+#define R_SPARC_GOTDATA_OP_LOX10 83
+#define R_SPARC_GOTDATA_OP 84
+#define R_SPARC_H34 85
+#define R_SPARC_SIZE32 86
+#define R_SPARC_SIZE64 87
+#define R_SPARC_GNU_VTINHERIT 250
+#define R_SPARC_GNU_VTENTRY 251
+#define R_SPARC_REV32 252
/* Keep this the last entry. */
-#define R_SPARC_NUM 80
+#define R_SPARC_NUM 253
/* For Sparc64, legal values for d_tag of Elf64_Dyn. */