aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorGavin Romig-Koch <gavin@redhat.com>1998-12-15 14:10:46 +0000
committerGavin Romig-Koch <gavin@redhat.com>1998-12-15 14:10:46 +0000
commit02650bd0a97e811838a207da56505e16f1209ae9 (patch)
tree398f4e5620b0cf6c712d3d061566f1e2169968f0 /include
parent759181e384bb9bda3b8f0219384d42866474ef49 (diff)
downloadgdb-02650bd0a97e811838a207da56505e16f1209ae9.zip
gdb-02650bd0a97e811838a207da56505e16f1209ae9.tar.gz
gdb-02650bd0a97e811838a207da56505e16f1209ae9.tar.bz2
This adds ABI flags to MIPS/ELF object files.
For bfd: * elf32-mips.c (elf_mips_abi_name): New. (_bfd_mips_elf_merge_private_bfd_data): Compare EF_MIPS_ABI flags. For gas: * config/tc-mips.c (mips_abi_string): New. (md_parse_option,md_longopts): Add mabi. (mips_elf_final_processing): Set e_flags based on mabi flag. For gcc: * config/mips/mips.h (GAS_ASM_SPEC): Pass mabi to gas. (ABI_GAS_ASM_SPEC,abi_gas_asm_spec): New. (EXTRA_SPECS): Added ABI_GAS_ASM_SPEC,abi_gas_asm_spec. For include/elf: * mips.h (EF_MIPS_ABI,E_MIPS_ABI_O32,E_MIPS_ABI_O64, E_MIPS_ABI_EABI32,E_MIPS_ABI_EABI64):
Diffstat (limited to 'include')
-rw-r--r--include/elf/ChangeLog5
-rw-r--r--include/elf/mips.h16
2 files changed, 21 insertions, 0 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog
index d00a8ee..8501c79 100644
--- a/include/elf/ChangeLog
+++ b/include/elf/ChangeLog
@@ -1,3 +1,8 @@
+1998-12-15 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * mips.h (EF_MIPS_ABI,E_MIPS_ABI_O32,E_MIPS_ABI_O64,
+ E_MIPS_ABI_EABI32,E_MIPS_ABI_EABI64):
+
start-sanitize-vr4xxx
1998-12-13 Gavin Romig-Koch <gavin@cygnus.com>
diff --git a/include/elf/mips.h b/include/elf/mips.h
index a895d59..6d3816e 100644
--- a/include/elf/mips.h
+++ b/include/elf/mips.h
@@ -121,6 +121,22 @@ END_RELOC_NUMBERS
/* -mips4 code. */
#define E_MIPS_ARCH_4 0x30000000
+/* The ABI of the file. Also see EF_MIPS_ABI2 above. */
+#define EF_MIPS_ABI 0x0000F000
+
+/* The original o32 abi. */
+#define E_MIPS_ABI_O32 0x00001000
+
+/* O32 extended to work on 64 bit architectures */
+#define E_MIPS_ABI_O64 0x00002000
+
+/* EABI in 32 bit mode */
+#define E_MIPS_ABI_EABI32 0x00003000
+
+/* EABI in 64 bit mode */
+#define E_MIPS_ABI_EABI64 0x00004000
+
+
/* Machine variant if we know it. This field was invented at Cygnus,
but it is hoped that other vendors will adopt it. If some standard
is developed, this code should be changed to follow it. */