OSDN Git Service

sync with glibc
authorMike Frysinger <vapier@gentoo.org>
Sat, 2 Jul 2005 15:10:44 +0000 (15:10 -0000)
committerMike Frysinger <vapier@gentoo.org>
Sat, 2 Jul 2005 15:10:44 +0000 (15:10 -0000)
include/elf.h

index 11f82ba..e009692 100644 (file)
@@ -920,23 +920,25 @@ typedef struct
 
 typedef struct
 {
-  int a_type;                  /* Entry type */
+  uint32_t a_type;             /* Entry type */
   union
     {
-      long int a_val;          /* Integer value */
-      void *a_ptr;             /* Pointer value */
-      void (*a_fcn) (void);    /* Function pointer value */
+      uint32_t a_val;          /* Integer value */
+      /* We use to have pointer elements added here.  We cannot do that,
+        though, since it does not work when using 32-bit definitions
+        on 64-bit platforms and vice versa.  */
     } a_un;
 } Elf32_auxv_t;
 
 typedef struct
 {
-  long int a_type;             /* Entry type */
+  uint64_t a_type;             /* Entry type */
   union
     {
-      long int a_val;          /* Integer value */
-      void *a_ptr;             /* Pointer value */
-      void (*a_fcn) (void);    /* Function pointer value */
+      uint64_t a_val;          /* Integer value */
+      /* We use to have pointer elements added here.  We cannot do that,
+        though, since it does not work when using 32-bit definitions
+        on 64-bit platforms and vice versa.  */
     } a_un;
 } Elf64_auxv_t;
 
@@ -1907,6 +1909,9 @@ typedef Elf32_Addr Elf32_Conflict;
 #define LITUSE_ALPHA_TLS_GD    4
 #define LITUSE_ALPHA_TLS_LDM   5
 
+/* Legal values for d_tag of Elf64_Dyn.  */
+#define DT_ALPHA_PLTRO         0x70000000
+#define DT_ALPHA_NUM           1
 
 /* PowerPC specific declarations */
 
@@ -2017,10 +2022,19 @@ typedef Elf32_Addr Elf32_Conflict;
 #define R_PPC_DIAB_RELSDA_HI   184     /* like EMB_RELSDA, but high 16 bit */
 #define R_PPC_DIAB_RELSDA_HA   185     /* like EMB_RELSDA, adjusted high 16 */
 
+/* GNU relocs used in PIC code sequences.  */
+#define R_PPC_REL16            249     /* word32   (sym-.) */
+#define R_PPC_REL16_LO         250     /* half16   (sym-.)@l */
+#define R_PPC_REL16_HI         251     /* half16   (sym-.)@h */
+#define R_PPC_REL16_HA         252     /* half16   (sym-.)@ha */
+
 /* This is a phony reloc to handle any old fashioned TOC16 references
    that may still be in object files.  */
 #define R_PPC_TOC16            255
 
+/* PowerPC specific values for the Dyn d_tag field.  */
+#define DT_PPC_GOT             (DT_LOPROC + 0)
+#define DT_PPC_NUM             1
 
 /* PowerPC64 relocations defined by the ABIs */
 #define R_PPC64_NONE           R_PPC_NONE