* mips.h (Elf32_Internal_Msym): New structure.
authorMark Mitchell <mark@codesourcery.com>
Mon, 21 Jun 1999 06:57:35 +0000 (06:57 +0000)
committerMark Mitchell <mark@codesourcery.com>
Mon, 21 Jun 1999 06:57:35 +0000 (06:57 +0000)
(Elf32_External_Msym): Likewise.
(ELF32_MS_REL_INDEX): New macro.
(ELF32_MS_FLAGS): Likewise.
(ELF32_MS_INFO): Likewise.

include/ChangeLog
include/elf/mips.h

index d318d969ee4ecd8ba2836134f96c4759fc2403a7..aa7bdb04b88510f87bfd3fabc307b01e9db82ebb 100644 (file)
@@ -1,3 +1,11 @@
+1999-06-20  Mark Mitchell  <mark@codesourcery.com>
+
+       * mips.h (Elf32_Internal_Msym): New structure.
+       (Elf32_External_Msym): Likewise.
+       (ELF32_MS_REL_INDEX): New macro.
+       (ELF32_MS_FLAGS): Likewise.
+       (ELF32_MS_INFO): Likewise.
+       
 1999-06-14  Nick Clifton  <nickc@cygnus.com>
 
        * dis-asm.h (arm_toggle_regnames): New prototype.
index c967248da918df42c9575be2ef92d11d71266e1d..203acbed2dd4b8b52dbd1234cfa51546a4642011 100644 (file)
@@ -816,6 +816,40 @@ typedef struct
   bfd_vma ri_gp_value;
 } Elf64_Internal_RegInfo;
 
+typedef struct
+{
+  /* The hash value computed from the name of the corresponding
+     dynamic symbol.  */
+  unsigned char ms_hash_value[4];
+  /* Contains both the dynamic relocation index and the symbol flags
+     field.  The macros ELF32_MS_REL_INDEX and ELF32_MS_FLAGS are used
+     to access the individual values.  The dynamic relocation index
+     identifies the first entry in the .rel.dyn section that
+     references the dynamic symbol corresponding to this msym entry.
+     If the index is 0, no dynamic relocations are associated with the
+     symbol.  The symbol flags field is reserved for future use.  */
+  unsigned char ms_info[4];
+} Elf32_External_Msym;
+
+typedef struct
+{
+  /* The hash value computed from the name of the corresponding
+     dynamic symbol.  */
+  unsigned long ms_hash_value;
+  /* Contains both the dynamic relocation index and the symbol flags
+     field.  The macros ELF32_MS_REL_INDEX and ELF32_MS_FLAGS are used
+     to access the individual values.  The dynamic relocation index
+     identifies the first entry in the .rel.dyn section that
+     references the dynamic symbol corresponding to this msym entry.
+     If the index is 0, no dynamic relocations are associated with the
+     symbol.  The symbol flags field is reserved for future use.  */
+  unsigned long ms_info;
+} Elf32_Internal_Msym;
+
+#define ELF32_MS_REL_INDEX(i) ((i) >> 8)
+#define ELF32_MS_FLAGS(i)     (i) & 0xff)
+#define ELF32_MS_INFO(r, f)   (((r) << 8) + ((f) & 0xff))
+
 /* MIPS ELF reginfo swapping routines.  */
 extern void bfd_mips_elf64_swap_reginfo_in
   PARAMS ((bfd *, const Elf64_External_RegInfo *, Elf64_Internal_RegInfo *));