Add MIPS V and MIPS 64 machine numbers
[deliverable/binutils-gdb.git] / include / elf / mips.h
index 203acbed2dd4b8b52dbd1234cfa51546a4642011..ec333bfcbef4acc46cc864c1f448756eadf30744 100644 (file)
@@ -1,5 +1,6 @@
 /* MIPS ELF support for BFD.
-   Copyright (C) 1993, 1994, 1995, 1996, 1998 Free Software Foundation, Inc.
+   Copyright (C) 1993, 94, 95, 96, 97, 98, 99, 2000
+   Free Software Foundation, Inc.
 
    By Ian Lance Taylor, Cygnus Support, <ian@cygnus.com>, from
    information in the System V Application Binary Interface, MIPS
@@ -75,10 +76,16 @@ START_RELOC_NUMBERS (elf_mips_reloc_type)
   /* These relocs are used for the mips16.  */
   RELOC_NUMBER (R_MIPS16_26, 100)
   RELOC_NUMBER (R_MIPS16_GPREL, 101)
+  /* These are GNU extensions to handle embedded-pic.  */
+  RELOC_NUMBER (R_MIPS_PC32, 248)
+  RELOC_NUMBER (R_MIPS_PC64, 249)
+  RELOC_NUMBER (R_MIPS_GNU_REL16_S2, 250)
+  RELOC_NUMBER (R_MIPS_GNU_REL_LO16, 251)
+  RELOC_NUMBER (R_MIPS_GNU_REL_HI16, 252)
   /* These are GNU extensions to enable C++ vtable garbage collection.  */
   RELOC_NUMBER (R_MIPS_GNU_VTINHERIT, 253)
   RELOC_NUMBER (R_MIPS_GNU_VTENTRY, 254)
-END_RELOC_NUMBERS
+END_RELOC_NUMBERS (R_MIPS_maxext)
 
 /* Processor specific flags for the ELF header e_flags field.  */
 
@@ -114,6 +121,15 @@ END_RELOC_NUMBERS
 /* -mips4 code.  */
 #define E_MIPS_ARCH_4          0x30000000
 
+/* -mips5 code.  */
+#define E_MIPS_ARCH_5         0x40000000
+
+/* -mips32 code.  */
+#define E_MIPS_ARCH_32                0x50000000
+
+/* -mips64 code.  */
+#define E_MIPS_ARCH_64                0x60000000
+
 /* The ABI of the file.  Also see EF_MIPS_ABI2 above. */
 #define EF_MIPS_ABI            0x0000F000
 
@@ -146,7 +162,7 @@ END_RELOC_NUMBERS
 #define E_MIPS_MACH_4100       0x00830000
 #define E_MIPS_MACH_4650       0x00850000
 #define E_MIPS_MACH_4111       0x00880000
-
+#define E_MIPS_MACH_MIPS32_4K  0x00890000
 \f
 /* Processor specific section indices.  These sections do not actually
    exist.  Symbols with a st_shndx field corresponding to one of these
@@ -617,10 +633,10 @@ extern void bfd_mips_elf32_swap_reginfo_out
 /* Special values for the st_other field in the symbol table.  These
    are used in an Irix 5 dynamic symbol table.  */
 
-#define STO_DEFAULT            0x00
-#define STO_INTERNAL           0x01
-#define STO_HIDDEN             0x02
-#define STO_PROTECTED          0x03
+#define STO_DEFAULT            STV_DEFAULT
+#define STO_INTERNAL           STV_INTERNAL
+#define STO_HIDDEN             STV_HIDDEN
+#define STO_PROTECTED          STV_PROTECTED
 
 /* This value is used for a mips16 .text symbol.  */
 #define STO_MIPS16             0xf0
This page took 0.024909 seconds and 4 git commands to generate.