summaryrefslogtreecommitdiffstats
path: root/contrib/binutils/include/elf
diff options
context:
space:
mode:
authorjdp <jdp@FreeBSD.org>1998-09-06 22:57:45 +0000
committerjdp <jdp@FreeBSD.org>1998-09-06 22:57:45 +0000
commiteffee09f856ecc81feb91290459a2cda49d20287 (patch)
tree5c46ac1ee102130859f788aeb927e8086985cfe7 /contrib/binutils/include/elf
parent31cb88078db5bdc51eb451c5a61e31a426fb8ae6 (diff)
downloadFreeBSD-src-effee09f856ecc81feb91290459a2cda49d20287.zip
FreeBSD-src-effee09f856ecc81feb91290459a2cda49d20287.tar.gz
Import GNU binutils-2.9.1. This will break things for a few minutes
until I've made the commits to resolve the conflicts. Submitted by: Doug Rabson <dfr>
Diffstat (limited to 'contrib/binutils/include/elf')
-rw-r--r--contrib/binutils/include/elf/ChangeLog94
-rw-r--r--contrib/binutils/include/elf/alpha.h8
-rw-r--r--contrib/binutils/include/elf/arc.h52
-rw-r--r--contrib/binutils/include/elf/common.h4
-rw-r--r--contrib/binutils/include/elf/internal.h4
-rw-r--r--contrib/binutils/include/elf/v850.h94
6 files changed, 252 insertions, 4 deletions
diff --git a/contrib/binutils/include/elf/ChangeLog b/contrib/binutils/include/elf/ChangeLog
index ac5e824..aed10aa 100644
--- a/contrib/binutils/include/elf/ChangeLog
+++ b/contrib/binutils/include/elf/ChangeLog
@@ -1,3 +1,78 @@
+Sat Feb 28 17:04:41 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (EF_ALPHA_32BIT, EF_ALPHA_CANRELAX): New.
+
+Mon Dec 15 15:07:49 1997 Nick Clifton <nickc@cygnus.com>
+
+ * m32r.h (EF_M32R_ARCH, E_M32R_ARCH): New flags to
+ specify machine architecture.
+
+Fri Dec 5 11:20:08 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h: New constants: SHN_V850_SCOMMON, SHN_V850_TCOMMON,
+ SHN_V850_ZCOMMON, SHT_V850_SCOMMON, SHT_V850_TCOMMON,
+ SHT_V850_ZCOMMON to handle v850 common sections.
+ enum reloc_type renamed to v850_reloc_type to avoid name
+ conflict.
+
+Thu Oct 23 13:55:24 1997 Richard Henderson <rth@cygnus.com>
+
+ * sparc.h (enum elf_sparc_reloc_type): Add UA64 & UA16.
+
+Thu Oct 23 00:42:04 1997 Richard Henderson <rth@dot.cygnus.com>
+
+ * sparc.h (DT_SPARC_REGISTER): New macro.
+ (DT_SPARC_PLTFMT): In support of old sparc64-linux .plts; will
+ go away soon.
+
+Tue Sep 30 13:26:58 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * sparc.h (EF_SPARC_HAL_R1, EF_SPARC_EXT_MASK): New macros.
+ (EF_SPARCV9_{MM,TSO,PSO,RMO}): New macros.
+ (SHN_BEFORE,SHN_AFTER): New macros.
+ (SHF_EXCLUDE,SHF_ORDERED): New macros.
+ (STT_REGISTER): New macro.
+ (R_SPARC_GLOB_JMP): Deleted, but slot reserved.
+ (R_SPARC_{DISP64,PLT64,HIX22,LOX10}): New relocations.
+ (R_SPARC_{H44,M44,L44,REGISTER}): New relocations.
+ (ELF64_R_TYPE_{DATA,ID,INFO}): New macros.
+
+Tue Sep 16 14:16:17 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h (reloc_type): Add R_V850_TDA_16_16_OFFSET.
+
+Wed Sep 3 15:11:14 1997 Richard Henderson <rth@cygnus.com>
+
+ * mips.h: Correct typo in comment.
+
+Wed Sep 3 11:25:57 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h (reloc_type): Remove R_V850_16_PCREL.
+
+Tue Sep 2 17:41:05 1997 Nick Clifton <nickc@cygnus.com>
+
+
+ * v850.h: Add new flags for e_flags field in elf header.
+
+
+Mon Aug 18 11:05:23 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h (reloc_type): Add 16 bit PC relative relocation.
+
+Fri Aug 15 05:10:09 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * arc.h (enum reloc): Move here from elf32-arc.c.
+
+Fri Aug 8 17:05:29 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * arc.h: New file.
+ * common.h (EM_CYGNUS_ARC): Define.
+
+Mon Jun 16 14:46:12 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * internal.h (Elf_Internal_Ehdr): Change e_phoff and e_shoff from
+ bfd_signed_vma to bfd_size_type, as they are not signed.
+
Wed Mar 5 15:35:26 1997 Doug Evans <dje@seba.cygnus.com>
* m32r.h (SHF_M32R_CAN_RELAX): Define.
@@ -24,6 +99,19 @@ Mon Jan 27 11:54:44 1997 Doug Evans <dje@seba.cygnus.com>
* m32r.h (enum reloc_type): Add R_M32R_HI16_[SU]LO,R_M32R_LO16.
+Fri Jan 3 11:32:51 1997 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * v850.h (V850_OTHER_{TDA_BYTE,ERROR}): New bits for the st_other
+ field.
+ (SHN_V850_*): Remove v850 specific section indexes, which are not
+ needed.
+ (enum reloc_type): Move the v850 relocations here from
+ elf32-v850.c
+
+Thu Jan 2 19:30:23 1997 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * v850.h: New file, provide V850 specific definitions.
+
Tue Dec 31 14:44:32 1996 Ian Lance Taylor <ian@cygnus.com>
* common.h (DT_AUXILIARY): Define.
@@ -61,6 +149,10 @@ Fri Aug 30 17:06:21 1996 Ian Lance Taylor <ian@cygnus.com>
* common.h (EM_SH): Define.
+Tue Aug 20 14:47:54 1996 J.T. Conklin <jtc@hippo.cygnus.com>
+
+ * common.h (EM_CYGNUS_V850): Define.
+
Mon Aug 19 10:59:10 1996 Doug Evans <dje@canuck.cygnus.com>
* common.h (EM_CYGNUS_M32R): Define.
@@ -165,7 +257,6 @@ Tue Feb 14 13:59:13 1995 Michael Meissner <meissner@tiktok.cygnus.com>
* common.h (EM_PPC): Use offical value of 20, not 17.
(EM_PPC_OLD): Define this to be the old value of EM_PPC.
-
Tue Jan 24 09:40:59 1995 Michael Meissner <meissner@tiktok.cygnus.com>
* common.h (EM_PPC): New macro, PowerPC machine id.
@@ -174,7 +265,6 @@ Tue Jan 17 10:51:38 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
* mips.h (SHT_MIPS_MSYM, SHT_MIPS_DWARF, SHT_MIPS_EVENTS): Define.
-
Mon Oct 17 13:43:59 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
* internal.h (Elf_Internal_Shdr): Remove rawdata and size fields.
diff --git a/contrib/binutils/include/elf/alpha.h b/contrib/binutils/include/elf/alpha.h
index 8e12dd9..28b9fe3 100644
--- a/contrib/binutils/include/elf/alpha.h
+++ b/contrib/binutils/include/elf/alpha.h
@@ -26,6 +26,14 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#ifndef _ELF_ALPHA_H
#define _ELF_ALPHA_H
+/* Processor specific flags for the ELF header e_flags field. */
+
+/* All addresses must be below 2GB. */
+#define EF_ALPHA_32BIT 0x00000001
+
+/* All relocations needed for relaxation with code movement are present. */
+#define EF_ALPHA_CANRELAX 0x00000002
+
/* Processor specific section flags. */
/* This section must be in the global data area. */
diff --git a/contrib/binutils/include/elf/arc.h b/contrib/binutils/include/elf/arc.h
new file mode 100644
index 0000000..25ba97a
--- /dev/null
+++ b/contrib/binutils/include/elf/arc.h
@@ -0,0 +1,52 @@
+/* ARC ELF support for BFD.
+ Copyright (C) 1995, 1997 Free Software Foundation, Inc.
+ Contributed by Doug Evans, (dje@cygnus.com)
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the ARC ELF ABI. */
+
+#ifndef _ELF_ARC_H
+#define _ELF_ARC_H
+
+enum reloc_type
+{
+ R_ARC_NONE = 0,
+ R_ARC_32,
+ R_ARC_B26,
+ R_ARC_B22_PCREL,
+ R_ARC_max
+};
+
+/* Processor specific flags for the ELF header e_flags field. */
+
+/* Four bit ARC machine type field. */
+#define EF_ARC_MACH 0x0000000f
+
+/* Various CPU types. */
+#define E_ARC_MACH_BASE 0x00000000
+#define E_ARC_MACH_UNUSED1 0x00000001
+#define E_ARC_MACH_UNUSED2 0x00000002
+#define E_ARC_MACH_UNUSED4 0x00000003
+
+/* Leave bits 0xf0 alone in case we ever have more than 16 cpu types.
+ Highly unlikely, but what the heck. */
+
+/* File contains position independent code. */
+#define EF_ARC_PIC 0x00000100
+
+#endif /* _ELF_ARC_H */
diff --git a/contrib/binutils/include/elf/common.h b/contrib/binutils/include/elf/common.h
index d555c59..dd0d4d5 100644
--- a/contrib/binutils/include/elf/common.h
+++ b/contrib/binutils/include/elf/common.h
@@ -106,6 +106,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Old version of PowerPC, this should be removed shortly. */
#define EM_PPC_OLD 17
+/* Cygnus ARC ELF backend. Written in the absence of an ABI. */
+#define EM_CYGNUS_ARC 0x9040
/* Cygnus M32R ELF backend. Written in the absence of an ABI. */
#define EM_CYGNUS_M32R 0x9041
@@ -117,6 +119,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define EM_CYGNUS_D10V 0x7650
+/* V850 backend magic number. Written in the absense of an ABI. */
+#define EM_CYGNUS_V850 0x9080
/* mn10200 and mn10300 backend magic numbers.
Written in the absense of an ABI. */
diff --git a/contrib/binutils/include/elf/internal.h b/contrib/binutils/include/elf/internal.h
index bb849d6..6540310 100644
--- a/contrib/binutils/include/elf/internal.h
+++ b/contrib/binutils/include/elf/internal.h
@@ -43,8 +43,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
typedef struct elf_internal_ehdr {
unsigned char e_ident[EI_NIDENT]; /* ELF "magic number" */
bfd_vma e_entry; /* Entry point virtual address */
- bfd_signed_vma e_phoff; /* Program header table file offset */
- bfd_signed_vma e_shoff; /* Section header table file offset */
+ bfd_size_type e_phoff; /* Program header table file offset */
+ bfd_size_type e_shoff; /* Section header table file offset */
unsigned long e_version; /* Identifies object file version */
unsigned long e_flags; /* Processor-specific flags */
unsigned short e_type; /* Identifies object file type */
diff --git a/contrib/binutils/include/elf/v850.h b/contrib/binutils/include/elf/v850.h
new file mode 100644
index 0000000..cc815c5
--- /dev/null
+++ b/contrib/binutils/include/elf/v850.h
@@ -0,0 +1,94 @@
+/* V850 ELF support for BFD.
+ Copyright (C) 1997 Free Software Foundation, Inc.
+ Created by Michael Meissner, Cygnus Support <meissner@cygnus.com>
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the MIPS ELF ABI. Note
+ that most of this is not actually implemented by BFD. */
+
+#ifndef _ELF_V850_H
+#define _ELF_V850_H
+
+/* Processor specific flags for the ELF header e_flags field. */
+
+/* Four bit V850 architecture field. */
+#define EF_V850_ARCH 0xf0000000
+
+/* v850 code. */
+#define E_V850_ARCH 0x00000000
+
+
+
+/* Flags for the st_other field */
+#define V850_OTHER_SDA 0x01 /* symbol had SDA relocations */
+#define V850_OTHER_ZDA 0x02 /* symbol had ZDA relocations */
+#define V850_OTHER_TDA 0x04 /* symbol had TDA relocations */
+#define V850_OTHER_TDA_BYTE 0x08 /* symbol had TDA byte relocations */
+#define V850_OTHER_ERROR 0x80 /* symbol had an error reported */
+
+/* V850 relocations */
+enum v850_reloc_type
+{
+ R_V850_NONE = 0,
+ R_V850_9_PCREL,
+ R_V850_22_PCREL,
+ R_V850_HI16_S,
+ R_V850_HI16,
+ R_V850_LO16,
+ R_V850_32,
+ R_V850_16,
+ R_V850_8,
+ R_V850_SDA_16_16_OFFSET, /* For ld.b, st.b, set1, clr1, not1, tst1, movea, movhi */
+ R_V850_SDA_15_16_OFFSET, /* For ld.w, ld.h, ld.hu, st.w, st.h */
+ R_V850_ZDA_16_16_OFFSET, /* For ld.b, st.b, set1, clr1, not1, tst1, movea, movhi */
+ R_V850_ZDA_15_16_OFFSET, /* For ld.w, ld.h, ld.hu, st.w, st.h */
+ R_V850_TDA_6_8_OFFSET, /* For sst.w, sld.w */
+ R_V850_TDA_7_8_OFFSET, /* For sst.h, sld.h */
+ R_V850_TDA_7_7_OFFSET, /* For sst.b, sld.b */
+ R_V850_TDA_16_16_OFFSET, /* For set1, clr1, not1, tst1, movea, movhi */
+ R_V850_max
+};
+
+
+/* Processor specific section indices. These sections do not actually
+ exist. Symbols with a st_shndx field corresponding to one of these
+ values have a special meaning. */
+
+/* Small data area common symbol. */
+#define SHN_V850_SCOMMON 0xff00
+
+/* Tiny data area common symbol. */
+#define SHN_V850_TCOMMON 0xff01
+
+/* Zero data area common symbol. */
+#define SHN_V850_ZCOMMON 0xff02
+
+
+/* Processor specific section types. */
+
+/* Section contains the .scommon data. */
+#define SHT_V850_SCOMMON 0x70000000
+
+/* Section contains the .scommon data. */
+#define SHT_V850_TCOMMON 0x70000001
+
+/* Section contains the .scommon data. */
+#define SHT_V850_ZCOMMON 0x70000002
+
+
+#endif /* _ELF_V850_H */
OpenPOWER on IntegriCloud